gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r2250 - GNUnet/src/server


From: grothoff
Subject: [GNUnet-SVN] r2250 - GNUnet/src/server
Date: Mon, 14 Nov 2005 02:04:23 -0800 (PST)

Author: grothoff
Date: 2005-11-14 02:04:21 -0800 (Mon, 14 Nov 2005)
New Revision: 2250

Modified:
   GNUnet/src/server/tcpserver.c
Log:
bug 929 -- die if bind fails

Modified: GNUnet/src/server/tcpserver.c
===================================================================
--- GNUnet/src/server/tcpserver.c       2005-11-14 09:56:54 UTC (rev 2249)
+++ GNUnet/src/server/tcpserver.c       2005-11-14 10:04:21 UTC (rev 2250)
@@ -374,14 +374,13 @@
 /**
  * Initialize the TCP port and listen for incoming connections.
  */
-static void * tcpListenMain() {
+static void * tcpListenMain(void * unused) {
   int max;
   int ret;
   int listenerFD;
   socklen_t lenOfIncomingAddr;
   int listenerPort;
   struct sockaddr_in serverAddr, clientAddr;
-  int secs = 5;
   const int on = 1;
   ClientHandle pos;
   struct stat buf;
@@ -392,11 +391,10 @@
 
   listenerPort = getGNUnetPort();
   /* create the socket */
- CREATE_SOCKET:
   while ( (listenerFD = SOCKET(PF_INET,
                               SOCK_STREAM,
                               0)) < 0) {
-    LOG_STRERROR(LOG_ERROR, "socket");
+    DIE_STRERROR("socket");
     sleep(30);
   }
 
@@ -421,16 +419,10 @@
   if (BIND(listenerFD,
           (struct sockaddr *) &serverAddr,
           sizeof(serverAddr)) < 0) {
-    LOG(LOG_ERROR,
-       _("`%s' failed for port %d: %s. Will try again in %d seconds.\n"),
-       "bind",
-       listenerPort,
-       STRERROR(errno),
-       secs);
-    sleep(secs);
-    secs += 5; /* slow progression... */
-    closefile(listenerFD);
-    goto CREATE_SOCKET;
+    errexit(_("`%s' failed for port %d: %s. Is gnunetd already running?\n"),
+           "bind",
+           listenerPort,
+           STRERROR(errno));
   }
 
   /* start listening for new connections */
@@ -714,7 +706,7 @@
   tcpserver_keep_running = YES;
   serverSignal = SEMAPHORE_NEW(0);
   if (0 == PTHREAD_CREATE(&TCPLISTENER_listener_,
-                         (PThreadMain)&tcpListenMain,
+                         &tcpListenMain,
                          NULL,
                          64*1024)) {
     SEMAPHORE_DOWN(serverSignal);





reply via email to

[Prev in Thread] Current Thread [Next in Thread]