Option affects socket operations, such as packet routing, the OOB data transmission, get and set getsockopt setsockopt socket options are used as follows:
int getsockopt(SOCKET s,int level,int optname,char* optval,int* optlen);
int setsockopt(SOCKET s,int level,int optname,char* optval,int* optlen);
Each option sockets layer protocol There are different levels:
Application Layer: SOL_SOCKET
Transport Layer: IPPROTO_TCP go IPPROTO_UDP
Network Layer: IPPROTO_IP
Blocking mode, you can call recvfrom designated port receives network packets in
If the packet is not to set socket options to set wait time
BOOL SetTimeout(SOCKET s,int nTime,BOOL bRecv)
{
int ret = ::setsockopt(s,SOL_SOCKET,
brecv?SO_RCVTIMEO:SO_SNDTIMEO,(char*)&nTime,sizeof(nTime));
}
Reproduced in: https: //my.oschina.net/u/204616/blog/545217