rpcclient: call drsuapi_DsUnbind() when finished with DsCrackNames call.
authorGünther Deschner <gd@samba.org>
Sat, 24 May 2008 23:52:40 +0000 (01:52 +0200)
committerGünther Deschner <gd@samba.org>
Mon, 26 May 2008 10:21:11 +0000 (12:21 +0200)
Guenther

source/rpcclient/cmd_drsuapi.c

index f625aa63001ba0c2faf47c69b64374a6b0abd415..6c8fe3df498ded20a4bf66ed7fb35b386b1360f0 100644 (file)
@@ -74,11 +74,12 @@ static WERROR cmd_drsuapi_cracknames(struct rpc_pipe_client *cli,
                                             &werr);
 
        if (!NT_STATUS_IS_OK(status)) {
-               return ntstatus_to_werror(status);
+               werr = ntstatus_to_werror(status);
+               goto out;
        }
 
        if (!W_ERROR_IS_OK(werr)) {
-               return werr;
+               goto out;
        }
 
        for (i=0; i < ctr.ctr1->count; i++) {
@@ -90,6 +91,11 @@ static WERROR cmd_drsuapi_cracknames(struct rpc_pipe_client *cli,
                        ctr.ctr1->array[i].result_name);
        }
 
+ out:
+       if (is_valid_policy_hnd(&bind_handle)) {
+               rpccli_drsuapi_DsUnbind(cli, mem_ctx, &bind_handle, &werr);
+       }
+
        return werr;
 }