From ff2760ba436ac7ae68e5317aacb3e74b0d274469 Mon Sep 17 00:00:00 2001 From: Kim Holviala Date: Sat, 4 Feb 2017 10:33:17 +0200 Subject: [PATCH] Fixed logging of TLS connections (using gophers:// protocol) --- file.c | 12 ++++++++---- gophernicus.c | 3 ++- session.c | 3 ++- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/file.c b/file.c index 206c6ab..9713020 100644 --- a/file.c +++ b/file.c @@ -118,7 +118,8 @@ void url_redirect(state *st) /* Log the redirect */ if (st->opt_syslog) { - syslog(LOG_INFO, "request for \"gopher://%s:%i/h%s\" from %s", + syslog(LOG_INFO, "request for \"gopher%s://%s:%i/h%s\" from %s", + (st->server_port == st->server_tls_port ? "s" : ""), st->server_host, st->server_port, st->req_selector, @@ -154,7 +155,8 @@ void server_status(state *st, shm_state *shm, int shmid) /* Log the request */ if (st->opt_syslog) { - syslog(LOG_INFO, "request for \"gopher://%s:%i/0" SERVER_STATUS "\" from %s", + syslog(LOG_INFO, "request for \"gopher%s://%s:%i/0" SERVER_STATUS "\" from %s", + (st->server_port == st->server_tls_port ? "s" : ""), st->server_host, st->server_port, st->req_remote_addr); @@ -201,11 +203,12 @@ void server_status(state *st, shm_state *shm, int shmid) if ((now - shm->session[i].req_atime) < st->session_timeout) { sessions++; - printf("Session: %-4i %-40s %-4li %-7li gopher://%s:%i/%c%s" CRLF, + printf("Session: %-4i %-40s %-4li %-7li gopher%s://%s:%i/%c%s" CRLF, (int) (now - shm->session[i].req_atime), shm->session[i].req_remote_addr, shm->session[i].hits, shm->session[i].kbytes, + (shm->session[i].server_port == st->server_tls_port ? "s" : ""), shm->session[i].server_host, shm->session[i].server_port, shm->session[i].req_filetype, @@ -225,7 +228,8 @@ void caps_txt(state *st, shm_state *shm) { /* Log the request */ if (st->opt_syslog) { - syslog(LOG_INFO, "request for \"gopher://%s:%i/0" CAPS_TXT "\" from %s", + syslog(LOG_INFO, "request for \"gopher%s://%s:%i/0" CAPS_TXT "\" from %s", + (st->server_port == st->server_tls_port ? "s" : ""), st->server_host, st->server_port, st->req_remote_addr); diff --git a/gophernicus.c b/gophernicus.c index 6e53cc8..06dadb3 100644 --- a/gophernicus.c +++ b/gophernicus.c @@ -740,7 +740,8 @@ get_selector: /* Log the request */ if (st.opt_syslog) { - syslog(LOG_INFO, "request for \"gopher://%s:%i/%c%s\" from %s", + syslog(LOG_INFO, "request for \"gopher%s://%s:%i/%c%s\" from %s", + (st.server_port == st.server_tls_port ? "s" : ""), st.server_host, st.server_port, st.req_filetype, diff --git a/session.c b/session.c index b95419f..3058006 100644 --- a/session.c +++ b/session.c @@ -107,7 +107,8 @@ void update_shm_session(state *st, shm_state *shm) /* Get referrer from old session data */ if (*shm->session[i].server_host) { - snprintf(buf, sizeof(buf), "gopher://%s:%i/%c%s", + snprintf(buf, sizeof(buf), "gopher%s://%s:%i/%c%s", + (shm->session[i].server_port == st->server_tls_port ? "s" : ""), shm->session[i].server_host, shm->session[i].server_port, shm->session[i].req_filetype,