diff options
author | green <green@FreeBSD.org> | 2000-06-27 21:16:06 +0000 |
---|---|---|
committer | green <green@FreeBSD.org> | 2000-06-27 21:16:06 +0000 |
commit | 26efc47d384874586102325d5751243778fa6cbb (patch) | |
tree | b994b40477eda9fea0ba63649e10d04dae053520 /crypto | |
parent | 1a17cb6a0cb2f10ac0763e60320148b8e23e7cb3 (diff) | |
download | FreeBSD-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.c | 3 | ||||
-rw-r--r-- | crypto/openssh/ssh.c | 3 |
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 |