X-Git-Url: http://git.meshlink.io/?p=utcp;a=blobdiff_plain;f=selftest.c;h=8abf4cc6fdd56e3081ac0762c6bef78116ab489a;hp=c0ecd3a600bffc05b335e1032454ed10ae9c75ab;hb=5ded633782709710c42648c71154d6062e83b7a6;hpb=45780e57bcc77d6c5f146dea0bb1924cad25bd83 diff --git a/selftest.c b/selftest.c index c0ecd3a..8abf4cc 100644 --- a/selftest.c +++ b/selftest.c @@ -10,7 +10,7 @@ struct utcp *a; struct utcp *b; struct utcp_connection *c; -int do_recv(struct utcp_connection *x, const void *data, size_t len) { +ssize_t do_recv(struct utcp_connection *x, const void *data, size_t len) { if(!len) { if(errno) fprintf(stderr, "%p Error: %s\n", x->utcp, strerror(errno)); @@ -24,11 +24,9 @@ int do_recv(struct utcp_connection *x, const void *data, size_t len) { } if(x == c) - write(0, data, len); + return write(0, data, len); else - utcp_send(x, data, len); - - return 0; + return utcp_send(x, data, len); } bool do_pre_accept(struct utcp *utcp, uint16_t port) { @@ -43,7 +41,7 @@ void do_accept(struct utcp_connection *c, uint16_t port) { utcp_accept(c, do_recv, NULL); } -int do_send(struct utcp *utcp, const void *data, size_t len) { +ssize_t do_send(struct utcp *utcp, const void *data, size_t len) { static int count = 0; if(++count > 1000) { fprintf(stderr, "Too many packets!\n"); @@ -84,7 +82,7 @@ int main(int argc, char *argv[]) { ssize_t len = utcp_send(c, "Hello world!\n", 13); if(len != 13) { - if(len < 0) + if(len == -1) fprintf(stderr, "Error: %s\n", strerror(errno)); else fprintf(stderr, "Short write %zd!\n", len); @@ -92,7 +90,7 @@ int main(int argc, char *argv[]) { len = utcp_send(c, "This is a test.\n", 16); if(len != 16) { - if(len < 0) + if(len == -1) fprintf(stderr, "Error: %s\n", strerror(errno)); else fprintf(stderr, "Short write %zd!\n", len); @@ -114,6 +112,8 @@ int main(int argc, char *argv[]) { fprintf(stderr, "closing...\n"); utcp_close(c); + utcp_exit(a); + utcp_exit(b); return 0; }