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));
}
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) {
+ (void)utcp;
fprintf(stderr, "pre-accept\n");
if(port != 7)
return false;
}
void do_accept(struct utcp_connection *c, uint16_t port) {
+ (void)port;
fprintf(stderr, "accept\n");
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");
}
int main(int argc, char *argv[]) {
+ (void)argc;
+ (void)argv;
+
srand(time(NULL));
a = utcp_init(do_accept, do_pre_accept, do_send, NULL);
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);
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);