summaryrefslogtreecommitdiffstats
path: root/libgpo
diff options
context:
space:
mode:
Diffstat (limited to 'libgpo')
-rw-r--r--libgpo/gpo_util.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libgpo/gpo_util.c b/libgpo/gpo_util.c
index 5b801c4b086..e90b9a3f244 100644
--- a/libgpo/gpo_util.c
+++ b/libgpo/gpo_util.c
@@ -773,7 +773,13 @@ NTSTATUS gpo_copy(TALLOC_CTX *mem_ctx,
}
}
- gpo->security_descriptor = dup_sec_desc(gpo, gpo_src->security_descriptor);
+ if (gpo_src->security_descriptor == NULL) {
+ /* existing SD assumed */
+ TALLOC_FREE(gpo);
+ return NT_STATUS_INVALID_PARAMETER;
+ }
+ gpo->security_descriptor = security_descriptor_copy(gpo,
+ gpo_src->security_descriptor);
if (gpo->security_descriptor == NULL) {
TALLOC_FREE(gpo);
return NT_STATUS_NO_MEMORY;