- (dtucker) [platform.c session.c] Move the getluid call out of session.c and

into the platform-specific code  Only affects SCO, tested by and ok tim@.
This commit is contained in:
Darren Tucker 2010-11-24 10:09:13 +11:00
parent 9e0ff7afc8
commit d995712383
3 changed files with 13 additions and 7 deletions

View File

@ -1,3 +1,7 @@
20101124
- (dtucker) [platform.c session.c] Move the getluid call out of session.c and
into the platform-specific code Only affects SCO, tested by and ok tim@.
20101122
- (dtucker) Bug #1840: fix warning when configuring --with-ssl-engine, patch
from vapier at gentoo org.

View File

@ -1,4 +1,4 @@
/* $Id: platform.c,v 1.16 2010/11/07 07:05:54 dtucker Exp $ */
/* $Id: platform.c,v 1.17 2010/11/23 23:09:13 dtucker Exp $ */
/*
* Copyright (c) 2006 Darren Tucker. All rights reserved.
@ -115,6 +115,14 @@ platform_setusercontext(struct passwd *pw)
}
}
# endif /* USE_PAM */
#if !defined(HAVE_LOGIN_CAP) && defined(HAVE_GETLUID) && defined(HAVE_SETLUID)
if (getuid() == 0 || geteuid() == 0) {
/* Sets login uid for accounting */
if (getluid() == -1 && setluid(pw->pw_uid) == -1)
error("setluid: %s", strerror(errno));
}
#endif
}
/*

View File

@ -1481,12 +1481,6 @@ do_setusercontext(struct passwd *pw)
exit(1);
}
#else
# if defined(HAVE_GETLUID) && defined(HAVE_SETLUID)
/* Sets login uid for accounting */
if (getluid() == -1 && setluid(pw->pw_uid) == -1)
error("setluid: %s", strerror(errno));
# endif /* defined(HAVE_GETLUID) && defined(HAVE_SETLUID) */
if (setlogin(pw->pw_name) < 0)
error("setlogin failed: %s", strerror(errno));
if (setgid(pw->pw_gid) < 0) {