|
|||||||
|
|
CONNECTSection: Linux Programmer's Manual (2)Updated: 3 Oct 1998 Index Return to Main Contents ̾Á°connect - ¥½¥±¥Ã¥È¤ÎÀܳ¤ò¹Ô¤Ê¤¦½ñ¼°#include <sys/types.h>#include <sys/socket.h> int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen); ÀâÌÀ¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼ sockfd ¤Ï¥½¥±¥Ã¥È¤ò»²¾È¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ë¡£ ¥½¥±¥Ã¥È¤¬ SOCK_DGRAM ·¿¤Î¾ì¹ç¡¢¥¢¥É¥ì¥¹ serv_addr ¤ò¥Ç¡¼¥¿¥°¥é¥à¤òÁ÷¿®¤¹¤ë¥Ç¥Õ¥©¥ë¥È¤Î°¸Àè¤ËÀßÄꤷ¡¢¤³¤Î¥¢¥É¥ì¥¹¤«¤é¤Î ¥Ç¡¼¥¿¥°¥é¥à¤Î¤ß¤ò¼õ¿®¤¹¤ë¡£¥½¥±¥Ã¥È¤¬ SOCK_STREAM ·¿¤Þ¤¿¤Ï SOCK_SEQPACKET ·¿¤Î¾ì¹ç¡¢¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤ÏÊ̤Υ½¥±¥Ã¥È¤È¤ÎÀܳ¤ò³ÎΩ¤·¤è¤¦¤È »î¤ß¤ë¡£ Áê¼ê¤Î¥½¥±¥Ã¥È¤Ï serv_addr ¤Ç»ØÄꤹ¤ë¡£ serv_addr ¤Ï¥½¥±¥Ã¥È¤ÎÄÌ¿®¥É¥á¥¤¥ó¤Î¥¢¥É¥ì¥¹¤Ç¤¢¤ë¡£¤³¤Î¥¢¥É¥ì¥¹¤ÎŤµ¤Ï addrlen ¤Ç»ØÄꤹ¤ë¡£¸Ä¡¹¤ÎÄÌ¿®¥É¥á¥¤¥ó¤ÏÆÈ¼«¤ÎÊýË¡¤Ç¥Ñ¥é¥á¡¼¥¿¡¼ serv_addr ¤ò²ò¼á¤¹¤ë¡£°ìÈÌŪ¤Ë¡¢Àܳ»Ø¸þ(connection-oriented)¥×¥í¥È¥³¥ë¤Ç¤Ï°ìÅÙ¤À¤± connect ¤¬À®¸ù¤¹¤ë¡£ ÈóÀܳ(connectionless)¥×¥í¥È¥³¥ë¤Ç¤ÏÂбþ¤òÊѹ¹¤¹¤ë¤¿¤á¤Ë²¿ÅÙ¤â connect ¤ò»ÈÍѤǤ¤ë¡£ ÈóÀܳ¥½¥±¥Ã¥È¤Ï sockaddr ¤Î sa_family ¥á¥ó¥Ð¤Ë AF_UNSPEC ¤òÀßÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Àܳ¥¢¥É¥ì¥¹¤ÎÂбþ¤ò²ò¾Ã¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£ ÊÖ¤êÃÍÀܳ¤Þ¤¿¤ÏÂбþ¤Å¤±¤ËÀ®¸ù¤¹¤ë¤È¥¼¥í¤òÊÖ¤¹¡£ ¼ºÇÔ¤¹¤ë¤È -1 ¤òÊÖ¤·¡¢ errno ¤ËŬÀÚ¤ÊÃͤòÀßÄꤹ¤ë¡£¥¨¥é¡¼°Ê²¼¤Ï°ìÈÌŪ¤Ê¥½¥±¥Ã¥È¤Ë¤Ä¤¤¤Æ¤Î¥¨¥é¡¼¤Ç¤¢¤ë¡£Â¾¤Ë¥É¥á¥¤¥óÆÃͤΥ¨¥é¡¼ ¤¬È¯À¸¤¹¤ë²ÄǽÀ¤¬¤¢¤ë¡£
½àµòSVr4, 4.4BSD ( connect ´Ø¿ô¤Ï BSD 4.2 ¤ÇºÇ½é¤Ë¸½¤ï¤ì¤¿)¡£ SVr4 ¤Ë¤Ï¾¤Ë°ìÈÌŪ¤Ê¥¨¥é¡¼¡¦¥³¡¼¥É¤È¤·¤Æ¡¢ EADDRNOTAVAIL, EINVAL, EAFNOSUPPORT, EALREADY, EINTR, EPROTOTYPE, ENOSR ¤Ë¤Ä¤¤¤Æ¤Îµ½Ò¤¬¤¢¤ë¡£¤Þ¤¿¤³¤³¤Ç¸ÀµÚ¤µ¤ì¤Æ¤¤¤Ê¤¤Â¿¤¯¤Î¥¨¥é¡¼¾õÂ֤ˤĤ¤¤Æ µ½Ò¤¬¤¢¤ë¡£Ãí°Õconnect ¤Î»°ÈÖÌܤΰú¤¿ô¤Ï BSD 4.* ¤ä libc4, libc5 ¤ÈƱÍÍ¤Ë¼ÂºÝ¤Ë¤Ï int ¤Ç¤¢¤ë¡£ ¸½ºß socklen_t ¤Ë´Ø¤·¤Æ POSIX ¤Ë¤Ï¾¯¤·º®Í𤬤¢¤ë¡£µ¬³Ê¤ÎÁð¹Æ¤Ï¤Þ¤ÀºÎÍÑ ¤µ¤ì¤Æ¤¤¤Ê¤¤¤¬¡¢glibc2 ¤Ç¤Ï¤½¤ì¤Ë½¾¤Ã¤Æ socklen_t ¤ò»ÈÍѤ·¤Æ¤¤¤ë¡£ ¾Ü¤·¤¯¤Ï accept(2) ¤ò»²¾È¤Î¤³¤È¡£¥Ð¥°AF_UNSPEC ¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Æ connect ¤ò¸Æ¤Ö¤³¤È¤Ë¤è¤ê¥½¥±¥Ã¥È¤ÎÀܳ¤ò²ò¾Ã¤¹¤ëµ¡Ç½¤Ï¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£´ØÏ¢¹àÌÜaccept(2), bind(2), listen(2), socket(2), getsockname(2)
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man2". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |