Log the server's listening address
authorMarkus Armbruster <armbru@pond.sub.org>
Sun, 7 Apr 2013 11:52:48 +0000 (13:52 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Wed, 8 May 2013 04:57:55 +0000 (06:57 +0200)
src/lib/player/accept.c
tests/smoke/server.log

index 5c89d9a9d0535d12abb8fd03796afedc865a8f98..85f0680249884a2cfc9b85473307aee22feaaf02 100644 (file)
@@ -169,9 +169,9 @@ player_accept(void *unused)
 {
     static int conn_cnt;
     struct sockaddr *sap;
-    int s = player_socket;
     struct player *np;
     socklen_t len;
+    const char *p;
     int ns;
     int set = 1;
     int stacksize;
@@ -182,11 +182,20 @@ player_accept(void *unused)
 
     /* auto sockaddr_storage would be simpler, but less portable */
     sap = malloc(player_addrlen);
+    len = player_addrlen;
+    if (getsockname(player_socket, sap, &len)) {
+       logerror("getsockname() failed: %s", strerror(errno));
+       p = NULL;
+    } else {
+       p = sockaddr_ntop(sap, buf, sizeof(buf));
+       CANT_HAPPEN(!p);
+    }
+    logerror("Listening on %s", p ? buf : "unknown address");
 
     while (1) {
-       empth_select(s, EMPTH_FD_READ, NULL);
+       empth_select(player_socket, EMPTH_FD_READ, NULL);
        len = player_addrlen;
-       ns = accept(s, sap, &len);
+       ns = accept(player_socket, sap, &len);
        /* FIXME accept() can block on some systems (RST after select() reports ready) */
        if (ns < 0) {
            logerror("new socket accept");
index 224c2ec41304242de101148268cb9056bd12a183..5410daa61a7bbfeb0df14c9888d8aec3273cd12b 100644 (file)
@@ -2,6 +2,7 @@ Thu Jan  1 00:00:00 1970 ------------------------------------------------------
 Thu Jan  1 00:00:00 1970 Empire server (pid 42) started
 Thu Jan  1 00:00:00 1970 Update schedule read
 Thu Jan  1 00:00:00 1970 No update scheduled
+Thu Jan  1 00:00:00 1970 Listening on 127.0.0.1
 Thu Jan  1 00:00:00 1970 tester@127.0.0.1 using country #0
 Thu Jan  1 00:00:00 1970 tester@127.0.0.1 logged in as country #0
 Thu Jan  1 00:00:00 1970 tester@127.0.0.1 logged out, country #0