[Ttssh2-commit] [6463] 接続先からさらに ssh / telnet 接続した状況での ZMODEM 送信で問題を起こさないように LF および GS もデフォルトのエスケープ対象に加えた。

svnno****@sourc***** svnno****@sourc*****
2016年 8月 10日 (水) 18:44:50 JST


Revision: 6463
          http://sourceforge.jp/projects/ttssh2/scm/svn/commits/6463
Author:   doda
Date:     2016-08-10 18:44:50 +0900 (Wed, 10 Aug 2016)
Log Message:
-----------
接続先からさらに ssh / telnet 接続した状況での ZMODEM 送信で問題を起こさないように LF および GS もデフォルトのエスケープ対象に加えた。

ssh: LF または CR の直後の ~ がエスケープ文字扱い
telnet: GS がエスケープ文字

Modified Paths:
--------------
    trunk/doc/en/html/about/history.html
    trunk/doc/ja/html/about/history.html
    trunk/teraterm/ttpfile/zmodem.c

-------------- next part --------------
Modified: trunk/doc/en/html/about/history.html
===================================================================
--- trunk/doc/en/html/about/history.html	2016-08-10 09:44:45 UTC (rev 6462)
+++ trunk/doc/en/html/about/history.html	2016-08-10 09:44:50 UTC (rev 6463)
@@ -40,6 +40,7 @@
         <ul>
           <li>The function can be enabled at Copy and Paste tab of <a href="../menu/setup-additional.html#TrimTrailingNL">Additional settings dialog</a>.</li>
         </ul></li>
+      <!-- li>ZMODEM \x91\x97\x90M\x82ŁA\x83f\x83t\x83H\x83\x8B\x83g\x82̃G\x83X\x83P\x81[\x83v\x91Ώە\xB6\x8E\x9A\x82\xC9 LF \x82\xC6 GS \x82\xF0\x92lj\xC1\x82\xB5\x82\xBD\x81B</li -->
       <li>changed <a href="../macro/commandline.html">macro command line</a> behavior.
         <ul>
           <li>Strictly checked the syntax of command line option. When an unnecessary option is added at option back like as /Vxx, the option is not recognized.</li>

Modified: trunk/doc/ja/html/about/history.html
===================================================================
--- trunk/doc/ja/html/about/history.html	2016-08-10 09:44:45 UTC (rev 6462)
+++ trunk/doc/ja/html/about/history.html	2016-08-10 09:44:50 UTC (rev 6463)
@@ -40,6 +40,7 @@
         <ul>
           <li><a href="../menu/setup-additional.html#TrimTrailingNL">Additional settings\x83_\x83C\x83A\x83\x8D\x83O</a>\x82\xCCCopy and Paste \x83^\x83u\x82Őݒ\xE8\x82\xF0\x97L\x8C\xF8\x89\xBB\x82ł\xAB\x82\xE9\x82悤\x82ɂ\xB5\x82\xBD\x81B</li>
         </ul></li>
+      <li>ZMODEM \x91\x97\x90M\x82ŁA\x83f\x83t\x83H\x83\x8B\x83g\x82̃G\x83X\x83P\x81[\x83v\x91Ώە\xB6\x8E\x9A\x82\xC9 LF \x82\xC6 GS \x82\xF0\x92lj\xC1\x82\xB5\x82\xBD\x81B</li>
       <li><a href="../macro/commandline.html">\x83}\x83N\x83\x8D\x82̃R\x83}\x83\x93\x83h\x83\x89\x83C\x83\x93</a>\x82̈\xB5\x82\xA2\x95\xFB\x82\xF0\x95ύX\x82\xB5\x82\xBD\x81B
         <ul>
           <li>\x83R\x83}\x83\x93\x83h\x83\x89\x83C\x83\x93\x83I\x83v\x83V\x83\x87\x83\x93\x82̎\xAF\x95ʂ\xF0\x8C\xB5\x96\xA7\x82ɂ\xB5\x82\xBD\x81B/Vxx \x82̂悤\x82ɃR\x83}\x83\x93\x83h\x83\x89\x83C\x83\x93\x83I\x83v\x83V\x83\x87\x83\x93\x82̌\xE3\x82\xEB\x82ɗ]\x8Cv\x82ȕ\xB6\x8E\x9A\x97񂪕t\x82\xA2\x82Ă\xA2\x82\xE9\x8Fꍇ\x82̓I\x83v\x83V\x83\x87\x83\x93\x82Ƃ\xB5\x82Ĉ\xB5\x82\xED\x82Ȃ\xAD\x82\xB5\x82\xBD\x81B</li>

Modified: trunk/teraterm/ttpfile/zmodem.c
===================================================================
--- trunk/teraterm/ttpfile/zmodem.c	2016-08-10 09:44:45 UTC (rev 6462)
+++ trunk/teraterm/ttpfile/zmodem.c	2016-08-10 09:44:50 UTC (rev 6463)
@@ -286,10 +286,21 @@
 }
 
 void ZPutBin(PZVar zv, int *i, BYTE b)
+/*
+ * lrzsz \x82ł\xCD ZDLE(CAN), DLE, XON, XOFF, @ \x82̒\xBC\x8C\xE3\x82\xCC CR, \x82\xA8\x82\xE6\x82т\xB1\x82\xEA\x82\xE7\x82\xCC
+ * MSB \x82\xAA\x97\xA7\x82\xC1\x82\xBD\x95\xB6\x8E\x9A\x82\xAA\x83G\x83X\x83P\x81[\x83v\x91ΏۂƂȂ\xC1\x82Ă\xA2\x82\xE9\x81B
+ * Tera Term \x82ł͈ȑO\x82\xCD lrzsz \x82Ɠ\xAF\x82\xB6\x82\xBE\x82\xC1\x82\xBD\x82悤\x82\xBE\x82\xAA\x81A\x89\xBD\x82炩\x82̗\x9D\x97R\x82\xC5
+ * CR \x82͏\xED\x82ɃG\x83X\x83P\x81[\x83v\x91Ώۂɕς\xED\x82\xC1\x82Ă\xA2\x82\xE9\x81B
+ *
+ * \x90ڑ\xB1\x90悩\x82炳\x82\xE7\x82\xC9 ssh / telnet \x90ڑ\xB1\x82\xB5\x82\xBD\x8Fꍇ\x82ɖ\xE2\x91\xE8\x82\xF0\x8BN\x82\xB1\x82\xB3\x82Ȃ\xA2\x82悤\x81A
+ * LF \x82\xA8\x82\xE6\x82\xD1 GS \x82\xE0\x83f\x83t\x83H\x83\x8B\x83g\x82̃G\x83X\x83P\x81[\x83v\x91Ώۂɉ\xC1\x82\xA6\x82\xE9\x81B
+ * ssh: LF \x82܂\xBD\x82\xCD CR \x82̒\xBC\x8C\xE3\x82\xCC ~ \x82\xAA\x83G\x83X\x83P\x81[\x83v\x95\xB6\x8E\x9A\x88\xB5\x82\xA2
+ * telnet: GS \x82\xAA\x83G\x83X\x83P\x81[\x83v\x95\xB6\x8E\x9A
+ */
 {
 	switch (b) {
-	case 0x0D:
-	case 0x8D:
+	case 0x0D: // CR
+	case 0x8D: // CR | 0x80
 		/* if (zv->CtlEsc ||
 		   ((zv->LastSent & 0x7f) == '@')) */
 //  {
@@ -298,13 +309,17 @@
 		b = b ^ 0x40;
 //  }
 		break;
-	case 0x10:
-	case 0x11:
-	case 0x13:
-	case ZDLE:
-	case 0x90:
-	case 0x91:
-	case 0x93:
+	case 0x0A: // LF
+	case 0x10: // DLE
+	case 0x11: // XON
+	case 0x13: // XOFF
+	case 0x1d: // GS
+	case ZDLE: // CAN(0x18)
+	case 0x8A: // LF | 0x80
+	case 0x90: // DLE | 0x80
+	case 0x91: // XON | 0x80
+	case 0x93: // XOFF | 0x80
+	case 0x9d: // GS | 0x80
 		zv->PktOut[*i] = ZDLE;
 		(*i)++;
 		b = b ^ 0x40;



Ttssh2-commit メーリングリストの案内