Update of /cvsroot/sharedaemon/sharedaemon-ui-web/src/server/network
In directory sc8-pr-cvs1:/tmp/cvs-serv1468/src/server/network
Modified Files:
ServerSocket.cpp
Log Message:
27/12/2003 Mikael Barbeaux
* Fixed a bug about rebinding sockets on the same address.
Index: ServerSocket.cpp
===================================================================
RCS file: /cvsroot/sharedaemon/sharedaemon-ui-web/src/server/network/ServerSocket.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- ServerSocket.cpp 27 Dec 2003 10:27:10 -0000 1.3
+++ ServerSocket.cpp 27 Dec 2003 11:42:39 -0000 1.4
@@ -99,7 +99,7 @@
#ifdef _WIN32_
::closesocket(server_id);
#else
- ::close(server_id);
+ cout << "close " << ::close(server_id) << endl;
#endif
// Change server socket state
@@ -124,6 +124,11 @@
server_id = socket(AF_INET, SOCK_STREAM, 0);
if(server_id == -1)
throw SocketException(CantCreateSockExcp, "Cannot create server socket.",
+ "ServerSocket::validate");
+ int t = (int) true;
+ int ret = setsockopt(server_id, SOL_SOCKET, SO_REUSEADDR, &t, sizeof(t));
+ if(ret < 0)
+ throw SocketException(CantCreateSockExcp, "Cannot initialize socket option.",
"ServerSocket::validate");
}
|