bin/94548: [PATH] Make telnet accept host:port on the command line

Volker Stolz vs at FreeBSD.org
Thu Mar 16 15:10:21 UTC 2006


>Number:         94548
>Category:       bin
>Synopsis:       [PATH] Make telnet accept host:port on the command line
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 16 15:09:41 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Volker Stolz
>Release:        6.1
>Organization:
FreeBSD.org
>Environment:
FreeBSD menelaos.informatik.rwth-aachen.de 6.1-BETA3 FreeBSD 6.1-BETA3 #1: Mon Mar 13 10:45:03 CET 2006     root at menelaos.informatik.rwth-aachen.de:/usr/obj/usr/src/sys/MENELAOS  i386
>Description:
This patch makes telnet accept 'host:port' from the command line and handles error cases gracefully.

In case the formatting of the patch gets eaten, it is also available from
http://i2.foldr.org/~stolz/FreeBSD/telnet.patch
>How-To-Repeat:

>Fix:
--- /usr/src/contrib/telnet/telnet/commands.c   Mon Feb 28 13:46:52 2005
+++ src/telnet/telnet/commands.c        Thu Mar 16 10:52:06 2006
@@ -2291,8 +2291,26 @@
            hostname++;
            srcroute = 1;
        }
-    } else
-        hostname = hostp;
+    } else {
+      char *colon;
+      /* Did we get host:port? */
+      colon = strrchr(hostp,':');
+      /* Maybe, make sure it's not an IPv6 address */
+      if ((colon != NULL) && (colon == strchr(hostp,':'))) {
+       if (portp) {
+         fprintf(stderr, "Destination port already set.\n");
+         goto fail;
+       } else { /* Patch \0 into argument */
+         *colon = '\0';
+         /* Check if colon was last char in argument: */
+         colon++;
+         if ((*colon) != '\0')
+           portp = colon;
+       }
+      }
+      hostname = hostp;
+
+    }
     if (!portp) {
       telnetport = 1;
       portp = strdup("telnet");

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list