The Kermit Project
Columbia University
- As of C-Kermit version: 9.0.300, 30 June 2011
- This file last updated: Tue Jun 28 08:28:08 2011 (New York City
+ As of C-Kermit version: 9.0.302, 20 August 2011
+ This file last updated: Sun Aug 21 12:08:29 2011 (New York City
time)
IF YOU ARE READING A PLAIN-TEXT version of this document, it is a
* Many and varied security libraries for building a secure version
(Kerberos, SSL/TLS, SRP, Zlib,...) These are required only if you
select a secure target.
- * For the curses-based fullscreen file-ransfer display, the curses or
- ncurses header file(s) and library, and probably also the termcap
- and/or termlib library. Note that the names and locations of these
- files and libraries are likely to change capriciously with every
- new release of your Unix product. If you discover that the C-Kermit
- build procedure fails because your curses and/or termxxx headers or
- libraries are not named or located as expected, please [91]let us
- know. In the meantime, work around by installing symlinks.
+ * For the curses-based fullscreen file-transfer display, the curses
+ or ncurses header file(s) and library, and probably also the
+ termcap and/or termlib library. Note that the names and locations
+ of these files and libraries are likely to change capriciously with
+ every new release of your Unix product. If you discover that the
+ C-Kermit build procedure fails because your curses and/or termxxx
+ headers or libraries are not named or located as expected, please
+ [91]let us know. In the meantime, work around by installing
+ symlinks.
* IMPORTANT: Modern Linux distributions might give you the choice
during installation of whether to install the "ncurses development
package" (perhaps called "ncurses-devel"). If you did not install
make particular connections, execute complicated scripts, whatever you
want.
+ And in C-Kermit 9.0 the initialization has indeed been "retired" by
+ renaming it to okermit.ini, and replaced by a stub ckermit.ini that
+ doesn't do anything but print a message. Ditto for ckermod.ini.
+
5.2. Text Files
These are entirely optional. Many of them are to be found at the Kermit
the Kermit website as:
[183]http://www.columbia.edu/kermit/ckermit80.html
- [184]ckcbwr.txt
+ [184]ckermit90.txt
+ Supplement to [185]Using C-Kermit for version 9.0. Available on
+ the Kermit website as:
+ [186]http://www.columbia.edu/kermit/ckermit90.html
+
+ [187]ckcbwr.txt
The general C-Kermit hints and tips ("beware") file. Available
on the Kermit website as:
- [185]http://www.columbia.edu/kermit/ckcbwr.html
+ [188]http://www.columbia.edu/kermit/ckcbwr.html
- [186]ckubwr.txt
+ [189]ckubwr.txt
The Unix-specific C-Kermit hints and tips file. Available on the
Kermit website as:
- [187]http://www.columbia.edu/kermit/ckubwr.html
+ [190]http://www.columbia.edu/kermit/ckubwr.html
- [188]ckuins.txt
+ [191]ckuins.txt
Unix C-Kermit Installation Instructions (this file). Available
on the Kermit website as:
- [189]http://www.columbia.edu/kermit/ckuins.html
+ [192]http://www.columbia.edu/kermit/ckuins.html
- [190]ckccfg.txt
+ [193]ckccfg.txt
C-Kermit compile-time configuration options. Available on the
Kermit website as:
- [191]http://www.columbia.edu/kermit/ckccfg.html
+ [194]http://www.columbia.edu/kermit/ckccfg.html
- [192]ckcplm.txt
+ [195]ckcplm.txt
The C-Kermit program logic manual. Available on the Kermit
website as:
- [193]http://www.columbia.edu/kermit/ckcplm.html
+ [196]http://www.columbia.edu/kermit/ckcplm.html
- [194]ca_certs.pem
+ [197]ca_certs.pem
Certificate Authority certificates for secure connections (see
- [195]Section 16).
+ [198]Section 16).
5.3. Installing the Kermit Files
- There is an "install" target in the [196]makefile that you can use if
+ There is an "install" target in the [199]makefile that you can use if
you wish. However, since every site has its own layout and
requirements, it is often better to install the Kermit files by hand.
You don't have to use the makefile install target to install C-Kermit.
directories. The 'install' target does not attempt to set Kermit's
owner, group, and permissions to allow dialing out. This requires
privileges, open eyes, and human decision-making. Please read
- [197]Sections 10 and [198]11 below, make the necessary decisions, and
+ [200]Sections 10 and [201]11 below, make the necessary decisions, and
then implement them by hand as described in those sections.
You should also install the man page, which is called ckuker.nr, in the
appropriately, e.g. to kermit.1. This is also taken care of by "make
install".
- Optionally, the text files listed in the [199]previous section can be
+ Optionally, the text files listed in the [202]previous section can be
placed in a publicly readable directory. Suggested directory names are:
/usr/local/doc/kermit/
give it the information it needs by setting the variables described
below. You can use this target if:
- * You downloaded the [200]complete C-Kermit archive and built
+ * You downloaded the [203]complete C-Kermit archive and built
C-Kermit from source; or:
- * You downloaded an [201]individual C-Kermit binary and the
- [202]C-Kermit text-file archive, and your computer has a "make"
+ * You downloaded an [204]individual C-Kermit binary and the
+ [205]C-Kermit text-file archive, and your computer has a "make"
command.
Here are the parameters you need to know:
6. INSTALLING UNIX C-KERMIT FROM DOS-FORMAT DISKETTES
- [ [203]Top ] [ [204]Contents ] [ [205]Next ] [ [206]Previous ]
+ [ [206]Top ] [ [207]Contents ] [ [208]Next ] [ [209]Previous ]
This section is obsolete. We don't distribute C-Kermit on diskettes
any more because (a)there is no demand, and (b) it no longer fits.
7. CHECKING THE RESULTS
- [ [207]Top ] [ [208]Contents ] [ [209]Next ] [ [210]Previous ]
+ [ [210]Top ] [ [211]Contents ] [ [212]Next ] [ [213]Previous ]
First some quick checks for problems that can be easily corrected by
recompiling with different options:
a. Start C-Kermit (usually by typing "./wermit" in the directory where
you ran the makefile). Do you see the C-Kermit> prompt? If not,
C-Kermit incorrectly deduced that it was running in the background.
- The test is in conbgt() in [211]ckutio.c. If you can fix it for
+ The test is in conbgt() in [214]ckutio.c. If you can fix it for
your system, please send in the fix (Hint: read about "PID_T"
below). Otherwise, you can force C-Kermit to foreground mode by
starting it with the -z command line option, as in "kermit -z", or
giving the interactive command SET BACKGROUND OFF.
b. When you type characters at the C-Kermit prompt, do they echo
immediately? If not, something is wrong with concb() and probably
- the other terminal mode settings routines in [212]ckutio.c. Be sure
+ the other terminal mode settings routines in [215]ckutio.c. Be sure
you have used the most appropriate make entry.
c. At the C-Kermit> prompt, type "send ./?". C-Kermit should list all
the files in the current directory. If not, it was built for the
d. CD to a directory that contains a variety of files, symlinks, and
subdirectories and give a DIRECTORY command at the C-Kermit>
prompt. Do the permissions, size, and date appear correct? If not
- see [213]Section 4.0.
+ see [216]Section 4.0.
e. Assuming your platform supports long file names, create a file with
a long name in your current directory, e.g.:
f. Make sure that Kermit has the maximum path length right. Just type
SHOW FILE and see what it says about this. If it is too short,
there could be some problems at runtime. To correct, look in
- [214]ckcdeb.h to see how the symbol CKMAXPATH is set and make any
+ [217]ckcdeb.h to see how the symbol CKMAXPATH is set and make any
needed adjustments.
g. Send a file to your new Kermit program from a different Kermit
program that is known to work. Is the date/timestamp of the new
file identical to the original? If not, adjustments are needed in
- zstrdt() in [215]ckufio.c.
+ zstrdt() in [218]ckufio.c.
h. Go to another computer (Computer B) from which you can send files
to C-Kermit. Connect Computer B to the computer (A) where you are
testing C-Kermit. Then:
i. Send a file from B to A. Make sure it transferred OK and was
- created with the the right name.
+ created with the right name.
j. Send a file from B to A, specifying an "as-name" that is very, very
long (longer than the maximum name length on computer A). Check to
make sure that the file was received OK and that its name was
truncated to Computer A's maximum length. If not, check the
- MAXNAMLEN definition in [216]ckufio.c.
+ MAXNAMLEN definition in [219]ckufio.c.
k. Tell C-Kermit on Computer A to "set receive pathnames relative" and
then send it a file from Computer B specifying an as-name that
contains several directory segments:
became totally frozen, then you are probably running C-Kermit on a
Unix version that supports job control, but under a shell that
doesn't. If that's not the case, look in the congm() and psuspend()
- routines in [217]ckutio.c and see if you can figure out what's
+ routines in [220]ckutio.c and see if you can figure out what's
wrong. If you can't, rebuild with -DNOJC.
o. Give a SET LINE command for a dialout device, e.g. "set line
/dev/tty00". If you got some kind of permission or access denied
- message, go read [218]Section 10 and then come back here.
+ message, go read [221]Section 10 and then come back here.
p. After giving a successful SET LINE command, type "show comm" to see
the communication parameters. Do they make sense?
q. Type "set speed ?" and observe the list of available speeds. Is it
- what you expected? If not, see [219]Section 2) of the
- [220]Configurations Options document.
+ what you expected? If not, see [222]Section 2) of the
+ [223]Configurations Options document.
r. Give a SET SPEED command to change the device's speed. Did it work?
(Type "show comm" again to check.)
s. Try dialing out: SET MODEM TYPE , SET LINE , SET SPEED , DIAL . If
w. If your version was built with fullscreen file transfer display
support, check that it works during local-mode file transfer. Also,
check C-Kermit's operation afterwards: is the echoing funny? etc
- etc. If there are problems, see [221]Section 4.
+ etc. If there are problems, see [224]Section 4.
x. If your version was built with script programming language support,
TAKE the ckedemo.ksc file to give it a workout.
y. Does C-Kermit interlock correctly with UUCP-family programs (cu,
- tip, uucp, etc)? If not, read the section [222]DIALING OUT AND
+ tip, uucp, etc)? If not, read the section [225]DIALING OUT AND
COORDINATING WITH UUCP below.
z. Modem signals... Give a SET LINE command to a serial device and
then type the SHOW MODEM command. If it says "Modem signals
unavailable in this version of Kermit", then you might want to look
- at the ttgmdm() routine in [223]ckutio.c and add the needed code --
+ at the ttgmdm() routine in [226]ckutio.c and add the needed code --
if indeed your version of Unix provides a way to get modem signals
(some don't; e.g. modem signals are a foreign concept to POSIX,
requiring politically incorrect workarounds).
To test, SET LINE , SET MODEM NONE, and HANGUP. The DTR light
should go out momentarily. If it doesn't, see if you can add the
needed code for your system to the tthang() routine in
- [224]ckutio.c.
+ [227]ckutio.c.
ac. If your version of Kermit has the SET FLOW RTS/CTS command, check
to see if it works: give Kermit this command, set your modem for
RTS/CTS, transfer some files (using big packet and window sizes)
off (and Kermit does not get packet errors), then it works. If your
version of Kermit does not have this command, but your version of
Unix does support hardware flow control, take a look at the
- tthflow() command in [225]ckutio.c and see if you can add the
- needed code (see the section on [226]HARDWARE FLOW CONTROL below).
- (And please [227]send back any added code, so that others can
+ tthflow() command in [228]ckutio.c and see if you can add the
+ needed code (see the section on [229]HARDWARE FLOW CONTROL below).
+ (And please [230]send back any added code, so that others can
benefit from it and it can be carried forward into future
releases.)
ad. If C-Kermit starts normally and issues its prompt, echoing is
8. REDUCING THE SIZE OF THE EXECUTABLE PROGRAM IMAGE
- [ [228]Top ] [ [229]Contents ] [ [230]Next ] [ [231]Previous ]
+ [ [231]Top ] [ [232]Contents ] [ [233]Next ] [ [234]Previous ]
- Also see: [232]C-Kermit Configuration Options
+ Also see: [235]C-Kermit Configuration Options
a. Many of C-Kermit's options and features can be deselected at
compile time. The greatest savings at the least sacrifice in
functionality is to disable the logging of debug information by
- defining NODEBUG during compilation. See the [233]Configurations
+ defining NODEBUG during compilation. See the [236]Configurations
Options document for further information.
b. Use shared libraries rather than static linking. This is the
default on many Unix systems anyway. However, executables built for
9. UNIX VERSIONS
- [ [234]Top ] [ [235]Contents ] [ [236]Next ] [ [237]Previous ]
+ [ [237]Top ] [ [238]Contents ] [ [239]Next ] [ [240]Previous ]
SECTION CONTENTS
-9.1 [238]Standards
- 9.1.1. [239]POSIX
- 9.1.2. [240]ANSI C
- 9.1.3. [241]Other Standards
-9.2. [242]Library Issues
-9.3. [243]Unix File System Peculiarities
-9.4. [244]Hardware Flow Control
-9.5. [245]Terminal Speeds
-9.6. [246]Millisecond Sleeps
-9.7. [247]Nondestructive Input Buffer Peeking
-9.8. [248]Other System-Dependent Features
-9.9. [249]Terminal Interruption
+9.1 [241]Standards
+ 9.1.1. [242]POSIX
+ 9.1.2. [243]ANSI C
+ 9.1.3. [244]Other Standards
+9.2. [245]Library Issues
+9.3. [246]Unix File System Peculiarities
+9.4. [247]Hardware Flow Control
+9.5. [248]Terminal Speeds
+9.6. [249]Millisecond Sleeps
+9.7. [250]Nondestructive Input Buffer Peeking
+9.8. [251]Other System-Dependent Features
+9.9. [252]Terminal Interruption
There are several major varieties of Unix: Bell Laboratories Seventh
Edition, AT&T System V, Berkeley Standard Distribution (BSD), and
APIs to get at serial speeds higher than 38400, but then doing so
removes hardware flow control -- just when we need it most! In cases
like this, dirty tricks are the only recourse (search for SCO_OSR504 in
- [250]ckutio.c for examples).
+ [253]ckutio.c for examples).
For reasons like this, Unix implementations tend to be neither pure
AT&T nor pure BSD nor pure POSIX, but a mixture of two or more of
9.1. Standards
- [ [251]Top ] [ [252]Section Contents ] [ [253]Contents ] [ [254]Next ]
+ [ [254]Top ] [ [255]Section Contents ] [ [256]Contents ] [ [257]Next ]
SUBSECTION CONTENTS
-9.1.1. [255]POSIX
-9.1.2. [256]ANSI C
-9.1.3. [257]Other Standards
+9.1.1. [258]POSIX
+9.1.2. [259]ANSI C
+9.1.3. [260]Other Standards
In edits 166-167 (1988-89), C-Kermit was heavily modified to try to
keep abreast of new standards while still remaining compatible with old
have some degree of POSIX compliance, but still use BSD or AT&T
specific features.
- The dilimma is this: it is often necessary to define _POSIX_SOURCE to
+ The dilemma is this: it is often necessary to define _POSIX_SOURCE to
get at new or modern features, such as high serial speeds and the APIs
to deal with them. But defining _POSIX_SOURCE also hides other APIs
that Kermit needs, for example the ones dealing with modem signals
9.1.2. ANSI C
- [ [258]Top ] [ [259]Contents ] [ [260]Section Contents ] [
- [261]Subsection Contents ] [ [262]Next ] [ [263]Previous ]
+ [ [261]Top ] [ [262]Contents ] [ [263]Section Contents ] [
+ [264]Subsection Contents ] [ [265]Next ] [ [266]Previous ]
The major difference between ANSI C and earlier C compilers is function
prototyping. ANSI C allows function arguments to be checked for type
internally.
On the downside, ANSI C compilation increases the
- administrative/bureacratic burden, spewing out countless unneeded
+ administrative/bureaucratic burden, spewing out countless unneeded
warnings about mismatched types, especially when we are dealing with
signed and unsigned characters, requiring casts everywhere to shut up
the mindless complaints -- there is no use for signed chars in Kermit
9.1.3. Other Standards
- [ [264]Top ] [ [265]Contents ] [ [266]Section Contents ] [
- [267]Subsection Contents ] [ [268]Next ] [ [269]Previous ]
+ [ [267]Top ] [ [268]Contents ] [ [269]Section Contents ] [
+ [270]Subsection Contents ] [ [271]Next ] [ [272]Previous ]
As the years go by, standards with-which-all-must-comply continue to
pile up: AES, XPG2, XPG3, XPG4, FIPS 151-2, successive generations of
POSIX, OSF/1, X/Open, Spec 1170, UNIX95, Open Group UNIX98, ISO/IEC
9945 parts 1-4, ISO 9899, 88Open, OS 99, Single Unix Specification
- (SUS, [270]IEEE 1003.1-2001, not to mention "mature standards" like V7,
+ (SUS, [273]IEEE 1003.1-2001, not to mention "mature standards" like V7,
4.2/4.3BSD, System V R3 and R4 (SVID2 and SVID3), 4.4BSD (the basis for
BSDI, OpenBSD, NetBSD, FreeBSD, Mac OS X etc), /usr/group, plus
assorted seismic pronouncements of the neverending series of ephemeral
C-Kermit -- each one is simply one more environment to support (or
circumvent, as in many cases these standards do more harm than good by
denying access to facilities we need, e.g. as noted in above in
- [271]9.1.1).
+ [274]9.1.1).
9.2. Library Issues
- [ [272]Top ] [ [273]Contents ] [ [274]Section Contents ] [
- [275]Subsection Contents ] [ [276]Next ] [ [277]Previous ]
+ [ [275]Top ] [ [276]Contents ] [ [277]Section Contents ] [
+ [278]Subsection Contents ] [ [279]Next ] [ [280]Previous ]
On most modern platforms, applications are -- and often must be --
dynamically linked. This has numerous advantages (smaller executables,
9.3. Unix File System Peculiarities
- [ [278]Top ] [ [279]Contents ] [ [280]Section Contents ] [ [281]Next ]
- [ [282]Previous ]
+ [ [281]Top ] [ [282]Contents ] [ [283]Section Contents ] [ [284]Next ]
+ [ [285]Previous ]
Normally, including a BSD, System-V, POSIX, or DIRENT flag in the make
entry selects the right file system code. But some versions of Unix are
to your makefile target.
Another problem child is <sys/file.h>. Most Unix C-Kermit versions need
- to #include this file from within [283]ckufio.c and [284]ckutio.c, but
+ to #include this file from within [286]ckufio.c and [287]ckutio.c, but
some not only do not need to include it, but MUST not include it
because (a) it doesn't exist, or (b) it has already been included by
some other header file and it doesn't protect itself against multiple
attribute packet, if any. If you find that the dates are set
incorrectly, you might need to build Kermit with the -DSYSUTIMEH flag,
to tell it to include <sys/utime.h>. If that doesn't help, look at the
- code in zstrdt() in [285]ckufio.c.
+ code in zstrdt() in [288]ckufio.c.
9.4. Hardware Flow Control
- [ [286]Top ] [ [287]Contents ] [ [288]Section Contents ] [ [289]Next ]
- [ [290]Previous ]
+ [ [289]Top ] [ [290]Contents ] [ [291]Section Contents ] [ [292]Next ]
+ [ [293]Previous ]
Hardware flow control is a problematic concept in many popular Unix
implementations. Often it is lacking altogether, and when available,
b. RTS/CTS flow control support MIGHT be available for System V R3 and
later if /usr/include/termiox.h exists (its successful operation
also depends on the device driver, and the device itself, not to
- mention the [291]cable, etc, actually supporting it). If your
+ mention the [294]cable, etc, actually supporting it). If your
SVR3-or-later Unix system does have this file, add:
-DTERMIOX
device name must be used. (NeXTSTEP: /dev/cufa instead of /dev/cua;
IRIX: /dev/ttyf00)
- See the routine tthflow() in [292]ckutio.c for details. If you find
+ See the routine tthflow() in [295]ckutio.c for details. If you find
that your system offers hardware flow control selection under program
control, you can add this capability to C-Kermit as follows:
a. See if it agrees with one of the methods already used in tthflow().
if not, add new code, appropriately #ifdef'd.
b. Add -DCK_RTSCTS to the compiler CFLAGS in your makefile target or
- define this symbol within the appropriate #ifdefs in [293]ckcdeb.h.
+ define this symbol within the appropriate #ifdefs in [296]ckcdeb.h.
To illustrate the difficulties with RTS/CTS, here is a tale from Jamie
Watson <jw@adasoft.ch>, who added the RTS/CTS code for the RS/6000,
9.5. Terminal Speeds
- [ [294]Top ] [ [295]Contents ] [ [296]Section Contents ] [ [297]Next ]
- [ [298]Previous ]
+ [ [297]Top ] [ [298]Contents ] [ [299]Section Contents ] [ [300]Next ]
+ [ [301]Previous ]
The allowable speeds for the SET SPEED command are defined in
- [299]ckcdeb.h. If your system supports speeds that are not listed in
+ [302]ckcdeb.h. If your system supports speeds that are not listed in
"set speed ?", you can add definitions for them to ckcdeb.h.
Then if the speed you are adding is one that was never used before in
Kermit, such as 921600, you'll also need to add the appropriate
- keywords to spdtab[] in [300]ckuus3.c, and the corresponding case to
- ttsspd() in [301]ckutio.c.
+ keywords to spdtab[] in [303]ckuus3.c, and the corresponding case to
+ ttsspd() in [304]ckutio.c.
9.6. Millisecond Sleeps
- [ [302]Top ] [ [303]Contents ] [ [304]Section Contents ] [ [305]Next ]
- [ [306]Previous ]
+ [ [305]Top ] [ [306]Contents ] [ [307]Section Contents ] [ [308]Next ]
+ [ [309]Previous ]
There is no standard for millisecond sleeps, but at least five
different functions have appeared in various Unix versions that can be
9.7. Nondestructive Input Buffer Peeking
- [ [307]Top ] [ [308]Contents ] [ [309]Section Contents ] [ [310]Next ]
- [ [311]Previous ]
+ [ [310]Top ] [ [311]Contents ] [ [312]Section Contents ] [ [313]Next ]
+ [ [314]Previous ]
Some AT&T Unix versions have no way to check if input is waiting on a
tty device, but this is a very important feature for Kermit. Without
9.8. Other System-Dependent Features
- [ [312]Top ] [ [313]Contents ] [ [314]Section Contents ] [ [315]Next ]
- [ [316]Previous ]
+ [ [315]Top ] [ [316]Contents ] [ [317]Section Contents ] [ [318]Next ]
+ [ [319]Previous ]
Systems with <termios.h> might have the symbol IEXTEN defined. This is
used to turn "extended features" in the tty device driver on and off,
characters, etc.
In most Unix implementations, it should be turned off during Kermit
- operation, so if [317]ckutio.c finds this symbol, it uses it. This is
+ operation, so if [320]ckutio.c finds this symbol, it uses it. This is
necessary, at least, on BSDI. On some systems, however, IEXTEN is
either misdefined or misimplemented. The symptom is that CR, when typed
to the command processor, is echoed as LF, rather than CRLF. This
In edits 177 and earlier, workstation users noticed a "slow screen
writing" phenomenon during interactive command parsing. This was traced
- to a setbuf() call in [318]ckutio.c that made console (stdout) writes
+ to a setbuf() call in [321]ckutio.c that made console (stdout) writes
unbuffered. This setbuf() call has been there forever, and could not be
removed without some risk. Kermit's operation was tested on the NeXT in
edit 178 with the setbuf() call removed, and the slow-writing symptom
-DRENAME
C-Kermit predefines the RENAME for several Unix versions in
- [319]ckcdeb.h (SVR4, SUNOS41, BSD44, AIXRS, etc). You can tell if
+ [322]ckcdeb.h (SVR4, SUNOS41, BSD44, AIXRS, etc). You can tell if
rename() is being used if the SHOW FEATURES command includes RENAME in
the compiler options list. If the predefined RENAME symbol causes
trouble, then add NORENAME to your CFLAGS. Trouble includes:
Some Unix systems (Olivetti X/OS, Amdahl UTS/V, ICL SVR3, etc) define
the S_ISREG and S_ISDIR macros incorrectly. This is compensated for
- automatically in [320]ckufio.c. Other systems might have this same
+ automatically in [323]ckufio.c. Other systems might have this same
problem. If you get a compile-time error message regarding S_ISREG
and/or S_ISDIR, add the following to your CFLAGS:
9.9. Terminal Interruption
- [ [321]Top ] [ [322]Contents ] [ [323]Section Contents ] [ [324]Next ]
- [ [325]Previous ]
+ [ [324]Top ] [ [325]Contents ] [ [326]Section Contents ] [ [327]Next ]
+ [ [328]Previous ]
When C-Kermit enters interactive command mode, it sets a Control-C
(terminal keyboard interrupt = SIGINT) trap to allow it to return to
10. DIALING OUT AND COORDINATING WITH UUCP
- [ [326]Top ] [ [327]Contents ] [ [328]Next ] [ [329]Previous ]
+ [ [329]Top ] [ [330]Contents ] [ [331]Next ] [ [332]Previous ]
The short version (general):
lockfile itself is called, and what its contents should be. In most
cases, C-Kermit preprocessor flags create the appropriate configuration
at compile time if the appropriate makefile target was used (see
- [330]ckutio.c). The following CFLAGS options can be used to override
+ [333]ckutio.c). The following CFLAGS options can be used to override
the built-in configuration:
-DLCKDIR
dialout device, like /dev/cua0 or /dev/ttyS0, whose purpose is to hide
the details of the actual driver from the user. So if one user opens
/dev/modem, a lockfile called LCK..modem is created, which does not
- prevent another user from simulataneously opening the same device by
- its real name.
+ prevent another user from simultaneously opening the same device by its
+ real name.
On SCO Unix platforms, we have a slightly different problem: the same
device is, by convention, known by "lowercase" and "uppercase" names,
you, or (b) it does not exist. The "access to lock denied" message
will tell you the reason. If the directory does not exist, check to
make sure Kermit is using the right name. Just because version n of
- your Unix used a certain lockfile directory is no gurantee that
+ your Unix used a certain lockfile directory is no guarantee that
version n.1 does not use a different one. Workaround: ask the
system administrator to install a symbolic link from the old name
to the new name. Other solutions: (see below)
su% chmod 660 /dev/ttyXX
User whatever tool is available on your platform to add users to
- the appropropriate group (e.g. edit the /etc/group file).
+ the appropriate group (e.g. edit the /etc/group file).
c. Have the superuser change Kermit to run setuid and/or setgid to the
owner and/or group of the lockfile directory and the tty devices if
- necessary), typically uucp (see [331]next section), but NOT root.
+ necessary), typically uucp (see [334]next section), but NOT root.
Example:
su% chown uucp kermit - or - chgrp uucp kermit
11. RUNNING UNIX C-KERMIT SETUID OR SETGID
- [ [332]Top ] [ [333]Contents ] [ [334]Next ] [ [335]Previous ]
+ [ [335]Top ] [ [336]Contents ] [ [337]Next ] [ [338]Previous ]
Even if you don't intend to run C-Kermit setuid, somebody else might
come along and chown and chmod it after it has been built. You should
IMPORTANT NOTE: Most Unix system documentation will not give you the
required information. To determine whether your Unix system supplies
- the the saved-original-effective-user/group-id feature, use the
- ckuuid.c program. Read and follow the instructions in the comments
- at the beginning.
+ the saved-original-effective-user/group-id feature, use the ckuuid.c
+ program. Read and follow the instructions in the comments at the
+ beginning.
C-Kermit for 4.4BSD-based systems automatically use sete[ug]id(). See
- [336]ckutio.c.
+ [339]ckutio.c.
If you have a version of Unix that is not BSD-based, but which supplies
the setreuid() and setregid() functions, and these are the only way to
switch between real and effective uid, add -DSETREUID to your makefile
target.
- WARNING: There are two calls to access() in [337]ckufio.c, by which
+ WARNING: There are two calls to access() in [340]ckufio.c, by which
Kermit checks to see if it can create an output file. These calls
will not work correctly when (a)you have installed C-Kermit setuid
or setgid on a BSD-based Unix system, and (b) the
12. CONFIGURING UNIX WORKSTATIONS
- [ [338]Top ] [ [339]Contents ] [ [340]Next ] [ [341]Previous ]
+ [ [341]Top ] [ [342]Contents ] [ [343]Next ] [ [344]Previous ]
On desktop workstations that are used by only the user at the console
keyboard, C-Kermit is always used in local mode. But as delivered,
13. BIZARRE BEHAVIOR AT RUNTIME
- [ [342]Top ] [ [343]Contents ] [ [344]Next ] [ [345]Previous ]
+ [ [345]Top ] [ [346]Contents ] [ [347]Next ] [ [348]Previous ]
See the "beware file",
- [346]ckubwr.txt, for hints about runtime misbehavior. This section
+ [349]ckubwr.txt, for hints about runtime misbehavior. This section
lists some runtime problems that can be cured by rebuilding C-Kermit.
The program starts, but there is no prompt, and certain operations
don't work (you see error messages like "Kermit command error in
background execution"). This is because Kermit thinks it is running in
- the background. See conbgt() in [347]ckutio.c. Try rebuilding Kermit
+ the background. See conbgt() in [350]ckutio.c. Try rebuilding Kermit
with:
-DPID_T=pid_t
14. CRASHES AND CORE DUMPS
- [ [348]Top ] [ [349]Contents ] [ [350]Next ] [ [351]Previous ]
+ [ [351]Top ] [ [352]Contents ] [ [353]Next ] [ [354]Previous ]
- If C-Kermit constitently dumps core at the beginning of a file
+ If C-Kermit consistently dumps core at the beginning of a file
transfer, look in SHOW FEATURES for CKREALPATH. If found, rebuild with
-DNOREALPATH and see if that fixes the problem (some UNIXes have
realpath() but it doesn't work).
15. SYSLOGGING
- [ [352]Top ] [ [353]Contents ] [ [354]Next ] [ [355]Previous ]
+ [ [355]Top ] [ [356]Contents ] [ [357]Next ] [ [358]Previous ]
"Syslogging" means recording selected information in the system log via
the Unix syslog() facility, which is available in most Unix versions.
--syslog:n
on the command-line, where n is a number greater than 0 to indicate the
- level of syslogging. See [356]Section 4.2 of the [357]IKSD
+ level of syslogging. See [359]Section 4.2 of the [360]IKSD
Administrator's Guide for details.
Obviously you can't depend on users to include --syslog:3 (or whatever)
out from your system, and to where, e.g. for security auditing.
Level 2 and 3 records are equivalent to those in the connection log;
- see the [358]C-Kermit 7.0 Supplement) for a detailed description of the
+ see the [361]C-Kermit 7.0 Supplement) for a detailed description of the
connection log.
16. BUILDING SECURE VERSIONS OF C-KERMIT 8.0
- [ [359]Top ] [ [360]Contents ] [ [361]Next ] [ [362]Previous ]
+ [ [362]Top ] [ [363]Contents ] [ [364]Next ] [ [365]Previous ]
C-Kermit 7.0 and later may be built with Kerberos(TM) and/or SRP(TM)
(Secure Remote Password) and/or SSL/TLS security for strong
authentication and encryption of Internet connections. These security
methods require external libraries that, in their binary forms, are
- restricted from export by USA law. See the [363]Kermit Security
+ restricted from export by USA law. See the [366]Kermit Security
Reference) for details. C-Kermit binaries themselves are likewise
restricted; the C-Kermit binaries that are available for public
download on the Internet are not allowed to contain the security
Sample makefile entries are provided for Linux and many other operating
systems. A list of secure makefile entries is included in the Makefile.
Complete instructions on building C-Kermit 8.0 with MIT Kerberos;
- Secure Remote Password; and/or OpenSSL can be found in the [364]Kermit
+ Secure Remote Password; and/or OpenSSL can be found in the [367]Kermit
Security Reference.
SSL/TLS and Kerberos builds are increasingly problematic with the
toolsets.) Perhaps certain targets could be converted to use them,
especially Linux because there are so many variations among
distributions and versions. Anybody who wants to make, say, an
- Autonf-based Linux target, be my guest, but bear in mind that one
+ Autoconf-based Linux target, be my guest, but bear in mind that one
Linux target is supposed to work for all versions and distributions
of Linux on all platforms. Well, one target for Linux by itself,
another for Linux with OpenSSL, another for Linux with Kerberos 5,
17. INSTALLING C-KERMIT AS AN SSH SERVER SUBSYSTEM
- [ [365]Top ] [ [366]Contents ] [ [367]Previous ]
+ [ [368]Top ] [ [369]Contents ] [ [370]Previous ]
This requires C-Kermit 8.0.206 or later and an SSH v2 server. If you
list C-Kermit as a Subsystem in the SSH v2 server configuration file
(as, for example, SFTP is listed), users can make SSH connections
direct to a Kermit server as explained here:
-[368]http://www.columbia.edu/kermit/skermit.html
+[371]http://www.columbia.edu/kermit/skermit.html
The name and location of the SSH server configuration file depends on
your platform, which SSH product(s) you have, etc. C-Kermit itself must
Subsystem kermit /some/path/kermit-sshsub
(where /some/path is the fully specified directory where the symlink
- is.) This is similar to the line that sets up the SFTP susbsystem.
+ is.) This is similar to the line that sets up the SFTP subsystem.
Example:
Subsystem sftp /usr/local/libexec/sftp-server
C-Kermit would have no way of knowing that it should enter Server mode
if it were not called by a special name.
- [ [369]Top ] [ [370]Contents ] [ [371]C-Kermit Home ] [ [372]C-Kermit
- 9.0 Overview ] [ [373]Kermit Home ]
+ [ [372]Top ] [ [373]Contents ] [ [374]C-Kermit Home ] [ [375]C-Kermit
+ 9.0 Overview ] [ [376]Kermit Home ]
__________________________________________________________________
181. ftp://kermit.columbia.edu/kermit/c-kermit/ckermit80.txt
182. http://www.columbia.edu/kermit/ck60manual.html
183. http://www.columbia.edu/kermit/ckermit80.html
- 184. ftp://kermit.columbia.edu/kermit/c-kermit/ckcbwr.txt
- 185. http://www.columbia.edu/kermit/ckcbwr.html
- 186. ftp://kermit.columbia.edu/kermit/c-kermit/ckubwr.txt
- 187. http://www.columbia.edu/kermit/ckubwr.html
- 188. ftp://kermit.columbia.edu/kermit/c-kermit/ckuins.txt
- 189. http://www.columbia.edu/kermit/ckuins.html
- 190. ftp://kermit.columbia.edu/kermit/c-kermit/ckccfg.txt
- 191. http://www.columbia.edu/kermit/ckccfg.html
- 192. ftp://kermit.columbia.edu/kermit/c-kermit/ckcplm.txt
- 193. http://www.columbia.edu/kermit/ckcplm.html
- 194. ftp://kermit.columbia.edu/kermit/c-kermit/ca_certs.pem
- 195. http://www.columbia.edu/kermit/ckuins.html#x16"
- 196. ftp://kermit.columbia.edu/kermit/c-kermit/makefile
- 197. http://www.columbia.edu/kermit/ckuins.html#x?
- 198. http://www.columbia.edu/kermit/ckuins.html#x11
- 199. http://www.columbia.edu/kermit/ckuins.html#x5.2
- 200. http://www.columbia.edu/kermit/ckermit.html#download
- 201. http://www.columbia.edu/kermit/ck80binaries.html
- 202. http://www.columbia.edu/kermit/ckermit.html#download
- 203. http://www.columbia.edu/kermit/ckuins.html#top
- 204. http://www.columbia.edu/kermit/ckuins.html#contents
- 205. http://www.columbia.edu/kermit/ckuins.html#x7
- 206. http://www.columbia.edu/kermit/ckuins.html#x5
- 207. http://www.columbia.edu/kermit/ckuins.html#top
- 208. http://www.columbia.edu/kermit/ckuins.html#contents
- 209. http://www.columbia.edu/kermit/ckuins.html#x8
- 210. http://www.columbia.edu/kermit/ckuins.html#x6
- 211. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 212. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 213. http://www.columbia.edu/kermit/ckuins.html#x4.0
- 214. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
- 215. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 216. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 217. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 218. http://www.columbia.edu/kermit/ckuins.html#x10
- 219. http://www.columbia.edu/kermit/ckccfg.html#x2
- 220. http://www.columbia.edu/kermit/ckccfg.html
- 221. http://www.columbia.edu/kermit/ckuins.html#x4
- 222. http://www.columbia.edu/kermit/ckuins.html#x10
- 223. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 224. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 225. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 226. http://www.columbia.edu/kermit/ckuins.html#x9.4
- 227. mailto:kermit-support@columbia.edu
- 228. http://www.columbia.edu/kermit/ckuins.html#top
- 229. http://www.columbia.edu/kermit/ckuins.html#contents
- 230. http://www.columbia.edu/kermit/ckuins.html#x9
- 231. http://www.columbia.edu/kermit/ckuins.html#x7
- 232. http://www.columbia.edu/kermit/ckccfg.html
- 233. http://www.columbia.edu/kermit/ckccfg.html
- 234. http://www.columbia.edu/kermit/ckuins.html#top
- 235. http://www.columbia.edu/kermit/ckuins.html#contents
- 236. http://www.columbia.edu/kermit/ckuins.html#x10
- 237. http://www.columbia.edu/kermit/ckuins.html#x8
- 238. http://www.columbia.edu/kermit/ckuins.html#x9.1
- 239. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
- 240. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
- 241. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
- 242. http://www.columbia.edu/kermit/ckuins.html#x9.2
- 243. http://www.columbia.edu/kermit/ckuins.html#x9.3
- 244. http://www.columbia.edu/kermit/ckuins.html#x9.4
- 245. http://www.columbia.edu/kermit/ckuins.html#x9.5
- 246. http://www.columbia.edu/kermit/ckuins.html#x9.6
- 247. http://www.columbia.edu/kermit/ckuins.html#x9.7
- 248. http://www.columbia.edu/kermit/ckuins.html#x9.8
- 249. http://www.columbia.edu/kermit/ckuins.html#x9.9
- 250. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 251. http://www.columbia.edu/kermit/ckuins.html#top
- 252. http://www.columbia.edu/kermit/ckuins.html#x9
- 253. http://www.columbia.edu/kermit/ckuins.html#contents
- 254. http://www.columbia.edu/kermit/ckuins.html#x9.2
- 255. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
- 256. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
- 257. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
- 258. http://www.columbia.edu/kermit/ckuins.html#top
- 259. http://www.columbia.edu/kermit/ckuins.html#contents
- 260. http://www.columbia.edu/kermit/ckuins.html#x9
- 261. http://www.columbia.edu/kermit/ckuins.html#x9.1
- 262. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
- 263. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
- 264. http://www.columbia.edu/kermit/ckuins.html#top
- 265. http://www.columbia.edu/kermit/ckuins.html#contents
- 266. http://www.columbia.edu/kermit/ckuins.html#x9
- 267. http://www.columbia.edu/kermit/ckuins.html#x9.1
- 268. http://www.columbia.edu/kermit/ckuins.html#x9.2
- 269. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
- 270. http://www.opengroup.org/onlinepubs/007904975/
- 271. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
- 272. http://www.columbia.edu/kermit/ckuins.html#top
- 273. http://www.columbia.edu/kermit/ckuins.html#contents
- 274. http://www.columbia.edu/kermit/ckuins.html#x9
- 275. http://www.columbia.edu/kermit/ckuins.html#x9.1
- 276. http://www.columbia.edu/kermit/ckuins.html#x9.3
- 277. http://www.columbia.edu/kermit/ckuins.html#x9.1
- 278. http://www.columbia.edu/kermit/ckuins.html#top
- 279. http://www.columbia.edu/kermit/ckuins.html#contents
- 280. http://www.columbia.edu/kermit/ckuins.html#x9
- 281. http://www.columbia.edu/kermit/ckuins.html#x9.4
- 282. http://www.columbia.edu/kermit/ckuins.html#x9.2
- 283. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 284. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 285. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 286. http://www.columbia.edu/kermit/ckuins.html#top
- 287. http://www.columbia.edu/kermit/ckuins.html#contents
- 288. http://www.columbia.edu/kermit/ckuins.html#x9
- 289. http://www.columbia.edu/kermit/ckuins.html#x9.5
- 290. http://www.columbia.edu/kermit/ckuins.html#x9.3
- 291. http://www.columbia.edu/kermit/cable.html
- 292. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 293. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
- 294. http://www.columbia.edu/kermit/ckuins.html#top
- 295. http://www.columbia.edu/kermit/ckuins.html#contents
- 296. http://www.columbia.edu/kermit/ckuins.html#x9
- 297. http://www.columbia.edu/kermit/ckuins.html#x9.6
- 298. http://www.columbia.edu/kermit/ckuins.html#x9.4
- 299. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
- 300. ftp://kermit.columbia.edu/kermit/c-kermit/ckuus3.c
- 301. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 302. http://www.columbia.edu/kermit/ckuins.html#top
- 303. http://www.columbia.edu/kermit/ckuins.html#contents
- 304. http://www.columbia.edu/kermit/ckuins.html#x9
- 305. http://www.columbia.edu/kermit/ckuins.html#x9.7
- 306. http://www.columbia.edu/kermit/ckuins.html#x9.5
- 307. http://www.columbia.edu/kermit/ckuins.html#top
- 308. http://www.columbia.edu/kermit/ckuins.html#contents
- 309. http://www.columbia.edu/kermit/ckuins.html#x9
- 310. http://www.columbia.edu/kermit/ckuins.html#x9.8
- 311. http://www.columbia.edu/kermit/ckuins.html#x9.6
- 312. http://www.columbia.edu/kermit/ckuins.html#top
- 313. http://www.columbia.edu/kermit/ckuins.html#contents
- 314. http://www.columbia.edu/kermit/ckuins.html#x9
- 315. http://www.columbia.edu/kermit/ckuins.html#x9.9
- 316. http://www.columbia.edu/kermit/ckuins.html#x9.7
- 317. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 318. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 319. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
- 320. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 321. http://www.columbia.edu/kermit/ckuins.html#top
- 322. http://www.columbia.edu/kermit/ckuins.html#contents
- 323. http://www.columbia.edu/kermit/ckuins.html#x9
- 324. http://www.columbia.edu/kermit/ckuins.html#x10
- 325. http://www.columbia.edu/kermit/ckuins.html#x9.8
- 326. http://www.columbia.edu/kermit/ckuins.html#top
- 327. http://www.columbia.edu/kermit/ckuins.html#contents
- 328. http://www.columbia.edu/kermit/ckuins.html#x11
- 329. http://www.columbia.edu/kermit/ckuins.html#x9
- 330. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 184. ftp://kermit.columbia.edu/kermit/c-kermit/ckermit90.txt
+ 185. http://www.columbia.edu/kermit/ck60manual.html
+ 186. http://www.columbia.edu/kermit/ckermit90.html
+ 187. ftp://kermit.columbia.edu/kermit/c-kermit/ckcbwr.txt
+ 188. http://www.columbia.edu/kermit/ckcbwr.html
+ 189. ftp://kermit.columbia.edu/kermit/c-kermit/ckubwr.txt
+ 190. http://www.columbia.edu/kermit/ckubwr.html
+ 191. ftp://kermit.columbia.edu/kermit/c-kermit/ckuins.txt
+ 192. http://www.columbia.edu/kermit/ckuins.html
+ 193. ftp://kermit.columbia.edu/kermit/c-kermit/ckccfg.txt
+ 194. http://www.columbia.edu/kermit/ckccfg.html
+ 195. ftp://kermit.columbia.edu/kermit/c-kermit/ckcplm.txt
+ 196. http://www.columbia.edu/kermit/ckcplm.html
+ 197. ftp://kermit.columbia.edu/kermit/c-kermit/ca_certs.pem
+ 198. http://www.columbia.edu/kermit/ckuins.html#x16"
+ 199. ftp://kermit.columbia.edu/kermit/c-kermit/makefile
+ 200. http://www.columbia.edu/kermit/ckuins.html#x?
+ 201. http://www.columbia.edu/kermit/ckuins.html#x11
+ 202. http://www.columbia.edu/kermit/ckuins.html#x5.2
+ 203. http://www.columbia.edu/kermit/ckermit.html#download
+ 204. http://www.columbia.edu/kermit/ckbinaries.html
+ 205. http://www.columbia.edu/kermit/ckermit.html#download
+ 206. http://www.columbia.edu/kermit/ckuins.html#top
+ 207. http://www.columbia.edu/kermit/ckuins.html#contents
+ 208. http://www.columbia.edu/kermit/ckuins.html#x7
+ 209. http://www.columbia.edu/kermit/ckuins.html#x5
+ 210. http://www.columbia.edu/kermit/ckuins.html#top
+ 211. http://www.columbia.edu/kermit/ckuins.html#contents
+ 212. http://www.columbia.edu/kermit/ckuins.html#x8
+ 213. http://www.columbia.edu/kermit/ckuins.html#x6
+ 214. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 215. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 216. http://www.columbia.edu/kermit/ckuins.html#x4.0
+ 217. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
+ 218. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 219. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 220. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 221. http://www.columbia.edu/kermit/ckuins.html#x10
+ 222. http://www.columbia.edu/kermit/ckccfg.html#x2
+ 223. http://www.columbia.edu/kermit/ckccfg.html
+ 224. http://www.columbia.edu/kermit/ckuins.html#x4
+ 225. http://www.columbia.edu/kermit/ckuins.html#x10
+ 226. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 227. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 228. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 229. http://www.columbia.edu/kermit/ckuins.html#x9.4
+ 230. mailto:kermit-support@columbia.edu
+ 231. http://www.columbia.edu/kermit/ckuins.html#top
+ 232. http://www.columbia.edu/kermit/ckuins.html#contents
+ 233. http://www.columbia.edu/kermit/ckuins.html#x9
+ 234. http://www.columbia.edu/kermit/ckuins.html#x7
+ 235. http://www.columbia.edu/kermit/ckccfg.html
+ 236. http://www.columbia.edu/kermit/ckccfg.html
+ 237. http://www.columbia.edu/kermit/ckuins.html#top
+ 238. http://www.columbia.edu/kermit/ckuins.html#contents
+ 239. http://www.columbia.edu/kermit/ckuins.html#x10
+ 240. http://www.columbia.edu/kermit/ckuins.html#x8
+ 241. http://www.columbia.edu/kermit/ckuins.html#x9.1
+ 242. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
+ 243. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
+ 244. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
+ 245. http://www.columbia.edu/kermit/ckuins.html#x9.2
+ 246. http://www.columbia.edu/kermit/ckuins.html#x9.3
+ 247. http://www.columbia.edu/kermit/ckuins.html#x9.4
+ 248. http://www.columbia.edu/kermit/ckuins.html#x9.5
+ 249. http://www.columbia.edu/kermit/ckuins.html#x9.6
+ 250. http://www.columbia.edu/kermit/ckuins.html#x9.7
+ 251. http://www.columbia.edu/kermit/ckuins.html#x9.8
+ 252. http://www.columbia.edu/kermit/ckuins.html#x9.9
+ 253. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 254. http://www.columbia.edu/kermit/ckuins.html#top
+ 255. http://www.columbia.edu/kermit/ckuins.html#x9
+ 256. http://www.columbia.edu/kermit/ckuins.html#contents
+ 257. http://www.columbia.edu/kermit/ckuins.html#x9.2
+ 258. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
+ 259. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
+ 260. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
+ 261. http://www.columbia.edu/kermit/ckuins.html#top
+ 262. http://www.columbia.edu/kermit/ckuins.html#contents
+ 263. http://www.columbia.edu/kermit/ckuins.html#x9
+ 264. http://www.columbia.edu/kermit/ckuins.html#x9.1
+ 265. http://www.columbia.edu/kermit/ckuins.html#x9.1.3
+ 266. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
+ 267. http://www.columbia.edu/kermit/ckuins.html#top
+ 268. http://www.columbia.edu/kermit/ckuins.html#contents
+ 269. http://www.columbia.edu/kermit/ckuins.html#x9
+ 270. http://www.columbia.edu/kermit/ckuins.html#x9.1
+ 271. http://www.columbia.edu/kermit/ckuins.html#x9.2
+ 272. http://www.columbia.edu/kermit/ckuins.html#x9.1.2
+ 273. http://www.opengroup.org/onlinepubs/007904975/
+ 274. http://www.columbia.edu/kermit/ckuins.html#x9.1.1
+ 275. http://www.columbia.edu/kermit/ckuins.html#top
+ 276. http://www.columbia.edu/kermit/ckuins.html#contents
+ 277. http://www.columbia.edu/kermit/ckuins.html#x9
+ 278. http://www.columbia.edu/kermit/ckuins.html#x9.1
+ 279. http://www.columbia.edu/kermit/ckuins.html#x9.3
+ 280. http://www.columbia.edu/kermit/ckuins.html#x9.1
+ 281. http://www.columbia.edu/kermit/ckuins.html#top
+ 282. http://www.columbia.edu/kermit/ckuins.html#contents
+ 283. http://www.columbia.edu/kermit/ckuins.html#x9
+ 284. http://www.columbia.edu/kermit/ckuins.html#x9.4
+ 285. http://www.columbia.edu/kermit/ckuins.html#x9.2
+ 286. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 287. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 288. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 289. http://www.columbia.edu/kermit/ckuins.html#top
+ 290. http://www.columbia.edu/kermit/ckuins.html#contents
+ 291. http://www.columbia.edu/kermit/ckuins.html#x9
+ 292. http://www.columbia.edu/kermit/ckuins.html#x9.5
+ 293. http://www.columbia.edu/kermit/ckuins.html#x9.3
+ 294. http://www.columbia.edu/kermit/cable.html
+ 295. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 296. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
+ 297. http://www.columbia.edu/kermit/ckuins.html#top
+ 298. http://www.columbia.edu/kermit/ckuins.html#contents
+ 299. http://www.columbia.edu/kermit/ckuins.html#x9
+ 300. http://www.columbia.edu/kermit/ckuins.html#x9.6
+ 301. http://www.columbia.edu/kermit/ckuins.html#x9.4
+ 302. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
+ 303. ftp://kermit.columbia.edu/kermit/c-kermit/ckuus3.c
+ 304. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 305. http://www.columbia.edu/kermit/ckuins.html#top
+ 306. http://www.columbia.edu/kermit/ckuins.html#contents
+ 307. http://www.columbia.edu/kermit/ckuins.html#x9
+ 308. http://www.columbia.edu/kermit/ckuins.html#x9.7
+ 309. http://www.columbia.edu/kermit/ckuins.html#x9.5
+ 310. http://www.columbia.edu/kermit/ckuins.html#top
+ 311. http://www.columbia.edu/kermit/ckuins.html#contents
+ 312. http://www.columbia.edu/kermit/ckuins.html#x9
+ 313. http://www.columbia.edu/kermit/ckuins.html#x9.8
+ 314. http://www.columbia.edu/kermit/ckuins.html#x9.6
+ 315. http://www.columbia.edu/kermit/ckuins.html#top
+ 316. http://www.columbia.edu/kermit/ckuins.html#contents
+ 317. http://www.columbia.edu/kermit/ckuins.html#x9
+ 318. http://www.columbia.edu/kermit/ckuins.html#x9.9
+ 319. http://www.columbia.edu/kermit/ckuins.html#x9.7
+ 320. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 321. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 322. ftp://kermit.columbia.edu/kermit/c-kermit/ckcdeb.h
+ 323. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 324. http://www.columbia.edu/kermit/ckuins.html#top
+ 325. http://www.columbia.edu/kermit/ckuins.html#contents
+ 326. http://www.columbia.edu/kermit/ckuins.html#x9
+ 327. http://www.columbia.edu/kermit/ckuins.html#x10
+ 328. http://www.columbia.edu/kermit/ckuins.html#x9.8
+ 329. http://www.columbia.edu/kermit/ckuins.html#top
+ 330. http://www.columbia.edu/kermit/ckuins.html#contents
331. http://www.columbia.edu/kermit/ckuins.html#x11
- 332. http://www.columbia.edu/kermit/ckuins.html#top
- 333. http://www.columbia.edu/kermit/ckuins.html#contents
- 334. http://www.columbia.edu/kermit/ckuins.html#x12
- 335. http://www.columbia.edu/kermit/ckuins.html#x10
- 336. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 337. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
- 338. http://www.columbia.edu/kermit/ckuins.html#top
- 339. http://www.columbia.edu/kermit/ckuins.html#contents
- 340. http://www.columbia.edu/kermit/ckuins.html#x13
- 341. http://www.columbia.edu/kermit/ckuins.html#x11
- 342. http://www.columbia.edu/kermit/ckuins.html#top
- 343. http://www.columbia.edu/kermit/ckuins.html#contents
- 344. http://www.columbia.edu/kermit/ckuins.html#x14
- 345. http://www.columbia.edu/kermit/ckuins.html#x12
- 346. ftp://kermit.columbia.edu/kermit/c-kermit/ckubwr.txt
- 347. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
- 348. http://www.columbia.edu/kermit/ckuins.html#top
- 349. http://www.columbia.edu/kermit/ckuins.html#contents
- 350. http://www.columbia.edu/kermit/ckuins.html#x15
- 351. http://www.columbia.edu/kermit/ckuins.html#x13
- 352. http://www.columbia.edu/kermit/ckuins.html#top
- 353. http://www.columbia.edu/kermit/ckuins.html#contents
- 354. http://www.columbia.edu/kermit/ckuins.html#x16
- 355. http://www.columbia.edu/kermit/ckuins.html#x14
- 356. http://www.columbia.edu/kermit/uiksd.html#x4.2
- 357. http://www.columbia.edu/kermit/uiksd.html
- 358. http://www.columbia.edu/kermit/ckermit2.html
- 359. http://www.columbia.edu/kermit/ckuins.html#top
- 360. http://www.columbia.edu/kermit/ckuins.html#contents
- 361. http://www.columbia.edu/kermit/ckuins.html#x17
- 362. http://www.columbia.edu/kermit/ckuins.html#x15
- 363. http://www.columbia.edu/kermit/security.html
- 364. http://www.columbia.edu/kermit/security80.html
- 365. http://www.columbia.edu/kermit/ckuins.html#top
- 366. http://www.columbia.edu/kermit/ckuins.html#contents
- 367. http://www.columbia.edu/kermit/ckuins.html#x16
- 368. http://www.columbia.edu/kermit/skermit.html
- 369. http://www.columbia.edu/kermit/ckuins.html#top
- 370. http://www.columbia.edu/kermit/ckuins.html#contents
- 371. http://www.columbia.edu/kermit/ckermit.html
- 372. http://www.columbia.edu/kermit/ck90updates.html
- 373. http://www.columbia.edu/kermit/index.html
+ 332. http://www.columbia.edu/kermit/ckuins.html#x9
+ 333. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 334. http://www.columbia.edu/kermit/ckuins.html#x11
+ 335. http://www.columbia.edu/kermit/ckuins.html#top
+ 336. http://www.columbia.edu/kermit/ckuins.html#contents
+ 337. http://www.columbia.edu/kermit/ckuins.html#x12
+ 338. http://www.columbia.edu/kermit/ckuins.html#x10
+ 339. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 340. ftp://kermit.columbia.edu/kermit/c-kermit/ckufio.c
+ 341. http://www.columbia.edu/kermit/ckuins.html#top
+ 342. http://www.columbia.edu/kermit/ckuins.html#contents
+ 343. http://www.columbia.edu/kermit/ckuins.html#x13
+ 344. http://www.columbia.edu/kermit/ckuins.html#x11
+ 345. http://www.columbia.edu/kermit/ckuins.html#top
+ 346. http://www.columbia.edu/kermit/ckuins.html#contents
+ 347. http://www.columbia.edu/kermit/ckuins.html#x14
+ 348. http://www.columbia.edu/kermit/ckuins.html#x12
+ 349. ftp://kermit.columbia.edu/kermit/c-kermit/ckubwr.txt
+ 350. ftp://kermit.columbia.edu/kermit/c-kermit/ckutio.c
+ 351. http://www.columbia.edu/kermit/ckuins.html#top
+ 352. http://www.columbia.edu/kermit/ckuins.html#contents
+ 353. http://www.columbia.edu/kermit/ckuins.html#x15
+ 354. http://www.columbia.edu/kermit/ckuins.html#x13
+ 355. http://www.columbia.edu/kermit/ckuins.html#top
+ 356. http://www.columbia.edu/kermit/ckuins.html#contents
+ 357. http://www.columbia.edu/kermit/ckuins.html#x16
+ 358. http://www.columbia.edu/kermit/ckuins.html#x14
+ 359. http://www.columbia.edu/kermit/uiksd.html#x4.2
+ 360. http://www.columbia.edu/kermit/uiksd.html
+ 361. http://www.columbia.edu/kermit/ckermit2.html
+ 362. http://www.columbia.edu/kermit/ckuins.html#top
+ 363. http://www.columbia.edu/kermit/ckuins.html#contents
+ 364. http://www.columbia.edu/kermit/ckuins.html#x17
+ 365. http://www.columbia.edu/kermit/ckuins.html#x15
+ 366. http://www.columbia.edu/kermit/security.html
+ 367. http://www.columbia.edu/kermit/security80.html
+ 368. http://www.columbia.edu/kermit/ckuins.html#top
+ 369. http://www.columbia.edu/kermit/ckuins.html#contents
+ 370. http://www.columbia.edu/kermit/ckuins.html#x16
+ 371. http://www.columbia.edu/kermit/skermit.html
+ 372. http://www.columbia.edu/kermit/ckuins.html#top
+ 373. http://www.columbia.edu/kermit/ckuins.html#contents
+ 374. http://www.columbia.edu/kermit/ckermit.html
+ 375. http://www.columbia.edu/kermit/ck90updates.html
+ 376. http://www.columbia.edu/kermit/index.html