|
|
@ -3,7 +3,6 @@ |
|
|
typedef enum issuer_state { |
|
|
typedef enum issuer_state { |
|
|
ON, |
|
|
ON, |
|
|
JOINSTART, |
|
|
JOINSTART, |
|
|
JOINPROCEED, |
|
|
|
|
|
READY |
|
|
READY |
|
|
} issuerstate_e; |
|
|
} issuerstate_e; |
|
|
|
|
|
|
|
|
@ -48,33 +47,12 @@ int process_issuer(char *buffer) { |
|
|
printf("> ISSUER: %s\n", buffer); |
|
|
printf("> ISSUER: %s\n", buffer); |
|
|
|
|
|
|
|
|
if (0 == strncasecmp("OK", buffer, 2)) { |
|
|
if (0 == strncasecmp("OK", buffer, 2)) { |
|
|
switch (issuer.state) { |
|
|
|
|
|
case JOINPROCEED: |
|
|
|
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
|
|
|
issuer.state = READY; |
|
|
|
|
|
ret = 1; |
|
|
|
|
|
break; |
|
|
|
|
|
default: |
|
|
|
|
|
printf("nothing to confirm\n"); |
|
|
printf("nothing to confirm\n"); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
|
|
|
strncpy(buffer, "ERR\n", 4); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
} else if (0 == strncasecmp("ERR", buffer, 3)) { |
|
|
} else if (0 == strncasecmp("ERR", buffer, 3)) { |
|
|
switch (issuer.state) { |
|
|
|
|
|
case JOINPROCEED: |
|
|
|
|
|
printf("command failed at client\n"); |
|
|
|
|
|
issuer.state = READY; |
|
|
|
|
|
break; |
|
|
|
|
|
default: |
|
|
|
|
|
issuer.state = READY; |
|
|
|
|
|
printf("ignoring command\n"); |
|
|
printf("ignoring command\n"); |
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
} else if (0 == strncasecmp("ABORT", buffer, 5)) { |
|
|
} else if (0 == strncasecmp("ABORT", buffer, 5)) { |
|
|
switch (issuer.state) { |
|
|
switch (issuer.state) { |
|
|
case JOINSTART: |
|
|
case JOINSTART: |
|
|
case JOINPROCEED: |
|
|
|
|
|
printf("aborting join\n"); |
|
|
printf("aborting join\n"); |
|
|
issuer.state = READY; |
|
|
issuer.state = READY; |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
bzero(buffer, MAX_BUFSIZE); |
|
|
@ -90,7 +68,6 @@ int process_issuer(char *buffer) { |
|
|
switch (issuer.state) { |
|
|
switch (issuer.state) { |
|
|
case READY: |
|
|
case READY: |
|
|
case JOINSTART: |
|
|
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; |
|
|
@ -124,7 +101,7 @@ 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 = JOINPROCEED; |
|
|
issuer.state = READY; |
|
|
} |
|
|
} |
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
@ -136,7 +113,6 @@ 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: |
|
|
case JOINSTART: |
|
|
issuer_publish(buffer); |
|
|
issuer_publish(buffer); |
|
|
break; |
|
|
break; |
|
|
|