SHUTDOWN

Section: Linux Programmer's Manual (2)
Updated: 2012-09-06
Index Return to Main Contents
 

NAME

shutdown - shut down part of a full-duplex connection  

SYNOPSIS

#include <sys/socket.h>

int shutdown(int sockfd, int how);  

DESCRIPTION

The shutdown() call causes all or part of a full-duplex connection on the socket associated with sockfd to be shut down. If how is SHUT_RD, further receptions will be disallowed. If how is SHUT_WR, further transmissions will be disallowed. If how is SHUT_RDWR, further receptions and transmissions will be disallowed.  

RETURN VALUE

On success, zero is returned. On error, -1 is returned, and errno is set appropriately.  

ERRORS

EBADF
sockfd is not a valid descriptor.
EINVAL
An invalid value was specified in how (but see BUGS).
ENOTCONN
The specified socket is not connected.
ENOTSOCK
sockfd is a file, not a socket.
 

CONFORMING TO

POSIX.1-2001, 4.4BSD (the shutdown() function call first appeared in 4.2BSD).  

NOTES

The constants SHUT_RD, SHUT_WR, SHUT_RDWR have the value 0, 1, 2, respectively, and are defined in <sys/socket.h> since glibc-2.1.91.  

BUGS

As currently implemented, checks for the validity of how are done in domain-specific code, and not all domains perform these checks. Most notably, UNIX domain sockets simply ignore invalid values; this may change in the future.  

SEE ALSO

connect(2), socket(2), socket(7)  

COLOPHON

This page is part of release 3.74 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at http://www.kernel.org/doc/man-pages/.


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
CONFORMING TO
NOTES
BUGS
SEE ALSO
COLOPHON