summaryrefslogtreecommitdiff
path: root/src/commands.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-04-16 15:19:50 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-04-16 15:19:50 +0000
commit99d1c8f0ab4a213a5087b6103ca07a8cb355c2c2 (patch)
treec08f29366976c80482d9fe4651ace8ea964bc16b /src/commands.cpp
parent3cd71f1ee59649a6202e07bae486e15f3b2267f8 (diff)
Fixed lingering (SO_REUSEADDR was being set to 0?)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1111 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/commands.cpp')
-rw-r--r--src/commands.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/commands.cpp b/src/commands.cpp
index 3a30a3972..547d47536 100644
--- a/src/commands.cpp
+++ b/src/commands.cpp
@@ -336,16 +336,16 @@ void handle_restart(char **parameters, int pcnt, userrec *user)
sleep(1);
for (int i = 0; i < 65536; i++)
{
- int on = 0;
+ int on = 1;
struct linger linger = { 0 };
setsockopt(i, SOL_SOCKET, SO_REUSEADDR, (const char*)&on, sizeof(on));
linger.l_onoff = 1;
- linger.l_linger = 0;
+ linger.l_linger = 1;
setsockopt(i, SOL_SOCKET, SO_LINGER, (const char*)&linger,sizeof(linger));
Blocking(i);
close(i);
}
- sleep(5);
+ sleep(2);
execv(MyExecutable,argv);