libnetjoin: correctly copy returned lsa policy sid.
authorGünther Deschner <gd@samba.org>
Wed, 4 Jun 2008 16:05:15 +0000 (18:05 +0200)
committerGünther Deschner <gd@samba.org>
Wed, 4 Jun 2008 16:05:15 +0000 (18:05 +0200)
Guenther

source/libnet/libnet_join.c

index 1ab75d7882103d87357bf7fbb054ae24b4fdbad4..3b2bce9fcf1e4a436ea2195830ca09ed9b255032 100644 (file)
@@ -690,7 +690,8 @@ static NTSTATUS libnet_join_lookup_dc_rpc(TALLOC_CTX *mem_ctx,
                r->out.netbios_domain_name = info->dns.name.string;
                r->out.dns_domain_name = info->dns.dns_domain.string;
                r->out.forest_name = info->dns.dns_forest.string;
-               r->out.domain_sid = info->dns.sid;
+               r->out.domain_sid = sid_dup_talloc(mem_ctx, info->dns.sid);
+               NT_STATUS_HAVE_NO_MEMORY(r->out.domain_sid);
        }
 
        if (!NT_STATUS_IS_OK(status)) {
@@ -703,7 +704,8 @@ static NTSTATUS libnet_join_lookup_dc_rpc(TALLOC_CTX *mem_ctx,
                }
 
                r->out.netbios_domain_name = info->account_domain.name.string;
-               r->out.domain_sid = info->account_domain.sid;
+               r->out.domain_sid = sid_dup_talloc(mem_ctx, info->account_domain.sid);
+               NT_STATUS_HAVE_NO_MEMORY(r->out.domain_sid);
        }
 
        rpccli_lsa_Close(pipe_hnd, mem_ctx, &lsa_pol);