Error Set RecvMsgError [src]

Errors

BrokenPipe RecvFromError

The other end closed the socket unexpectedly or a read is executed on a shut down socket

ConnectionRefused RecvFromError

A remote host refused to allow the network connection, typically because it is not running the requested service.

ConnectionResetByPeer RecvFromError
ConnectionTimedOut RecvFromError
MessageTooBig RecvFromError

The UDP message was too big for the buffer and part of it has been discarded

NetworkSubsystemFailed RecvFromError

The network subsystem has failed.

ProcessFdQuotaExceeded

Reception of SCM_RIGHTS fds via ancillary data in msg.control would exceed some process limit (generally this is retryable by trying to receive fewer fds, closing some existing fds, or changing the ulimit)

SocketNotBound RecvFromError

The socket has not been bound.

SocketNotConnected RecvFromError

The socket is not connected (connection-oriented sockets only).

SystemFdQuotaExceeded

Reception of SCM_RIGHTS fds via ancillary data in msg.control would exceed some system limit (generally this is retryable by trying to receive fewer fds or closing some existing fds)

SystemResources RecvFromError

Could not allocate kernel memory.

Unexpected UnexpectedError

The Operating System returned an undocumented error code.

This error is in theory not possible, but it would be better to handle this error than to invoke undefined behavior.

When this error code is observed, it usually means the Zig Standard Library needs a small patch to add the error code to the error set for the respective function.

WouldBlock RecvFromError

The socket is marked nonblocking and the requested operation would block, and there is no global event loop configured.

Source

pub const RecvMsgError = RecvFromError || error{ /// Reception of SCM_RIGHTS fds via ancillary data in msg.control would /// exceed some system limit (generally this is retryable by trying to /// receive fewer fds or closing some existing fds) SystemFdQuotaExceeded, /// Reception of SCM_RIGHTS fds via ancillary data in msg.control would /// exceed some process limit (generally this is retryable by trying to /// receive fewer fds, closing some existing fds, or changing the ulimit) ProcessFdQuotaExceeded, }