LIBRARY
Lb libcSYNOPSIS
In sys/types.h In sys/socket.h Ft int Fn shutdown int s int howDESCRIPTION
The Fn shutdown system call disables sends or receives on a socket. The Fa how argument specifies the type of shutdown. Possible values are:- SHUT_RD
- Further receives will be disallowed.
- SHUT_WR
- Further sends will be disallowed. This may cause actions specific to the protocol family of the socket Fa s to happen; see Sx IMPLEMENTATION NOTES .
- SHUT_RDWR
- Further sends and receives will be disallowed. Implies SHUT_WR
If the file descriptor Fa s is associated with a SOCK_STREAM socket, all or part of the full-duplex connection will be shut down.
IMPLEMENTATION NOTES
The following protocol specific actions apply to the use of SHUT_WR (and potentially also SHUT_RDWR ) based on the properties of the socket associated with the file descriptor Fa s .- Domain Ta Type Ta Protocol Ta Return value and action
- PF_INET Ta SOCK_DGRAM Ta IPPROTO_SCTP Ta Return -1.
- The global variable errno will be set to Er EOPNOTSUPP .
- PF_INET Ta SOCK_DGRAM Ta IPPROTO_UDP Ta Return 0.
- ICMP messages will not be generated.
- PF_INET Ta SOCK_STREAM Ta IPPROTO_SCTP Ta Return 0.
- Send queued data and tear down association.
- PF_INET Ta SOCK_STREAM Ta IPPROTO_TCP Ta Return 0.
- Send queued data, wait for ACK, then send FIN.
- PF_INET6 Ta SOCK_DGRAM Ta IPPROTO_SCTP Ta Return -1.
- The global variable errno will be set to Er EOPNOTSUPP .
- PF_INET6 Ta SOCK_DGRAM Ta IPPROTO_UDP Ta Return 0.
- ICMP messages will not be generated.
- PF_INET6 Ta SOCK_STREAM Ta IPPROTO_SCTP Ta Return 0.
- Send queued data and tear down association.
- PF_INET6 Ta SOCK_STREAM Ta IPPROTO_TCP Ta Return 0.
- Send queued data, wait for ACK, then send FIN.
RETURN VALUES
Rv -std shutdownERRORS
The Fn shutdown system call fails if:- Bq Er EBADF
- The Fa s argument is not a valid file descriptor.
- Bq Er EINVAL
- The Fa how argument is invalid.
- Bq Er EOPNOTSUPP
- The socket associated with the file descriptor Fa s does not support this operation.
- Bq Er ENOTCONN
- The Fa s argument specifies a SOCK_STREAM socket which is not connected.
- Bq Er ENOTSOCK
- The Fa s argument does not refer to a socket.
STANDARDS
The Fn shutdown system call is expected to comply with St -p1003.1g-2000 , when finalized.HISTORY
The Fn shutdown system call appeared in BSD 4.2 The SHUT_RD , SHUT_WR and SHUT_RDWR constants appeared in St -p1003.1g-2000 .AUTHORS
An -nosplit This manual page was updated by An Bruce M. Simpson Aq [email protected] to reflect how Fn shutdown behaves with PF_INET and PF_INET6 sockets.BUGS
The ICMP ``port unreachable '' message should be generated in response to datagrams received on a local port to which Fa s is bound after Fn shutdown is called.