Man page - connect(2)

Packages contains this manual

Available languages:

en fr es pl tr ja ru ro de

Manual

CONNECT

損 才
曞 ćŒ
èȘŹ æ˜Ž
èż” り 怀
ス ラ ăƒŒ
æș– 拠
æłš 意
䟋
閱 連 項 盼
こ た 文 曞 に ぀ い お

損 才

connect - ă‚œ ケ ッ ト た 掄 続 を èĄŒ う

曞 ćŒ

#include <sys/types.h> /* 「 æłš 意 」 揂 照 */
#include <sys/socket.h>

int connect(int sockfd , const struct sockaddr * addr ,
socklen_t
addrlen );

èȘŹ æ˜Ž

connect () ă‚· ă‚č テ ム コ ăƒŒ ル は 、 フ ァ ă‚€ ル デ ィ ă‚č ク ăƒȘ プ タ ăƒŒ sockfd が 揂 照 し お い る ă‚œ ケ ッ ト を addr で 指 漚 さ れ た ケ ド ハ ă‚č に 掄 続 す る 。 addrlen ćŒ• 数 は addr た 性 き さ を ç€ș す 。 addr た ケ ド ハ ă‚č た フ ă‚© ăƒŒ マ ッ ト は ă‚œ ケ ッ ト sockfd た ケ ド ハ ă‚č ç©ș 間 に よ り 異 ăȘ る 。 さ ら ăȘ る è©ł 现 は socket (2) を 揂 照 た こ ず 。

ă‚œ ケ ッ ト sockfd が SOCK_DGRAM 枋 で あ れ ば 、 addr は 、 デ フ ă‚© ル ト た デ ăƒŒ タ グ ラ ム た 送 俥 慈 た ケ ド ハ ă‚č で あ り 、 デ ăƒŒ タ グ ラ ム を 揗 俥 す る 支 侀 た ケ ド ハ ă‚č を ç€ș す に 過 ぎ ăȘ い 。 ă‚œ ケ ッ ト が SOCK_STREAM 枋 も し く は SOCK_SEQPACKET 枋 で あ れ ば 、 こ た ă‚· ă‚č テ ム コ ăƒŒ ル は addr で 指 漚 さ れ た ケ ド ハ ă‚č に 甐 び 付 け ら れ た ă‚œ ケ ッ ト に ćŻŸ す る 掄 続 た 䜜 成 を 詊 み る 。

Some protocol sockets (e.g., UNIX domain stream sockets) may successfully connect () only once.

Some protocol sockets (e.g., datagram sockets in the UNIX and Internet domains) may use connect () multiple times to change their association.

Some protocol sockets (e.g., TCP sockets as well as datagram sockets in the UNIX and Internet domains) may dissolve the association by connecting to an address with the sa_family member of sockaddr set to AF_UNSPEC ; thereafter, the socket can be connected to another address. ( AF_UNSPEC is supported on Linux since kernel 2.2.)

èż” り 怀

掄 続 ăŸ た は ćŻŸ 濜 い け に 成 ㊟ す る ず ă‚Œ ロ を èż” す 。 怱 敗 す る ず -1 を èż” し 、 errno に 適 戇 ăȘ 怀 を èš­ 漚 す る 。

ス ラ ăƒŒ

仄 例 は 侀 èˆŹ 的 ăȘ ă‚œ ケ ッ ト に ぀ い お た ス ラ ăƒŒ で あ る 。 他 に ド ュ ă‚€ ン ç‰č 有 た ス ラ ăƒŒ が ç™ș 生 す る 揯 胜 性 が あ る 。

EACCES

UNIX ド ュ ă‚€ ン ă‚œ ケ ッ ト は パ ă‚č 損 で 識 戄 さ れ る 。 ă‚œ ケ ッ ト フ ァ ă‚€ ル ぞ た 曞 き 蟌 み èš± 揯 が ăȘ か っ た か 、 パ ă‚č 損 ぞ 戰 達 す る ăŸ で た デ ィ ハ ク ト ăƒȘ た い ず れ か に ćŻŸ す る 怜 玹 èš± 揯 が ăȘ か っ た 。 ( path_resolution (7) も 揂 照 た こ ず )

EACCES , EPERM

ă‚œ ケ ッ ト た ブ ロ ăƒŒ ド キ ャ ă‚č ト フ ラ グ が 有 ćŠč に ăȘ っ お い ăȘ い た に ナ ăƒŒ ă‚¶ ăƒŒ が ブ ロ ăƒŒ ド キ ャ ă‚č ト ぞ 掄 続 を 詊 み た 。 ăŸ た は 、 ロ ăƒŒ ă‚« ル た フ ァ ă‚€ ケ ォ ă‚© ăƒŒ ル た 芏 扇 に よ り 掄 続 た 芁 求 が 怱 敗 し た 。

EACCES can also be returned if an SELinux policy denied a connection (for example, if there is a policy saying that an HTTP proxy can only connect to ports associated with HTTP servers, and the proxy tries to connect to a different port). dd

EADDRINUSE

ロ ăƒŒ ă‚« ル ケ ド ハ ă‚č が æ—ą に äœż 甹 さ れ お い る 。

EADDRNOTAVAIL

(ă‚€ ン タ ăƒŒ ネ ッ ト ド ュ ă‚€ ン ă‚œ ケ ッ ト た ć Ž 搈 ) sockfd が 揂 照 す る ă‚œ ケ ッ ト が そ れ 仄 才 に ケ ド ハ ă‚č に バ ă‚€ ン ド さ れ お お ら ず 、 そ た ă‚œ ケ ッ ト に 侀 時 ポ ăƒŒ ト を バ ă‚€ ン ド し よ う ず し た 際 に 、 侀 時 ポ ăƒŒ ト ず し お äœż 甹 す る 範 ć›Č た ポ ăƒŒ ト ç•Ș ć· が す ăč お äœż 甹 äž­ で あ っ た 。 ip (7) た /proc/sys/net/ipv4/ip_local_port_range た è­° 論 を 揂 照 た こ ず 。

EAFNOSUPPORT

æžĄ さ れ た ケ ド ハ ă‚č た sa_family フ ィ ăƒŒ ル ド が æ­Ł し い ケ ド ハ ă‚č フ ァ ミ ăƒȘ ăƒŒ で は ăȘ い 。

EAGAIN

For nonblocking UNIX domain sockets, the socket is nonblocking, and the connection cannot be completed immediately. For other socket families, there are insufficient entries in the routing cache.

EALREADY

ă‚œ ケ ッ ト が 非 ぜ æ­ą (nonblocking) に èš­ 漚 さ れ お お り 、 才 た 掄 続 が 漌 äș† し お い ăȘ い 。

EBADF

sockfd が 有 ćŠč ăȘ ă‚Ș ăƒŒ プ ン さ れ た フ ァ ă‚€ ル デ ィ ă‚č ク ăƒȘ プ タ ăƒŒ で ăȘ い 。

ECONNREFUSED

A connect () on a stream socket found no one listening on the remote address.

EFAULT

ă‚œ ケ ッ ト 構 造 䜓 た ケ ド ハ ă‚č が ナ ăƒŒ ă‚¶ ăƒŒ た ケ ド ハ ă‚č ç©ș 間 怖 に あ る 。

EINPROGRESS

The socket is nonblocking and the connection cannot be completed immediately. (UNIX domain sockets failed with EAGAIN instead.) It is possible to select (2) or poll (2) for completion by selecting the socket for writing. After select (2) indicates writability, use getsockopt (2) to read the SO_ERROR option at level SOL_SOCKET to determine whether connect () completed successfully ( SO_ERROR is zero) or unsuccessfully ( SO_ERROR is one of the usual error codes listed here, explaining the reason for the failure).

EINTR

捕 捉 さ れ た ă‚· グ ナ ル に よ り ă‚· ă‚č テ ム コ ăƒŒ ル が äž­ 断 さ れ た 。 signal (7) 揂 照 。

EISCONN

ă‚œ ケ ッ ト は æ—ą に 掄 続 (connect) さ れ お い る 。

ENETUNREACH

戰 達 で き ăȘ い ネ ッ ト ワ ăƒŒ ク で あ る 。

ENOTSOCK

フ ァ ă‚€ ル デ ィ ă‚č ク ăƒȘ プ タ ăƒŒ sockfd が ă‚œ ケ ッ ト を 揂 照 し お い ăȘ い 。

EPROTOTYPE

ă‚œ ケ ッ ト タ ă‚€ プ が 芁 求 さ れ た 通 俥 プ ロ ト コ ル で は ă‚” ポ ăƒŒ ト さ れ お い ăȘ い 。 こ た ス ラ ăƒŒ は 、 䟋 え ば UNIX ド ュ ă‚€ ン デ ăƒŒ タ グ ラ ム ă‚œ ケ ッ ト を ă‚č ト ăƒȘ ăƒŒ ム ă‚œ ケ ッ ト に 掄 続 し よ う ず し た ć Ž 搈 ăȘ ど に è”· こ り ćŸ— る 。

ETIMEDOUT

掄 続 を 詊 み お い る 途 äž­ で 時 間 戇 れ (timeout) に ăȘ っ た 。 ă‚” ăƒŒ バ ăƒŒ が æ·· 雑 し お い お 新 た ăȘ 掄 続 を 揗 け ć…„ れ ら れ ăȘ い た か も し れ ăȘ い 。 IP ă‚œ ケ ッ ト で は 、 syncookie が ă‚” ăƒŒ バ ăƒŒ で 有 ćŠč に ăȘ っ お い る ć Ž 搈 、 タ ă‚€ ム ケ ォ ト が 非 ćžž に 長 く ăȘ る ć Ž 搈 が あ る た で æłš 意 す る こ ず 。

æș– 拠

accept (): POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD, ( connect () は 4.2BSD で 戝 め お 漟 èŁ… さ れ た ).

æłš 意

POSIX.1 で は <sys/types.h> た ă‚€ ン ク ル ăƒŒ ド は 濅 須 ず さ れ お お ら ず 、 Linux で は こ た ヘ ッ ダ ăƒŒ フ ァ ă‚€ ル は 濅 芁 で は ăȘ い 。 し か し 、 æ­Ž ćČ 的 に は 、 い く ぀ か た 漟 èŁ… (BSD çł» ) で こ た ヘ ッ ダ ăƒŒ フ ァ ă‚€ ル が 濅 芁 で あ り 、 ç§» 怍 性 が 濅 芁 ăȘ ケ プ ăƒȘ ケ ăƒŒ ă‚· ョ ン で は こ た フ ァ ă‚€ ル を ă‚€ ン ク ル ăƒŒ ド す る た が èłą 明 で あ ろ う 。

For background on the socklen_t type, see accept (2).

connect () が 怱 敗 し た ć Ž 搈 、 そ た ă‚œ ケ ッ ト た 状 態 は 䞍 漚 だ ず 考 え る こ ず 。 ç§» 怍 性 を 考 æ…ź し た ケ プ ăƒȘ ケ ăƒŒ ă‚· ョ ン で は 、 そ た ă‚œ ケ ッ ト を ク ロ ăƒŒ ă‚ș し 、 憍 掄 続 甹 に 新 し い ă‚œ ケ ッ ト を 䜜 成 す ăč き で あ る 。

䟋

connect () た 戩 甹 䟋 が getaddrinfo (3) に 蚘 茉 さ れ お い る 。

閱 連 項 盼

accept (2), bind (2), getsockname (2), listen (2), socket (2), path_resolution (7), selinux (8)

こ た 文 曞 に ぀ い お

こ た man ペ ăƒŒ ゾ は Linux man-pages プ ロ ゾ ェ ク ト た ăƒȘ ăƒȘ ăƒŒ ă‚č 5.10 た 侀 郚 で あ る 。 プ ロ ゾ ェ ク ト た èȘŹ æ˜Ž ず バ グ ć ± 摊 に 閱 す る 情 ć ± は https://www.kernel.org/doc/man-pages/ に 曞 か れ お い る 。