diff options
author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2004-02-26 10:38:49 +0000 |
---|---|---|
committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2004-02-26 10:38:49 +0000 |
commit | efcad6b72fe9d4f7ea99c021f4903d09ca31b666 (patch) | |
tree | 44704f8b727acba451fd902fe3c26053cb6ce73e /crypto/openssh/auth-sia.c | |
parent | 002696701b39a951525861c3d0da4984e29e7360 (diff) | |
download | src-test2-efcad6b72fe9d4f7ea99c021f4903d09ca31b666.tar.gz src-test2-efcad6b72fe9d4f7ea99c021f4903d09ca31b666.zip |
Notes
Diffstat (limited to 'crypto/openssh/auth-sia.c')
-rw-r--r-- | crypto/openssh/auth-sia.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/crypto/openssh/auth-sia.c b/crypto/openssh/auth-sia.c index cae5f0912838..cd2dcb840655 100644 --- a/crypto/openssh/auth-sia.c +++ b/crypto/openssh/auth-sia.c @@ -31,6 +31,7 @@ #include "log.h" #include "servconf.h" #include "canohost.h" +#include "uidswap.h" #include <sia.h> #include <siad.h> @@ -83,7 +84,7 @@ session_setup_sia(struct passwd *pw, char *tty) host = get_canonical_hostname(options.use_dns); - if (sia_ses_init(&ent, saved_argc, saved_argv, host, pw->pw_name, + if (sia_ses_init(&ent, saved_argc, saved_argv, host, pw->pw_name, tty, 0, NULL) != SIASUCCESS) fatal("sia_ses_init failed"); @@ -100,11 +101,11 @@ session_setup_sia(struct passwd *pw, char *tty) if (sia_ses_launch(sia_collect_trm, ent) != SIASUCCESS) fatal("Couldn't launch session for %s from %s", pw->pw_name, host); - + sia_ses_release(&ent); - if (setreuid(geteuid(), geteuid()) < 0) - fatal("setreuid: %s", strerror(errno)); + setuid(0); + permanently_set_uid(pw); } #endif /* HAVE_OSF_SIA */ |