summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/passdb/lookup_sid.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/passdb/lookup_sid.c b/source3/passdb/lookup_sid.c
index 4ceba3cdd2..3f8b06dfca 100644
--- a/source3/passdb/lookup_sid.c
+++ b/source3/passdb/lookup_sid.c
@@ -1347,6 +1347,20 @@ bool sids_to_unixids(const struct dom_sid *sids, uint32_t num_sids,
}
}
done:
+ for (i=0; i<num_sids; i++) {
+ switch(ids[i].type) {
+ case WBC_ID_TYPE_GID:
+ case WBC_ID_TYPE_UID:
+ case WBC_ID_TYPE_BOTH:
+ if (ids[i].id == -1) {
+ ids[i].type = ID_TYPE_NOT_SPECIFIED;
+ }
+ break;
+ case WBC_ID_TYPE_NOT_SPECIFIED:
+ break;
+ }
+ }
+
ret = true;
fail:
TALLOC_FREE(wbc_ids);