Make sure we do not reference req after it has been freed
authorSimo Sorce <idra@samba.org>
Wed, 9 Apr 2008 21:11:57 +0000 (17:11 -0400)
committerSimo Sorce <idra@samba.org>
Wed, 9 Apr 2008 21:12:56 +0000 (17:12 -0400)
(This used to be commit a13f64bf54afc22516d1f6a786dfec67389cb754)

source4/libcli/cldap/cldap.c

index d10eeb8ffd7e7e4f36bdc53aca76e7e4a4444e76..d9910285d941058a70b3058477981d284371e184 100644 (file)
@@ -601,8 +601,11 @@ NTSTATUS cldap_netlogon_recv(struct cldap_request *req,
        NTSTATUS status;
        enum ndr_err_code ndr_err;
        struct cldap_search search;
+       struct cldap_socket *cldap;
        DATA_BLOB *data;
 
+       cldap = req->cldap;
+
        status = cldap_search_recv(req, mem_ctx, &search);
        if (!NT_STATUS_IS_OK(status)) {
                return status;
@@ -620,7 +623,7 @@ NTSTATUS cldap_netlogon_recv(struct cldap_request *req,
        data = search.out.response->attributes[0].values;
 
        ndr_err = ndr_pull_union_blob_all(data, mem_ctx, 
-                                         req->cldap->iconv_convenience,
+                                         cldap->iconv_convenience,
                                          &io->out.netlogon,
                                          io->in.version & 0xF,
                                          (ndr_pull_flags_fn_t)ndr_pull_nbt_cldap_netlogon);