accept

accept ÇÔ¼ö´Â ¼ÒÄÏ(¸®½¼¼ÒÄÏ)À¸·Î µé¾î¿À´Â Á¢¼Ó¿äûÀ» Çã¿ëÇÏ´Â ÇÔ¼öÀÔ´Ï´Ù.

SOCKET accept (
        SOCKET
s,
        struct sockaddr FAR*
addr,
        int FAR*
addrlen
);

 

Parameters

s
[ÀÔ·Â]
listen ÇÔ¼ö¿¡ ÀÇÇؼ­ Á¢¼Ó´ë±â ÇÏ°í ÀÖ´Â ¼ÒÄÏ(ÀϹÝÀûÀ¸·Î ¸®½¼¼ÒÄÏ À̶ó°í ÇÏÁÒ.) ÀÇ ±â¼úÀÚ(descriptor) ÀÔ´Ï´Ù.

addr
[Ãâ·Â] ¿¬°áÀÇ ´Ù¸¥ ÂÊ ³¡¿¡ ÀÖ´Â ¿ø°Ý È£½ºÆ®ÀÇ ¾îµå·¹½º¸¦ Æ÷ÀÎÆ® ÇÕ´Ï´Ù.

addrlen
[Ãâ·Â] addr ¸Å°³º¯¼ö¿¡ ÀÇÇØ Æ÷ÀÎÆ®µÈ ¹öÆÛÀÇ ±æÀ̸¦ ³ªÅ¸³»´Â Á¤¼ö¸¦ Æ÷ÀÎÆ® ÇÕ´Ï´Ù.

 

Remarks

¸®½¼¼ÒÄÏ¿¡ µµÂøÇÑ ¿¬°á¿äûÀº Á¢¼Ó´ë±â Å¥¿¡ ½×¿©Áý´Ï´Ù. accept ÇÔ¼ö´Â Á¢¼Ó´ë±â Å¥¿¡ Àִ ù ¹ø° Á¢¼ÓÀ» »Ì¾Æ³À´Ï´Ù. ±×·±´ÙÀ½ »õ·Î¿î ¼ÒÄÏÀ» »ý¼ºÇÏ°í, »õ·Î¿î ¼ÒÄÏÀÇ ÇÚµéÀ» ¹ÝȯÇÕ´Ï´Ù. »õ·Î »ý¼ºµÈ ¼ÒÄÏÀº °°ÀÌ ¿¬°áµÈ¼ÒÄÏ(WSAAsyncSelect ³ª WSAEventSelect ÇÔ¼ö·Î ºñµ¿±âÀûÀÎ À̺¥Æ®°¡ µî·ÏµÈ ¼ÒÄÏÀÓ)°ú ½ÇÁ¦ÀûÀ¸·Î Á¢¼ÓÀÌ µÈ ¼ÒÄÏÇÚµéÀÔ´Ï´Ù. accept ÇÔ¼ö·Î Á¢¼Ó¿äûÀ» ÀÌ·ç¾î ³»°Ô µÇ¸é, ÀÌ »õ·Î¿î ¼ÒÄÏÀº ¸®½¼ ¼ÒÄÏÀÇ ±×·ì ¾ÆÀ̵𸦠°¡ÁöÁö ¾Ê°Ô µË´Ï´Ù.

accept ÇÔ¼ö´Â ¸¸¾à Å¥¿¡ Á¢¼ÓÀ» ±â´Ù¸®´Â(pending connections) Ç׸ñÀÌ ¾ø°í, ¼ÒÄÏÀÌ ºí·ÏÅ·(µ¿±â) ¼ÒÄÏÀ¸·Î ¸¶Å·µÇ¾î ÀÖ´Ù¸é, Á¢¼ÓÇÒ ¶§±îÁö caller¸¦ ºí·ÏÅ· »óÅ°¡ µÇ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¸¾à ¼ÒÄÏÀÌ ³Íºí·ÏÅ·(ºñµ¿±â) ¼ÒÄÏÀ¸·Î µÇ¾î ÀÖ°í, Å¥¿¡ ´ëÇØ ±â´Ù¸®´Â Á¢¼Ó(pending connections)ÀÌ ¾ø´Ù¸é, accept ÇÔ¼ö´Â ¿¡·¯¸¦ ¹Ýȯ ÇÕ´Ï´Ù. accept´Â ¼º°øÀûÀÎ ¼öÇàÈÄ¿¡ »õ·Î¿î ¼ÒÄÏÇÚµéÀ» ¹ÝȯÇÕ´Ï´Ù. Á¢¼ÓÀÌ Çã¿ëµÈ »õ·Î¿î ¼ÒÄÏÀº Á¢¼Ó¿äûÇÑ ¼ÒÄÏ°ú ½ÇÁ¦ÀûÀ¸·Î ¿¬°áÀÌ µÈ ¼ÒÄÏÀÌÁö ´Þ¸® »ý¼ºµÇ´Â ¸®½¼¼ÒÄÏÀÌ ¾Æ´Õ´Ï´Ù. ¿ø·¡ ¸®½¼ ¼ÒÄÏÀº ´Ù½Ã ´Ù¸¥ Á¢¼Ó¿ä±¸¸¦ °³¹æÇÏ°í, ¸®½¼ ÇϱâÀ§ÇØ ³²°ÜÁý´Ï´Ù.

addr ¸Å°³º¯¼ö´Â Á¢¼ÓÁּҷΠä¿öÁø °á°ú¸¦ ´ã°í ÀÖ½À´Ï´Ù. addr ¸Å°³º¯¼öÀÇ Æ÷¸ËÀº Åë½ÅÀÌ ¹ß»ýÇÑ ÁÖ¼Ò Æйи®¸¦ °áÁ¤ÇÕ´Ï´Ù. addrlen ¸Å°³º¯¼ö´Â addr¿¡ ÀÇÇØ Æ÷ÀÎÆ®µÈ ¹öÆÛÀÇ ±æÀ̸¦ ³ªÅ¸³»´Â Á¤¼ö(¹ÙÀÌÆ®)·Î Æ÷ÀÎÆ® ÇÕ´Ï´Ù.

accept ÇÔ¼ö´Â SOCK_STREAM °ú °°Àº ¿¬°áÁöÇâÇü ¼ÒÄÏ Å¸ÀÔ¿¡ »ç¿ëµË´Ï´Ù.

¸¸¾à addrÀ̳ª addrlen ¸Å°³º¯¼ö°¡ NULL À̶ó¸é, Á¢¼ÓµÈ ¼ÒÄÏÀÇ ¿ø°ÝÁö ÁÖ¼Ò¿¡´ëÇÑ Á¤º¸¸¦ ¹ÝȯÇÏÁö ¾Ê½À´Ï´Ù.

Windows CE : Windows CE ¿¡¼­´Â WSAEINTR ¿¡·¯ Äڵ带 Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

IrSocketÀ» ±¸Çö ÇÒ ¶§´Â addr, addrlen ¸Å°³º¯¼ö´Â Ç×»ó NULL ÀÌ¿©¾ß ÇÕ´Ï´Ù.

 

Return Values

¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Ê´Â´Ù¸é, »õ·Î¿î ¼ÒÄÏÀÇ ±â¼úÀÚ(descriptor)¸¦ °¡Áö°í ÀÖ´Â SOCKET(u_int) ÇüÅÂÀÇ °ªÀ» ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸®ÅÏ°ªÀº ½ÇÁ¦ÀûÀ¸·Î ¿ø°ÝÁö¿Í ¿¬°áµÇ¾î ÀÖ´Â ¼ÒÄÏÀÇ ÇÚµéÀÔ´Ï´Ù.

¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì INVALID_SOCKET À̶ó´Â °ªÀÌ ¸®Åϵǰí, ƯÁ¤ÇÑ ¿¡·¯ÄÚµå´Â WSAGetLastError ÇÔ¼ö¿¡ ÀÇÇØ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

 

Error Codes

WSANOTINITIALISED

ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇϱâ Àü¿¡ ¼º°øÀûÀÎ WSAStartup ÇÔ¼öÀÇ È£ÃâÀÌ ¾ø¾ú½À´Ï´Ù.

WSAENETDOWN

³×Æ®¿÷ ¼­ºê ½Ã½ºÅÛ¿¡ ¿¡·¯°¡ ¹ß»ýÇß½À´Ï´Ù.

WSAEFAULT addrlen ¸Å°³º¯¼ö°¡ ³Ê¹« À۰ųª, addr ¸Å°³º¯¼ö°¡ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù.
WSAEINTR ºí·°Å· À©¼Ó v1.1 ÀÌ WSACancelBlockingCall ÇÔ¼ö¿¡¼­ Ãë¼ÒµÇ¾ú½À´Ï´Ù
WSAEINPROGRESS

ºí·°Å· À©¼Ó v1.1 ÀÌ ÇöÀç ÁøÇà ÁßÀ̰ųª, ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ°¡ Äݹé ÇÔ¼ö¸¦ ¿©ÀüÈ÷ ó¸®ÇÏ°í ÀÖ½À´Ï´Ù.

WSAEINVAL accept Çϱâ Àü¿¡ listen ÇÔ¼ö°¡ ºÒ·ÁÁöÁö ¾Ê¾Ò½À´Ï´Ù.
WSAEMFILE »õ·Î¿î ¼ÒÄÏ¿¡ ÇÒ´çÇϱâ À§ÇÑ ¼ÒÄÏ ±â¼úÀÚ°¡ ´õ ÀÌ»ó ³²¾ÆÀÖÁö ¾Ê½À´Ï´Ù.
WSAENOBUFS »ç¿ëÇÒ ¼ö ÀÖ´Â ¹öÆÛ °ø°£ÀÌ ³²¾ÆÀÖÁö ¾Ê½À´Ï´Ù.
WSAENOTSOCK ±â¼úÀÚ(descriptor)°¡ ¼ÒÄÏ ±â¼úÀÚ°¡ ¾Æ´Õ´Ï´Ù.
WSAEOPNOTSUPP socketÀÌ ¿¬°áÁöÇâÇü ¼­ºñ½º(SOCK_STREAM)ÇüÅ°¡ ¾Æ´Õ´Ï´Ù.
WSAEWOULDBLOCK socketÀÌ ºñµ¿±â ÀûÀ¸·Î ¸¶Å·µÇ¾î ÀÖ°í, Á¢¼ÓÀÌ Çã¿ëµÇÁö ¾Ê¾Ò½À´Ï´Ù.

 

QuickInfo

Windows NT : »ç¿ë°¡´É
Windows : »ç¿ë°¡´É
Windows CE : ¹öÁ¯ 1.0 ±×¸®°í ±×ÀÌÈÄÀÇ ¹öÁ¯¿¡¼­ »ç¿ë°¡´É
Header :
          Win16/32 : winsock.h
          Win32-II : winsock2.h
Import Library :
          Win16 : winsock.lib
          Win32 : wsock32.lib
          Win32-II : ws2_32.lib

See Also

overview, bind, connect, listen, select, socket, WSAAsyncSelect, WSAAccept