Files
@ 18a1548e4a31
Branch filter:
Location: CSY/reowolf/examples/pres_5/amy.c - annotation
18a1548e4a31
1.3 KiB
text/x-csrc
fleshed out interop examples with concrete socket addresses
7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 14c1a07d148a 14c1a07d148a 7f75e1f23836 14c1a07d148a 14c1a07d148a 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 7f75e1f23836 |
#include "../../reowolf.h"
#include "../utility.c"
int main(int argc, char** argv) {
// Create a connector, configured with our (trivial) protocol.
Arc_ProtocolDescription * pd = protocol_description_parse("", 0);
char logpath[] = "./pres_3_amy.txt";
Connector * c = connector_new_logging(pd, logpath, sizeof(logpath)-1);
rw_err_peek(c);
// ... with 2 outgoing network connections
PortId ports[2];
FfiSocketAddr addr = {{127,0,0,1}, 8000};
connector_add_net_port(c, &ports[0], addr, Polarity_Putter, EndpointPolarity_Passive);
rw_err_peek(c);
addr.port = 8001;
connector_add_net_port(c, &ports[1], addr, Polarity_Putter, EndpointPolarity_Passive);
rw_err_peek(c);
// Connect with peers (5000ms timeout).
connector_connect(c, 5000);
rw_err_peek(c);
printf("Round 0. Putting {ports[0]=\"r0p0\", ports[1]=\"r0p1\"}\n");
connector_put_bytes(c, ports[0], "r0p0", 4);
connector_put_bytes(c, ports[1], "r0p1", 4);
connector_sync(c, 1000);
rw_err_peek(c);
printf("Round 1. Putting {ports[1]=\"r1p1\"}\n");
connector_put_bytes(c, ports[1], "r1p1", 4);
connector_sync(c, 1000);
rw_err_peek(c);
printf("Round 2. Putting {ports[0]=\"r2p0\"}\n");
connector_put_bytes(c, ports[0], "r2p0", 4);
connector_sync(c, 1000);
rw_err_peek(c);
printf("\nExiting\n");
protocol_description_destroy(pd);
connector_destroy(c);
sleep(1.0);
return 0;
}
|