Sfoglia il codice sorgente

when we fail to bind a listener, try to provide a more useful log msg.

svn:r5900
Roger Dingledine 19 anni fa
parent
commit
a1dd751f30
1 ha cambiato i file con 6 aggiunte e 2 eliminazioni
  1. 6 2
      src/or/connection.c

+ 6 - 2
src/or/connection.c

@@ -547,8 +547,12 @@ connection_create_listener(const char *listenaddress, uint16_t listenport,
 #endif
 
   if (bind(s,(struct sockaddr *)&listenaddr,sizeof(listenaddr)) < 0) {
-    warn(LD_NET, "Could not bind to %s:%u: %s", address, usePort,
-         tor_socket_strerror(tor_socket_errno(s)));
+    char *helpfulhint = "";
+    int e = tor_socket_errno(s);
+    if (ERRNO_IS_EADDRINUSE(e))
+      helpfulhint = ". Is Tor already running?";
+    warn(LD_NET, "Could not bind to %s:%u: %s%s", address, usePort,
+         tor_socket_strerror(e), helpfulhint);
     goto err;
   }