Shuts down all or part of a bidirectional connection on a socket.
This function does not allow further receives or sends, or both.
The $QIO equivalent is the IO$_DEACCESS function with the
IO$M_SHUTDOWN function modifier.
Format
#include <socket.h>
int shutdown ( int s, int how) ;
1 – Arguments
s
A socket descriptor that is in a connected state as a result of a
previous call to either connect() or accept().
how
How the socket is to be shut down. Use one of the following
values:
0 Do not allow further calls to recv() on the socket.
1 Do not allow further calls to send() on the socket.
2 Do not allow further calls to both send() and recv().
2 – Description
This function allows communications on a socket to be shut down
one direction at a time rather than all at once. You can use the
shutdown() function to shut down one direction in a full-duplex
(bidirectional) connection.
Related Functions
See also connect() and socket().
3 – Return Values
0 Successful completion.
-1 Error; errno is set to indicate the error.
4 – Errors
EBADF The socket descriptor is invalid.
EINVAL The how argument is invalid.
ENOBUFS The system has insufficient resources to
complete the call.
ENOTCONN The specified socket is not connected.
ENOTSOCK The socket descriptor is invalid.