s3-drsuapi: fix error handling after converting to dcerpc_drsuapi_X functions.
authorGünther Deschner <gd@samba.org>
Wed, 12 Jan 2011 12:41:16 +0000 (13:41 +0100)
committerGünther Deschner <gd@samba.org>
Wed, 12 Jan 2011 12:41:16 +0000 (13:41 +0100)
Guenther

source3/libnet/libnet_dssync.c
source3/rpcclient/cmd_drsuapi.c

index e2391625d827ddeaf571a4bc8d6aff2d7cdb9d59..3aed8b68ed895d9e7fc6673020bc25060943f4c8 100644 (file)
@@ -251,11 +251,14 @@ static NTSTATUS libnet_dssync_lookup_nc(TALLOC_CTX *mem_ctx,
        if (!NT_STATUS_IS_OK(status)) {
                ctx->error_message = talloc_asprintf(ctx,
                        "Failed to lookup DN for domain name: %s",
        if (!NT_STATUS_IS_OK(status)) {
                ctx->error_message = talloc_asprintf(ctx,
                        "Failed to lookup DN for domain name: %s",
-                       get_friendly_werror_msg(werr));
+                       get_friendly_nt_error_msg(status));
                return status;
        }
 
        if (!W_ERROR_IS_OK(werr)) {
                return status;
        }
 
        if (!W_ERROR_IS_OK(werr)) {
+               ctx->error_message = talloc_asprintf(ctx,
+                       "Failed to lookup DN for domain name: %s",
+                       get_friendly_werror_msg(werr));
                return werror_to_ntstatus(werr);
        }
 
                return werror_to_ntstatus(werr);
        }
 
@@ -469,7 +472,7 @@ static NTSTATUS libnet_dssync_getncchanges(TALLOC_CTX *mem_ctx,
                if (!NT_STATUS_IS_OK(status)) {
                        ctx->error_message = talloc_asprintf(ctx,
                                "Failed to get NC Changes: %s",
                if (!NT_STATUS_IS_OK(status)) {
                        ctx->error_message = talloc_asprintf(ctx,
                                "Failed to get NC Changes: %s",
-                               get_friendly_werror_msg(werr));
+                               get_friendly_nt_error_msg(status));
                        goto out;
                }
 
                        goto out;
                }
 
index b7ea226a95767ef4182c1c22591f945542790770..3f1ecab75035eaaa1b5451e05edc63511f8eca7c 100644 (file)
@@ -131,7 +131,8 @@ static WERROR cmd_drsuapi_cracknames(struct rpc_pipe_client *cli,
 
  out:
        if (is_valid_policy_hnd(&bind_handle)) {
 
  out:
        if (is_valid_policy_hnd(&bind_handle)) {
-               dcerpc_drsuapi_DsUnbind(b, mem_ctx, &bind_handle, &werr);
+               WERROR _werr;
+               dcerpc_drsuapi_DsUnbind(b, mem_ctx, &bind_handle, &_werr);
        }
 
        return werr;
        }
 
        return werr;
@@ -296,7 +297,8 @@ static WERROR cmd_drsuapi_getdcinfo(struct rpc_pipe_client *cli,
        display_domain_controller_info(level_out, &ctr);
  out:
        if (is_valid_policy_hnd(&bind_handle)) {
        display_domain_controller_info(level_out, &ctr);
  out:
        if (is_valid_policy_hnd(&bind_handle)) {
-               dcerpc_drsuapi_DsUnbind(b, mem_ctx, &bind_handle, &werr);
+               WERROR _werr;
+               dcerpc_drsuapi_DsUnbind(b, mem_ctx, &bind_handle, &_werr);
        }
 
        return werr;
        }
 
        return werr;
@@ -495,12 +497,15 @@ static WERROR cmd_drsuapi_getncchanges(struct rpc_pipe_client *cli,
                                                       &ctr,
                                                       &werr);
                if (!NT_STATUS_IS_OK(status)) {
                                                       &ctr,
                                                       &werr);
                if (!NT_STATUS_IS_OK(status)) {
+                       werr = ntstatus_to_werror(status);
                        printf("Failed to get NC Changes: %s",
                        printf("Failed to get NC Changes: %s",
-                               get_friendly_werror_msg(werr));
+                               get_friendly_nt_error_msg(status));
                        goto out;
                }
 
                if (!W_ERROR_IS_OK(werr)) {
                        goto out;
                }
 
                if (!W_ERROR_IS_OK(werr)) {
+                       printf("Failed to get NC Changes: %s",
+                               get_friendly_werror_msg(werr));
                        goto out;
                }
 
                        goto out;
                }