Minor tweaks to -nc:
authorjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Mon, 28 Aug 2006 17:47:43 +0000 (17:47 +0000)
committerjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Mon, 28 Aug 2006 17:47:43 +0000 (17:47 +0000)
 - log host:port in event log
 - add -nc to Plink usage message

git-svn-id: svn://svn.tartarus.org/sgt/putty@6825 cda61777-01e9-0310-a592-d414129be87e

doc/plink.but
ssh.c
unix/uxplink.c
windows/winplink.c

index 850ac44..10924b3 100644 (file)
@@ -76,6 +76,8 @@ use Plink:
 \c   -m file   read remote command(s) from file
 \c   -s        remote command is an SSH subsystem (SSH-2 only)
 \c   -N        don't start a shell/command (SSH-2 only)
+\c   -nc host:port
+\c             open tunnel in place of session (SSH-2 only)
 
 Once this works, you are ready to use Plink.
 
diff --git a/ssh.c b/ssh.c
index 6380b09..a161604 100644 (file)
--- a/ssh.c
+++ b/ssh.c
@@ -7633,6 +7633,9 @@ static void do_ssh2_authconn(Ssh ssh, unsigned char *in, int inlen,
        ssh->mainchan = snew(struct ssh_channel);
        ssh->mainchan->ssh = ssh;
        ssh->mainchan->localid = alloc_channel_id(ssh);
+       logeventf(ssh,
+                 "Opening direct-tcpip channel to %s:%d in place of session",
+                 ssh->cfg.ssh_nc_host, ssh->cfg.ssh_nc_port);
        s->pktout = ssh2_pkt_init(SSH2_MSG_CHANNEL_OPEN);
        ssh2_pkt_addstring(s->pktout, "direct-tcpip");
        ssh2_pkt_adduint32(s->pktout, ssh->mainchan->localid);
@@ -7642,13 +7645,9 @@ static void do_ssh2_authconn(Ssh ssh, unsigned char *in, int inlen,
        ssh2_pkt_addstring(s->pktout, ssh->cfg.ssh_nc_host);
        ssh2_pkt_adduint32(s->pktout, ssh->cfg.ssh_nc_port);
        /*
-        * We make up values for the originator data; partly it's
-        * too much hassle to keep track, and partly I'm not
-        * convinced the server should be told details like that
-        * about my local network configuration.
-        * The "originator IP address" is syntactically a numeric
-        * IP address, and some servers (e.g., Tectia) get upset
-        * if it doesn't match this syntax.
+        * There's nothing meaningful to put in the originator
+        * fields, but some servers insist on syntactically correct
+        * information.
         */
        ssh2_pkt_addstring(s->pktout, "0.0.0.0");
        ssh2_pkt_adduint32(s->pktout, 0);
@@ -7673,7 +7672,7 @@ static void do_ssh2_authconn(Ssh ssh, unsigned char *in, int inlen,
        bufchain_init(&ssh->mainchan->v.v2.outbuffer);
        add234(ssh->channels, ssh->mainchan);
        update_specials_menu(ssh->frontend);
-       logevent("Opened direct-tcpip channel in place of session");
+       logevent("Opened direct-tcpip channel");
        ssh->ncmode = TRUE;
     } else {
        ssh->mainchan = snew(struct ssh_channel);
index 1d3db4c..cbfdef7 100644 (file)
@@ -534,6 +534,8 @@ static void usage(void)
     printf("  -m file   read remote command(s) from file\n");
     printf("  -s        remote command is an SSH subsystem (SSH-2 only)\n");
     printf("  -N        don't start a shell/command (SSH-2 only)\n");
+    printf("  -nc host:port\n");
+    printf("            open tunnel in place of session (SSH-2 only)\n");
     exit(1);
 }
 
index c79c1e5..fbeb538 100644 (file)
@@ -179,6 +179,8 @@ static void usage(void)
     printf("  -m file   read remote command(s) from file\n");
     printf("  -s        remote command is an SSH subsystem (SSH-2 only)\n");
     printf("  -N        don't start a shell/command (SSH-2 only)\n");
+    printf("  -nc host:port\n");
+    printf("            open tunnel in place of session (SSH-2 only)\n");
     exit(1);
 }