ID EN
Socket

sendmsg

Python 3.11

Send normal and ancillary data to the socket, gathering the non-ancillary data from a series of buffers and concatenating it into a single message. The buffers argument specifies the non-ancillary data as an iterable of bytes-like objects (e.g. bytes objects); the operating system may set a limit (sysconf() value SC_IOV_MAX) on the number of buffers that can be used. The ancdata argument specifies the ancillary data (control messages) as an iterable of zero or more tuples (cmsg_level, cmsg_type, cmsg_data), where cmsg_level and cmsg_type are integers specifying the protocol level and protocol-

Syntax

PYTHON
socket.sendmsg(buffers[, ancdata[, flags[, address]]])

Examples

Example 1
PYTHON
import socket, array

def send_fds(sock, msg, fds):
    return sock.sendmsg([msg], [(socket.SOL_SOCKET, socket.SCM_RIGHTS, array.array("i", fds))])

See Also

bytes-like objects bytes sysconf() CMSG_SPACE() send() AF_UNIX recvmsg() Availability