getsockopt

getsockopt ÇÔ¼ö´Â ¼³Á¤µÈ ¼ÒÄÏ ¿É¼ÇÀÇ °ªÀ» ¾ò¾î³»´Â ÇÔ¼ö ÀÔ´Ï´Ù.

int getsockopt (
        SOCKET
  s,
        int   
level,
        int   
optname,
        char FAR*   
optval,
        int FAR*   
optlen
);

 

Parameters

s
[ÀÔ·Â] ÀÛ¾÷ ´ë»ó ¼ÒÄÏÀÇ ±â¼úÀÚ(descriptor)¸¦ ¸í½ÃÇÕ´Ï´Ù.

level
[ÀÔ·Â] ¼ÒÄÏ ¿É¼Ç ·¹º§ÀÌ Á¤ÀÇ µÇ¸ç, SOL_SOCKET °ú IPPROTO_TCP Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.

optname
[ÀÔ·Â]ÀÌ ÇÔ¼ö¿¡ ÀÇÇؼ­ ¹ÝȯµÉ(°Ë»öµÉ) °ª¿¡´ëÇÑ ¼ÒÄÏ ¿É¼ÇÀ» ¸í½ÃÇÕ´Ï´Ù.

optval
[Ãâ·Â] ¿äûµÈ ¿É¼Ç¿¡ ´ëÇÑ ¹ÝȯµÇ´Â ¿É¼Ç°ªÀÌ ÀúÀåµÉ ¹öÆÛ¿¡ ´ëÇÑ Æ÷ÀÎÅÍ ÀÔ´Ï´Ù.

optlen
[ÀÔ/Ãâ·Â] optval ¹öÆÛÀÇ Å©±â¸¦ ³ªÅ¸³»´Â Á¤¼ö·Î Æ÷ÀÎÆ® ÇÕ´Ï´Ù.

Remarks

getsockopt ÇÔ¼ö´Â ƯÁ¤ÇÑ ÇüÅÂ(type), ƯÁ¤ÇÑ »óÅÂ(state)·Î ¿¬°ü µÇ¾îÀÖ´Â ¼ÒÄϿɼǿ¡ ´ëÇØ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» optval ¸Å°³º¯¼ö¿¡ ÀúÀåÇؼ­ ¾ò¾î³»´Â ÇÔ¼öÀÔ´Ï´Ù. ¿É¼ÇÀº Áߺ¹ ÇÁ·ÎÅäÄÝ ·¹º§·Î Á¸Àç ÇÒ ¼ö ÀÖÁö¸¸. °¡Àå ¿ì¼±½Ã µÇ´Â ¼ÒÄÏ ·¹º§Àº Á¸ÀçÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¿É¼ÇÀº ÆÐŶ¶ó¿ìÆÃÀ̳ª, out-of-band µ¥ÀÌÅÍÀÇ Àü¼Ûµî°ú °°Àº ¼ÒÄÏ¿¬»ê¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

¼±ÅÃµÈ ¿É¼Ç°ú ¿¬°üµÈ °ªÀº optval ¹öÆÛ·Î ¹Ýȯ µË´Ï´Ù. optlen À¸·Î Æ÷ÀÎÆ® µÇ´Â Á¤¼ö°ªÀº ÀԷ½ÿ¡ optval ¹öÆÛÀÇ Å©±â¸¦ °¡Áö°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¹ÝȯÇÒ ¶§´Â, ¹ÝȯµÇ´Â °ªÀÇ Å©±â·Î optlenÀº ¼ÂÆÃµÉ °ÍÀÔ´Ï´Ù. ¿¹¸¦µé¾î SO_LINGER ¼ÒÄϿɼÇÀ» »ç¿ëÇÒ °æ¿ì¿¡ optlen °ªÀº LINGER ±¸Á¶Ã¼ÀÇ Å©±â¸¦ ¸í½ÃÇØ¾ß ÇÕ´Ï´Ù. ´ëºÎºÐÀÇ ´Ù¸¥ ¿É¼ÇµéÀº Á¤¼öÇü(integer)ÀÇ Å©±âÀÔ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀº ¸í½ÃµÈ ¸Å°³º¯¼ö¿¡ ÀÇÇؼ­ Á÷Á¢ÀûÀ¸·Î ¶Ç´Â °£Á¢ÀûÀ¸·Î ¸Þ¸ð¸® °ø°£À» ÇÒ´çÇϴµ¥ Ã¥ÀÓÀ» Á®¾ß ÇÕ´Ï´Ù.

¿É¼ÇÀÌ setsockopt ÇÔ¼ö·Î ¼ÂÆõÈÀûÀÌ ¾ø´Ù¸é, getsockopt ÇÔ¼ö´Â ¿É¼Ç¿¡ ´ëÇÑ µðÆúÆ® °ªÀ» ¹ÝȯÇÏ°Ô µË´Ï´Ù.

¾Æ·¡¿¡ getsockopt ÇÔ¼ö¿¡ ´ëÇؼ­ Áö¿øµÇ´Â ¿É¼Ç¿¡ ´ëÇؼ­ °£·«È÷ ³ª¿­ÇÏ°í ¼³¸í Çß½À´Ï´Ù.

level = SOL_SOCKET

¿É¼Ç°ª(Value)

µ¥ÀÌÅÍÇüÅÂ(Type)

ÀǹÌ(Meaning)

SO_ACCEPTCONN BOOL TRUE ÀÏ °æ¿ì ¼ÒÄÏÀÌ ¸®½¼ ÇÏ°í ÀÖ½À´Ï´Ù.
SO_BROADCAST
 
BOOL
 
TRUE ÀÏ °æ¿ì ¼ÒÄÏÀº ºê·Îµåij½ºÆ®(broadcast) ¸Þ½ÃÁö¸¦ Àü¼ÛÇϱâ À§ÇØ ¸¸µé¾îÁ³½À´Ï´Ù.
SO_DEBUG BOOL

TRUE ÀÏ °æ¿ì µð¹ö±ëÀÌ °¡´ÉÇÕ´Ï´Ù.

SO_DONTLINGER BOOL TRUE ÀÏ °æ¿ì SO_LINGER ¿É¼ÇÀº ¹«½ÃµË´Ï´Ù.
SO_DONTROUTE BOOL TRUE ÀÏ °æ¿ì ¶ó¿ìÆÃÀÌ ¹«½ÃµË´Ï´Ù.
SO_ERROR int ¿¡·¯»óŸ¦ ¹ÝȯÇÏ°í, Ŭ¸®¾î µË´Ï´Ù.
SO_GROUP_ID GROUP ¼ÒÄÏÀÌ ¼ÓÇØÀÖ´Â ±×·ì ½Äº°ÀÚ¸¦ ÀǹÌÇÕ´Ï´Ù.
SO_GROUP_PRIORITY
 
int
 
¼ÒÄÏ¿¡ °ü·ÃµÈ ¿ì¼±»çÇ×Àº ¼ÒÄÏ ±×·ìÀÇ ºÎºÐ ÀÔ´Ï´Ù.
SO_KEEPALIVE BOOL TRUE ÀÏ °æ¿ì keepalive°¡ Àü¼ÛµÇ°í ÀÖ½À´Ï´Ù.
SO_LINGER struct LINGER ÇöÀçÀÇ linger ¿É¼ÇÀ» ¹Ýȯ ÇÕ´Ï´Ù.
SO_MAX_MSG_SIZE
 
 
unsigned int
 
 

SOCK_DGRAM °ú °°Àº ¼ÒÄÏ ÇüÅ¿¡¼­ ¸Þ½ÃÁöÀÇ ÃÖ´ë Å©±âÀÔ´Ï´Ù. ½ºÆ®¸² ¼ÒÄÏ¿¡¼­´Â ¾Æ¹«·± Àǹ̰¡ ¾ø½À´Ï´Ù.

SO_OOBINLINE
 
BOOL
 
TRUE ÀÏ °æ¿ì ¾Æ¿ô¿Àºê¹êµå µ¥ÀÌÅÍ°¡ Á¤»óÀûÀÎ µ¥ÀÌÅÍ ½ºÆ®¸²À¸·Î ¼ö½ÅµÇ°í ÀÖ½À´Ï´Ù.
SO_PROTOCOL_INFO
 
WSAPROTOCOL_INFO
 
¼ÒÄÏ¿¡ ´ëÇØ ¹ÙÀεåµÈ ÇÁ·ÎÅäÄÝ Á¤º¸¸¦ ³ªÅ¸³À´Ï´Ù.
SO_RCVBUF int ¼ö½Å ¹öÆÛÅ©±â¸¦ ÀǹÌÇÕ´Ï´Ù.
SO_REUSEADDR
 
BOOL
 
TRUEÀÏ °æ¿ì ¼ÒÄÏÀº ÀÌ¹Ì »ç¿ëÁßÀÎ ¾îµå·¹½º·Î ¹­¿´½À´Ï´Ù.
SO_SNDBUF int Àü¼Û ¹öÆÛÀÇ Å©±â
SO_TYPE
 
int
 
¼ÒÄÏÀÇ Å¸ÀÔ (¿¹:SOCK_STREAM, SOCK_DGRAM)

level = IPPROTO_TCP

TCP_NODELAY
 
BOOL
 
Àü¼ÛÇÕº´(send coalescing)À» À§ÇØ Nagle ¾Ë°í¸®ÁòÀÌ ºñÈ°¼ºÈ­ µÇ¾ú½À´Ï´Ù.

Return Values

¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Ê¾ÒÀ» °æ¿ì 0À» ¹ÝȯÇÕ´Ï´Ù. ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì´Â SOCKET_ERROR¸¦ ¹ÝȯÇÏ°í, WSAGetLastError ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ ƯÁ¤ÇÑ ¿¡·¯ÄÚµå °ªÀ» ¾ò¾î³¾ ¼ö ÀÖ½À´Ï´Ù.

Error Codes

WSANOTINITIALISED

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

WSAENETDOWN

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

WSAEFAULT optval ¶Ç´Â optlen ¸Å°³º¯¼ö ÁßÀÇ Çϳª°¡ ¿Ã¹Ù¸£Áö ¾Ê°Å³ª optlen ¸Å°³º¯¼öÀÇ °ªÀÌ ³Ê¹« ÀÛ½À´Ï´Ù.
WSAEINPROGRESS

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

WSAEINVAL level ¸Å°³º¯¼ö°¡ À߸øµÆ°Å³ª, ¾Ë ¼ö ¾ø´Â °ª ÀÔ´Ï´Ù.
WSAENOPROTOOPT ¾Ë ¼ö ¾ø´Â ¿É¼ÇÀ̰ųª, Áö¿øÁöÁö ¾Ê´Â ¿É¼ÇÀ» »ç¿ë Çß½À´Ï´Ù.
WSAENOTSOCK ±â¼úÀÚ(descriptor)°¡ ¼ÒÄÏ ±â¼úÀÚ°¡ ¾Æ´Õ´Ï´Ù.

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, setsockopt, socket, WSAAsyncSelect, WSAConnect, WSAGetLastError, WSASetLastError