From 3303c6bc1618b45467005a31a46f0cbd67b772e4 Mon Sep 17 00:00:00 2001 From: lanfer Date: Thu, 15 Jun 2000 12:29:49 +0000 Subject: adding routine to set socket connection to non-blocking git-svn-id: http://svn.cactuscode.org/arrangements/CactusConnect/Socket/trunk@6 9697cf00-7f2a-4e1b-af3c-314b8e4b499e --- src/SocketUtils.h | 5 +++++ src/Utils.c | 15 +++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/SocketUtils.h b/src/SocketUtils.h index 61ba6a0..37931c0 100644 --- a/src/SocketUtils.h +++ b/src/SocketUtils.h @@ -88,11 +88,16 @@ int Socket_TCPBlockingWrite(int fd, char *buffer, int buflen); ** to stderr, define PERRORS. **=================================================================*/ int Socket_TCPBlockingRead(int fd,char *buffer,int buflen); + + +int Socket_SetNonBlocking(int sock); + #else int Socket_TCPOpenClientSock(); int Socket_TCPOpenServerSock(); int Socket_TCPBlockingWrite(); int Socket_TCPBlockingRead(); +int Socket_SetNonBlocking(); #endif #define PERRORS diff --git a/src/Utils.c b/src/Utils.c index 62e95c7..4aee4c0 100644 --- a/src/Utils.c +++ b/src/Utils.c @@ -23,6 +23,8 @@ #include #include #include +#include +#include #include "SocketUtils.h" @@ -409,3 +411,16 @@ int Socket_TCPBlockingRead(int fd,char *buffer, int buflen) return accum; } } + +int Socket_SetNonBlocking(int sock) +{ + int retval,ierr; + ierr = fcntl (sock, F_SETFL, O_NONBLOCK); + + if (ierr<0) + retval = -1; + else + retval = 0; + + return(retval); +} -- cgit v1.2.3