]> source.dussan.org Git - tigervnc.git/commitdiff
Add -interface option to x0vncserver 1300/head
authorAlexander Elbs <alexander.elbs@frequentis.com>
Thu, 22 Jul 2021 15:32:35 +0000 (17:32 +0200)
committerAlexander Elbs <alexander.elbs@frequentis.com>
Fri, 23 Jul 2021 08:14:55 +0000 (10:14 +0200)
unix/x0vncserver/x0vncserver.cxx
unix/x0vncserver/x0vncserver.man

index 89c9817e4bf8e5d42150793d8e3e2691173bfabc..88fad8ebae68622057ac607b1281b25d3e2549b0 100644 (file)
@@ -68,6 +68,9 @@ StringParameter hostsFile("HostsFile", "File with IP access control rules", "");
 BoolParameter localhostOnly("localhost",
                             "Only allow connections from localhost",
                             false);
+StringParameter interface("interface",
+                          "listen on the specified network address",
+                          "all");
 
 static const char* defaultDesktopName()
 {
@@ -304,11 +307,16 @@ int main(int argc, char** argv)
     }
 
     if ((int)rfbport != -1) {
+      const char *addr = interface;
+      if (strcasecmp(addr, "all") == 0)
+        addr = 0;
       if (localhostOnly)
         createLocalTcpListeners(&listeners, (int)rfbport);
       else
-        createTcpListeners(&listeners, 0, (int)rfbport);
-      vlog.info("Listening on port %d", (int)rfbport);
+        createTcpListeners(&listeners, addr, (int)rfbport);
+      vlog.info("Listening for VNC connections on %s interface(s), port %d",
+                localhostOnly ? "local" : (const char*)interface,
+                (int)rfbport);
     }
 
     const char *hostsData = hostsFile.getData();
index 3ee0c97bea205fdbf7c52fe4d9aede8777405299..56cd1d8f49fe7c5968706fa5d50641f9e534c73f 100644 (file)
@@ -178,6 +178,10 @@ Only allow connections from the same machine. Useful if you use SSH and want to
 stop non-SSH connections from any other hosts.
 .
 .TP
+.B \-interface \fIIP address\fP
+Listen on interface. By default x0vncserver listens on all available interfaces.
+.
+.TP
 .B \-AlwaysShared
 Always treat incoming connections as shared, regardless of the client-specified
 setting. Default is off.