diff options
author | Sumit Bose <sbose@redhat.com> | 2015-10-07 16:12:45 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2015-10-08 19:56:42 +0200 |
commit | 374268c5eda35e8bbc2fef30752299199439cffe (patch) | |
tree | 80c054dffc0acfe40f006e9173c9fe41cb71b549 /src | |
parent | 391b81f2a78a812a87530e0c50c70d59150f49eb (diff) | |
download | sssd-374268c5eda35e8bbc2fef30752299199439cffe.tar.gz sssd-374268c5eda35e8bbc2fef30752299199439cffe.tar.xz sssd-374268c5eda35e8bbc2fef30752299199439cffe.zip |
fix upn cache_req for sub-domain users
Reviewed-by: Sumit Bose <sbose@redhat.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/responder/common/responder_cache_req.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/responder/common/responder_cache_req.c b/src/responder/common/responder_cache_req.c index be7fe5f29..ab73401b3 100644 --- a/src/responder/common/responder_cache_req.c +++ b/src/responder/common/responder_cache_req.c @@ -981,7 +981,8 @@ static errno_t cache_req_next_domain(struct tevent_req *req) /* If it is a domainless search, skip domains that require fully * qualified names instead. */ while (state->domain != NULL && state->check_next - && state->domain->fqnames) { + && state->domain->fqnames + && !cache_req_input_is_upn(state->input)) { state->domain = get_next_domain(state->domain, false); } @@ -1009,7 +1010,11 @@ static errno_t cache_req_next_domain(struct tevent_req *req) /* we will continue with the following domain the next time */ if (state->check_next) { - state->domain = get_next_domain(state->domain, false); + if (cache_req_input_is_upn(state->input)) { + state->domain = get_next_domain(state->domain, true); + } else { + state->domain = get_next_domain(state->domain, false); + } } return EAGAIN; |