regardless of whether or not there was an actual match. Otherwise,
warning mail may be sent which is not what we want in list mode.
This is consistent with what the sudoers file backend does.
if (pwflag && list_pw == NULL)
SET(ret, FLAG_NO_CHECK);
}
- if (lres->user_matches)
+ if (pwflag || lres->user_matches)
CLR(ret, FLAG_NO_USER);
- if (lres->host_matches)
+ if (pwflag || lres->host_matches)
CLR(ret, FLAG_NO_HOST);
DPRINTF1("sudo_ldap_lookup(%d)=0x%02x", pwflag, ret);
SET(ret, FLAG_NO_CHECK);
}
- if (state & SUDO_SSS_STATE_USERMATCH)
+ if (pwflag || ISSET(state, SUDO_SSS_STATE_USERMATCH))
CLR(ret, FLAG_NO_USER);
- if (state & SUDO_SSS_STATE_HOSTMATCH)
+ if (pwflag || ISSET(state, SUDO_SSS_STATE_HOSTMATCH))
CLR(ret, FLAG_NO_HOST);
sudo_debug_printf(SUDO_DEBUG_DEBUG, "sudo_sss_lookup(%d)=0x%02x",
- pwflag, ret);
+ pwflag, ret);
debug_return_int(ret);
}