summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--WHATSNEW.txt2
-rw-r--r--source/nsswitch/winbindd_util.c7
2 files changed, 8 insertions, 1 deletions
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 9c6bccc33d7..a7f02cbf7f0 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -82,6 +82,8 @@ smb.conf changes
Parameter Name Description Default
-------------- ----------- -------
debug prefix timestamp New No
+ idmap cache time Renamed 900
+ idmap negative cache time Renamed 120
lock spin count Removed n/a
diff --git a/source/nsswitch/winbindd_util.c b/source/nsswitch/winbindd_util.c
index 72c85a9c6a4..cbd76754bbd 100644
--- a/source/nsswitch/winbindd_util.c
+++ b/source/nsswitch/winbindd_util.c
@@ -603,8 +603,13 @@ struct winbindd_domain *find_domain_from_sid_noinit(const DOM_SID *sid)
/* Search through list */
for (domain = domain_list(); domain != NULL; domain = domain->next) {
- if (sid_compare_domain(sid, &domain->sid) == 0)
+ /* We need to use sid_peek_check_rid, because we want
+ * to make sure that the SIDs we send to the backends are
+ * as specific as possible.
+ */
+ if (sid_peek_check_rid(&domain->sid, sid, &discard)) {
return domain;
+ }
}
/* Not found */