r5963: Fix parameter passing for gentest and locktest
authorJelmer Vernooij <jelmer@samba.org>
Tue, 22 Mar 2005 19:30:59 +0000 (19:30 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:11:11 +0000 (13:11 -0500)
(This used to be commit 28914c89dc1400d8364c13258ec0e8558acc7dfd)

source4/torture/gentest.c
source4/torture/locktest.c

index 92d6da9fef0e48e8be5995cc600e91d0f5c0f5b5..5f036910b60b477e7abbbd39746393be15b5c102 100644 (file)
@@ -60,7 +60,7 @@ static struct {
        struct smbcli_state *cli[NINSTANCES];
        char *server_name;
        char *share_name;
-       struct cli_credentials credentials;
+       struct cli_credentials *credentials;
 } servers[NSERVERS];
 
 /* the seeds and flags for each operation */
@@ -175,13 +175,13 @@ static BOOL connect_servers(void)
                        NTSTATUS status;
                        printf("Connecting to \\\\%s\\%s as %s - instance %d\n",
                               servers[i].server_name, servers[i].share_name, 
-                              servers[i].credentials.username, j);
+                              servers[i].credentials->username, j);
 
                        status = smbcli_full_connection(NULL, &servers[i].cli[j],
                                                        "gentest",
                                                        servers[i].server_name, 
                                                        servers[i].share_name, NULL, 
-                                                       &servers[i].credentials);
+                                                       servers[i].credentials);
                        if (!NT_STATUS_IS_OK(status)) {
                                printf("Failed to connect to \\\\%s\\%s - %s\n",
                                       servers[i].server_name, servers[i].share_name,
@@ -2115,6 +2115,7 @@ static void usage(void)
 
        for (i=0;i<NSERVERS;i++) {
                const char *share = argv[1+i];
+               servers[i].credentials = cli_credentials_init(NULL);
                if (!split_unc_name(share, &servers[i].server_name, &servers[i].share_name)) {
                        printf("Invalid share name '%s'\n", share);
                        return -1;
@@ -2135,8 +2136,8 @@ static void usage(void)
        while ((opt = getopt(argc, argv, "U:s:o:ad:i:AOhS:LFXC")) != EOF) {
                switch (opt) {
                case 'U':
-                       i = servers[0].credentials.username?1:0;
-                       cli_credentials_parse_string(&servers[0].credentials, optarg, CRED_SPECIFIED);
+                       i = servers[0].credentials->username?1:0;
+                       cli_credentials_parse_string(servers[i].credentials, optarg, CRED_SPECIFIED);
                        break;
                case 'd':
                        DEBUGLEVEL = atoi(optarg);
@@ -2186,13 +2187,13 @@ static void usage(void)
 
        gentest_init_subsystems;
 
-       if (!servers[0].credentials.username) {
+       if (!servers[0].credentials->username) {
                usage();
                return -1;
        }
-       if (!servers[1].credentials.username) {
-               servers[1].credentials.username = servers[0].credentials.username;
-               servers[1].credentials.password = servers[0].credentials.password;
+       if (!servers[1].credentials->username) {
+               servers[1].credentials->username = servers[0].credentials->username;
+               servers[1].credentials->password = servers[0].credentials->password;
        }
 
        printf("seed=%u\n", options.seed);
index 005f9af71b11837360c34f3dfea853a7b280cfde..4051f9c41148e15f3b6792611def24b94131ce5a 100644 (file)
@@ -47,7 +47,7 @@ static BOOL zero_zero;
 
 #define NASTY_POSIX_LOCK_HACK 0
 
-static struct cli_credentials servers[NSERVERS];
+static struct cli_credentials *servers[NSERVERS];
 
 enum lock_op {OP_LOCK, OP_UNLOCK, OP_REOPEN};
 
@@ -121,7 +121,7 @@ static struct smbcli_state *connect_one(char *share, int snum)
                status = smbcli_full_connection(NULL, &c, myname,
                                                server, 
                                                share, NULL,
-                                               &servers[snum]);
+                                               servers[snum]);
                if (!NT_STATUS_IS_OK(status)) {
                        sleep(2);
                }
@@ -477,13 +477,16 @@ static void usage(void)
        lp_load(dyn_CONFIGFILE,True,False,False);
        load_interfaces();
 
+       servers[0] = cli_credentials_init(talloc_autofree_context());
+       servers[1] = cli_credentials_init(talloc_autofree_context());
+
        seed = time(NULL);
 
        while ((opt = getopt(argc, argv, "U:s:ho:aAW:OR:B:M:EZW:")) != EOF) {
                switch (opt) {
                case 'U':
-                       i = servers[0].username?1:0;
-                       cli_credentials_parse_string(&servers[0], optarg, CRED_SPECIFIED);
+                       i = servers[0]->username?1:0;
+                       cli_credentials_parse_string(servers[i], optarg, CRED_SPECIFIED);
 
                        break;
                case 'R':
@@ -531,13 +534,13 @@ static void usage(void)
                }
        }
 
-       if (!servers[0].username) {
+       if (!servers[0]->username) {
                usage();
                return -1;
        }
-       if (!servers[1].username) {
-               servers[1].username = servers[0].username;
-               servers[1].password = servers[0].password;
+       if (!servers[1]->username) {
+               servers[1]->username = servers[0]->username;
+               servers[1]->password = servers[0]->password;
        }
 
        locktest_init_subsystems;