

kermit                       Command                       kermit




Remote system communication and file transfer

kkeerrmmiitt cc[bbeell _b_a_u_d _e_s_c _l_i_n_e]
kkeerrmmiitt rr[bbddffhhiilltt _b_a_u_d _l_i_n_e]
kkeerrmmiitt ss[aabbddffhhiillmmttxx _b_a_u_d _l_i_n_e] _f_i_l_e ...

kermit allows the user to communicate with a remote computer sys-
tem and  to transfer files between the  local and remote systems.
kermit can transfer ASCII or binary files of any length in either
direction.  The two computers must be able to contact each other,
such as through a serial line  or by modem over a telephone line,
and both systems must  have kkeerrmmiitt available.  The user must have
login privileges  on both systems and  appropriate permissions in
directories used for file transfer.

The kermit command line specifies a mode, followed without inter-
vening spaces  by optional flags, perhaps  followed by additional
arguments and files.  The three possible modes are as follows:


     cc       Connect the two systems so they can communicate
     rr       Receive files from the other system
     ss       Send each _f_i_l_e to the other system.


kermit normally  uses a default  communication line at  a default
baud rate; the defaults vary from system to system.  kermit norm-
ally strips  leading directory information from  the path name of
each file it  sends and converts the name to  upper case; it con-
verts the file name to lower case when receiving.

The following flags modify kkeerrmmiitt's normal behavior.

aa       Specify  complete path  names for  sending  and receiving
        files.  Used only with s mode.   The a flag requires file
        names in  pairs:  first the  file  to be  sent, then  the
        receiving file.  For example, the command

                kermit sa /usr/joe/stuff.c /usr/tom/src/thing.c

        sends the file /usr/joe/stuff.c but specifies its name as
        /usr/tom/src/thing.c for the receiving  system.  The tar-
        get directory must exist on the  receiving system.  The a
        flag implies  the  use of  the  f and  x flags  described
        below.

bb _b_a_u_d  Set the baud rate of the port to baud.

dd       Debug mode.  Tell kermit to  print messages that describe
        its actions.  Message appear on  the standard output, not
        the standard error.

ee _e_s_c   Change the escape character  from the default `^' to esc;
        used only with  c mode.  The escape  character marks com-


COHERENT Lexicon                                           Page 1




kermit                       Command                       kermit



        mands to  kermit  c  while it  is  running, as  described
        below.

ff       Suppress conversion of the case of file names.

hh       Host mode.   Tell kermit  to use the  same line  for file
        transfer and for  communication; used with either  r or s
        mode on the remote system only.   When invoked with the h
        flag, kermit resets the line modes  properly when it com-
        pletes a file  transfer.  If you  do not use  the h flag,
        kermit will probably leave the remote system line in raw,
        no-echo mode.

ii       Image mode.   Tell kermit to  send a full  eight-bit byte
        for each character; this is  necessary to transfer binary
        (non-ASCII) files.  If you use i  flag when sending, also
        use it on the receiving system.

LL       Log all kermit commands into file Log.

ll _l_i_n_e  Use line.  For example, the command
                kermit clb /dev/tty50 1200

        tells kermit to  use line tty50  at 1200 baud  instead of
        the default line and baud rate.

mm       Macintosh mode.  Necessary when sending files to an Apple
        Macintosh; used only with s mode.

tt        Tymnet  mode.   Allows  Tymnet  to  keep  up  with  file
        transmission.

xx       Allows the  specification of a complete  pathname for the
        receiving file; used only with s  mode.  For example, the
        command

                kermit sx mydir/stuff

        sends  the  file   mydir/stuff  to  mydir/stuff   on  the
        receiving system.  The target directory must exist on the
        receiving system and the user  must have write permission
        in it.

kermit  c recognizes  two escape  sequences.  The  default escape
character `^' can be changed with the e flag, as noted above.

^cc      Exit from kermit and break the connection between the two
        systems.  This notation  does _n_o_t mean  <ccttrrll-CC>; rather,
        you must literally type the escape character (by default,
        a carat `^') and then the letter `c'.

^ss      Suspend kermit on the host  system but do not hang up the
        line.




COHERENT Lexicon                                           Page 2




kermit                       Command                       kermit



Unlike some file transfer protocols, kermit requires that you in-
voke it  on both the sending and receiving  systems to transfer a
file.  As  shown in the example below, you  normally use kermit c
to connect to the remote system, invoke kermit with the h flag in
either  send or  receive  mode on  the remote  system only,  type
``^s'' to  suspend the local kermit c,  and finally invoke kermit
in receive or send mode on the local system.

The following  example demonstrates the  use of kermit.   The ex-
ample assumes the user is  already logged in on the local system.
The communication  line is /dev/com2 and runs  at 2400 baud.  The
user wants to transfer  locfile to the remote system and  remfile
from the remote system.  System names are in italics on the left,
user input is in Roman, system responses are in bold, and remarks
are in parentheses.


_l_o_c_a_l   kermit clb /dev/com2 2400(connect to remote system)
_l_o_c_a_l   kkeerrmmiitt: ccoonnnneecctteedd...     (type a carriage return)



_r_e_m_o_t_e  CCoohheerreenntt llooggiinn:          (perform login procedure)
_r_e_m_o_t_e  kermit shi remfile       (send from remote)
_r_e_m_o_t_e  )SS~_@XX#TT                 (part of protocol, ignore)
_r_e_m_o_t_e  ^s                       (suspend local kkeerrmmiitt)



_l_o_c_a_l   kkeerrmmiitt: ssuussppeennddeedd.
_l_o_c_a_l   kermit rilb /dev/com2 2400(receive on local)
_l_o_c_a_l   kkeerrmmiitt: RReecceeiivviinngg RREEMMFFIILLEE aass rreemmffiillee
_l_o_c_a_l   kkeerrmmiitt: ddoonnee.
_l_o_c_a_l   kermit clb /dev/com2 2400(connect again)



_r_e_m_o_t_e  kermit rhi               (receive on remote)
_r_e_m_o_t_e  ^s                       (suspend local kkeerrmmiitt)



_l_o_c_a_l   kkeerrmmiitt: ssuussppeennddeedd.
_l_o_c_a_l   kermit silb /dev/com2 2400 locfile(send from local)
_l_o_c_a_l   kkeerrmmiitt: SSeennddiinngg llooccffiillee aass LLOOCCFFIILLEE
_l_o_c_a_l   kkeerrmmiitt: ddoonnee.
_l_o_c_a_l   kermit clb /dev/com2 2400(connect again)



_r_e_m_o_t_e  <ctrl-D>                 (log off the remote system)
_r_e_m_o_t_e  CCoohheerreenntt llooggiinn:
_r_e_m_o_t_e  ^c                       (disconnect local kkeerrmmiitt)




COHERENT Lexicon                                           Page 3




kermit                       Command                       kermit





_l_o_c_a_l   kkeerrmmiitt: ddiissccoonnnneecctteedd.


***** See Also *****

commands
Kermit:   A file-transfer protocol  for universities,  BYTE, June
1984 pp. 255_f_f, July 1984 pp. 143_f_f

***** Diagnostics *****

kermit may print the following error messages:

Aborting with following error from remote host
     Problem appeared on receiving system.

Bad line speed
     Transmission was attempted at an illegal baud rate.

Cannot create _n_a_m_e
     The receiving  system cannot create _n_a_m_e.   Confirm that you
     have write permission on the receiving system.

Cannot open file _n_a_m_e
     The sending system cannot open _n_a_m_e.  Either you do not have
     read permission  on the sending  system, or the  file is not
     present in the named directory.

Cannot open _l_i_n_e
     An incorrect _l_i_n_e number was specified.

No line specified for connection
     The _l_i_n_e argument missing after the -ll option.

Receive failed
     The file  being sent was not received; this  could be due to
     any one  of a number  of reasons.  Check  that everything is
     functioning normally, and then try to send the file again.

Send failed
     The requested file was not sent.

Speed setting not implemented
     An unimplemented baud rate was selected for the -bb option.

Yes, I'm still here...
     The connect command was repeated.

***** Notes *****

If you type kermit c and get the message kkeerrmmiitt ccoonnnneecctteedd but the
remote system does not  respond, check the line that connects the
two  systems and  the ability  of the remote  system to  accept a


COHERENT Lexicon                                           Page 4




kermit                       Command                       kermit



login on the line.

The file transfer  protocol uses small (96-character) checksummed
packets, with  ACK/NAK responses from the  receiving system.  The
timeout  period is  five  seconds, and  kermit  does ten  retries
before it abandons an attempted file transfer.

The  kermit protocol  was  developed at  the Columbia  University
Center for  Computing Activities.  Tymnet is  a trademark of Tym-
share, Inc.















































COHERENT Lexicon                                           Page 5


