int main(int argc, char **argv) { mesh_t meshA = mesh_new(3); fail_unless(meshA); lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); fail_unless(ext_link_auto(meshA)); mesh_t meshB = mesh_new(3); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); fail_unless(ext_link_auto(meshB)); net_loopback_t pair = net_loopback_new(meshA,meshB); fail_unless(pair); link_t linkAB = link_get(meshA, meshB->id->hashname); link_t linkBA = link_get(meshB, meshA->id->hashname); fail_unless(linkAB); fail_unless(linkBA); fail_unless(link_sync(linkAB)); // lob_t block = lob_new(); // lob_append(block,NULL,1500); // fail_unless(ext_block_send(linkAB,block)); // fail_unless(ext_block_receive(meshB)); return 0; }
int main(int argc, char **argv) { mesh_t meshA = mesh_new(); fail_unless(meshA); mesh_on_link(meshA, "test", link_check); // testing the event being triggered lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); mesh_t meshB = mesh_new(); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); net_loopback_t pair = net_loopback_new(meshA,meshB); fail_unless(pair); link_t linkAB = link_get(meshA, meshB->id); link_t linkBA = link_get(meshB, meshA->id); fail_unless(linkAB); fail_unless(linkBA); fail_unless(link_resync(linkAB)); fail_unless(link_up(linkAB)); fail_unless(link_up(linkBA)); fail_unless(status); fail_unless(mesh_process(meshA,1)); fail_unless(mesh_linked(meshA, hashname_char(meshB->id),0)); fail_unless(mesh_unlink(linkAB)); fail_unless(mesh_process(meshA,1)); fail_unless(!mesh_linked(meshA, hashname_char(meshB->id),0)); fail_unless(!status); return 0; }
int main(int argc, char **argv) { mesh_t meshA = mesh_new(3); fail_unless(meshA); lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); fail_unless(ext_stream(meshA)); mesh_t meshB = mesh_new(3); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); fail_unless(ext_stream(meshB)); net_loopback_t pair = net_loopback_new(meshA,meshB); fail_unless(pair); link_t linkAB = link_get(meshA, meshB->id->hashname); link_t linkBA = link_get(meshB, meshA->id->hashname); fail_unless(linkAB); fail_unless(linkBA); fail_unless(link_resync(linkAB)); // fail_unless(ext_link_status(linkAB,NULL)); // fail_unless(ext_link_status(linkBA,NULL)); return 0; }
int main(int argc, char **argv) { mesh_t meshA = mesh_new(); fail_unless(meshA); lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); mesh_t meshB = mesh_new(); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); net_tcp4_t netA = net_tcp4_new(meshA, NULL); fail_unless(netA); fail_unless(netA->port > 0); fail_unless(netA->path); LOG("netA %.*s",netA->path->head_len,netA->path->head); net_tcp4_t netB = net_tcp4_new(meshB, NULL); fail_unless(netB); fail_unless(netB->port > 0); LOG("netB %.*s",netB->path->head_len,netB->path->head); link_t linkAB = link_keys(meshA, meshB->keys); link_t linkBA = link_keys(meshB, meshA->keys); fail_unless(linkAB); fail_unless(linkBA); fail_unless(link_path(linkAB,netB->path)); fail_unless(link_path(linkBA,netA->path)); link_sync(linkAB); // let tcp go back and forth enough, need a better way to do this int loop; for(loop = 10; loop; loop--) { net_tcp4_loop(netB); net_tcp4_loop(netA); } fail_unless(e3x_exchange_out(linkBA->x,0) >= e3x_exchange_out(linkAB->x,0)); fail_unless(e3x_exchange_out(linkBA->x,0) == e3x_exchange_out(linkAB->x,0)); return 0; }
int main(int argc, char **argv) { mesh_t meshA = mesh_new(3); fail_unless(meshA); lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); mesh_t meshB = mesh_new(3); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); net_serial_t netA = net_serial_new(meshA, NULL); fail_unless(netA); pipe_t pAB = net_serial_add(netA, "sAB", readerA, writerA, 64); fail_unless(pAB); net_serial_t netB = net_serial_new(meshB, NULL); fail_unless(netB); pipe_t pBA = net_serial_add(netB, "sBA", readerB, writerB, 64); fail_unless(pBA); link_t linkAB = link_pipe(link_keys(meshA, meshB->keys), pAB); link_t linkBA = link_pipe(link_keys(meshB, meshA->keys), pBA); fail_unless(linkAB); fail_unless(linkBA); link_sync(linkAB); // let serial go go go int loop; for(loop = 2000; loop; loop--) { net_serial_loop(netB); net_serial_loop(netA); } LOG("BA %d AB %d",e3x_exchange_out(linkBA->x,0),e3x_exchange_out(linkAB->x,0)); fail_unless(e3x_exchange_out(linkBA->x,0) >= e3x_exchange_out(linkAB->x,0)); fail_unless(e3x_exchange_out(linkBA->x,0) == e3x_exchange_out(linkAB->x,0)); return 0; }
int main(int argc, char **argv) { mesh_t meshA = mesh_new(3); fail_unless(meshA); lob_t secretsA = mesh_generate(meshA); fail_unless(secretsA); mesh_t meshB = mesh_new(3); fail_unless(meshB); lob_t secretsB = mesh_generate(meshB); fail_unless(secretsB); net_udp4_t netA = net_udp4_new(meshA, NULL); fail_unless(netA); fail_unless(netA->port > 0); fail_unless(netA->path); fail_unless(lob_match(meshA->paths,"type","udp4")); LOG("netA %.*s",netA->path->head_len,netA->path->head); net_udp4_t netB = net_udp4_new(meshB, NULL); fail_unless(netB); fail_unless(netB->port > 0); LOG("netB %.*s",netB->path->head_len,netB->path->head); link_t linkAB = link_keys(meshA, meshB->keys); link_t linkBA = link_keys(meshB, meshA->keys); fail_unless(linkAB); fail_unless(linkBA); fail_unless(link_path(linkAB,netB->path)); fail_unless(link_path(linkBA,netA->path)); link_sync(linkAB); net_udp4_receive(netB); fail_unless(e3x_exchange_out(linkBA->x,0) >= e3x_exchange_out(linkAB->x,0)); net_udp4_receive(netA); fail_unless(e3x_exchange_out(linkBA->x,0) == e3x_exchange_out(linkAB->x,0)); return 0; }
int main(int argc, char* argv[]){ string infile = ""; if (argc > 1){ infile = argv[0]; } infile = "/Users/kelicheng/Desktop/hercules_inputs "; param = new Param(infile); mesh_generate(); return 0; }