|
|
@ -64,13 +64,15 @@ int process_issuer(char *buffer) { |
|
|
issuer.state = READY; |
|
|
issuer.state = READY; |
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
issuer.state = READY; |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
printf("ignoring command\n"); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} else if (0 == strncasecmp("RESET", buffer, 4)) { |
|
|
} else if (0 == strncasecmp("RESET", buffer, 4)) { |
|
|
switch (issuer.state) { |
|
|
switch (issuer.state) { |
|
|
case READY: |
|
|
case READY: |
|
|
|
|
|
case JOINSTART: |
|
|
|
|
|
case JOINPROCEED: |
|
|
printf("generate new issuer identity\n"); |
|
|
printf("generate new issuer identity\n"); |
|
|
if (0 == issuer_setup(buffer)) { |
|
|
if (0 == issuer_setup(buffer)) { |
|
|
issuer.state = READY; |
|
|
issuer.state = READY; |
|
|
@ -78,11 +80,9 @@ int process_issuer(char *buffer) { |
|
|
printf("issuer setup failed\n"); |
|
|
printf("issuer setup failed\n"); |
|
|
return 2; |
|
|
return 2; |
|
|
} |
|
|
} |
|
|
if(0 == issuer_joinstart(buffer)) { |
|
|
|
|
|
issuer.state = JOINSTART; |
|
|
|
|
|
} |
|
|
|
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
|
|
|
printf("Reset not possible\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
break; |
|
|
break; |
|
|
@ -95,7 +95,7 @@ int process_issuer(char *buffer) { |
|
|
} |
|
|
} |
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
issuer.state = READY; |
|
|
printf("Issuer not ready for join\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
break; |
|
|
break; |
|
|
@ -104,11 +104,11 @@ int process_issuer(char *buffer) { |
|
|
switch (issuer.state) { |
|
|
switch (issuer.state) { |
|
|
case JOINSTART: |
|
|
case JOINSTART: |
|
|
if(0 == issuer_joinproceed(buffer)) { |
|
|
if(0 == issuer_joinproceed(buffer)) { |
|
|
issuer.state = READY; |
|
|
issuer.state = JOINPROCEED; |
|
|
} |
|
|
} |
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
issuer.state = READY; |
|
|
printf("Issuer not ready for append\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
break; |
|
|
break; |
|
|
@ -116,16 +116,18 @@ int process_issuer(char *buffer) { |
|
|
} else if (0 == strncasecmp("PUBLISH", buffer, 7)) { |
|
|
} else if (0 == strncasecmp("PUBLISH", buffer, 7)) { |
|
|
switch (issuer.state) { |
|
|
switch (issuer.state) { |
|
|
case READY: |
|
|
case READY: |
|
|
|
|
|
case JOINPROCEED: |
|
|
|
|
|
case JOINSTART: |
|
|
issuer_publish(buffer); |
|
|
issuer_publish(buffer); |
|
|
issuer.state = READY; |
|
|
|
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
|
|
|
printf("There are no keys to publish\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} else if (0 == strncasecmp("EXIT", buffer, 4)) { |
|
|
} else if (0 == strncasecmp("EXIT", buffer, 4)) { |
|
|
printf("exit()\n"); |
|
|
printf("exiting...\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "OK\n", 3); |
|
|
strncpy(buffer, "OK\n", 3); |
|
|
ret = 1; |
|
|
ret = 1; |
|
|
@ -134,14 +136,13 @@ int process_issuer(char *buffer) { |
|
|
strncpy(buffer, "OK\n", 3); |
|
|
strncpy(buffer, "OK\n", 3); |
|
|
ret = 2; |
|
|
ret = 2; |
|
|
} else { |
|
|
} else { |
|
|
printf("error()\n"); |
|
|
printf("unknown command\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
issuer.state = READY; |
|
|
|
|
|
ret = 0; |
|
|
ret = 0; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
printf("< ISSUER: %s", buffer); |
|
|
printf("< ISSUER: %s\n", buffer); |
|
|
return ret; |
|
|
return ret; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|