r26644: Janitorial: Pass resolve_context explicitly to various SMB functions, should...
[jelmer/samba4-debian.git] / source / client / cifsdd.c
index 5735d127e4f0146a80a8d8c921dd30afce01d367..8749a82573cf1161201eb5f3a2fe663621c04fc4 100644 (file)
@@ -22,6 +22,7 @@
 #include "system/filesys.h"
 #include "auth/gensec/gensec.h"
 #include "lib/cmdline/popt_common.h"
+#include "libcli/resolve/resolve.h"
 
 #include "cifsdd.h"
 #include "param/param.h"
@@ -351,7 +352,8 @@ static void print_transfer_stats(void)
        }
 }
 
-static struct dd_iohandle * open_file(const char * which)
+static struct dd_iohandle * open_file(struct resolve_context *resolve_ctx, 
+                                     const char * which, const char **ports)
 {
        int                     options = 0;
        const char *            path = NULL;
@@ -371,13 +373,13 @@ static struct dd_iohandle * open_file(const char * which)
 
        if (strcmp(which, "if") == 0) {
                path = check_arg_pathname("if");
-               handle = dd_open_path(path, check_arg_numeric("ibs"),
-                                       options);
+               handle = dd_open_path(resolve_ctx, path, ports, 
+                                     check_arg_numeric("ibs"), options);
        } else if (strcmp(which, "of") == 0) {
                options |= DD_WRITE;
                path = check_arg_pathname("of");
-               handle = dd_open_path(path, check_arg_numeric("obs"),
-                                       options);
+               handle = dd_open_path(resolve_ctx, path, ports, 
+                                     check_arg_numeric("obs"), options);
        } else {
                SMB_ASSERT(0);
                return(NULL);
@@ -390,15 +392,15 @@ static struct dd_iohandle * open_file(const char * which)
        return(handle);
 }
 
-static void set_max_xmit(uint64_t iomax)
+static void set_max_xmit(struct loadparm_context *lp_ctx, uint64_t iomax)
 {
        char buf[64];
 
        snprintf(buf, sizeof(buf), "%llu", (unsigned long long)iomax);
-       lp_set_cmdline(global_loadparm, "max xmit", buf);
+       lp_set_cmdline(lp_ctx, "max xmit", buf);
 }
 
-static int copy_files(void)
+static int copy_files(struct loadparm_context *lp_ctx)
 {
        uint8_t *       iobuf;  /* IO buffer. */
        uint64_t        iomax;  /* Size of the IO buffer. */
@@ -426,16 +428,18 @@ static int copy_files(void)
                return(EOM_EXIT_CODE);
        }
 
-       set_max_xmit(MAX(ibs, obs));
+       set_max_xmit(lp_ctx, MAX(ibs, obs));
 
        DEBUG(4, ("IO buffer size is %llu, max xmit is %d\n",
-                       (unsigned long long)iomax, lp_max_xmit(global_loadparm)));
+                       (unsigned long long)iomax, lp_max_xmit(lp_ctx)));
 
-       if (!(ifile = open_file("if"))) {
+       if (!(ifile = open_file(lp_resolve_context(lp_ctx), "if", 
+                               lp_smb_ports(lp_ctx)))) {
                return(FILESYS_EXIT_CODE);
        }
 
-       if (!(ofile = open_file("of"))) {
+       if (!(ofile = open_file(lp_resolve_context(lp_ctx), "of", 
+                               lp_smb_ports(lp_ctx)))) {
                return(FILESYS_EXIT_CODE);
        }
 
@@ -443,7 +447,7 @@ static int copy_files(void)
        ifile->io_seek(ifile, check_arg_numeric("skip") * ibs);
        ofile->io_seek(ofile, check_arg_numeric("seek") * obs);
 
-       DEBUG(4, ("max xmit was negotiated to be %d\n", lp_max_xmit(global_loadparm)));
+       DEBUG(4, ("max xmit was negotiated to be %d\n", lp_max_xmit(lp_ctx)));
 
        for (data_size = 0;;) {
 
@@ -574,7 +578,7 @@ int main(int argc, const char ** argv)
                }
        }
 
-       gensec_init();
+       gensec_init(cmdline_lp_ctx);
        dump_args();
 
        if (check_arg_numeric("ibs") == 0 || check_arg_numeric("ibs") == 0) {
@@ -595,7 +599,7 @@ int main(int argc, const char ** argv)
 
        CatchSignal(SIGINT, dd_handle_signal);
        CatchSignal(SIGUSR1, dd_handle_signal);
-       return(copy_files());
+       return(copy_files(cmdline_lp_ctx));
 }
 
 /* vim: set sw=8 sts=8 ts=8 tw=79 : */