File telnet-bsd-1.2-suppress_hostname.patch of Package telnet
diff -ru telnet-bsd-1.2/telnetd/global.c telnet-bsd-1.2.devel/telnetd/global.c
--- telnet-bsd-1.2/telnetd/global.c 2004-02-13 17:11:51.000000000 -0500
+++ telnet-bsd-1.2.devel/telnetd/global.c 2006-05-05 13:21:32.000000000 -0400
@@ -38,6 +38,7 @@
char will_wont_resp[256];
int linemode; /* linemode on/off */
int utmp_len = MAXHOSTNAMELEN;
+int login_suppress_hostname; /* Pass -H to /bin/login */
#ifdef LINEMODE
int uselinemode; /* what linemode to use (on/off) */
diff -ru telnet-bsd-1.2/telnetd/sys_term.c telnet-bsd-1.2.devel/telnetd/sys_term.c
--- telnet-bsd-1.2/telnetd/sys_term.c 2005-06-01 07:42:23.000000000 -0400
+++ telnet-bsd-1.2.devel/telnetd/sys_term.c 2006-05-05 13:22:12.000000000 -0400
@@ -767,6 +767,10 @@
}
}
closelog ();
+
+ if (login_suppress_hostname)
+ addarg(&avs, "-H");
+
/* execv() should really take char const* const *, but it can't */
/*argvfoo = argv */ ;
memcpy (&argvfoo, &avs.argv, sizeof (argvfoo));
diff -ru telnet-bsd-1.2/telnetd/telnetd.c telnet-bsd-1.2.devel/telnetd/telnetd.c
--- telnet-bsd-1.2/telnetd/telnetd.c 2004-02-13 17:14:04.000000000 -0500
+++ telnet-bsd-1.2.devel/telnetd/telnetd.c 2006-05-05 13:21:43.000000000 -0400
@@ -65,7 +65,7 @@
* that only the actual options that we support will be
* passed off to getopt().
*/
-char *valid_opts = "d:L:hnS:u:UD:46"
+char *valid_opts = "d:L:hnS:u:UD:46H"
#ifdef LINEMODE
"kl"
#endif
@@ -176,6 +176,9 @@
case '6':
family = AF_INET6;
break;
+ case 'H':
+ login_suppress_hostname = 1;
+ break;
default:
fprintf(stderr, "telnetd: %c: unknown option\n", ch);
@@ -293,6 +293,7 @@
syslog(LOG_ERR, "usage: telnetd [-debug]"
" [-D (options|report|exercise|netdata|ptydata)]\n\t"
" [-h]"
+ " [-H]"
#if defined(LINEMODE) && defined(KLUDGELINEMODE)
" [-k]"
#endif
diff -ru telnet-bsd-1.2/telnetd/ext.h telnet-bsd-1.2.devel/telnetd/ext.h
--- telnet-bsd-1.2/telnetd/ext.h 2004-02-13 17:11:43.000000000 -0500
+++ telnet-bsd-1.2.devel/telnetd/ext.h 2006-05-05 13:24:30.000000000 -0400
@@ -36,6 +36,7 @@
extern char will_wont_resp[256];
extern int linemode; /* linemode on/off */
extern int utmp_len;
+extern int login_suppress_hostname;
#ifdef LINEMODE
extern int uselinemode; /* what linemode to use (on/off) */
diff -ru telnet-bsd-1.2/telnetd/in.telnetd.8 telnet-bsd-1.2.devel/telnetd/in.telnetd.8
--- telnet-bsd-1.2/telnetd/in.telnetd.8 2004-02-13 17:12:00.000000000 -0500
+++ telnet-bsd-1.2.devel/telnetd/in.telnetd.8 2006-05-05 13:33:20.000000000 -0400
@@ -36,7 +36,7 @@
protocol server
.Sh SYNOPSIS
.Nm in.telnetd
-.Op Fl Uhlkn46
+.Op Fl Uhlkn46H
.Op Fl D Ar debugmode
.Op Fl I Ns Ar initid
.Op Fl S Ar tos
@@ -118,6 +118,8 @@
.It Fl h
Disables the printing of host-specific information before
login has been completed.
+.It Fl H
+Instruct the login program to suppress printing the hostname before the prompt.
.It Fl I Ar initid
This option is only applicable to
.Tn UNICOS