From 4dba2c451ad23bcc217f0f92c31c54e6f287fbc6 Mon Sep 17 00:00:00 2001 From: green Date: Wed, 8 Dec 1999 04:06:38 +0000 Subject: 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. --- security/openssh/Makefile | 6 ++--- security/openssh/distinfo | 53 +++++++++++++++++++++-------------------- security/openssh/files/patch-ab | 2 +- security/openssh/files/patch-ad | 14 +++++------ security/openssh/files/patch-an | 49 ++++++++++++++++++------------------- 5 files changed, 63 insertions(+), 61 deletions(-) (limited to 'security') 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 +#include #ifdef LIBWRAP #include -@@ -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) { -- cgit