.\" by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
.\" Updated Sun Oct 12 JST 2003 by Kentaro Shirakata <argrath@ub32.org>
.\"
-.TH GETSOCKOPT 2 2008\-12\-03 Linux "Linux Programmer's Manual"
+.TH GETSOCKOPT 2 2014\-04\-28 Linux "Linux Programmer's Manual"
.SH 名前
getsockopt, setsockopt \- ソケットのオプションの設定と取得を行なう
.SH 書式
\fB const void *\fP\fIoptval\fP\fB, socklen_t \fP\fIoptlen\fP\fB);\fP
.fi
.SH 説明
-\fBgetsockopt\fP() と \fBsetsockopt\fP() は、ファイルディスクリプタ \fIsocket\fP
+\fBgetsockopt\fP() と \fBsetsockopt\fP() は、ファイルディスクリプター \fIsocket\fP
で参照されるソケットに関連するオプションの操作を行う。 オプションは複数のプロトコル層(level)に存在するかもしれないが、
これらは常に最上位のソケット層へと設定される。
-ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\93\8dä½\9cã\81\99ã\82\8bé\9a\9bã\81«ã\81¯ã\80\81ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®å±¤ (level) ã\81¨ ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®å\90\8då\89\8dã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\80\82 ã\82½ã\82±ã\83\83ã\83\88 API
+ソケットオプションを操作する際には、オプションの層 (level) と オプションの名前を指定しなければならない。 ソケット API
層でオプションを操作する為には、 \fIlevel\fP を \fBSOL_SOCKET\fP に指定する。
他の全ての層でオプションを操作する為には、与えられたオプションの 制御主体となるプロトコルのプロトコル番号を指定する。例えば、 オプションが
\fBTCP\fP プロトコルで解釈されるべきことを指示するには、 \fIlevel\fP に \fBTCP\fP のプロトコル番号を指定しなければならない。
\fIoptlen\fP は値と結果両用の引き数で、最初に \fIoptval\fP の指しているバッファーのサイズを与え、実際に返される値のサイズに
書き換えられる。もしオプション値を与えず、返されもしない場合には \fIoptval\fP は NULL でも良い。
-\fIoptname\fP ã\81\8aã\82\88ã\81³æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82ªã\83\97ã\82·ã\83§ã\83³ã\81¯è§£é\87\88ã\81\95ã\82\8cã\81\9aã\81«ã\80\81é\81©å\88\87ã\81ªã\83\97ã\83ã\83\88ã\82³ã\83«ã\83»ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81« 渡ã\81\95ã\82\8cã\81¦è§£é\87\88ã\81\95ã\82\8cã\82\8bã\80\82ã\82¤ã\83³ã\82¯ã\83«ã\83¼ã\83\89ã\83»ファイル
+\fIoptname\fP ã\81\8aã\82\88ã\81³æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82ªã\83\97ã\82·ã\83§ã\83³ã\81¯è§£é\87\88ã\81\95ã\82\8cã\81\9aã\81«ã\80\81é\81©å\88\87ã\81ªã\83\97ã\83ã\83\88ã\82³ã\83«ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81« 渡ã\81\95ã\82\8cã\81¦è§£é\87\88ã\81\95ã\82\8cã\82\8bã\80\82ã\82¤ã\83³ã\82¯ã\83«ã\83¼ã\83\89ファイル
\fI<sys/socket.h>\fP には後述のソケット層のオプションの定義が含まれている。 他のプロトコル層では名前や形式は異なる。
-マニュアルのセクション 4 の適切なエントリを参照すること。
+ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\81®ã\82»ã\82¯ã\82·ã\83§ã\83³ 4 ã\81®é\81©å\88\87ã\81ªã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92å\8f\82ç\85§ã\81\99ã\82\8bã\81\93ã\81¨ã\80\82
ほとんどのソケット層のオプションは \fIoptval\fP に \fIint\fP 引き数を利用する。 \fBsetsockopt\fP()
で、二値(boolean)オプションを有効(enable)にするにはゼロ以外を指定し、 無効(disable)にするにはゼロを指定する。
.\" not document the
.\" .BR SO_SNDLOWAT ", " SO_RCVLOWAT ", " SO_SNDTIMEO ", " SO_RCVTIMEO
.\" options
-SVr4, 4.4BSD (ã\81\93ã\82\8cã\82\89ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81¯ 4.2BSD ã\81§æ\9c\80å\88\9dã\81«ç\8f¾ã\82\8cã\81\9f), POSIX.1\-2001.
+SVr4, 4.4BSD (これらのシステムコールは 4.2BSD で最初に現れた), POSIX.1\-2001.
.SH 注意
POSIX.1\-2001 では \fI<sys/types.h>\fP のインクルードは必須とされておらず、 Linux
-ã\81§ã\81¯ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83\95ã\82¡ã\82¤ã\83«ã\81¯å¿\85è¦\81ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81\97ã\81\8bã\81\97ã\80\81æ´å\8f²ç\9a\84ã\81«ã\81¯ã\80\81ã\81\84ã\81\8fã\81¤ã\81\8bã\81®å®\9fè£\85 (BSD ç³») ã\81§ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ファイルが
+ã\81§ã\81¯ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83¼ã\83\95ã\82¡ã\82¤ã\83«ã\81¯å¿\85è¦\81ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81\97ã\81\8bã\81\97ã\80\81æ´å\8f²ç\9a\84ã\81«ã\81¯ã\80\81ã\81\84ã\81\8fã\81¤ã\81\8bã\81®å®\9fè£\85 (BSD ç³») ã\81§ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83¼ファイルが
必要であり、移植性が必要なアプリケーションではこのファイルを インクルードするのが賢明であろう。
\fBgetsockopt\fP() と \fBsetsockopt\fP() の \fIoptlen\fP 引き数は実際は \fIint [*]\fP である (そして
.SH バグ
ソケットのオプションのいくつかはシステムのより低い層で 処理されるべきである。
.SH 関連項目
-\fBioctl\fP(2), \fBsocket\fP(2), \fBgetprotoent\fP(3), \fBprotocols\fP(5), \fBsocket\fP(7),
-\fBtcp\fP(7), \fBunix\fP(7)
+\fBioctl\fP(2), \fBsocket\fP(2), \fBgetprotoent\fP(3), \fBprotocols\fP(5), \fBip\fP(7),
+\fBpacket\fP(7), \fBsocket\fP(7), \fBtcp\fP(7), \fBudp\fP(7), \fBunix\fP(7)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.53 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。