summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorgreen <green@FreeBSD.org>2000-06-27 21:16:06 +0000
committergreen <green@FreeBSD.org>2000-06-27 21:16:06 +0000
commit26efc47d384874586102325d5751243778fa6cbb (patch)
treeb994b40477eda9fea0ba63649e10d04dae053520 /crypto
parent1a17cb6a0cb2f10ac0763e60320148b8e23e7cb3 (diff)
downloadFreeBSD-src-26efc47d384874586102325d5751243778fa6cbb.zip
FreeBSD-src-26efc47d384874586102325d5751243778fa6cbb.tar.gz
So /this/ is what has made OpenSSH's SSHv2 support never work right!
In some cases, limits did not get set to the proper class, but instead always to "default", because not all passwd copies were done to completion.
Diffstat (limited to 'crypto')
-rw-r--r--crypto/openssh/auth2.c3
-rw-r--r--crypto/openssh/ssh.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/crypto/openssh/auth2.c b/crypto/openssh/auth2.c
index f45b8c8..a663eca 100644
--- a/crypto/openssh/auth2.c
+++ b/crypto/openssh/auth2.c
@@ -359,6 +359,9 @@ auth_set_user(char *u, char *s)
copy->pw_gid = pw->pw_gid;
copy->pw_dir = xstrdup(pw->pw_dir);
copy->pw_shell = xstrdup(pw->pw_shell);
+ copy->pw_class = xstrdup(pw->pw_class);
+ copy->pw_expire = pw->pw_expire;
+ copy->pw_change = pw->pw_change;
authctxt->valid = 1;
} else {
if (strcmp(u, authctxt->user) != 0 ||
diff --git a/crypto/openssh/ssh.c b/crypto/openssh/ssh.c
index c1d0bbc..5708897 100644
--- a/crypto/openssh/ssh.c
+++ b/crypto/openssh/ssh.c
@@ -489,6 +489,9 @@ main(int ac, char **av)
pwcopy.pw_gid = pw->pw_gid;
pwcopy.pw_dir = xstrdup(pw->pw_dir);
pwcopy.pw_shell = xstrdup(pw->pw_shell);
+ pwcopy.pw_class = xstrdup(pw->pw_class);
+ pwcopy.pw_expire = pw->pw_expire;
+ pwcopy.pw_change = pw->pw_change;
pw = &pwcopy;
/* Initialize "log" output. Since we are the client all output
OpenPOWER on IntegriCloud