if(setsockopt(ContSock, SOL_SOCKET, SO_KEEPALIVE, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
ReportWSError("setsockopt", WSAGetLastError());\r
// 切断対策\r
- KeepAlive.onoff = 1;\r
- KeepAlive.keepalivetime = TimeOut * 1000;\r
- KeepAlive.keepaliveinterval = 1000;\r
- if(WSAIoctl(ContSock, SIO_KEEPALIVE_VALS, &KeepAlive, sizeof(struct tcp_keepalive), NULL, 0, &dwTmp, NULL, NULL) == SOCKET_ERROR)\r
- ReportWSError("WSAIoctl", WSAGetLastError());\r
+ if(TimeOut > 0)\r
+ {\r
+ KeepAlive.onoff = 1;\r
+ KeepAlive.keepalivetime = TimeOut * 1000;\r
+ KeepAlive.keepaliveinterval = 1000;\r
+ if(WSAIoctl(ContSock, SIO_KEEPALIVE_VALS, &KeepAlive, sizeof(struct tcp_keepalive), NULL, 0, &dwTmp, NULL, NULL) == SOCKET_ERROR)\r
+ ReportWSError("WSAIoctl", WSAGetLastError());\r
+ }\r
LingerOpt.l_onoff = 1;\r
LingerOpt.l_linger = 90;\r
if(setsockopt(ContSock, SOL_SOCKET, SO_LINGER, (LPSTR)&LingerOpt, sizeof(LingerOpt)) == SOCKET_ERROR)\r