📄 ckuker.bwr
字号:
Certain operations driven by RS-232 modem signal do not work on DECstations orother DEC platforms whose serial interfaces use MMP connectors (DEC version ofRJ45 telephone jack with with offset tab). These connectors convey only theDSR and DTR modem signals, but not carrier (CD), RTS, CTS, or RI. Use SETCARRIER OFF to enable communication, or "hotwire" DSR to CD.(3.10) C-KERMIT AND UNIXWAREUsing the UnixWare 1.1 Application Server, one user reports a system panicwhen the following script program is executed: set line /dev/tty4 set speed 9600 output \13 connectThe panic does not happen if a PAUSE is inserted: set line /dev/tty4 set speed 9600 pause 1 output \13 connectThis is using a Stallion EasyIO card installed as board 0 on IRQ 12 ona Gateway 386 with the Stallion-supplied driver. The problem was reported to Novell and Stallion, resolution pending. (Reportedly, this problemis now fixed.)(3.11) C-KERMIT AND APOLLO SR10Reportedly, version 5A(190), when built under Apollo SR10 using "makesr10-bsd", compiles, links, and executes OK, but leaves the terminal unusableafter it exits -- the "cs7" or "cs8" (character size) parameter has becomecs5. The terminal must be reset from another terminal. Cause and cureunknown. Suggested workaround: Wrap Kermit in a shell script something like: kermit @* stty sane(3.12) C-KERMIT AND TANDY XENIX 3.0Reportedly, if you type lots of Ctrl-C's during execution of theinitialization file, ghost Kermit processes will be created, and will competefor the keyboard. They can only be removed via "kill -9" from anotherterminal, or by rebooting. Diagnosis -- something strange happening withthe SIGINT handler while the process is reading the directory (it seems tooccur during the SET PROMPT [\v(dir)] ... sequence). Cure: unknown.Workaround: don't interrupt C-Kermit while it is executing its init file onthe Tandy 16/6000.(3.13) C-KERMIT AND OSF/1 (DIGITAL UNIX)Reportedly, if a modem is set for &S0 (assert DSR at all times), the systemresets or drops DTR every 30 seconds; reportedly DEC says to set &S1.Digital UNIX 3.2 evidently wants to believe your terminal is one line longerthan you say it is, e.g. when a "more" or "man" command is given. This is hasnothing to do with C-Kermit, but tends to annoy those who use Kermit or otherterminal emulators to access Digital UNIX systems. Workaround: tell UNIXto "stty rows 23" (or whatever).(3.14) C-KERMIT AND SGI IRIXReportedly on Silicon Graphics (SGI) machines with IRIX 4.0, Kermit cannot besuspended by typing the suspend ("swtch") character if it was started fromcsh, even though other programs can be suspended this way, and even though theZ and SUSPEND commands still work correctly. This is evidently because IRIX'scsh does not deliver the SIGTSTP signal to Kermit. The reason other programscan be suspended in the same environment is probably that they do not trapSIGTSTP themselves, so the shell is doing the suspending rather than theapplication.Reportedly some Indys have bad serial port hardware. IRIX 5.2, for example,needs patch 151 to work around this; or upgrade to a later release.Similarly, IRIX 5.2 has several problems with serial i/o, flow control, etc.Again, patch or upgrade.For hardware flow control on IRIX, use the ttyf* (modem control AND hardwareflow control) devices and not the ttyd* (direct) or ttym* (modem control butno hardward flow control) ones, and obtain the proper "hardware handshaking"cable from SGI, which is incompatible with the ones for the Macintosh andNeXT even though they look the same. "man serial" for further info.(3.15) C-KERMIT AND THE BEBOXThe BeBox isn't a real product yet, and BeOS -- particularly the POSIX piecesof it -- aren't finished. As the POSIX bits are fleshed out, a lot of theBe-specific code can Be removed. The workarounds in this version are forDR7, contributed by an anonymous donor, sufficient to: - set line /dev/serial2 (and probably the other serial ports) - set speed 115200 (and at least some of the lower baud rates) - connect - set modem type hayes (and likely others, too) - dial [phone number] - set send packet length 2048 (other lengths for both send and receive) - set receive packet length 2048 - set file type binary (text mode works, too) (with remote kermit session in server mode) - put bedrop.jpg - get bedrop.jpg - get bedrop.jpg bedrop.jpg2 - finish, byeThe following do not work: - kermit does not detect modem hangup - !/RUN/PUSH [commandline command] - running kermit in remote mode - using other protocols (x/y/zmodem) - TCP networking interface (Be's TCP/IP API has a ways to go, still)(4) GENERAL UNIX-SPECIFIC HINTS, LIMITATIONS, AND BUGSIn version 6.0, the default C-Kermit prompt includes your current (working)directory; for example: [/usr/olga] C-Kermit>If that directory is on an NFS-mounted disk, and NFS stops working or thedisk becomes unavailable, C-Kermit will hang waiting for NFS and/or the diskto come back. Whether you can interrupt C-Kermit when it is hung this waydepends on the specific OS. Kermit has called the operating systems'sgetcwd() function, and is waiting for it to return. Some versions of UNIX(e.g. HP-UX 9.x) allow this function to be interrupted with SIGINT (Ctrl-C),others (such as HP-UX 8.x) do not. To avoid this effect, you can alwaysuse SET PROMPT change your prompt to something that does not involve callinggetcwd(), but if NFS is not responding, C-Kermit will still hang any time yougive a command that refers to the current directory. Also note that in somecases, the uninterruptibility of NFS-dependent system or library calls isconsidered a bug, and sometimes there are patches. For HP-UX, for example: HP-UX 10.20 libc PHCO_8764 HP-UX 10.10 libc PHCO_8763 HP-UX 9.x libc PHCO_7747 S700 HP-UX 9.x libc PHCO_6779 S800You might have reason to make C-Kermit the login shell for a specific user,by entering the pathname of Kermit (possibly with command-line switches, suchas -x to put it in server mode) into the shell field of the /etc/passwd file.This works pretty well. In some cases, for "ultimate security", you mightwant to use a version built with -DNOPUSH (see ckccfg.doc) for this, but evenif you don't, then PUSHing or shelling out from C-Kermit just brings up anew copy of C-Kermit (but warning: this does not prevent the user fromexplicitly running a shell; e.g. "run /bin/sh"; use NOPUSH to prevent this).C-Kermit will not work as expected on a remote UNIX system, when used throughthe "splitvt" or GNU "screen" programs. In this case, terminal connections tothe remote UNIX system work, but attempts to transfer files fail because thescreen optimization (or at least, line wrapping, control-character absorption)done by this package interferes with Kermit's packets.You might try the following -- what we call "doomsday Kermit" settings topush packets through even the densest and most obstructive connections, suchas "screen" and "splitvt" (and certain kinds of 3270 protocol emulators):Give these commands to BOTH Kermit programs: SET FLOW NONE SET CONTROL PREFIX ALL SET RECEIVE PACKET-LENGTH 70 SET RECEIVE START 62 SET SEND START 62 SET SEND PAUSE 100 SET BLOCK B If it works, it will be slow.On UNIX workstations equipped with DOS emulators like SoftPC, watch out forwhat these emulators do to the serial port drivers. After using a DOSemulator, particularly if you use it to run DOS communications software, youmight have to reconfigure the serial ports for use by UNIX.On AT&T 7300 (3B1) machines, you might have to "stty nl1" before startingC-Kermit. Do this if characters are lost during communications operations.Under the bash shell (versions prior to 1.07 from CWRU), "pushing" to aninferior shell and then exiting back to Kermit leaves Kermit in the backgroundsuch that it must be explicitly fg'd. This is reportedly fixed in version1.07 of bash.Interruption by Ctrl-Z makes UNIX C-Kermit try to suspend itself withkill(0,SIGSTOP), but only on systems that support job control, as determinedby whether the symbol SIGTSTP is defined (or on POSIX or SVR4 systems, ifsyconf(_SC_JOB_CONTROL) or _POSIX_JOB_CONTROL in addition to SIGTSTP).However, if Kermit is running under a login shell (such as the original Bourneshell) that does not support job control, the user's session hangs and must belogged out from another terminal, or hung up on. There is no way Kermit candefend itself against this. If you use a non-job control shell on a computerthat supports job control, give a command like "stty susp undef" to fix it sothe suspend signal is not attached to any particular key, or give the commandSET SUSPEND OFF to C-Kermit, or build C-Kermit with -DNOJC.Reportedly, the UNIX C-Kermit server, under some conditions, on certainparticular systems, fails to log out its login session upon receipt of aBYE command. Before relying on the BYE command working, test it a few timesto make sure it works on your system: there might be system configuration orsecurity mechanisms to prevent an inferior process (like Kermit) fromkilling a superior one (like the login shell).(5) INITIALIZATION AND COMMAND FILESC-Kermit's initialization file for UNIX is .kermrc (lowercase, starts withperiod) in your home directory, unless Kermit was built with the system-wideinitialization-file option (see ckuins.doc).C-Kermit identifies your home directory based on the environment variable,HOME. Most UNIX systems set this variable automatically when you log in. IfC-Kermit can't find your initialization file, check your HOME variable: echo $HOME (at the UNIX prompt)or: echo \$(HOME) (at the C-Kermit prompt)If HOME is not defined, or is defined incorrectly, add the appropriatedefinition to your UNIX .profile or .login file, depending on your shell: setenv HOME full-pathname-of-your-home-directory (C-Shell, .login file)or: HOME=full-pathname-of-your-home-directory (sh, ksh, .profile file) export HOMENOTE: Various other operations depend on the correct definition of HOME.These include the "tilde-expansion" feature, which allows you to refer toyour home directory as "~" in filenames used in C-Kermit commands, e.g. send ~/.kermrcas well as the \v(home) variable.Prior to version 5A(190), C-Kermit would look for its initialization file inthe current directory if it was not found in the home directory. This featurewas removed from 5A(190) because it was a security risk. Some people, however,liked this behavior and had .kermrc files in all their directories that wouldset up things appropriately for the files therein. If you want this behavior,you can accomplish it in various ways, for example: . Create a shell alias, for example: alias kd="kermit -Y ./.kermrc" . Create a .kermrc file in your home directory, whose contents are: take ./.kermrc The TAKE command does not search your UNIX PATH for command files. If acommand file is not in the current directory, you must give a full pathspecification for it. This poses a problem for TAKE commands that arethemselves in TAKE files. See the trick used in CKETEST.INI...Suppose you need to pass a password from the UNIX command line to a C-Kermitscript program, in such a way that it does not show up in "ps" or "w" listings.Here is a method (not guaranteed to be 100% secure, but definitely more securethan the more obvious methods): echo mypassword | kermit myscriptThe "myscript" file contains all the commands that need to be executed duringthe Kermit session, up to and including EXIT, and also includes an ASK or ASKQcommand to read the password from standard input, which has been piped in fromthe UNIX 'echo' command, but it must not include a CONNECT command. Only"kermit myscript" shows up in the ps listing.(6) COMMUNICATION SPEED SELECTIONVersion-7 based UNIX implementations, including 4.3 BSD and earlier andUNIX systems based upon BSD, use a 4-bit field to record a serial device'sterminal speed. This leaves room for 16 speeds, which are normally: 0, 50, 75, 110, 134.5, 150, 200, 300, 600, 1200, 1800, 2400, 4800, and 9600The remaining two are usually called EXTA and EXTB, and are defined by theparticular UNIX implementation. C-Kermit determines which speeds areavailable on your system based on whether symbols for them are defined in yourterminal device header files. EXTA is generally assumed to be 19200 and EXTB38400, but these assumptions might be wrong, or they might not apply to aparticular device that does not support these speeds.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -