SHUTDOWN(2) |
Linux Programmer's Manual |
SHUTDOWN(2) |
名前
shutdown -全二重接続の一部を閉じる
書式
#include <sys/socket.h>
int shutdown(int
sockfd
, int
how
);
説明
shutdown() は、
sockfd に関連づけられているソケットによる全二重接続 (full-duplex connection) の一部または全てを閉じる。
how が
SHUT_RD ならば、それ以降の受信を禁止する。
how が
SHUT_WR ならば、それ以降の送信を禁止する。
how が
SHUT_RDWR ならば、それ以降の送受信を禁止する。
返り値
成功した場合は 0 が返される。エラーの場合は-1 が返され、
errno が適切に設定される。
エラー
-
EBADF
-
sockfd が有効なディスクリプターでない。
-
EINVAL
-
An invalid value was specified in
how (but see BUGS).
-
ENOTCONN
-
指定されたソケットは接続されていない。
-
ENOTSOCK
-
sockfd がソケットでなくファイルである。
準拠
POSIX.1-2001, 4.4BSD (
shutdown() 関数コールは 4.2BSD で初めて登場した)。
注意
SHUT_RD,
SHUT_WR,
SHUT_RDWR の各定数 (それぞれ 0, 1, 2 の値を持つ) は glibc-2.1.91 以降、
<sys/socket.h> で定義されている。
バグ
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.
関連項目
connect(2),
socket(2),
socket(7)
この文書について
この man ページは Linux
man-pages プロジェクトのリリース 3.51 の一部である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。