r10566: Clean up error messages to provide more accurate info.
authorAndrew Bartlett <abartlet@samba.org>
Wed, 28 Sep 2005 05:38:20 +0000 (05:38 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:39:06 +0000 (13:39 -0500)
Andrew Bartlett
(This used to be commit 640815008b78ca19a73beb523e6823dd61feffa5)

source4/libnet/libnet_join.c

index 3edad642590d782d2e4e0d849d52eb06fb037ca1..166b6a730de6a46bfa1d947cf24a63dd0321d980 100644 (file)
@@ -613,9 +613,15 @@ NTSTATUS libnet_JoinDomain(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, stru
 
        status = libnet_RpcConnect(ctx, c, c);
        if (!NT_STATUS_IS_OK(status)) {
-               r->out.error_string = talloc_asprintf(mem_ctx,
-                                               "Connection to LSA pipe of PDC of domain '%s' failed: %s",
-                                               r->in.domain_name, nt_errstr(status));
+               if (r->in.level == LIBNET_JOINDOMAIN_AUTOMATIC) {
+                       r->out.error_string = talloc_asprintf(mem_ctx,
+                                                             "Connection to LSA pipe of PDC of domain '%s' failed: %s",
+                                                             r->in.domain_name, nt_errstr(status));
+               } else {
+                       r->out.error_string = talloc_asprintf(mem_ctx,
+                                                             "Connection to LSA pipe with binding '%s' failed: %s",
+                                                             r->in.binding, nt_errstr(status));
+               }
                talloc_free(tmp_ctx);
                return status;
        }                       
@@ -835,9 +841,8 @@ NTSTATUS libnet_JoinDomain(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, stru
                        r->out.error_string = talloc_asprintf(mem_ctx,
                                                              "samr_LookupNames for [%s] returns %d RIDs\n",
                                                              r->in.account_name, ln.out.rids.count);
-                       status = NT_STATUS_INVALID_PARAMETER;
                        talloc_free(tmp_ctx);
-                       return status;  
+                       return NT_STATUS_INVALID_PARAMETER;
                }
                
                /* prepare samr_OpenUser */