summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/auth/sam.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/source4/auth/sam.c b/source4/auth/sam.c
index bd9278036e..675c37682d 100644
--- a/source4/auth/sam.c
+++ b/source4/auth/sam.c
@@ -314,6 +314,11 @@ NTSTATUS authsam_expand_nested_groups(struct ldb_context *sam_ctx,
*num_res_sids = 0;
}
+ if (!sam_ctx) {
+ DEBUG(0, ("No SAM available, cannot determine local groups\n"));
+ return NT_STATUS_INVALID_SYSTEM_SERVICE;
+ }
+
tmp_ctx = talloc_new(res_sids_ctx);
dn = ldb_dn_from_ldb_val(tmp_ctx, sam_ctx, dn_val);
@@ -339,12 +344,6 @@ NTSTATUS authsam_expand_nested_groups(struct ldb_context *sam_ctx,
return status;
}
- if (!sam_ctx) {
- DEBUG(0, ("No SAM available, cannot determine local groups\n"));
- talloc_free(tmp_ctx);
- return NT_STATUS_INVALID_SYSTEM_SERVICE;
- }
-
if (only_childs) {
ret = dsdb_search_dn(sam_ctx, tmp_ctx, &res, dn, attrs,
DSDB_SEARCH_SHOW_EXTENDED_DN);