r12693: Move core data structures out of smb.h into core.h
[samba.git] / source4 / torture / rpc / bind.c
index 3eb02c31eb5feed499b88f76491ac9f58e947d3c..a1fd3d65b2cf2e707c37ab42f9ee5e3a10c9e5f7 100644 (file)
@@ -22,7 +22,9 @@
 */
 
 #include "includes.h"
+#include "torture/torture.h"
 #include "librpc/gen_ndr/ndr_lsa.h"
+#include "lib/cmdline/popt_common.h"
 
 /*
   This test is 'bogus' in that it doesn't actually perform to the
 BOOL torture_multi_bind(void) 
 {
        struct dcerpc_pipe *p;
-       const char *workstation = lp_netbios_name();
-       const char *domain = lp_parm_string(-1, "torture", "userdomain");
-       const char *username = lp_parm_string(-1, "torture", "username");
-       const char *password = lp_parm_string(-1, "torture", "password");
-       const char *pipe_uuid = DCERPC_LSARPC_UUID;
-       uint32_t pipe_version = DCERPC_LSARPC_VERSION;
        struct dcerpc_binding *binding;
        const char *binding_string = lp_parm_string(-1, "torture", "binding");
        TALLOC_CTX *mem_ctx;
@@ -58,21 +54,18 @@ BOOL torture_multi_bind(void)
                return False;
        }
 
-       status = torture_rpc_connection(&p, 
-                                       NULL,
-                                       pipe_uuid,
-                                       pipe_version);
+       status = torture_rpc_connection(mem_ctx, &p, &dcerpc_table_lsarpc);
        
        if (!NT_STATUS_IS_OK(status)) {
+               talloc_free(mem_ctx);
                return False;
        }
 
-       status = dcerpc_pipe_auth(p, binding, pipe_uuid, pipe_version, 
-                                 workstation, domain, username, password);
+       status = dcerpc_pipe_auth(p, binding, &dcerpc_table_lsarpc, cmdline_credentials);
 
        if (NT_STATUS_IS_OK(status)) {
                printf("(incorrectly) allowed re-bind to uuid %s - %s\n", 
-                       pipe_uuid, nt_errstr(status));
+                       GUID_string(mem_ctx, &dcerpc_table_lsarpc.uuid), nt_errstr(status));
                ret = False;
        } else {
                printf("\n");
@@ -80,7 +73,6 @@ BOOL torture_multi_bind(void)
        }
 
        talloc_free(mem_ctx);
-       torture_rpc_close(p);
 
        return ret;
 }