mirror of
https://github.com/3proxy/3proxy.git
synced 2025-04-09 22:13:11 +08:00
set linger close to setsockopt
This commit is contained in:
parent
c716c67da2
commit
862405bdfd
@ -551,6 +551,8 @@ int MODULEMAINFUNC (int argc, char** argv){
|
||||
if(inetd) {
|
||||
fcntl(0,F_SETFL,O_NONBLOCK | fcntl(0,F_GETFL));
|
||||
if(!isudp){
|
||||
lg.l_onoff = 1;
|
||||
lg.l_linger = conf.timeouts[STRING_L];
|
||||
so._setsockopt(0, SOL_SOCKET, SO_LINGER, (unsigned char *)&lg, sizeof(lg));
|
||||
so._setsockopt(0, SOL_SOCKET, SO_OOBINLINE, (unsigned char *)&opt, sizeof(int));
|
||||
}
|
||||
@ -592,8 +594,6 @@ int MODULEMAINFUNC (int argc, char** argv){
|
||||
if(srv.srvsock == INVALID_SOCKET){
|
||||
|
||||
if(!isudp){
|
||||
lg.l_onoff = 1;
|
||||
lg.l_linger = conf.timeouts[STRING_L];
|
||||
sock=so._socket(SASOCK(&srv.intsa), SOCK_STREAM, IPPROTO_TCP);
|
||||
}
|
||||
else {
|
||||
@ -813,6 +813,9 @@ int MODULEMAINFUNC (int argc, char** argv){
|
||||
#else
|
||||
fcntl(new_sock,F_SETFL,O_NONBLOCK | fcntl(new_sock,F_GETFL));
|
||||
#endif
|
||||
lg.l_onoff = 1;
|
||||
lg.l_linger = conf.timeouts[STRING_L];
|
||||
|
||||
so._setsockopt(new_sock, SOL_SOCKET, SO_LINGER, (char *)&lg, sizeof(lg));
|
||||
so._setsockopt(new_sock, SOL_SOCKET, SO_OOBINLINE, (char *)&opt, sizeof(int));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user