svnno****@sourc*****
svnno****@sourc*****
2012年 2月 4日 (土) 00:57:53 JST
Revision: 4819 http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4819 Author: yutakapon Date: 2012-02-04 00:57:53 +0900 (Sat, 04 Feb 2012) Log Message: ----------- KERMIT プロトコルの解説を追加した。 Modified Paths: -------------- trunk/doc/ja/html/reference/sourcecode.html -------------- next part -------------- Modified: trunk/doc/ja/html/reference/sourcecode.html =================================================================== --- trunk/doc/ja/html/reference/sourcecode.html 2012-02-03 15:48:21 UTC (rev 4818) +++ trunk/doc/ja/html/reference/sourcecode.html 2012-02-03 15:57:53 UTC (rev 4819) @@ -1778,6 +1778,139 @@ <h3>ZMODEM</h3> +TBD + + + <h3>KERMIT</h3> +\x81 @ KERMIT\x81i\x83J\x81[\x83~\x83b\x83g\x81F\x83Z\x83T\x83~\x83X\x83g\x83\x8A\x81[\x83g\x82ɓo\x8Fꂷ\x82\xE9\x83J\x83G\x83\x8B\x82̃}\x83y\x83b\x83g\x81j\x82́A1981\x94N\x82ɃR\x83\x8D\x83\x93\x83r\x83A\x91\xE5\x8Aw\x82ŊJ\x94\xAD\x82\xB3\x82ꂽ\x83t\x83@\x83C\x83\x8B\x93]\x91\x97\x83v\x83\x8D\x83g\x83R\x83\x8B\x82ł\xA0\x82\xE8\x81A\x8C\xBB\x8D݂̓J\x81[\x83~\x83b\x83g\x83v\x83\x8D\x83W\x83F\x83N\x83g\x82ɂ\xE6\x82胁\x83\x93\x83e\x83i\x83\x93\x83X\x82\xB3\x82\xEA\x82Ă\xA2\x82܂\xB7\x81B\x89\xBA\x8BL\x82̃T\x83C\x83g\x82\xA9\x82\xE7\x8Ed\x97l\x8F\x91\x82\xAA\x93\xFC\x8E\xE8\x82ł\xAB\x82܂\xB7\x81B<br> +\x81@ +<ul> + <li><a href="http://www.kermitproject.org/">The Kermit Project</a></li> +</ul> +<br> + +\x81@\x8F\xE3\x8BL\x83T\x83C\x83g\x82ł́A\x83\\x81[\x83X\x83R\x81[\x83h\x82\xE0\x94z\x95z\x82\xB3\x82\xEA\x82Ă\xA8\x82\xE8\x81A\x97l\x81X\x82ȃv\x83\x89\x83b\x83g\x83t\x83H\x81[\x83\x80\x82Ɏ\xC0\x91\x95\x82\xB3\x82\xEA\x82Ă\xA2\x82܂\xB7\x81B\x8E\xC0\x91\x95\x82̖\xBC\x8F̂Ƃ\xB5\x82ẮAC-Kermit\x82\xE2E-Kermit\x81AKermit95\x82Ȃǂ\xAA\x82\xA0\x82\xE8\x82܂\xB7\x81B<br> +\x81****@terat***** \x82\xC5 KmtLog \x83G\x83\x93\x83g\x83\x8A\x82\xF0\x97L\x8C\xF8\x82ɂ\xB7\x82\xE9\x82ƁA\x92ʐM\x83\x8D\x83O\x82\xF0\x8D̎悷\x82邱\x82Ƃ\xAA\x82ł\xAB\x82܂\xB7\x81B\x92ʐM\x83\x8D\x83O\x83t\x83@\x83C\x83\x8B\x82́Attermpro.exe \x82Ɠ\xAF\x82\xB6\x83f\x83B\x83\x8C\x83N\x83g\x83\x8A\x82\xC9"KERMIT.LOG"\x82Ƃ\xA2\x82\xA4\x96\xBC\x91O\x82Ő\xB6\x90\xAC\x82\xB3\x82\xEA\x82܂\xB7\x81B +\x81@ +<pre class=code> +; Kermit log +KmtLog=on +</pre> + +\x81 @ KERMIT\x82͌\xB3\x81X\x92ᑬ\x82ȃV\x83\x8A\x83A\x83\x8B\x92ʐM\x82\xF0\x91z\x92肵\x82Ă\xA2\x82邽\x82߁A\x88\xEA\x93x\x82ɑ\x97\x82\xEA\x82\xE9\x83f\x81[\x83^\x83T\x83C\x83Y\x82͂\xB9\x82\xA2\x82\xBA\x82\xA294\x83o\x83C\x83g\x82ł\xB7\x81B\x82\xBD\x82\xBE\x82\xB5\x81A\x8Ag\x92\xA3\x83I\x83v\x83V\x83\x87\x83\x93\x82Ő\x94\x90\xE7\x83o\x83C\x83g\x82̃f\x81[\x83^\x82\xF0\x88\xB5\x82\xA4\x82\xB1\x82Ƃ͂ł\xAB\x82܂\xB7\x82\xAA\x81A\x83N\x83\x89\x83C\x83A\x83\x93\x83g\x82ƃT\x81[\x83o\x82̗\xBC\x95\x{30AA4D6}\x8AY\x8B@\x94\\x82\xF0\x83T\x83|\x81[\x83g\x82\xB5\x82Ă\xA2\x82\xE9\x95K\x97v\x82\xAA\x82\xA0\x82\xE8\x82܂\xB7\x81B<br> +\x81@\x83p\x83P\x83b\x83g\x82̃t\x83H\x81[\x83}\x83b\x83g\x82͊\xEE\x96{\x8C`\x8E\xAE\x82Ɗg\x92\xA3\x8C`\x8E\xAE\x82\xAA\x82\xA0\x82\xE8\x81A\x8Ed\x97l\x8F\x91\x82́uAppendix I Packet Format and Types\x81v\x82ɕ\xAA\x82\xA9\x82\xE8\x82₷\x82\xA2\x90}\x89\xF0\x82\xAA\x82\xA0\x82\xE8\x82܂\xB7\x81B\x89\xBA\x8BL\x82Ɉ\xF8\x97p\x82\xB5\x82܂\xB7\x81B<br> +\x81@\x88ȉ\xBA\x82͊\xEE\x96{\x8C`\x8E\xAE\x82ł\xB7\x81B94\x83o\x83C\x83g\x82܂ł\xB5\x82\xA9\x88\xB5\x82\xA6\x82܂\xB9\x82\xF1\x81B + +<pre class=code> +Basic Kermit Packet Layout + |<------Included in CHECK------>| + | | ++------+-----+-----+------+------ - - -+-------+ +| MARK | LEN | SEQ | TYPE | DATA | CHECK |<terminator> ++------+-----+-----+------+------ - - -+-------+ + | | + |<--------LEN-32 characters------>| + + MARK \x83p\x83P\x83b\x83g\x82̐擪\x81BCTRL-A(0x01)\x82\xAA\x93\xFC\x82\xE9\x81B + LEN \x83p\x83P\x83b\x83g\x83T\x83C\x83Y+32\x81B"LEN+2"\x83o\x83C\x83g\x82\xAA\x91S\x91̃T\x83C\x83Y\x82ƂȂ\xE9\x81B + SEQ \x81u\x83V\x81[\x83P\x83\x93\x83X\x94ԍ\x86+32\x81v\x82̏\xE8\x97]64\x81B\x83V\x81[\x83P\x83\x93\x83X\x94ԍ\x86\x82\xCD0\x81`63\x82܂ŁB + TYPE \x91啶\x8E\x9A\x83A\x83\x8B\x83t\x83@\x83x\x83b\x83g\x82Ńp\x83P\x83b\x83g\x82̎\xED\x95ʂ\xF0\x95\\x82\xB7\x81B + DATA \x83f\x81[\x83^ + CHECK \x89\xC1\x8EZ\x83`\x83F\x83b\x83N\x83T\x83\x80\x81B1,2,3\x83o\x83C\x83g\x82̂\xA2\x82\xB8\x82ꂩ\x82̌`\x8E\xAE\x82\xF0\x91I\x82ׂ\xE9\x81B +</pre> + +\x81@\x88ȉ\xBA\x82͊g\x92\xA3\x8C`\x8E\xAE\x82ł\xB7\x81B + +<pre class=code> +Kermit Extended Packet Layout + |<-------------------------Included in CHECK------------->| + | | + |<-------Included in HCHECK------->| | + | | | ++------+-----+-----+------+-------+-------+--------+----- - - - -+-------+ +| MARK | | SEQ | TYPE | LENX1 | LENX2 | HCHECK | DATA | CHECK | ++------+-----+-----+------+-------+-------+--------+----- - - - -+-------+ + blank | | + |<------------------->| + LX1=LENX1-32, LX2=LX2-32 95 x LX1 + LX2 chars +HCHECK is a single-character type 1 checksum +</pre> + +\x81@\x8Ag\x92\xA3\x8C`\x8E\xAE\x82ł\xCD94\x83o\x83C\x83g\x88ȏ\xE3\x82̃f\x81[\x83^\x82\xF0\x88\xEA\x93x\x82ɑ\x97\x82\xEA\x82\xE9\x82悤\x82ɂ\xB7\x82邽\x82߁A\x83f\x81[\x83^\x83T\x83C\x83Y\x82\xF0\x95\\x8C\xBB\x82\xB7\x82\xE9\x97̈悪2\x83o\x83C\x83g\x82ɑ\x9D\x82\xA6\x82Ă\xA2\x82܂\xB7\x81B\x8A\xEE\x96{\x8C`\x8E\xAE\x82\xCC"LEN"\x82͏\xED\x82Ƀ[\x83\x8D\x82ł\xB7\x81i32\x82\xF0\x89\xC1\x8EZ\x82\xB7\x82\xE9\x82̂ŁAASCII\x83R\x81[\x83h\x82̋ɂȂ\xE9\x81j\x81B\x82܂\xBD\x81A\x83w\x83b\x83_\x83T\x83C\x83Y\x82\xAA3\x83o\x83C\x83g\x91\x9D\x82\xA6\x82Ă\xA8\x82\xE8\x81A\x83w\x83b\x83_\x97p\x82̃`\x83F\x83b\x83N\x83T\x83\x80\x82\xAA\x92lj\xC1\x82\xB3\x82\xEA\x82Ă\xA2\x82܂\xB7\x81B<br> +\x81@<br> +\x81@ +\x81@\x89\xBA\x8BL\x82͏\x89\x8A\x{257639A}\x97\xF1\x82ł\xB7\x81B +\x81@ +<pre class=code> +Initialization String +1 2 3 4 5 6 7 8 9 10 ++-------+-------+-------+-------+-------+-------+-------+-------+-------+- - +| MAXL | TIME | NPAD | PADC | EOL | QCTL | QBIN | CHKT | REPT | ++-------+-------+-------+-------+-------+-------+-------+-------+-------+- - + 10 CAPAS+1 CAPAS+2 CAPAS+3 +- --+-------+ - -+--------+--------+--------+- - + | CAPAS ... 0| WINDO | MAXLX1 | MAXLX1 | +- --+-------+- -+--------+--------+--------+- - + +MAXL Maximum length (0-94) +32 +TIME Timeout, seconds (0-94) +32 +NPAD Number of pad characters (0-94) +32 +EOL Packet terminator (0-63) +32 +QCTL Control prefix, literal +QBIN 8th bit prefix, literal +CHKT Block check type {1,2,3}, literal +REPT Repeat count prefix, literal +CAPAS Extendable capabilities mask, ends when value-32 is even +WINDO Window size (0-31) +32 +MAXLX1 + High part of extended packet maximum length (int(max/95)+32) +MAXLX2 + Low part of extended packet maximum length (mod(max,95)+32) +</pre> + +\x81@\x89\xBA\x8BL\x82̓p\x83P\x83b\x83g\x8E\xED\x95ʂł\xB7\x81B + +<pre class=code> +Packet Types +Y Acknowledgment (ACK). Data according to what kind of packet is being acknowledged. +N Negative Acknowledgment (NAK). Data field always empty. +S Send Initiation. Data field contains unencoded initialization string. Tells receiver to expect files. ACK to this packet also contains unencoded initialization string. +I Initialize. Data field contains unencoded initialization string. Sent to server to set parameters prior to a command. ACK to this packet also contains unencoded initialization string. +F File Header. Indicates file data about to arrive for named file. Data field contains encoded file name. ACK to this packet may contain encoded name receiver will store file under. +X Text Header. Indicates screen data about to arrive. Data field contains encoded heading for display. +A File Attributes. Data field contains unencoded attributes. ACK may contain unencoded corresponding +agreement or refusal, per attribute. +D Data Packet. Data field contains encoded file or screen data. ACK may contain X to interrupt sending this file, Z to interrupt entire transaction. +Z End of file. Data field may contain D for Discard. +B Break transmission. +E Error. Data field contains encoded error message. +R Receive Initiate. Data field contains encoded file name. +C Host Command. Data field contains encoded command for host\x81fs command processor. +K Kermit Command. Data field contains encoded command for Kermit command processor. +T Timeout psuedopacket, for internal use. +Q Block check error psuedopacket, for internal use. +G Generic Kermit Command. Data field contains a single character subcommand, followed by zero or more + length-encoded operands, encoded after formation: + I Login [<%user[%password[%account]]>] + C CWD, Change Working Directory [<%directory[%password]>] + L Logout, Bye + F Finish (Shut down the server, but don\x81ft logout). + D Directory [<%filespec>] + U Disk Usage Query [<%area>] + E Erase (delete) <%filespec> + T Type <%filespec> + R Rename <%oldname%newname> + K Copy <%source%destination> + W Who\x81fs logged in? [<%user ID or network host[%options]>] + M Send a short Message <%destination%text> + H Help [<%topic>] + Q Server Status Query + P Program <%[program-filespec][%program-commands]> + J Journal <%command[%argument]> + V Variable <%command[%argument[%argument]]> +</pre> + + </BODY> </HTML>