X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=test%2Fchannels-fork.c;h=cf916f095a5a3d71c6b5c9153e14bb7f6bb3bc45;hb=9e46fee1c71faad5e6f0b69ff9a92d01d0dad899;hp=db2a033f7b6617eea9a576c530707e2ac3379f75;hpb=668664d0ea90dc81670cccd7b7d56b36b8360eaa;p=meshlink diff --git a/test/channels-fork.c b/test/channels-fork.c index db2a033f..cf916f09 100644 --- a/test/channels-fork.c +++ b/test/channels-fork.c @@ -1,4 +1,4 @@ -#define _GNU_SOURCE +#define _GNU_SOURCE 1 #include #include #include @@ -18,12 +18,18 @@ void log_cb(meshlink_handle_t *mesh, meshlink_log_level_t level, const char *tex } void status_cb(meshlink_handle_t *mesh, meshlink_node_t *node, bool reachable) { + (void)mesh; + if(!strcmp(node->name, "bar")) { bar_reachable = reachable; } } void foo_receive_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, const void *data, size_t len) { + (void)mesh; + (void)channel; + (void)len; + if(len == 5 && !memcmp(data, "Hello", 5)) { bar_responded = true; } @@ -35,6 +41,12 @@ void bar_receive_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, const } bool reject_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, uint16_t port, const void *data, size_t len) { + (void)mesh; + (void)channel; + (void)port; + (void)data; + (void)len; + return false; } @@ -53,6 +65,8 @@ bool accept_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, uint16_t po } void poll_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, size_t len) { + (void)len; + meshlink_set_channel_poll_cb(mesh, channel, NULL); if(meshlink_channel_send(mesh, channel, "Hello", 5) != 5) { @@ -61,9 +75,11 @@ void poll_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, size_t len) { } int main1(int rfd, int wfd) { + int ret_val; + (void)ret_val; meshlink_set_log_cb(NULL, MESHLINK_DEBUG, log_cb); - meshlink_handle_t *mesh1 = meshlink_open("channels_conf.1", "foo", "channels", DEV_CLASS_BACKBONE); + meshlink_handle_t *mesh1 = meshlink_open("channels_fork_conf.1", "foo", "channels", DEV_CLASS_BACKBONE); if(!mesh1) { fprintf(stderr, "Could not initialize configuration for foo\n"); @@ -82,13 +98,13 @@ int main1(int rfd, int wfd) { } size_t len = strlen(data); - write(wfd, &len, sizeof(len)); - write(wfd, data, len); + ret_val = write(wfd, &len, sizeof(len)); + ret_val = write(wfd, data, len); free(data); - read(rfd, &len, sizeof(len)); + ret_val = read(rfd, &len, sizeof(len)); char indata[len + 1]; - read(rfd, indata, len); + ret_val = read(rfd, indata, len); indata[len] = 0; fprintf(stderr, "Foo exchanged data\n"); @@ -152,11 +168,13 @@ int main1(int rfd, int wfd) { int main2(int rfd, int wfd) { + int ret_val; + (void)ret_val; sleep(1); meshlink_set_log_cb(NULL, MESHLINK_DEBUG, log_cb); - meshlink_handle_t *mesh2 = meshlink_open("channels_conf.2", "bar", "channels", DEV_CLASS_BACKBONE); + meshlink_handle_t *mesh2 = meshlink_open("channels_fork_conf.2", "bar", "channels", DEV_CLASS_BACKBONE); if(!mesh2) { fprintf(stderr, "Could not initialize configuration for bar\n"); @@ -184,9 +202,9 @@ int main2(int rfd, int wfd) { free(data); - read(rfd, &len, sizeof(len)); + ret_val = read(rfd, &len, sizeof(len)); char indata[len + 1]; - read(rfd, indata, len); + ret_val = read(rfd, indata, len); indata[len] = 0; fprintf(stderr, "Bar exchanged data\n"); @@ -210,11 +228,13 @@ int main2(int rfd, int wfd) { } -int main(int argc, char *argv[]) { +int main() { + int ret_val; + (void)ret_val; int fda[2], fdb[2]; - pipe2(fda, 0); - pipe2(fdb, 0); + ret_val = pipe2(fda, 0); + ret_val = pipe2(fdb, 0); if(fork()) { return main1(fda[0], fdb[1]);