Having laid all the groundwork, we can now remove the global `cfg'
[u/mdw/putty] / unix / uxplink.c
index 96d3f18..eda68d2 100644 (file)
@@ -72,6 +72,7 @@ struct termios orig_termios;
 
 static Backend *back;
 static void *backhandle;
+static Config cfg;
 
 /*
  * Default settings that are specific to pterm.
@@ -301,7 +302,8 @@ int main(int argc, char **argv)
     while (--argc) {
        char *p = *++argv;
        if (*p == '-') {
-           int ret = cmdline_process_param(p, (argc > 1 ? argv[1] : NULL), 1);
+           int ret = cmdline_process_param(p, (argc > 1 ? argv[1] : NULL),
+                                           1, &cfg);
            if (ret == -2) {
                fprintf(stderr,
                        "plink: option \"%s\" requires an argument\n", p);
@@ -479,7 +481,7 @@ int main(int argc, char **argv)
     /*
      * Perform command-line overrides on session configuration.
      */
-    cmdline_run_saved();
+    cmdline_run_saved(&cfg);
 
     /*
      * Trim a colon suffix off the hostname if it's there.
@@ -543,14 +545,14 @@ int main(int argc, char **argv)
     /*
      * Start up the connection.
      */
-    logctx = log_init(NULL);
+    logctx = log_init(NULL, &cfg);
     {
        char *error;
        char *realhost;
        /* nodelay is only useful if stdin is a terminal device */
        int nodelay = cfg.tcp_nodelay && isatty(0);
 
-       error = back->init(NULL, &backhandle, cfg.host, cfg.port,
+       error = back->init(NULL, &backhandle, &cfg, cfg.host, cfg.port,
                           &realhost, nodelay);
        if (error) {
            fprintf(stderr, "Unable to open connection:\n%s\n", error);