File pam_login-3.31-suppress_hostname.patch of Package pam_login
diff -ru pam_login-3.31/src/login.1 pam_login-3.31.devel/src/login.1
--- pam_login-3.31/src/login.1 2005-08-17 11:59:14.000000000 -0400
+++ pam_login-3.31.devel/src/login.1 2006-05-05 13:37:45.000000000 -0400
@@ -20,6 +20,8 @@
.BR \-h
.IR host
] [
+.BR \-H
+] [
.BR \-f
.IR username
]
@@ -121,6 +123,13 @@
.B login
so that it may be placed in utmp and wtmp. Only the superuser may use
this option.
+.TP
+.B \-H
+Used by other servers (i.e.,
+.BR telnetd (8))
+to tell
+.B login
+that printing the hostname should be suppressed in the login: prompt.
.SH "SPECIAL ACCESS RESTRICTIONS"
The file
diff -ru pam_login-3.31/src/login.c pam_login-3.31.devel/src/login.c
--- pam_login-3.31/src/login.c 2006-05-05 13:26:32.000000000 -0400
+++ pam_login-3.31.devel/src/login.c 2006-05-05 13:28:06.000000000 -0400
@@ -30,6 +30,7 @@
* login -h hostname (for telnetd, etc.)
* login -f name (for pre-authenticated login: datakit, xterm, etc.)
* login -p (don't destroy environment)
+ * login -H (suppress printing hostname)
*/
#ifdef HAVE_CONFIG_H
@@ -139,6 +140,8 @@
fputs (_(" -h hostname Name of the remote host for umtp/wtmp\n"),
stdout);
fputs (_(" -f name Skip a second login authentication\n"), stdout);
+ fputs (_(" -H Do not print hostname before login: prompt\n"),
+ stdout);
fputs (_(" --help Give this help list\n"), stdout);
fputs (_(" --usage Give a short usage message\n"), stdout);
fputs (_(" --version Print program version\n"), stdout);
@@ -372,8 +375,11 @@
char *ret;
*cp++ = '\n';
- cp = stpcpy (cp, thishost);
- cp = stpcpy (cp, " login: ");
+ if (thishost[0]) {
+ cp = stpcpy (cp, thishost);
+ *cp++ = ' ';
+ }
+ cp = stpcpy (cp, "login: ");
ret = strdup (buffer);
@@ -504,7 +510,7 @@
{NULL, 0, NULL, '\0'}
};
- c = getopt_long (argc, argv, "f:h:p", long_options, &option_index);
+ c = getopt_long (argc, argv, "f:h:pH", long_options, &option_index);
if (c == (-1))
break;
switch (c)
@@ -570,6 +576,9 @@
case 'p':
pflag = 1;
break;
+ case 'H':
+ thishost[0] = '\0';
+ break;
case '\253':
print_help ();
return 0;