aboutsummaryrefslogtreecommitdiffstats
path: root/security
diff options
context:
space:
mode:
authorgreen <green@FreeBSD.org>1999-12-08 12:06:38 +0800
committergreen <green@FreeBSD.org>1999-12-08 12:06:38 +0800
commit4dba2c451ad23bcc217f0f92c31c54e6f287fbc6 (patch)
treed6c62acc5ea469605d12c3161134e33e908e0854 /security
parent90cb431b27de7bdd627cc948f07b4065216fcffd (diff)
downloadfreebsd-ports-gnome-4dba2c451ad23bcc217f0f92c31c54e6f287fbc6.tar.gz
freebsd-ports-gnome-4dba2c451ad23bcc217f0f92c31c54e6f287fbc6.tar.zst
freebsd-ports-gnome-4dba2c451ad23bcc217f0f92c31c54e6f287fbc6.zip
I've cleaned up ${CVS_DATE} usage a bit (keep spaces correctly), and
updated to today's snapshot of OpenSSH. Various updates from the latest ${CVS_DATE}, and requisite patch changes, are the "big new thing". Nothing major has changed; the biggest ones would be using atomicio() in a lot of places and a fix for a SIGHUP not updating sshd(8)'s configuration until the next connection.
Diffstat (limited to 'security')
-rw-r--r--security/openssh/Makefile6
-rw-r--r--security/openssh/distinfo53
-rw-r--r--security/openssh/files/patch-ab2
-rw-r--r--security/openssh/files/patch-ad14
-rw-r--r--security/openssh/files/patch-an49
5 files changed, 63 insertions, 61 deletions
diff --git a/security/openssh/Makefile b/security/openssh/Makefile
index a30fbd5d07f2..6f01237ee04c 100644
--- a/security/openssh/Makefile
+++ b/security/openssh/Makefile
@@ -23,9 +23,9 @@ CAT?= /bin/cat
DISTFILES!= ${CAT} ${FILESDIR}/distfiles
CVS_CMD?= cvs -z3
-CVS_DATE= Sun Nov 28 16:31:22 EST 1999
+CVS_DATE= Tue Dec 7 22:46:23 EST 1999
SED?= /usr/bin/sed
-CVS_DATE_!= ${ECHO} -n ${CVS_DATE} | ${SED} 's/[ \t:]/_/g'
+CVS_DATE_!= ${ECHO} -n "${CVS_DATE}" | ${SED} 's/[ \t:]/_/g'
CVS_SITES= anoncvs@anoncvs1.ca.openbsd.org:/cvs \
:pserver:anoncvs@anoncvs1.usa.openbsd.org:/cvs
CRYPTOLIBS= -L${PREFIX}/lib -lcrypto
@@ -62,7 +62,7 @@ do-fetch:
cd ${DISTDIR}; \
${TAR} xfz ${PKGNAME}.${CVS_DATE_}.tar.gz \
${DISTFILES}; \
- ${ECHO} -n ${CVS_DATE} > ${STAMPFILE}; \
+ ${ECHO} -n "${CVS_DATE}" > ${STAMPFILE}; \
exit; \
fi; \
unset CVS_RSH CVS_SERVER || ${TRUE}; \
diff --git a/security/openssh/distinfo b/security/openssh/distinfo
index 5b49e896e12e..853208047e75 100644
--- a/security/openssh/distinfo
+++ b/security/openssh/distinfo
@@ -4,25 +4,26 @@ MD5 (OpenSSH-1.2/src/usr.bin/ssh/Makefile.inc) = 8f096d4d5a830efe7dde5674b482cd2
MD5 (OpenSSH-1.2/src/usr.bin/ssh/OVERVIEW) = 5def77be758d9e4aa2390c3825ed7cb2
MD5 (OpenSSH-1.2/src/usr.bin/ssh/README) = e54fb9189053db5ad25892054c8d0989
MD5 (OpenSSH-1.2/src/usr.bin/ssh/RFC.nroff) = 1615f30810a3d47716883b2eaddd712c
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-krb4.c) = abe1935f21e88ed018d788a4117129b7
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-passwd.c) = 9842b40294e7fc0ea4bc1c3366378e03
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/atomicio.c) = 765037b689925ccd476de647d4aaf9ed
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-krb4.c) = e9f588343a4954004ecbf7ba805edde2
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-passwd.c) = ad6e1b7a3e64d3de451b319a3bdda823
MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-rh-rsa.c) = a1c4177fb07f7dcc4dbe6c468bab608e
MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-rhosts.c) = 50c042e1a659782bba7e1edd7c43c233
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-rsa.c) = 4beed200d604b9d6c1dc57d604fc3ab5
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-skey.c) = 7e0247aa6636cbb8cd5998941a757040
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/authfd.c) = 4075b45c09b561dee0e5fef4dc88527b
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-rsa.c) = 1c3d74a611cda703b133112123a677c1
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/auth-skey.c) = 1c003cb98aea4e771a9ec3e67dd99096
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/authfd.c) = 044b416bc5f8abbbb22a979893db3225
MD5 (OpenSSH-1.2/src/usr.bin/ssh/authfd.h) = 84826e6490812a490bb07b97dfeef085
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/authfile.c) = 1c28a8018b613416d23aae6a25718ccc
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/authfile.c) = 1bcc8b9b06dfbd1a974efd14659c91c0
MD5 (OpenSSH-1.2/src/usr.bin/ssh/bufaux.c) = 877a21dbdd68ef04a1e39a0e6d34450e
MD5 (OpenSSH-1.2/src/usr.bin/ssh/bufaux.h) = 46caf1274857d0bdc5eabe60d56f6aaf
MD5 (OpenSSH-1.2/src/usr.bin/ssh/buffer.c) = 6cea321387c23d5cfaefca38bc167c1f
MD5 (OpenSSH-1.2/src/usr.bin/ssh/buffer.h) = c284a258593ae4d8905d94ddae45f4b1
MD5 (OpenSSH-1.2/src/usr.bin/ssh/canohost.c) = 770f45643983946333cbb9ffde77500b
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/channels.c) = 39fc9f7d20f9f758f0a3fa3f102383a8
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/channels.c) = 5a903a87737b7efecdd9385b52ba56bf
MD5 (OpenSSH-1.2/src/usr.bin/ssh/channels.h) = e597ecd2255e0f92fb5a92c40c99d8b4
MD5 (OpenSSH-1.2/src/usr.bin/ssh/cipher.c) = 2bf8f287540f2448b4af0b894aeacf8b
MD5 (OpenSSH-1.2/src/usr.bin/ssh/cipher.h) = e1b48bd7a4e37c1b106f968d8377b843
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/clientloop.c) = cf820b3225666f8a9cf41e5f73e35267
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/clientloop.c) = 35f80aaf2f0796a25a54140f65731f07
MD5 (OpenSSH-1.2/src/usr.bin/ssh/compat.c) = 08c12cb64c7bc91f90ff6480e53097b9
MD5 (OpenSSH-1.2/src/usr.bin/ssh/compat.h) = c4228db03a5cb0b46a7aa4f11d046564
MD5 (OpenSSH-1.2/src/usr.bin/ssh/compress.c) = 50d1d17fec498f13d65327a5f98398b2
@@ -34,9 +35,9 @@ MD5 (OpenSSH-1.2/src/usr.bin/ssh/deattack.h) = db63f71b6c19484dd8ce5041cc6b646d
MD5 (OpenSSH-1.2/src/usr.bin/ssh/fingerprint.c) = 782318f23ec96a679f140a475ee38638
MD5 (OpenSSH-1.2/src/usr.bin/ssh/fingerprint.h) = 17d73906c4f0c1cddb3c1c7e98d02785
MD5 (OpenSSH-1.2/src/usr.bin/ssh/getput.h) = bf729289671363abc3882e1e0c34d270
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/hostfile.c) = 085630f89c27d8da273c228132a362b5
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/hostfile.c) = df76ac8ab45dc2bd796b3b0af16fcbef
MD5 (OpenSSH-1.2/src/usr.bin/ssh/includes.h) = 1dc9df93b0be59b6351755ea7817be09
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/lib/Makefile) = fcf2c95b795ebb2c3ef37eee749e0bc3
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/lib/Makefile) = 66b181f50f06eb76ecc6c59acf0f3068
MD5 (OpenSSH-1.2/src/usr.bin/ssh/log-client.c) = a05d3671346fd5a958cc74d1e2416b63
MD5 (OpenSSH-1.2/src/usr.bin/ssh/log-server.c) = d1c4f02578b1a83c972b7acd04ea2fa2
MD5 (OpenSSH-1.2/src/usr.bin/ssh/log.c) = 8389216c70241d8858fd4b4029361166
@@ -44,27 +45,27 @@ MD5 (OpenSSH-1.2/src/usr.bin/ssh/login.c) = e6d2ed8545050d71606b4b857c35af5f
MD5 (OpenSSH-1.2/src/usr.bin/ssh/match.c) = facc507e6b48d09f9df77c2a77b365c3
MD5 (OpenSSH-1.2/src/usr.bin/ssh/mpaux.c) = dfbd6e43248536777546c589e80ef333
MD5 (OpenSSH-1.2/src/usr.bin/ssh/mpaux.h) = 3dd5ddaa6baccf7f38964e69cd2f9e1c
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/nchan.c) = 7f30c59c6f29660d9d954384635285f2
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/nchan.c) = 63c2980438954303525580ebcebc0d11
MD5 (OpenSSH-1.2/src/usr.bin/ssh/nchan.h) = 884bb0c2b62f274ccbf9c0eafc9d37c2
MD5 (OpenSSH-1.2/src/usr.bin/ssh/nchan.ms) = 815e166dc85a329c3cfd98bd8cfda930
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/packet.c) = bac93270e95a7046cc594a6a61e76131
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/packet.c) = ae25628c118986c2d223d4b7f26fc673
MD5 (OpenSSH-1.2/src/usr.bin/ssh/packet.h) = 52811069d035c6900113732bf22e1456
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/pty.c) = 89e048eef46eb7d163099694b7105f65
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/pty.h) = e36e94db1c9ea38969390cc9979681a3
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/pty.c) = f142149091c3061c4ff4661b4e4ceaed
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/pty.h) = f2fb71af9954aebec8b3b69320dd6d12
MD5 (OpenSSH-1.2/src/usr.bin/ssh/radix.c) = 599f6349035451d48e36334b21696963
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/readconf.c) = 4f4dd92f5e5f359e8909922f2a1e176f
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/readconf.h) = 6e679e6c86f0d898101549afcf1b29b3
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/readconf.c) = d851d54ba4c4606268eb4089e1a7164c
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/readconf.h) = 9f40c6fa01b174149efbaad4bf21c334
MD5 (OpenSSH-1.2/src/usr.bin/ssh/readpass.c) = 77448898d33958f69d047aa78eb28e1a
MD5 (OpenSSH-1.2/src/usr.bin/ssh/rsa.c) = 3b47f0c260e26c118d971fafed604d3f
MD5 (OpenSSH-1.2/src/usr.bin/ssh/rsa.h) = ee65e38f1fcc22328c5d5f07b57d6e5f
MD5 (OpenSSH-1.2/src/usr.bin/ssh/scp.1) = a9144b2b272d8ac656b1d63c71644999
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/scp.c) = a6e4da9f92f2112af9a09dbd0a4ac840
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/scp.c) = 29ced969b9c1d05f42bfb07b238a8543
MD5 (OpenSSH-1.2/src/usr.bin/ssh/scp/Makefile) = 5cb4c5fcabde5ccc4f9ca475ac3452f4
MD5 (OpenSSH-1.2/src/usr.bin/ssh/servconf.c) = 62079877f586c06b71c384e556a78be2
MD5 (OpenSSH-1.2/src/usr.bin/ssh/servconf.h) = 056da4377475fbcded1ca288a1faf26e
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/serverloop.c) = 714ccc66c2f43587aab4408a5163dfbb
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-add.1) = 71930775228d2b0ce5cb1bed6ee6d962
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-add.c) = 1a5804bf1a3b9df12d418bdad06ff4fc
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/serverloop.c) = b2282cf4f899b132134d783f691a2fca
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-add.1) = 46ee567cafbde041222984ddead7bd51
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-add.c) = b2bcb9fcac8725699faaf8f2d8e6894c
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-add/Makefile) = f780e2e9fb5c32d2118ba0e612d681e0
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-agent.1) = 33b62903d3aa452fa106b484b016bbc5
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-agent.c) = 7f32db546585cc134d8fa42179c7016e
@@ -72,17 +73,17 @@ MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-agent/Makefile) = c7ec7c4e61b4da3369980f197
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-keygen.1) = 746734eab948fff84a44c3383f5a1701
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-keygen.c) = 439aac7630c0dc54b750ecbe314bc09b
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh-keygen/Makefile) = 2d597b6e6458d0c0246ba2563dd2498b
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.1) = 3c9e8a131a6a9df4501566a0cedda8fc
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.c) = 9412cc363131c26bf936f10d52ada317
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.h) = 01910a122ad112b849b91a9d070b34e1
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.1) = 0909d279dbcdf887e1af21d6139944b2
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.c) = 55f80318c9fbda5262f18ed4cf88466f
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh.h) = 68afb358b368d36fabf810f6514cc26a
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh/Makefile) = 41b006d3c04b599619990b47da60f81e
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ssh_config) = 9658715526aeaf0bc43528d3159b475f
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshconnect.c) = 8be61f808dabad6354e59b077ed5e032
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshconnect.c) = c1da1bc007d8bdb393a9ceadf042cb96
MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshd.8) = e08d1683e931a4b30e0e411d4d3576c8
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshd.c) = 44e69ac7064390355b2442a3b7e79a53
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshd.c) = 8a938a361817af6009128850d757be34
MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshd/Makefile) = d1d83d1ece775d3a5cbf8cfaaf2330f3
MD5 (OpenSSH-1.2/src/usr.bin/ssh/sshd_config) = e78b81c34da5c97eee1359cccda908d6
-MD5 (OpenSSH-1.2/src/usr.bin/ssh/tildexpand.c) = ebe3801a86c3c27fdbace05ae0c02621
+MD5 (OpenSSH-1.2/src/usr.bin/ssh/tildexpand.c) = 65ba9200404da3a094823605f57bca12
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ttymodes.c) = 570810b08bdb8bc962630c2fbb425a00
MD5 (OpenSSH-1.2/src/usr.bin/ssh/ttymodes.h) = a08ab0789c979c7942423e2ab3df79dd
MD5 (OpenSSH-1.2/src/usr.bin/ssh/uidswap.c) = a850da3d0fabd4a6c6cf7484c1105071
diff --git a/security/openssh/files/patch-ab b/security/openssh/files/patch-ab
index ab938cc81ab5..60e0dd4334ee 100644
--- a/security/openssh/files/patch-ab
+++ b/security/openssh/files/patch-ab
@@ -15,7 +15,7 @@
+TCP_WRAPPERS?= yes
+.if !defined(MAKEFILE_INC_FIRST_PASS)
+MAKEFILE_INC_FIRST_PASS= 0
-+CFLAGS+= -DHAVE_OPENPTY -I${PREFIX}/include
++CFLAGS+= -I${PREFIX}/include
LDADD+= -L${.CURDIR}/../lib -lssh
DPADD+= ${.CURDIR}/../lib/libssh.a
.endif
diff --git a/security/openssh/files/patch-ad b/security/openssh/files/patch-ad
index fc17693d6e5e..eb55f8ef07af 100644
--- a/security/openssh/files/patch-ad
+++ b/security/openssh/files/patch-ad
@@ -1,10 +1,12 @@
---- /usr/ports/distfiles/OpenSSH-1.2/src/usr.bin/ssh/lib/Makefile Tue Nov 16 17:49:29 1999
-+++ ./lib/Makefile Tue Nov 23 19:21:19 1999
-@@ -5,6 +5,7 @@
+--- lib/Makefile.orig Tue Dec 7 22:50:49 1999
++++ lib/Makefile Tue Dec 7 22:53:22 1999
+@@ -4,7 +4,8 @@
+ SRCS= authfd.c authfile.c bufaux.c buffer.c canohost.c channels.c \
cipher.c compat.c compress.c crc32.c deattack.c fingerprint.c \
hostfile.c log.c match.c mpaux.c nchan.c packet.c readpass.c \
- rsa.c tildexpand.c ttymodes.c uidswap.c xmalloc.c
-+SRCS+= strlcat.c strlcpy.c
+- rsa.c tildexpand.c ttymodes.c uidswap.c xmalloc.c atomicio.c
++ rsa.c tildexpand.c ttymodes.c uidswap.c xmalloc.c atomicio.c \
++ strlcat.c strlcpy.c
NOPROFILE= yes
NOPIC= yes
@@ -16,5 +18,3 @@
.if (${KERBEROS} == "yes")
CFLAGS+= -DKRB4 -I/usr/include/kerberosIV
-Only in ./lib: strlcat.c
-Only in ./lib: strlcpy.c
diff --git a/security/openssh/files/patch-an b/security/openssh/files/patch-an
index c102d36b7dcb..2c39339acaa0 100644
--- a/security/openssh/files/patch-an
+++ b/security/openssh/files/patch-an
@@ -1,14 +1,15 @@
---- /usr/ports/distfiles/OpenSSH-1.2/src/usr.bin/ssh/sshd.c Sun Nov 28 16:50:26 1999
-+++ sshd.c Mon Dec 6 00:54:51 1999
-@@ -24,6 +24,7 @@
+--- sshd.c.orig Tue Dec 7 22:56:55 1999
++++ sshd.c Tue Dec 7 22:58:36 1999
+@@ -24,6 +24,8 @@
#include "servconf.h"
#include "uidswap.h"
#include "compat.h"
++#include <poll.h>
+#include <time.h>
#ifdef LIBWRAP
#include <tcpd.h>
-@@ -32,6 +33,16 @@
+@@ -32,6 +34,16 @@
int deny_severity = LOG_WARNING;
#endif /* LIBWRAP */
@@ -25,7 +26,7 @@
#ifndef O_NOCTTY
#define O_NOCTTY 0
#endif
-@@ -118,6 +129,32 @@
+@@ -118,6 +130,32 @@
the private key. */
RSA *public_key;
@@ -58,15 +59,15 @@
/* Prototypes for various functions defined later in this file. */
void do_connection();
void do_authentication(char *user);
-@@ -278,6 +315,7 @@
+@@ -278,6 +316,7 @@
extern char *optarg;
extern int optind;
int opt, aux, sock_in, sock_out, newsock, i, pid, on = 1;
+ int connections_per_period_exceeded = 0;
int remote_major, remote_minor;
int silentrsa = 0;
- struct sockaddr_in sin;
-@@ -542,6 +580,12 @@
+ struct pollfd fds;
+@@ -543,6 +582,12 @@
/* Arrange SIGCHLD to be caught. */
signal(SIGCHLD, main_sigchld_handler);
@@ -79,7 +80,7 @@
/*
* Stay listening for connections until the system crashes or
* the daemon is killed with a signal.
-@@ -560,9 +604,31 @@
+@@ -572,9 +617,31 @@
error("accept: %.100s", strerror(errno));
continue;
}
@@ -113,7 +114,7 @@
*/
if (debug_flag) {
/*
-@@ -576,6 +642,12 @@
+@@ -588,6 +655,12 @@
sock_out = newsock;
pid = getpid();
break;
@@ -126,7 +127,7 @@
} else {
/*
* Normal production daemon. Fork, and have
-@@ -1048,6 +1120,14 @@
+@@ -1065,6 +1138,14 @@
return 0;
}
}
@@ -141,7 +142,7 @@
/* We found no reason not to let this user try to log on... */
return 1;
}
-@@ -1083,6 +1163,9 @@
+@@ -1100,6 +1181,9 @@
pwcopy.pw_gid = pw->pw_gid;
pwcopy.pw_dir = xstrdup(pw->pw_dir);
pwcopy.pw_shell = xstrdup(pw->pw_shell);
@@ -151,7 +152,7 @@
pw = &pwcopy;
/*
-@@ -1871,6 +1954,10 @@
+@@ -1889,6 +1973,10 @@
struct sockaddr_in from;
int fromlen;
struct pty_cleanup_context cleanup_context;
@@ -162,7 +163,7 @@
/* Get remote host name. */
hostname = get_canonical_hostname();
-@@ -1935,6 +2022,12 @@
+@@ -1953,6 +2041,12 @@
/* Check if .hushlogin exists. */
snprintf(line, sizeof line, "%.200s/.hushlogin", pw->pw_dir);
quiet_login = stat(line, &st) >= 0;
@@ -175,7 +176,7 @@
/*
* If the user has logged in before, display the time of last
-@@ -1958,6 +2051,20 @@
+@@ -1976,6 +2070,20 @@
else
printf("Last login: %s from %s\r\n", time_string, buf);
}
@@ -196,7 +197,7 @@
/*
* Print /etc/motd unless a command was specified or printing
* it was disabled in server options or login(1) will be
-@@ -1966,14 +2073,22 @@
+@@ -1984,14 +2092,22 @@
*/
if (command == NULL && options.print_motd && !quiet_login &&
!options.use_login) {
@@ -220,7 +221,7 @@
/* Do common processing for the child, such as execing the command. */
do_child(command, pw, term, display, auth_proto, auth_data, ttyname);
/* NOTREACHED */
-@@ -2109,7 +2224,8 @@
+@@ -2127,7 +2243,8 @@
const char *display, const char *auth_proto,
const char *auth_data, const char *ttyname)
{
@@ -230,7 +231,7 @@
char buf[256];
FILE *f;
unsigned int envsize, i;
-@@ -2117,15 +2233,34 @@
+@@ -2135,15 +2252,34 @@
extern char **environ;
struct stat st;
char *argv[10];
@@ -270,7 +271,7 @@
}
/* Set login name in the kernel. */
if (setlogin(pw->pw_name) < 0)
-@@ -2135,6 +2270,13 @@
+@@ -2153,6 +2289,13 @@
/* Login(1) does this as well, and it needs uid 0 for the "-h"
switch, so we let login(1) to this for us. */
if (!options.use_login) {
@@ -284,7 +285,7 @@
if (getuid() == 0 || geteuid() == 0) {
if (setgid(pw->pw_gid) < 0) {
perror("setgid");
-@@ -2157,7 +2299,14 @@
+@@ -2175,7 +2318,14 @@
* Get the shell from the password data. An empty shell field is
* legal, and means /bin/sh.
*/
@@ -299,7 +300,7 @@
#ifdef AFS
/* Try to get AFS tokens for the local cell. */
-@@ -2181,7 +2330,12 @@
+@@ -2199,7 +2349,12 @@
child_set_env(&env, &envsize, "USER", pw->pw_name);
child_set_env(&env, &envsize, "LOGNAME", pw->pw_name);
child_set_env(&env, &envsize, "HOME", pw->pw_dir);
@@ -312,7 +313,7 @@
snprintf(buf, sizeof buf, "%.200s/%.50s",
_PATH_MAILDIR, pw->pw_name);
-@@ -2271,6 +2425,9 @@
+@@ -2289,6 +2444,9 @@
*/
endpwent();
endhostent();
@@ -322,7 +323,7 @@
/*
* Close any extra open file descriptors so that we don\'t have them
-@@ -2278,7 +2435,7 @@
+@@ -2296,7 +2454,7 @@
* initgroups, because at least on Solaris 2.3 it leaves file
* descriptors open.
*/
@@ -331,7 +332,7 @@
close(i);
/* Change current directory to the user\'s home directory. */
-@@ -2297,6 +2454,26 @@
+@@ -2315,6 +2473,26 @@
* in this order).
*/
if (!options.use_login) {