OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man2 / connect.2
index ec700ad..43b943d 100644 (file)
 .\" Modified 1998, 1999 by Andi Kleen
 .\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
 .\"
-.\" Japanese Version Copyright (c) 1996 Yosiaki Yanagihara
-.\"         all rights reserved.
-.\" Translated 1996-06-25, Yosiaki Yanagihara <yosiaki@bsd2.kbnes.nec.co.jp>
-.\" Updated & Modified 1997-11-06, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated & Modified 1999-08-14, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated & Modified 2000-01-13, Kentaro Shirakata <argrath@yo.rim.or.jp>
-.\" Updated & Modified 2005-02-23, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated & Modified 2005-10-05, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\"*******************************************************************
 .\"
-.TH CONNECT 2 2008-12-03 "Linux" "Linux Programmer's Manual"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH CONNECT 2 2008\-12\-03 Linux "Linux Programmer's Manual"
 .SH 名前
 connect \- ソケットの接続を行う
 .SH 書式
 .nf
-.BR "#include <sys/types.h>" "          /* 「注意」参照 */"
+\fB#include <sys/types.h>\fP          /* 「注意」参照 */
 .br
-.B #include <sys/socket.h>
+\fB#include <sys/socket.h>\fP
 .sp
-.BI "int connect(int " sockfd ", const struct sockaddr *" addr ,
-.BI "            socklen_t " addrlen );
+\fBint connect(int \fP\fIsockfd\fP\fB, const struct sockaddr *\fP\fIaddr\fP\fB,\fP
+\fB            socklen_t \fP\fIaddrlen\fP\fB);\fP
 .fi
 .SH 説明
-.BR connect ()
-システムコールは、ファイルディスクリプタ
-.I sockfd
-が参照しているソケットを
-.I addr
-で指定されたアドレスに接続する。
-.I addrlen
-引き数は
-.I addr
-の大きさを示す。
-.I addr
-のアドレスのフォーマットはソケット
-.I sockfd
-のアドレス空間により異なる。
-さらなる詳細は
-.BR socket (2)
-を参照のこと。
+\fBconnect\fP()  システムコールは、ファイルディスクリプタ \fIsockfd\fP が参照しているソケットを \fIaddr\fP
+で指定されたアドレスに接続する。 \fIaddrlen\fP 引き数は \fIaddr\fP の大きさを示す。 \fIaddr\fP のアドレスのフォーマットはソケット
+\fIsockfd\fP のアドレス空間により異なる。 さらなる詳細は \fBsocket\fP(2)  を参照のこと。
 
-ソケット
-.I sockfd
-が
-.B SOCK_DGRAM
-型であれば、
-.I addr
-は、デフォルトのデータグラムの送信先のアドレスであり、
-データグラムを受信する唯一のアドレスを示すに過ぎない。
-ソケットが
-.B SOCK_STREAM
-型もしくは
-.B SOCK_SEQPACKET
-型であれば、このシステムコールは
-.I addr
-で指定されたアドレスに結び付けられたソケットに対する接続の
-作成を試みる。
+ソケット \fIsockfd\fP が \fBSOCK_DGRAM\fP 型であれば、 \fIaddr\fP は、デフォルトのデータグラムの送信先のアドレスであり、
+データグラムを受信する唯一のアドレスを示すに過ぎない。 ソケットが \fBSOCK_STREAM\fP 型もしくは \fBSOCK_SEQPACKET\fP
+型であれば、このシステムコールは \fIaddr\fP で指定されたアドレスに結び付けられたソケットに対する接続の 作成を試みる。
 .PP
-一般的に、接続指向 (connection-oriented) プロトコルでは一度だけ
-.BR connect ()
-が成功する。
-非接続 (connectionless) プロトコルでは対応を変更するために何度も
-.BR connect ()
-を使用できる。
-非接続ソケットは
-.I sockaddr
-の
-.I sa_family
-メンバに
-.B AF_UNSPEC
-を設定することで、接続アドレスの対応を解消することができる
-.RB ( AF_UNSPEC
-はカーネル 2.2 以降の Linux でサポート)。
+一般的に、接続指向 (connection\-oriented) プロトコルでは一度だけ \fBconnect\fP()  が成功する。 非接続
+(connectionless) プロトコルでは対応を変更するために何度も \fBconnect\fP()  を使用できる。 非接続ソケットは
+\fIsockaddr\fP の \fIsa_family\fP メンバに \fBAF_UNSPEC\fP を設定することで、接続アドレスの対応を解消することができる
+(\fBAF_UNSPEC\fP はカーネル 2.2 以降の Linux でサポート)。
 .SH 返り値
-接続または対応づけに成功するとゼロを返す。
-失敗すると \-1 を返し、
-.I errno
-に適切な値を設定する。
+接続または対応づけに成功するとゼロを返す。 失敗すると \-1 を返し、 \fIerrno\fP に適切な値を設定する。
 .SH エラー
-以下は一般的なソケットについてのエラーである。他にドメイン特有のエラー
-が発生する可能性がある。
-.TP
-.B EACCES
-UNIX ドメインソケットはパス名で識別される。
-ソケット・ファイルへの書き込み許可がなかったか、パス名へ
-到達するまでのディレクトリのいずれかに対する検索許可がなかった。
-.RB ( path_resolution (7)
-も参照のこと)
-.TP
-.BR EACCES ", " EPERM
-ソケットのブロードキャスト・フラグが有効になっていないのに
-ユーザがブロードキャストへ接続を試みた。または、ローカルのファイアウォールの
+以下は一般的なソケットについてのエラーである。他にドメイン特有のエラー が発生する可能性がある。
+.TP 
+\fBEACCES\fP
+UNIX ドメインソケットはパス名で識別される。 ソケット・ファイルへの書き込み許可がなかったか、パス名へ
+到達するまでのディレクトリのいずれかに対する検索許可がなかった。 (\fBpath_resolution\fP(7)  も参照のこと)
+.TP 
+\fBEACCES\fP, \fBEPERM\fP
+ソケットのブロードキャスト・フラグが有効になっていないのに ユーザがブロードキャストへ接続を試みた。または、ローカルのファイアウォールの
 規則により接続の要求が失敗した。
-.TP
-.B EADDRINUSE
+.TP 
+\fBEADDRINUSE\fP
 ローカルアドレスが既に使用されている。
-.TP
-.B EAFNOSUPPORT
-渡されたアドレスの
-.I sa_family
-フィールドが正しいアドレス・ファミリーではない。
-.TP
-.B EAGAIN
-使用可能なローカルのポートがないか、
-ルーティングキャッシュに十分なエントリがない。
-.B AF_INET
-の場合に、ローカルポートの数を増やす方法については、
-.BR ip (7)
-の
-.I /proc/sys/net/ipv4/ip_local_port_range
-の説明を参照のこと。
-.TP
-.B EALREADY
-ソケットが非停止 (nonblocking) に設定されており、
-前の接続が完了していない。
-.TP
-.B EBADF
-ファイルディスクリプターがディスクリプターテーブルの
-有効なインデックスではない。
-.TP
-.B ECONNREFUSED
+.TP 
+\fBEAFNOSUPPORT\fP
+渡されたアドレスの \fIsa_family\fP フィールドが正しいアドレス・ファミリーではない。
+.TP 
+\fBEAGAIN\fP
+使用可能なローカルのポートがないか、 ルーティングキャッシュに十分なエントリがない。 \fBAF_INET\fP
+の場合に、ローカルポートの数を増やす方法については、 \fBip\fP(7)  の
+\fI/proc/sys/net/ipv4/ip_local_port_range\fP の説明を参照のこと。
+.TP 
+\fBEALREADY\fP
+ソケットが非停止 (nonblocking) に設定されており、 前の接続が完了していない。
+.TP 
+\fBEBADF\fP
+ファイルディスクリプターがディスクリプターテーブルの 有効なインデックスではない。
+.TP 
+\fBECONNREFUSED\fP
 リモートアドレスで接続を待っているプログラムがない。
-.TP
-.B EFAULT
+.TP 
+\fBEFAULT\fP
 ソケット構造体のアドレスがユーザーのアドレス空間外にある。
-.TP
-.B EINPROGRESS
-ソケットが非停止 (nonblocking) に設定されていて、接続をすぐに
-完了することができない。その場合、
-.BR select (2)
-や
-.BR poll (2)
-を使ってそのソケットが書き込み可能になるのを待つことで、
-接続の完了を知ることができる。
-.BR select (2)
-で書き込み可能になった後に、
-.BR getsockopt (2)
-を使って
-.B SOL_SOCKET
-レベルで
-.B SO_ERROR
-オプションを読み出すこ
-とにより、
-.BR connect ()
-が成功したか、失敗したかを判断できる。
-成功の場合
-.B SO_ERROR
-が 0 であり、
-失敗の場合
-.B SO_ERROR
-がここのリストにあるいずれかのエラーコードであり、
-それにより失敗の原因が分かる。
-.TP
-.B EINTR
-捕捉されたシグナルによりシステムコールが中断された。
-.BR signal (7)
-参照。
-.\" TCP の場合は、接続処理は非同期になるが完了するだろう。
-.\" http://lkml.org/lkml/2005/7/12/254 を参照のこと。
-.TP
-.B EISCONN
+.TP 
+\fBEINPROGRESS\fP
+ソケットが非停止 (nonblocking) に設定されていて、接続をすぐに 完了することができない。その場合、 \fBselect\fP(2)  や
+\fBpoll\fP(2)  を使ってそのソケットが書き込み可能になるのを待つことで、 接続の完了を知ることができる。 \fBselect\fP(2)
+で書き込み可能になった後に、 \fBgetsockopt\fP(2)  を使って \fBSOL_SOCKET\fP レベルで \fBSO_ERROR\fP
+オプションを読み出すこ とにより、 \fBconnect\fP()  が成功したか、失敗したかを判断できる。 成功の場合 \fBSO_ERROR\fP が 0
+であり、 失敗の場合 \fBSO_ERROR\fP がここのリストにあるいずれかのエラーコードであり、 それにより失敗の原因が分かる。
+.TP 
+\fBEINTR\fP
+.\" For TCP, the connection will complete asynchronously.
+.\" See http://lkml.org/lkml/2005/7/12/254
+捕捉されたシグナルによりシステムコールが中断された。 \fBsignal\fP(7)  参照。
+.TP 
+\fBEISCONN\fP
 ソケットは既に接続 (connect) されている。
-.TP
-.B ENETUNREACH
+.TP 
+\fBENETUNREACH\fP
 到達できないネットワークである。
-.TP
-.B ENOTSOCK
+.TP 
+\fBENOTSOCK\fP
 ファイルディスクリプターがソケットと関連付けられていない。
-.TP
-.B ETIMEDOUT
-接続を試みている途中で時間切れ (timeout) になった。サーバーが混雑していて
-新たな接続を受け入れられないのかもしれない。
-IP ソケットでは、 syncookie がサーバーで有効になっている場合、
-タイムアウトが非常に長くなる場合があるので注意すること。
+.TP 
+\fBETIMEDOUT\fP
+接続を試みている途中で時間切れ (timeout) になった。サーバーが混雑していて 新たな接続を受け入れられないのかもしれない。 IP ソケットでは、
+syncookie がサーバーで有効になっている場合、 タイムアウトが非常に長くなる場合があるので注意すること。
 .SH 準拠
-SVr4, 4.4BSD,
-.RB ( connect ()
-関数は 4.2BSD で最初に登場した), POSIX.1-2001.
-.\" SVr4 では、一般的なエラー・コードとして
+.\" SVr4 documents the additional
+.\" general error codes
 .\" .BR EADDRNOTAVAIL ,
 .\" .BR EINVAL ,
 .\" .BR EAFNOSUPPORT ,
 .\" .BR EALREADY ,
 .\" .BR EINTR ,
 .\" .BR EPROTOTYPE ,
-.\" .B ENOSR
-.\" が追加されている。
-.\" また、本マニュアルには記載していない追加のエラー条件が多く記載されている。
+.\" and
+.\" .BR ENOSR .
+.\" It also
+.\" documents many additional error conditions not described here.
+SVr4, 4.4BSD, (\fBconnect\fP()  関数は 4.2BSD で最初に登場した), POSIX.1\-2001.
 .SH 注意
-POSIX.1-2001 では
-.I <sys/types.h>
-のインクルードは必須とされておらず、
-Linux ではこのヘッダファイルは必要ではない。
-しかし、歴史的には、いくつかの実装 (BSD 系) でこのヘッダファイルが
-必要であり、移植性が必要なアプリケーションではこのファイルを
-インクルードするのが賢明であろう。
+POSIX.1\-2001 では \fI<sys/types.h>\fP のインクルードは必須とされておらず、 Linux
+ではこのヘッダファイルは必要ではない。 しかし、歴史的には、いくつかの実装 (BSD 系) でこのヘッダファイルが
+必要であり、移植性が必要なアプリケーションではこのファイルを インクルードするのが賢明であろう。
 
-.BR connect ()
-の三番目の引き数は 4.x BSD や libc4, libc5 と同様に実際には
-.I int
-である。
-POSIX では紆余曲折を経て現在の
-.I socklen_t
-になっており、
-glibc でも
-.I socklen_t
-を使っている。
-.BR accept (2)
+\fBconnect\fP()  の三番目の引き数は 4.x BSD や libc4, libc5 と同様に実際には \fIint\fP である。 POSIX
+では紆余曲折を経て現在の \fIsocklen_t\fP になっており、 glibc でも \fIsocklen_t\fP を使っている。 \fBaccept\fP(2)
 も参照のこと。
 .SH 例
-.BR connect ()
-の利用例が
-.BR getaddrinfo (3)
-に記載されている。
+\fBconnect\fP()  の利用例が \fBgetaddrinfo\fP(3)  に記載されている。
 .SH 関連項目
-.BR accept (2),
-.BR bind (2),
-.BR getsockname (2),
-.BR listen (2),
-.BR socket (2),
-.BR path_resolution (7)
+\fBaccept\fP(2), \fBbind\fP(2), \fBgetsockname\fP(2), \fBlisten\fP(2), \fBsocket\fP(2),
+\fBpath_resolution\fP(7)