diff options
Diffstat (limited to 'platform.c')
-rw-r--r-- | platform.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/platform.c b/platform.c index c8163f901..b4fb88e5f 100644 --- a/platform.c +++ b/platform.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $Id: platform.c,v 1.12 2010/11/05 02:29:25 dtucker Exp $ */ | 1 | /* $Id: platform.c,v 1.13 2010/11/05 02:32:53 dtucker Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2006 Darren Tucker. All rights reserved. | 4 | * Copyright (c) 2006 Darren Tucker. All rights reserved. |
@@ -102,6 +102,17 @@ platform_setusercontext(struct passwd *pw) | |||
102 | void | 102 | void |
103 | platform_setusercontext_post_groups(struct passwd *pw) | 103 | platform_setusercontext_post_groups(struct passwd *pw) |
104 | { | 104 | { |
105 | #if !defined(HAVE_LOGIN_CAP) && defined(USE_PAM) | ||
106 | /* | ||
107 | * PAM credentials may take the form of supplementary groups. | ||
108 | * These will have been wiped by the above initgroups() call. | ||
109 | * Reestablish them here. | ||
110 | */ | ||
111 | if (options.use_pam) { | ||
112 | do_pam_setcred(use_privsep); | ||
113 | } | ||
114 | #endif /* USE_PAM */ | ||
115 | |||
105 | #if !defined(HAVE_LOGIN_CAP) && (defined(WITH_IRIX_PROJECT) || \ | 116 | #if !defined(HAVE_LOGIN_CAP) && (defined(WITH_IRIX_PROJECT) || \ |
106 | defined(WITH_IRIX_JOBS) || defined(WITH_IRIX_ARRAY)) | 117 | defined(WITH_IRIX_JOBS) || defined(WITH_IRIX_ARRAY)) |
107 | irix_setusercontext(pw); | 118 | irix_setusercontext(pw); |