Shuts down a socket connection in the manner indicated by HOW, which has the same interpretation as in the syscall of the same name.
This is useful with sockets when you want to tell the other side you're done writing but not done reading, or vice versa. It's also a more insistent form of close because it also disables the file descriptor in any forked copies in other processes.
for success; on error, returns
the first argument is not a valid filehandle, or returns
for any other failure.