📄 ckcbwr.txt
字号:
CKCBWR.TXT "Beware File" for C-Kermit Version 7.0 -*- text -*-As of C-Kermit version: 7.0.197This file last updated: 8 February 2000Authors: Frank da Cruz and Christine M. Gianone, Columbia University. Copyright (C) 1985, 2000, Trustees of Columbia University in the City of New York. All rights reserved. See the C-Kermit COPYING.TXT file or the copyright text in the ckcmai.c module for disclaimer and permissions.Report problems, suggestions, fixes, etc, to: The Kermit Project Columbia University 612 West 115th Street New York NY 10025-7799 USA Email: kermit-support@columbia.edu Web: http://www.columbia.edu/kermit/ News: comp.protocols.kermit.miscDOCUMENTATION Frank da Cruz and Christine M. Gianone, "Using C-Kermit", Second Edition, 1997, Digital Press / Butterworth-Heinemann, Woburn, MA, ISBN 1-55558-164-1 US single-copy price: $44.95; quantity discounts available. Available in computer bookstores or directly from Columbia University: The Kermit Project Columbia University 612 West 115th Street New York NY 10025-7799 USA Telephone: +1 (212) 854-3703 Email: kermit-orders@columbia.edu Web: http://www.columbia.edu/kermit/ The CKERMIT2.TXT file contains supplementary info for C-Kermit 7.0 to be used until the 3rd edition of the manual is ready.WHAT IS IN THIS FILEThis is the "beware file" for C-Kermit. It contains hints and tips,frequently asked questions (and answers), troubleshooting advice, limitationsand restrictions, known bugs, etc, that apply to all C-Kermit variations.This file is supplemented by a platform-specific "beware file" for each majorsystem where C-Kermit runs: ckubwr.txt - All variations of UNIX: Linux, HP-UX, AIX, SCO, Solaris, etc. ckvbwr.txt - Compaq / Digital Equipment Corporation VMS and OpenVMS cklbwr.txt - Stratus VOS ckdbwr.txt - Data General AOS/VS ckmbwr.txt - Apple Macintosh ckibwr.txt - Commodore Amiga cksbwr.txt - Atari ST ck9bwr.txt - Microware OS-9 ckpbwr.txt - Bell Labs Plan 9This file contains the following sections: (0) BUGS DISCOVERED SINCE C-KERMIT 7.0 WAS RELEASED (1) INCOMPATIBLE CHANGES (2) THE C-KERMIT COMMAND PARSER (3) MULTIPLE SESSIONS (4) NETWORK COMMUNICATION (5) THE SERVICES DIRECTORY (6) MODEMS AND DIALING (7) DIALING HINTS AND TIPS (8) TERMINAL SERVERS (9) TERMINAL EMULATION (10) KEY MAPPING (11) THE TRANSMIT COMMAND (12) FILE TRANSFER (13) SCRIPT PROGRAMMING(0) BUGS DISCOVERED SINCE C-KERMIT 7.0 WAS RELEASEDThe following bugs are known but not yet fixed: 1. If you try: kermit -g <file> where file does not exist in the client directory it returns the error: FAILURE: No filespec given! instead of: FAILURE: <file> does not exist. 2. True ISO 8601 date-time format is not supported: yyyymmddThhmmss or yyyymmdd hhmmss. Kermit supports yyyymmdd_hh:mm:ss. 3. Log into IKSD GET file1 newname Switch to the client's command prompt SEND file2 file2 will be stored on IKSD as newname 4. The new built-in LOGIN command will conflict with any existing LOGIN macros. This is always the case with new commands, but LOGIN is an especially likely name for a macro. To work around, either rename your LOGIN macro to something else, or else invoke it with "do login <args>". 5. If a Hayes-command-set modem has "reset on DTR loss" set (&D3) and the modem prints OK upon reset, even when the reset happened because of DTR loss, Kermit can become mighty confused, especially after a HANGUP command. Elsa MicroLink modems (a German brand) has this peculiarity. The Kermit bug is that the HANGUP command will drop DTR even if you SET MODEM HANGUP-METHOD MODEM-COMMAND, *if* the modem command fails. C-Kermit has always operated this way on the assumption that if the user says to HANGUP, the user means it. However, in this case, dropping DTR produces the unexpected OK response, and then all future dialog is out of sync. There is no way for the user to tell C-Kermit NOT to drop DTR under these circumstances. This will be fixed in the next release. 6. (Not a bug.) All RENAME operations are performed using the underlying system services for renaming a file. If the underlying system service does not allow files to be renamed across disks, these operations fail. This includes the RENAME command and SEND, RECEIVE, or GET /MOVE-TO. This might not be clear enough in the documentation. Note that in UNIX, there is no obvious way for a user to tell whether two directories are on the same disk. 7. Various typos and syntax errors in the makefile and source file. The most serious error prevented any and all SCO OSR5 builds from working. All these are fixed in C-Kermit 7.0.197, which simply allows builds to succeed that didn't in 7.0.196, but which makes no functional changes. 8. Modem signal detection does not work in SCO OSR5 and Unixware 7. 9. The new SHIFT command does not decrement \v(argc) if it is used within an IF { } or ELSE { } block.10. The -b command-line option has no effect if given before -l (the order of command-line options should not matter; however the current situation has always been the case).11. When C-Kermit translates from (say) Latin-1 to UTF-8, it does not convert the C1 bytes.12. If you TAKE <file> <arg1> <arg2> -- i.e. specify args, then the same args remain in effect for the next TAKE command. This is not really a bug, since it's documented, but it's not optimal either, and probably will be changed in the next release, so don't depend on this behavior. In the meantime, work around by UNDEF'ing \%1, \%2, ... after any TAKE command that includes arguments.13. The HEBREW7 translation table has a typo.14. SET TRANSFER CHARACTER-SET TRANSPARENT sets up a garbage translation. Workaround: give a SET FILE CHARACTER-SET command afterwards. 15. Automatic text/binary mode switching via filename patterns should ignore pathname prefixes and backup suffixes, but does not.(1) INCOMPATIBLE CHANGESThese are not necessarily exhaustive lists.The following incompatible changes were made in C-Kermit 6.0: . Unless you tell C-Kermit otherwise, if a serial or network connection seems to be open, and you attempt to EXIT or to SET LINE or SET HOST or TELNET, C-Kermit warns you that an active connection appears to be open and asks you if you really want to close it. If you do not want these warnings, add SET EXIT WARNING OFF to your customization file. . The default for SET { SEND, RECEIVE } PATHNAMES was changed from ON to OFF, to prevent unexpected creation of directories and depositing of incoming files in places you might not know to look. . The default for SET FILE INCOMPLETE was changed from DISCARD to KEEP to allow for file transfer recovery. . The default file-transfer block-check is now 3, rather than 1. If the other Kermit does not support this, the two will drop back to type 1 automatically. . The default flow-control is now "auto" ("do the right thing"), not Xon/Xoff. . Backslash (\) is no longer a command continuation character. Only - (hyphen, dash) may be used for this in C-Kermit 6.0 and later. . Negative INPUT timeout now results in infinite wait, rather than 1 second.And in version 6.1: . The "multiline GET" command is gone. Now use: get <remote-name> <local-name> or: get /as-name:<local-name> <remote-name> If either name contains spaces, enclose it in braces. . To request list of files from the server, you must now use MGET rather than GET: mget file1 file2 file3 ...See ckermit2.txt Section 0 for additional items and further detail.(2) THE C-KERMIT COMMAND PARSERWhen using the command-line processor ("kermit -l /dev/tty00 -b 19200", etc),note that in some cases the order of the command-line options makes adifference, contrary to the expectation that order of command-line optionsshould not matter. For example, the -b option must be given after the -loption if it is to have any effect.In the interactive command parser: . VMS-style command editing (arrow keys, etc) is not supported. . EMACS- or VI-style command line editing is not supported. . Editing keys are hardwired (Ctrl-U, Ctrl-W, etc).If you interrupt C-Kermit before it has issued its first prompt, it will exit.This means that you cannot interrupt execution of the initialization file, orof an "application file" (file whose name is given as the first command-lineargument), or of an alternative initialization file ("-y filename"), and getto the prompt. There is, however, one exception to this rule: you *can*interrupt commands -- including TAKE commands -- given in the '-C "commandlist"' command-line argument and -- if there were no action commands among thecommand-line arguments -- you will be returned to the C-Kermit prompt. So,for example, if you want to start C-Kermit in such a way that it executes acommand file before issuing its first prompt, and you also want to be able tointerrupt the command file and get to the prompt, include a TAKE command forthe desired command in the -C argument, for example: kermit -C "take dial.scr"If you use the backslash (\) prefix to enter a control character, space, orquestion mark into a command literally, the backslash disappears and isreplaced by the quoted character. If it was a control character, it is shownas a circumflex (^). This allows editing (backspace, delete, Ctrl-W) to workcorrectly even for control characters.The only way to include a comma literally in a macro definition -- as opposedto having it separate commands within the definition -- is to enter its ASCIIvalue (44) in backslash notation, e.g.: DEFINE ROWS MODE CO80\{44}\%1If you quote special characters in a filename (e.g. in the SEND command),filename completion may seem to work incorrectly. For example, if you have afile whose name is a*b (the name really contains an asterisk), and you type"send a\\*<ESC>", the "b" will not appear, nor will Ctrl-R redisplay thecompleted name correctly. But internally the file name is recognized anyway.Question-mark help does not work during execution of an ASKQ command. Thequestion marks are simply accepted as text.The maximum length for a variable name is between 256 and 4096 characters,depending on the platform; for array declarations and references, thatincludes the subscript. SampleSome other maximums to watch out for: Symbol Value Defined in Nesting level for command files: MAXTAKE 30 ckuusr.h Nesting level for macros: MACLEVEL 50 ckuusr.h Nesting level for FOR / WHILE loops: FORDEPTH 10 ckuusr.h Number of macros: MAC_MAX 256 ckuusr.h Size of INPUT buffer: INPBUFSIZ 256 ckuusr.h Maximum files to match a wildcard: MAXWLD varies ck?fio.c Filespecs in MSEND command: MSENDMAX 100 ckuusr.h Length of MSEND or GET string: FSPECL 300 ckuusr.h Length for GOTO target label: LBLSIZ 50 ckuusr.h Number of characters in a command: CMDBL 1024 ckucmd.h Number of chars in a field of a command: ATMBL 256 ckucmd.h \fexecute() recursion depth limit: CMDDEP 20 ckucmd.hThe actual values of most of these items can vary with version andconfiguration, and are listed by SHOW FEATURES.ASK and ASKQ strip leading and trailing spaces from what the user types. Thishappens way down deep in the command parser -- it's nothing special about ASKand friends. The only way around this that works in both C-Kermit and MS-DOSKermit is for the user (the one who is responding to the ASK prompt) to type(the first) leading space as "\32" and the (final) trailing space as "\32".In this example, the password begins with 2 leading blanks and ends with twotrailing blanks, and "Passwd:" is the ASK prompt: Passwd:\32 secret \32Of course, the user could also type *all* blanks as \32.In OUTPUT commands only, \B and \\B send a BREAK signal, and \L and \\L send aLong BREAK signal, and \N and \\N send a NUL (ASCII 0). BREAK and Long BREAKare special signals, not characters, and NUL is a character that normally
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -