Packet-level logging should now work properly in Unix Plink.
authorsimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Tue, 5 Nov 2002 13:21:03 +0000 (13:21 +0000)
committersimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Tue, 5 Nov 2002 13:21:03 +0000 (13:21 +0000)
git-svn-id: svn://svn.tartarus.org/sgt/putty@2193 cda61777-01e9-0310-a592-d414129be87e

unix/unix.h
unix/uxcons.c
unix/uxplink.c

index dc2f3c4..fb312df 100644 (file)
@@ -30,6 +30,8 @@ unsigned long getticks(void);        /* based on gettimeofday(2) */
 #define WCHAR wchar_t
 #define BYTE unsigned char
 
+GLOBAL void *logctx;
+
 /* Things pty.c needs from pterm.c */
 char *get_x_display(void *frontend);
 int font_dimension(void *frontend, int which);/* 0 for width, 1 for height */
index 197466e..779ebf4 100644 (file)
@@ -262,6 +262,7 @@ void old_keyfile_warning(void)
 
 void logevent(void *frontend, char *string)
 {
+    log_eventlog(logctx, string);
 }
 
 int console_get_line(const char *prompt, char *str,
index ba7b78f..179f254 100644 (file)
@@ -186,7 +186,6 @@ int main(int argc, char **argv)
     int i, skcount, sksize, socketstate;
     int connopen;
     int exitcode;
-    void *logctx;
     void *ldisc;
 
     ssh_get_line = console_get_line;
@@ -237,10 +236,19 @@ int main(int argc, char **argv)
                continue;
            } else if (!strcmp(p, "-batch")) {
                console_batch_mode = 1;
+           } else if (!strcmp(p, "-o")) {
+                if (argc <= 1)
+                    fprintf(stderr,
+                            "plink: option \"-o\" requires an argument\n");
+                else
+                    --argc, provide_xrm_string(*++argv);
            }
        } else if (*p) {
            if (!*cfg.host) {
                char *q = p;
+
+                do_defaults(NULL, &cfg);
+
                /*
                 * If the hostname starts with "telnet:", set the
                 * protocol to Telnet and process the string as a
@@ -441,6 +449,7 @@ int main(int argc, char **argv)
     /*
      * Start up the connection.
      */
+    logctx = log_init(NULL);
     {
        char *error;
        char *realhost;
@@ -453,7 +462,6 @@ int main(int argc, char **argv)
            fprintf(stderr, "Unable to open connection:\n%s\n", error);
            return 1;
        }
-       logctx = log_init(NULL);
        back->provide_logctx(backhandle, logctx);
        ldisc = ldisc_create(NULL, back, backhandle, NULL);
        sfree(realhost);