Files
@ 4776bcc45b33
Branch filter:
Location: CSY/reowolf/examples/5_recovery/amy.c - annotation
4776bcc45b33
1.2 KiB
text/x-csrc
serde for protocol {component state, description} + start of v2 connector internals
33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 1f2d007ac1cc 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 1f2d007ac1cc 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 a286c28bcdcf a286c28bcdcf a286c28bcdcf a286c28bcdcf a286c28bcdcf a286c28bcdcf a286c28bcdcf 1f2d007ac1cc a286c28bcdcf a286c28bcdcf a286c28bcdcf 1f2d007ac1cc a286c28bcdcf a286c28bcdcf 1f2d007ac1cc 1f2d007ac1cc 33da6b69e9a2 33da6b69e9a2 7e4b7b7026e6 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 33da6b69e9a2 | #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "../../reowolf.h"
#include "../utility.c"
int main() { // AMY
char * pdl = buffer_pdl("eg_protocols.pdl");
Connector* c = connector_new();
printf("configuring...\n");
check("config ", connector_configure(c, pdl, "sync_two"));
check("bind 0 ", connector_bind_native(c, 0));
check("bind 1 ", connector_bind_native(c, 1));
check("bind 2 ", connector_bind_passive(c, 2, "127.0.0.1:7000"));
check("bind 3 ", connector_bind_passive(c, 3, "127.0.0.1:7001"));
printf("connecting...\n");
check("connect", connector_connect(c, 5000));
int round, code;
for(round = 0; true; round++) {
printf("\nround %d\n", round);
check("next ", connector_next_batch(c));
check("put ", connector_put(c, 0, "one", 3));
check("put ", connector_put(c, 1, "two", 3));
code = connector_sync(c, 3000);
if(code == 0) printf("sent neither message!");
else if(code == 1 ) printf("sent both messages!");
else if(code == -1) printf("No interaction! Recovered state.\n");
else {
printf("Unrecoverable error!\n");
connector_dump_log(c);
break;
}
}
printf("cleaning up...\n");
connector_destroy(c);
free(pdl);
return 0;
}
|