Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ recvmsg(2) — DG/UX R4.11

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

read(2)

readv(2)

recvfrom(2)

send(2)

socket(2)



recvmsg(2)                        SDK R4.11                       recvmsg(2)


NAME
       recvmsg - receive a message from a socket

SYNOPSIS
       #include <sys/socket.h>

       int    recvmsg (s, msg, userflags)
       int    s;
       struct msghdr * msg;
       int    userflags;

   where:
       s              File descriptor of socket to receive from

       msg            Pointer to receive msg packet

       userflags     Flags for transfer

DESCRIPTION
       The recvmsg call is identical to recv or recvfrom depending on
       whether or not the msgnamelen fields are greater than zero.  If the
       msgnamelen field of the msghdr structure is non-zero, this call is
       identical to recvfrom, otherwise it is identical to recv.

       The added value of this call is that it allows an IOV to be supplied
       in the msg packet for use of non-contiguous buffers (see readv for
       more information about IOV structures).

ACCESS CONTROL
       None.

RETURN VALUE
       These calls return the number of bytes received.

       0..len    Number of bytes transferred.

       -1        An error occurred.  errno is set to indicate the error.

DIAGNOSTICS
       Errno may be set to one of the following error codes:

       EBADF     The argument s is not an active valid descriptor.

       ENOTSOCK  The argument s is not a socket.

       EAGAIN    The socket is marked non-blocking and the receive operation
                 would block.

       EINTR     The receive was interrupted by delivery of a signal before
                 any data was available for the receive.

       EFAULT    The data was specified to be received into a non-existent
                 or protected part of the process address space.

       EMSGSIZE  Too many entries in the iovec array.

SEE ALSO
       read(2), readv(2), recvfrom(2), send(2), socket(2).


Licensed material--property of copyright holder(s)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026