NAME
disconnectx – disconnects a connection on a socket
SYNOPSIS
#include <sys/socket.h>
int
disconnectx(int socket, sae_associd_t associd, sae_connid_t connid);
DESCRIPTION
The parameter socket is a socket. The communication domain of the socket determines the availability and behavior of disconnectx(). For connection-oriented socket, disconnectx() is analogous to shutdown(2) with SHUT_RDWR issued on the socket. For connectionless socket, it disassociates any existing association to the peer socket.
The parameter associd specifies the association identifier. It should be set to SAE_ASSOCID_ANY.
The parameter connid should be set to SAE_CONNID_ANY.
NOTES
disconnectx() is currently supported only on AF_INET and AF_INET6 sockets of type SOCK_DGRAM and SOCK_STREAM.
RETURN VALUES
The disconnectx() function returns the value 0 if successful; otherwise the value of -1 is returned and the global integer variable errno is set to indicate the error.
ERRORS
The disconnectx() system call succeeds unless:
- [EALREADY]
-
Operation already in progress.
- [EBADF]
-
Socket is not a valid descriptor.
- [EINVAL]
-
The associd or connid argument is invalid or the underlying protocol is no longer attached to socket.
- [ENOTCONN]
-
The socket is not connected.
- [ENOTSOCK]
-
Socket is a file, not a socket.
SEE ALSO
HISTORY
The disconnectx() function call appeared in Darwin 15.0.0