diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2006-03-11 20:48:36 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2006-03-11 20:48:36 +0000 |
commit | b55669bf570339188461a9ba755c2386f549de90 (patch) | |
tree | 78dde0b390cb2275ee9123a1a83f69f3fa502916 /slirp | |
parent | f5ba07d399ff205da3e91de4389e936027856b48 (diff) | |
download | qemu-b55669bf570339188461a9ba755c2386f549de90.zip qemu-b55669bf570339188461a9ba755c2386f549de90.tar.gz qemu-b55669bf570339188461a9ba755c2386f549de90.tar.bz2 |
Set SO_REUSEADDR before calling bind().
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1783 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'slirp')
-rw-r--r-- | slirp/socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/slirp/socket.c b/slirp/socket.c index 47ed44b..fbd9e96 100644 --- a/slirp/socket.c +++ b/slirp/socket.c @@ -573,6 +573,7 @@ solisten(port, laddr, lport, flags) addr.sin_port = port; if (((s = socket(AF_INET,SOCK_STREAM,0)) < 0) || + (setsockopt(s,SOL_SOCKET,SO_REUSEADDR,(char *)&opt,sizeof(int)) < 0) || (bind(s,(struct sockaddr *)&addr, sizeof(addr)) < 0) || (listen(s,1) < 0)) { int tmperrno = errno; /* Don't clobber the real reason we failed */ @@ -587,7 +588,6 @@ solisten(port, laddr, lport, flags) #endif return NULL; } - setsockopt(s,SOL_SOCKET,SO_REUSEADDR,(char *)&opt,sizeof(int)); setsockopt(s,SOL_SOCKET,SO_OOBINLINE,(char *)&opt,sizeof(int)); getsockname(s,(struct sockaddr *)&addr,&addrlen); |