X-Git-Url: https://git.cworth.org/git?p=ttt;a=blobdiff_plain;f=src%2Fttt-socket.c;fp=src%2Fttt-socket.c;h=5bf36712a6f3b92ffb102e7eeb0328403a8af912;hp=20b96e263056103b87752fe6da432b5c8a89b63b;hb=8fbec78bf02e67469ffaea254d49c291f9987105;hpb=4f0f5e3d16e6ec375844c711d4f88d6fec79ae45 diff --git a/src/ttt-socket.c b/src/ttt-socket.c index 20b96e2..5bf3671 100644 --- a/src/ttt-socket.c +++ b/src/ttt-socket.c @@ -166,6 +166,7 @@ ttt_socket_create_client (const char *host, ttt_status_t status; struct sockaddr_in addr; int socket; + int flags; *socket_ret = -1; @@ -178,13 +179,15 @@ ttt_socket_create_client (const char *host, shutdown (socket, SHUT_RDWR); return status; } - + flags = fcntl(socket, F_GETFL); + flags |= O_NONBLOCK; + fcntl(socket, F_SETFL, flags); *socket_ret = socket; return TTT_STATUS_SUCCESS; } /* Exported: see ttt-socket.h for documentation. */ -void +ssize_t ttt_socket_read (int socket, void *buf, size_t count) @@ -192,11 +195,8 @@ ttt_socket_read (int socket, int bytes_read; char *cbuf = buf; - while (count) { bytes_read = xread (socket, cbuf, count); - cbuf += bytes_read; - count -= bytes_read; - } + return(bytes_read); } /* Exported: see ttt-socket.h for documentation. */