shutdown サブルーチン

目的

すべてのソケットの送受信操作をシャットダウンします。

ライブラリー

標準 C ライブラリー (libc.a)

構文

#include <sys/socket.h>

int shutdown ( Socket,  How)
int Socket, How;

説明

shutdown サブルーチンは、指定されたソケットでのすべての receive および send 操作を使用不可にします。

shutdown サブルーチンを含むすべてのアプリケーションは、特定の値に設定された _BSD マクロを使用してコンパイルする必要があります。 許容値は 43 および 44 です。 さらに、すべてのソケット・アプリケーションに BSD libbsd.a ライブラリーを組み込む必要があります。

パラメーター

項目 説明
ソケット ソケットの固有の名前を指定します。
どのように サブルーチン・シャットダウンのタイプを指定します。 以下の値を使用します。
0
以降の受信操作を使用不可にします。
1
以降の送信操作を使用不可にします。
※2
以降の送信操作および受信操作を使用不可にします。

戻り値

正常終了時には値 0 が返されます。

shutdown サブルーチンが失敗した場合、サブルーチン・ハンドラーは以下の関数を実行します。

  • 呼び出したプログラムに-11を返す。
  • 特定のエラーを示すエラー・コードを errno グローバル変数に移動します。 errno 変数の詳細については、「 プログラミングの一般概念: プログラムの作成およびデバッグ」の「 エラー通知オブジェクト・クラス 」を参照してください。

エラー・コード

以下のいずれかのエラーが発生すると、 shutdown サブルーチンは失敗します。

エラー 説明
EBADF Socket パラメーターが有効ではありません。
EINVAL How パラメーターが無効です。
ENOTCONN ソケットが接続していません。
ENOTSOCK Socket パラメーターは、ソケットではなくファイルを参照します。

ファイル

項目 説明
/usr/include/sys/socket.h ソケット定義が入っています。
/usr/include/sys/types.h 符号なしデータ・タイプの定義が入っています。