From: Todd C. Miller Date: Tue, 26 Oct 2004 22:21:02 +0000 (+0000) Subject: Working LDAP support; also remove a now-unneeded rewind(). X-Git-Tag: SUDO_1_7_0~858 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ce4b69f8b0b85499c90a1e61aafeb8446203afc4;p=sudo Working LDAP support; also remove a now-unneeded rewind(). --- diff --git a/mon_systrace.c b/mon_systrace.c index 485cc0182..f7b2384d1 100644 --- a/mon_systrace.c +++ b/mon_systrace.c @@ -823,8 +823,11 @@ check_execv(fd, pid, seqnr, askp, cookie, policyp, errorp) int *policyp; int *errorp; { - int error, validated; + int error, validated = VALIDATE_NOT_OK; struct childinfo *info; +#ifdef HAVE_LDAP + void *ld; +#endif /* If we have a cookie we take special action. */ if (cookie != -1) { @@ -875,11 +878,14 @@ check_execv(fd, pid, seqnr, askp, cookie, policyp, errorp) runas_pw = info->pw; user_runas = &info->pw->pw_name; #ifdef HAVE_LDAP - validated = sudo_ldap_check(pwflag); + if ((ld = sudo_ldap_open()) != NULL) { + sudo_ldap_update_defaults(ld); + validated = sudo_ldap_check(ld, 0); + } if (!def_ignore_local_sudoers && !ISSET(validated, VALIDATE_OK)) #endif { - rewind(sudoers_fp); + (void) update_defaults(); validated = sudoers_lookup(0); } if (ISSET(validated, VALIDATE_OK)) {