diff --git a/source3/passdb/lookup_sid.c b/source3/passdb/lookup_sid.c index 5cf391f..701157c 100644 --- a/source3/passdb/lookup_sid.c +++ b/source3/passdb/lookup_sid.c @@ -1481,6 +1481,10 @@ bool sids_to_unix_ids(const struct dom_sid *sids, uint32_t num_sids, if (ids[i].type != WBC_ID_TYPE_NOT_SPECIFIED) { continue; } + if ((ids[i].type == WBC_ID_TYPE_GID && ids[i].id.gid == -1) + || (ids[i].type == WBC_ID_TYPE_UID && ids[i].id.uid == -1)) { + ids[i].type = WBC_ID_TYPE_NOT_SPECIFIED; + } if (legacy_sid_to_gid(&sids[i], &ids[i].id.gid)) { ids[i].type = WBC_ID_TYPE_GID; continue;