From: Andrew Bartlett Date: Sat, 2 Oct 2004 11:11:49 +0000 (+0000) Subject: r2779: Some fixes to pam_winbind.c.: X-Git-Tag: samba-misc-tags/initial-v3-0-unstable~5731 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=83dadcd089905aa8ff3392010177ffa1dc8237ba;p=thirdparty%2Fsamba.git r2779: Some fixes to pam_winbind.c.: Allow 'require_membership_of' and 'require-membership-of'. Really use a different struct for the SID->Name lookup. Andrew Bartlett --- diff --git a/source/nsswitch/pam_winbind.c b/source/nsswitch/pam_winbind.c index 9a00ac2886c..9d4f0954ceb 100644 --- a/source/nsswitch/pam_winbind.c +++ b/source/nsswitch/pam_winbind.c @@ -218,21 +218,21 @@ static int winbind_auth_request(const char *user, const char *pass, const char * struct winbindd_request sid_request; struct winbindd_response sid_response; - ZERO_STRUCT(request); - ZERO_STRUCT(response); + ZERO_STRUCT(sid_request); + ZERO_STRUCT(sid_response); if (ctrl & WINBIND_DEBUG_ARG) _pam_log(LOG_DEBUG, "no sid given, looking up: %s\n", member); /* fortunatly winbindd can handle non-separated names */ - strcpy(request.data.name.name, member); + strcpy(sid_request.data.name.name, member); - if (pam_winbind_request_log(WINBINDD_LOOKUPNAME, &request, &response, ctrl, user)) { + if (pam_winbind_request_log(WINBINDD_LOOKUPNAME, &sid_request, &sid_response, ctrl, user)) { _pam_log(LOG_INFO, "could not lookup name: %s\n", member); return PAM_AUTH_ERR; } - member = response.data.sid.sid; + member = sid_response.data.sid.sid; } strncpy(request.data.auth.require_membership_of_sid, member, @@ -490,13 +490,14 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags, /* Retrieve membership-string here */ for ( i=0; i