Man Linux: Main Page and Category List

NAME

       netread - receive a message from a socket

SYNOPSIS

       #include "net.h"

       int netread (int s, char *buf, int nbytes);

       ssize_t netread_timeout (int s, void *buf, size_t nbytes, int timeout);

DESCRIPTION

       netread receives a message from a socket.   It  overcomes  the  message
       fragmentation  problem  and  always  waits  for  all requested bytes to
       arrive or a timeout/error occurs.

RETURN VALUE

       This  routine  returns  the  number  of  bytes  if  the  operation  was
       successful,  0  if the connection was closed by the remote end or -1 if
       the operation failed. In the latter case, serrno is set  appropriately.

ERRORS

       EINTR       The function was interrupted by a signal.

       EBADF       s is not a valid descriptor.

       EAGAIN      The   socket  is  non-blocking  and  there  is  no  message
                   available.

       EFAULT      buf is not a valid pointer.

       EINVAL      nbytes is negative or zero.

       ENOTSOCK    s is not a socket.

       SECONNDROP  Connection closed by remote end.

       SETIMEDOUT  Timed out.

SEE ALSO

       recv(2), neterror(3)

AUTHOR

       LCG Grid Deployment Team