From 95f9ecb754da74ec0fa6c53ad9fb6c29128ecef2 Mon Sep 17 00:00:00 2001 From: tradke Date: Mon, 19 Jun 2000 16:57:47 +0000 Subject: Added CCTK_FILEVERSION() and set TCP server sockets to SO_REUSEADDR. git-svn-id: http://svn.cactuscode.org/arrangements/CactusConnect/Socket/trunk@7 9697cf00-7f2a-4e1b-af3c-314b8e4b499e --- src/Utils.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/Utils.c b/src/Utils.c index 4aee4c0..78ecca9 100644 --- a/src/Utils.c +++ b/src/Utils.c @@ -28,6 +28,10 @@ #include "SocketUtils.h" +static char *rcsid = "$Header$"; +CCTK_FILEVERSION(Development_Socket) + + /* #if defined(ANSI) || defined(__STDC__) */ #ifdef __STDC__ /* @@ -50,9 +54,6 @@ u_short ntohs(); u_long inet_addr(); #endif -static char *rcsid = "$Header$"; - - extern int errno; /*@@ @@ -196,6 +197,7 @@ int Socket_TCPOpenServerSock(int port) struct protoent *ppe; struct sockaddr_in sin; int s/*,type*/; + const int on = 1; bzero((char *)&sin, sizeof(sin)); sin.sin_family = AF_INET; sin.sin_addr.s_addr = INADDR_ANY; @@ -212,6 +214,11 @@ int Socket_TCPOpenServerSock(int port) fprintf(stderr,"couldn\'t create socket on port %u\n",port); return s; } + if(setsockopt(s,SOL_SOCKET,SO_REUSEADDR,&on,sizeof(on)) < 0) + { + fprintf(stderr,"couldn\'t set SO_REUSEADDR to port %u\n",port); + return s; + } if(bind(s,(struct sockaddr *)&sin, sizeof(sin)) < 0) { fprintf(stderr,"couldn\'t bind to port %u\n",port); -- cgit v1.2.3