From 50926766df1924c5b3e793b02702eb209e561d49 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sun, 7 Apr 2013 13:52:48 +0200 Subject: [PATCH] Log the server's listening address --- src/lib/player/accept.c | 15 ++++++++++++--- tests/smoke/server.log | 1 + 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/lib/player/accept.c b/src/lib/player/accept.c index 5c89d9a9d..85f068024 100644 --- a/src/lib/player/accept.c +++ b/src/lib/player/accept.c @@ -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"); diff --git a/tests/smoke/server.log b/tests/smoke/server.log index 224c2ec41..5410daa61 100644 --- a/tests/smoke/server.log +++ b/tests/smoke/server.log @@ -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 -- 2.43.0