Query: sendto
OS: ultrix
Section: 2
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
send(2) System Calls Manual send(2) Name send, sendto, sendmsg - send a message from a socket Syntax #include <sys/types.h> #include <sys/socket.h> cc = send(s, msg, len, flags) int cc, s; char *msg; int len, flags; cc = sendto(s, msg, len, flags, to, tolen) int cc, s; char *msg; int len, flags; struct sockaddr *to; int tolen; cc = sendmsg(s, msg, flags) int cc, s; struct msghdr msg[]; int flags; Description The and system calls are used to transmit a message to another socket. The system call may be used only when the socket is in a connected state, while the and system calls may be used at any time. The address of the target is given by to, with tolen specifying its size. The length of the message is given by len. If the message is too long to pass atomically through the underlying protocol, the error EMSGSIZE is returned, and the message is not transmitted. If the address specified in the argument is a broadcast address, the SO_BROADCAST option must be set for broadcasting to succeed. No indication of failure to deliver is implicit in a Return values of -1 indicate some locally detected errors. If no messages space is available at the socket to hold the message to be transmitted, normally blocks, unless the socket has been placed in nonblocking I/O mode. The call can be used to determine when it is possible to send more data. The flags parameter can be set to MSG_OOB to send out-of-band data on sockets that support this features (for example, SOCK_STREAM). See for a description of the msghdr structure. The call returns the number of characters sent, or -1 if an error occurred. Diagnostics [EBADF] An invalid descriptor was specified. [EDESTADDRREQ] A required address was omitted from an operation on a socket. [EFAULT] An invalid user space address was specified for a parameter. [EINVAL] An invalid argument length for the message was specified. [EINTR] The send was interrupted by delivery of a signal. [ENOTCONN] The socket is not connected. [ENOTSOCK] The argument s is not a socket. [EMSGSIZE] The socket requires that messages be sent atomically, and the size of the message to be sent made this impossible. [EPIPE] A write on a pipe or socket for which there is no process to read the data. [EWOULDBLOCK] The socket is marked nonblocking, and the requested operation would block. See Also recv(2), getsockopt(2), socket(2) send(2)
Related Man Pages |
---|
sendto(2) - bsd |
send(2) - ultrix |
sendmsg(2) - ultrix |
sendto(2) - opendarwin |
sendmsg(2) - netbsd |
Similar Topics in the Unix Linux Community |
---|
read system call |
message queues |
log send, sendrec, recv and notify system calls |
read from socket |
How to avoid 'No buffer space available' on C socket? |