]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
tcp: show the TCP server binding in log
authorJaroslav Kysela <perex@perex.cz>
Mon, 30 Nov 2015 16:51:40 +0000 (17:51 +0100)
committerJaroslav Kysela <perex@perex.cz>
Mon, 30 Nov 2015 16:51:40 +0000 (17:51 +0100)
src/htsp_server.c
src/http.c
src/satip/rtsp.c
src/tcp.c
src/tcp.h

index a54767263a3ac1d4f41d017a3b841f1716e628a2..b0ba34da3e9d74779b125197fe194892894ede9b 100644 (file)
@@ -3224,9 +3224,9 @@ htsp_init(const char *bindaddr)
     .stop   = NULL,
     .cancel = htsp_server_cancel
   };
-  htsp_server = tcp_server_create(bindaddr, tvheadend_htsp_port, &ops, NULL);
+  htsp_server = tcp_server_create("htsp", "HTSP", bindaddr, tvheadend_htsp_port, &ops, NULL);
   if(tvheadend_htsp_port_extra)
-    htsp_server_2 = tcp_server_create(bindaddr, tvheadend_htsp_port_extra, &ops, NULL);
+    htsp_server_2 = tcp_server_create("htsp", "HTSP2", bindaddr, tvheadend_htsp_port_extra, &ops, NULL);
 }
 
 /*
index 1d91ed20c0cb2baf83587490b64c21d575e8752e..7ae844e97c59a390b5edb5911722c0e40e6750fd 100644 (file)
@@ -1222,7 +1222,7 @@ http_server_init(const char *bindaddr)
     .stop   = NULL,
     .cancel = http_cancel
   };
-  http_server = tcp_server_create(bindaddr, tvheadend_webui_port, &ops, NULL);
+  http_server = tcp_server_create("http", "HTTP", bindaddr, tvheadend_webui_port, &ops, NULL);
 }
 
 void
index 14ec8b68c6e59e5f9ce3c8d165ce841f9736268e..ba1cf67019ff290f27227e1d27961ece449ac794 100644 (file)
@@ -1614,7 +1614,7 @@ void satip_server_rtsp_init
     rtsp_nat_ip = nat_ip ? strdup(nat_ip) : NULL;
   free(s);
   if (!rtsp_server)
-    rtsp_server = tcp_server_create(bindaddr, port, &ops, NULL);
+    rtsp_server = tcp_server_create("satips", "SAT>IP RTSP", bindaddr, port, &ops, NULL);
   if (reg)
     tcp_server_register(rtsp_server);
 }
index f7a348e4b5517e9959061262eb8927f201da6eb2..4bf8b84353320ccd548bce0e9f8a0a0c8aa85ec9 100644 (file)
--- a/src/tcp.c
+++ b/src/tcp.c
@@ -738,20 +738,18 @@ next:
  *
  */
 #if ENABLE_LIBSYSTEMD_DAEMON
-static void *
-tcp_server_create_new
-  (const char *bindaddr, int port, tcp_server_ops_t *ops, void *opaque)
+static void *tcp_server_create_new
 #else
-void *
-tcp_server_create
-  (const char *bindaddr, int port, tcp_server_ops_t *ops, void *opaque)
+void *tcp_server_create
 #endif
+  (const char *subsystem, const char *name, const char *bindaddr,
+   int port, tcp_server_ops_t *ops, void *opaque)
 {
   int fd, x;
   tcp_server_t *ts;
   struct addrinfo hints, *res, *ressave, *use = NULL;
   struct sockaddr_storage bound;
-  char port_buf[6];
+  char port_buf[6], buf[50];
   int one = 1;
   int zero = 0;
 
@@ -815,6 +813,10 @@ tcp_server_create
   ts->bound  = bound;
   ts->ops    = *ops;
   ts->opaque = opaque;
+
+  tcp_get_str_from_ip((const struct sockaddr *)&bound, buf, sizeof(buf));
+  tvhlog(LOG_INFO, subsystem, "Starting %s server %s:%d", name, buf, htons(IP_PORT(bound)));
+
   return ts;
 }
 
@@ -824,13 +826,15 @@ tcp_server_create
  */
 void *
 tcp_server_create
-  (const char *bindaddr, int port, tcp_server_ops_t *ops, void *opaque)
+  (const char *subsystem, const char *name, const char *bindaddr,
+   int port, tcp_server_ops_t *ops, void *opaque)
 {
   int sd_fds_num, i, fd;
   struct sockaddr_storage bound;
   tcp_server_t *ts;
   struct in_addr addr4;
   struct in6_addr addr6;
+  char buf[50];
   int found = 0;
 
   sd_fds_num = sd_listen_fds(0);
@@ -876,6 +880,8 @@ tcp_server_create
     ts->bound  = bound;
     ts->ops    = *ops;
     ts->opaque = opaque;
+    tcp_get_str_from_ip((const struct sockaddr *)&bound, buf, sizeof(buf));
+    tvhlog(LOG_INFO, subsystem, "Starting %s server %s:%d (systemd)", subsystem, name, buf, htons(IP_PORT(bound)));
   } else {
     /* no systemd-managed socket found, create a new one */
     tvhlog(LOG_INFO, "tcp", "No systemd socket: creating a new one");
index e449b9608ea7faeeddb829dae4b5f92002c2ac04..cefb9ee24629be097d9e590024d4fe1eba5c5532 100644 (file)
--- a/src/tcp.h
+++ b/src/tcp.h
@@ -67,8 +67,9 @@ typedef void (tcp_server_callback_t)(int fd, void *opaque,
                                     struct sockaddr_storage *peer,
                                     struct sockaddr_storage *self);
 
-void *tcp_server_create(const char *bindaddr, int port, 
-  tcp_server_ops_t *ops, void *opaque);
+void *tcp_server_create(const char *subsystem, const char *name,
+                        const char *bindaddr, int port,
+                        tcp_server_ops_t *ops, void *opaque);
 
 void tcp_server_register(void *server);