Knowing When Not
to Use shutdown(2)
The shutdown(2) function
is documented to return the errors shown in Table 1.2.
Error
|
Description
|
ENOTSOCK
|
Given socket is
not a valid file descriptor.
|
ENOTSOCK
|
Given file
descriptor is not a socket.
|
ENOTCONN
|
The specified
socket is not connected.
|
Table 1.2:
Possible errors returned by shutdown(2)
From Table 1.2,
you can see that you should only call shutdown(2) for connected sockets. Otherwise,
the error code ENOTCONN is returned.
NOTE
The shutdown(2) function
does not release the socket's file unit number, even when SHUT_RDWR is used.
The socket's file descriptor remains valid and in use until the function close(2)
is called to release it. Note also that shutdown(2) can be called more.
No comments:
Post a Comment