diff --git a/test/echo-server.c b/test/echo-server.c index 40522982..d29f0f88 100644 --- a/test/echo-server.c +++ b/test/echo-server.c @@ -77,6 +77,8 @@ void after_read(oio_handle* handle, int nread, oio_buf buf) { return; } + peer = (peer_t*) handle->data; + oio_req_init(&peer->req, &peer->handle, after_write); peer->req.data = peer; peer->buf.base = buf.base; @@ -102,7 +104,7 @@ void on_accept(oio_handle* server) { FATAL("oio_accept failed"); } - oio_read_start(server, after_read); + oio_read_start(&p->handle, after_read); } diff --git a/test/test-ping-pong.c b/test/test-ping-pong.c index c52e6785..52a3c6d0 100644 --- a/test/test-ping-pong.c +++ b/test/test-ping-pong.c @@ -42,7 +42,6 @@ typedef struct { oio_handle handle; oio_req connect_req; oio_req read_req; - oio_buf buf; char read_buffer[BUFSIZE]; } pinger_t; @@ -108,7 +107,7 @@ static void pinger_read_cb(oio_handle* handle, int nread, oio_buf buf) { /* Now we count the pings */ for (i = 0; i < nread; i++) { - ASSERT(pinger->buf.base[i] == PING[pinger->state]); + ASSERT(buf.base[i] == PING[pinger->state]); pinger->state = (pinger->state + 1) % (sizeof(PING) - 1); if (pinger->state == 0) { printf("PONG %d\n", pinger->pongs); @@ -143,8 +142,6 @@ void pinger_new() { pinger = (pinger_t*)malloc(sizeof(*pinger)); pinger->state = 0; pinger->pongs = 0; - pinger->buf.len = BUFSIZE; - pinger->buf.base = (char*)&pinger->read_buffer; /* Try to connec to the server and do NUM_PINGS ping-pongs. */ r = oio_tcp_init(&pinger->handle, pinger_on_close, (void*)pinger);