                                                                      
                                   
                                   
                                   
                                 JNOS
                                   
                                 and
                                   
                                JNOS40
                                   
                           COMMANDS MANUAL
                                   
                                   
                       (Document ID:  JN_CMD02)
                                   
                                   
                                   
                   (C)1993 Johan. K. Reinalda, WG7J
                                 and
                      Douglas E. Thompson, WG0B
                                   
                                 for
                          JNOS release 1.10
                          February 28, 1994
                                  &
                         JNOS40 release 1.00
                          February 28, 1994
                                   
                                   
                                   
                                   
             (based in part on the NOS Reference Manual,
                          by Phil Karn, KA9Q
                                 and
                   Gerard van der Grinten, PA0GRI)
                                   
                                   
                                   
                                   
                              DISCLAIMER
                          -----------------
        The authors makes no guarantees, explicit or implied,
     about the functionality or any other aspect of this product.
                                   
          Refer to the manuals provided by the manufacturer
            of your equipment for installation procedures.
                                   
                                   








JNOS and JNOS40 Commands Manual   28 February 1994      Page 1

                    .c.COPYRIGHTS AND TRADEMARKS;



Data Engine, D4-10, DVR2-2, DE1200 and DE9600 are Trademarks or
Registered Trademarks of Kantronics Co., Inc.

Unix is a Registered Trademark of AT&T.

NET.EXE program (C) Copyright 1992 by Phil R. Karn, KA9Q.

JNOS and JNOS40 are based on work (C) Copyright 1991 by Phil R. Karn,
KA9Q, and other contributors.

JNOS (C) Copyright 1994 by Johan K. Reinalda, WG7J

JNOS40 (C) Copyright 1994 by Johan. K. Reinalda, WG7J

MS-DOS is a registered trademark of Microsoft, Inc.

NET/ROM software (C) Copyright 1987 Software 2000, Inc.

NET/ROM is a trademark of Software 2000, Inc.

OS/2 is a registered trademark of International Business Machines,
Inc.

Windows 3.0, Windows 3.1, and Windows NT are all registered trademarks
of Microsoft, Inc.

JNOS and JNOS40 Commands Manual, (C) Copyright 1994 by Johan K.
Reinalda, WG7J, and Douglas E. Thompson, WG0B.
























JNOS and JNOS40 Commands Manual   28 February 1994      Page 2

                        .c.TABLE OF CONTENTS;
.Begin Table C.
COPYRIGHTS AND TRADEMARKS                                  2
TABLE OF CONTENTS                                          3
INTRODUCTION                                               5
TERMINOLOGY                                                7
STARTING JNOS                                              8
STATUS DISPLAY                                             9
SYSTEM COMMANDS                                           10
<CR>                                                      12
!                                                         12
#                                                         12
?                                                         12
abort [<session #>]                                       12
add <other command>                                       12
arp                                                       13
asystat                                                   14
at                                                        15
attach                                                    16
attended [off | on]                                       20
ax25 <subcommands>                                        20
callserver [<hostname> <port>]                            27
coldboot                                                  27
connect <iface> <destination> [<digi1,digi2...digin>]     28
convers <subcommands>                                     28
delete <filename>                                         31
delete <line#>                                            31
domain <subcommand>                                       31
dump <hexaddress | .> [range]                             35
errors [ON | off]                                         35
exit                                                      35
help  or  ?                                               35
hostname [<name>]                                         35
icmp <subcommands>                                        36
iface <iface> <function> <call>                           37
ifconfig [<subcommand>]                                   37
index [<areaname>]                                        41
info [<infomessage>]                                      41
ip <subcommand>                                           41
keep <other command>                                      42
leds [on|off]                                             43
look [user | socket#] (/<cmd>) (                          43
mbox [<subcommands>]                                      43
memory <subcommands>                                      49
mode <iface> [vc | datagram]                              51
motd ["message"]                                          52
netrom <subcommands>                                      52
nntp                                                      57
nrstat                                                    57
param <iface> [<param>]                                   57
password <newpassword>                                    58
ping <host> [<timeout>]                                   58
ports                                                     59



JNOS and JNOS40 Commands Manual   28 February 1994      Page 3

ps                                                        60                       TABLE OF CONTENTS (cont)

remote password <password>                                61
restart                                                   61
rip <subcommand>                                          61
route [<subcommand>]                                      69
rspf <subcommand>                                         71
session [<session#>]                                      71
shell                                                     72
skick <socket#>                                           73
smtp <subcommand>                                         73
socket [<socket#>]                                        75
start <servers...>                                        75
status                                                    75
stop <server...>                                          75
sysop [<hostname|ip addr>] [port]                         75
tail <filename>                                           76
tcp <subcommand>                                          76
trace [<iface> [off | <btio>]                             78
udp status                                                79
write <username|sock#> <message>                          79
writeall <message>                                        79
Bibliography                                              80



APPENDIX A    JNOS MAILBOX USER COMMANDS                  84
APPENDIX B    JNOS40 NODE USER COMMANDS.                  93
APPENDIX C    Designing ATTACH Commands                   96
APPENDIX D    FTPUSERS PERMISSIONS                        98
APPENDIX E    REWRITE File                               100
APPENDIX F    FTP Session Commands                       104
APPENDIX G    FORWARD.BBS                                107
.End Table C.






















JNOS and JNOS40 Commands Manual   28 February 1994      Page 4

                           .c.INTRODUCTION;     

     This document combines the JNOS and JNOS40 command sets into a
single document.  This manual is current as of the versions indicated
on the title page.  Prior versions of commands or commands which have
been deleted are not included.  Also, this document addresses only the
commands that are available in the WG7J distribution compile  (uses
distconf.h)  Information about commands for other modules which are
not included in the "standard" WG7J compile may be found in the
"history" or "readme" files.

     There are now two manuals for JNOS and JNOS40:

     The COMMANDS Manual      (this document)
     JNOS40 Configuration Guide
     
     The user interface for JNOS is very similar to most of the well-
known BBS programs.  The user interface for JNOS40 is very similar to
the G8BPQ, TheNet and NetRom based nodes.  This is to provide an easy
transition for users.  The user interface in the JNOS program is
commonly called the 'mailbox'.  Since JNOS40 doesn't provide any mail
services, the terms 'node shell' or simply 'node' seem more
appropriate.  These terms will be used interchangeably throughout this
document when describing JNOS40 commands and will appear in
descriptions of JNOS commands which are common with JNOS40.  The
JNOS40 commands use the same syntax as JNOS as much as possible to
allow ease of movement for sysops working on both types of systems.

     This Commands Manual contains the commands and their descriptions
for using and operating a JNOS or JNOS40 tcp/ip and ax.25 packet
switch, BBS, and network node.  Also contained in this manual is
information about the FORWARD.BBS, REWRITE, ALIAS, and USERS files
used in a JNOS installation.  There is substantial information of use
to anyone operating packet station using tcp/ip in the "JNOS40
Configuration Guide" as well as in the History and README.NOW files.
You are encouraged to obtain those files for reference purposes.

     Questions, remarks and suggestions about JNOS and JNOS40 are
welcome and should be sent to:

        Johan Reinalda, WG7J/PA3DIS
        420 NW 9th
        Corvallis, OR 97330
        U.S.A.

        email: johan@ece.orst.edu (or wg7j@wg7j.ampr.org.)
        (or the sloooower WG7J@WG7J.OR.USA.NA via packet)









JNOS and JNOS40 Commands Manual   28 February 1994      Page 5

     or for the documentation only:     
        Doug Thompson, WG0B
        PO Box 21108
        Wichita, KS 67208-7108
        
        email:  wg0b@delphi.com  (or thompsond@awsil5.boeing.com)
        or packet  wg0b@k0hyd.#scks.ks.usa.na
        
     Corrections (and comments) to the documentation must include the
following information:

     1) Document ID  (See the Title Page)
     
     2) Page Number
     
     3) Text as it exists
          This does not have to be the complete text.  But it must be
          enough to ensure unambiguous identification of the area
          under discussion.
          
     4) Text as it is proposed to be or an explanation of the problem
     which I will convert into appropriate text.
     
     
     DO NOT send a copy of the whole document with revisions scattered
throughout.  I have neither the time nor the inclination to wade
through that much text.

     

     Send the corrections to WG0B at one of the addresses on the
preceding page.  If it comes to the PO Box, please ensure you send it
on floppy disk, IBM format.

     

     The documents have been prepared using Microsoft Word Version
5.0.  Submittals using MS Word 4.0 or 5.0 format, plain ASCII text, or
Rich Text Format (RTF) (supported by WordPerfect) are all easily
handled
















JNOS and JNOS40 Commands Manual   28 February 1994      Page 6

.c.TERMINOLOGY;
     Here are some of the abbreviations and terminology used
throughout this manual.

HOSTNAME is the tcp/ip name of a computer or packet system.

INTERNET is a worldwide high speed computer network. It has thousands
of computers at schools, companies and amateur packet radio systems
connected to it.

MTU, or Maximum Transmission Unit, is the maximum data size in one
packet.  Most often the data referred to by MTU is the transported
data, i.e. data frame in a network connection.  With tcp/ip, the size
of the tcp/ip frame inside the ax.25 packet is the MTU; with net/rom,
the size of the data inside the netrom packet is the MTU.

NRS, or Net/Rom Serial protocol, is what TNCs with Net/Rom or TheNet
eproms talk on the serial port.

NODE, NODESHELL, MAILBOX are terms used interchangeably for the user
interface when connected to the system.

PACLEN, or packet length, is most often used to refer to data size in
a link packet.  The data in an ax.25 packet can be up to paclen bytes.

PORT or INTERFACE means the physical connection to a radio or other
system (i.e. radio port or serial interface).  These two terms are
used interchangeably.

RFCs, or Requests For Comment, are standard papers used on Internet to
discuss and propose new networking protocols and other related topics.

RSPF,  or Radio Shortest Path First, is a tcp/ip routing protocol
especially targetted at radio environments.

RTT, or Round Trip Time, indicates the time needed for data to be sent
and acknowledged.

SLIP, or Serial Line IP, is a way to send IP frames over a serial port
without using ax.25 or ethernet to carry the data.  You can use SLIP
to connect to PCs or Unix systems also running SLIP, and interchange
tcp/ip data.














JNOS and JNOS40 Commands Manual   28 February 1994      Page 7

.c.STARTING JNOS;
     There are several command line options which can be exercised
when starting JNOS.  These commands are used to set environment
variables, select configuration and autoexec files, and other
functions.  Options should be separated by tabs or spaces.  If there
is an option argument, there should NOT be any whitespace between the
option and the argument.  The only option not preceded by '-' is the
alternate startup file

     -b          : Use direct video for the screen output.
     -c#         : Set the number of COLUMNS on the screen to #.
     -drootdir   : Set the root directory for the configuration file
                 :  path.  This is overwritten by the file specified
                 :  in the -f option configuration file.
     -e          : Pause after each error line in autoexec.nos
     -ffile.cfg  : Set JNOS configuration file and path names as
                 :  indicated in the file 'file.cfg'
     -l          : Do NOT delete .lck files on startup
     -mn         : Set the default screen swap mode.
                 :   n = 0 Use EMS  (If compiled in and available.)
                 :           Default is EMS Available
                 :   n = 2 Use memory.  (Default if NO EMS available.)
                 :   n = 3 Use a temporary disk file
     -n          : No trace session
     -r#         : Set the number of ROWS on the screen to #
     -s#         : Set the number of sockets available (Default is 40)
     -t          : trace the autoexec.nos file. You will be asked
                 : before each if you want to execute it. 'y' accepts,
                 : anything else skips the line.
     -v          : Verbose.  Print each line from autoexec.nos before
                 :   parsing.
     -u#         : Set the number of status lines. Valid values 0-3
     -wf+b       : Set foreground/background colors for system status
                 :     default: white on magenta
     -xf+b       : Set foreground/background colors for session status
                 :     default: white on blue
     -yf+b       : Set foreground/background colors for 'main' window
                 :     default: the system colors when jnos starts.
                 :     (most often lightgray on black) :
     -zf+b       : Set foreground/background colors for 'split' window
                 :     default: white on green
                 : 0=black
                 : 1=blue
                 : 2=green
                 : 3=cyan
                 : 4=red
                 : 5=magenta
                 : 6=brown
                 : 7=white/gray
     
     autoexec.new: Name of the startup file. Default is 'autoexec.nos'
                 :  or as set with -fnos.cfg




JNOS and JNOS40 Commands Manual   28 February 1994      Page 8

.c.STATUS DISPLAY;

JNOS now has a (up to) 3-line status display which shows:

On the first line:

time, heap and core free memory, number of connections to the
different servers.  Then a list of active sessions, where sessions
with data waiting are blinking.

The 2nd line shows:

     the users connected to the bbs. A status symbol in front means
     one of the following:
     
       none - user is idle
          * - user is a bbs
          @ - user is in sysop mode
          ! - user has gatewayed out
          # - user is reading or sending mail
          = - user is transfering data (up/download)
          ^ - user is in convers or sysop-chat mode
          ? - use is in none of the above, but not idle...
     
       Eg: BBS: *w0rli johan #ka7ehk !n7ifj
     
     (lines 1 and 2 are the 'system' window)

On the 3rd line is data depending on the current session.

     Always displayed are the current session number and type.
     
     If the sessions are network connections, displayed are remote
     connection name,  tx-queue (bytes for tcp, packets for ax.25),
     and state of the connection.  It then shows the retry timer, with
     current time left, and initial value.

     In 'repeat', 'more' or 'look' sessions, the 3rd line show the
     command, filename  or user/socket for the session.

     The command session 3rd line shows the current directory.
     (the 3rd line is the 'session' window)

     The number of status lines displayed can be set with the '-z#'
commands line option. '-z0' turns it off. Default is '-z3'

NOTE: if tracing is enabled, this will 'bleed' through the status
       window.

     This is NOT a bug, but is inherent to the way tracing works in
     JNOS. (It would take a major rewrite to fix.) The status window
     will be rebuilt about twice a second to overcome this.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 9

     .c.SYSTEM COMMANDS;

     This section describes the commands recognized. Syntax is:

          command
          command literal_parameter
          command subcommand <parameter>
          command [<optional_parameter>]
          command a | b

     Many commands take subcommands, parameters, or both, which may in
turn be optional or required. In general, if a required subcommand or
parameter is omitted, an error message will summarize the available
subcommands or required parameters.  (Giving a '?' in place of the
subcommand will also generate the message.  This method is useful when
the command word alone is a valid command.)  If a command takes an
optional value parameter, issuing the command without the parameter
generally displays the current value of the variable. (Exceptions to
this rule are noted in the individual command descriptions.)

     Two or more parameters separated by vertical bar(s) '|' denote a
choice between the specified values.  When one of the choices is
default, that choice will be in UPPERCASE.  Optional parameters are
shown enclosed in [brackets].  Parameters enclosed in <angle brackets>
should be replaced with actual values or strings. The generic notation
for number values is <nnnn>, and for string values, it is <string_id>.
For example, the notation <hostname> means the actual host or gateway
callsign or id.  Numerical defaults are explicitly stated as such,
e.g., "Default = 7."

     All commands and many subcommands may be abbreviated.  You only
need type enough of a command's name to distinguish it from others
that begin with the same series of letters.  Parameters, however, must
be typed in full.

     All commands are printed in bold (if you have the version of this
document that supports fancy formatting), and most commands have an
example following the textual description of the commands.  Commands
or descriptions unique to one program or the other are annotated with
{JNOS} or {JNOS40}.

     When JNOS40 is in the Data Engine, many variables are kept in
battery backed ram.  They are protected against corruption by a 16 bit
CRC.  If the CRC is valid, the value or state of these variables will
be maintained across power outages or warm restarts.  This is only
true if the variables are not re-set in the startup configuration.
These variables are marked with '(B)' at the beginning of  their
command description. For example, if you set the tcp retries value to
0, if will be still 0 after a power down or warm restart.  If the
conference server was stopped, it will not be restarted after a power
down or warm restart.  However, if your startup configuration contains
a line 'start convers', the server will be started!  To override this,
either change it from remote sysop mode, or use the 'add' command to



JNOS and JNOS40 Commands Manual   28 February 1994      Page 10

add the 'stop convers' to the configuration. (see the 'add' commandfor more).























































JNOS and JNOS40 Commands Manual   28 February 1994      Page 11

     The following section contains the comprehensive set of commands
for JNOS and JNOS40.  Commands unique to one system are annotated with
{JNOS} or {JNOS40}, as appropriate.

.c.<CR>;                                               {JNOS}

     Entering a carriage return (empty line) while in command mode
puts you in converse mode with the current session.  If there is no
current session, Nos remains in command mode and reissues the 'net>'
prompt.


.c.!;                                                  {JNOS}

     An alias for the shell command.


.c.#;

     Commands starting with the hash mark (#) are ignored. The hash
mark is mainly useful for comments in the autoexec.nos.

     {JNOS40} The CFG.EXE program eliminates lines beginning with the
'#' when building the image files for the eproms.

     

.c.?;

     Same as the 'help' command.

     

.c.abort [<session #>];                                {JNOS}


     Abort a FTP get, put or dir operation in progress. If issued
without an argument, the current session is aborted.  (This command
works only on FTP sessions.) When receiving a file, abort simply
resets the data  connection; the next incoming data packet will
generate a TCP RST (reset) response to clear the remote server.  When
sending a file, abort sends a premature end-of-file.

     Note that in both cases abort will leave a partial copy of the
file on the destination machine, which must be removed manually if it
is unwanted.

     

.c.add <other command>;                                {JNOS40}

     (B)  The add command allows you to add commands to the
configuration after the system is up and running.  <other_command> is



JNOS and JNOS40 Commands Manual   28 February 1994      Page 12

a valid command line which will be executed and then stored inbattery-backed RAM.  Next time the system restarts, all commands put
in eprom with the cfg.exe program will be executed followed by any
commands saved with the 'add' command.  'add' with no arguments will
display the commands stored.  Each line will show a line number that
should be used if you want to delete the line with the 'del' command.

          To add another ip route after the system is started and have
          it be remembered after the next power outage or warm
          restart:
          
          add route add 1.2.3.4 1
          
.c.arp;

     Display the Address Resolution Protocol table that maps IP
addresses to their subnet (link) addresses on subnetworks capable of
broadcasting.  For each IP address entry the subnet type (e.g.,
AX.25), subnet address and time to expiration is shown. If the link
address is currently unknown, the number of IP datagrams awaiting
resolution is also shown.

    arp add <hostid> ax25 | netrom <callsign> <iface>  {JNOS40}

     or
     
    arp add <hostid> ether | ax25 | netrom | arcnet
    <ether_addr>|<callsign> <iface>                    {JNOS}

     Add a permanent entry to the table. It will not time out as will
an automatically created entry, but must be removed with the 'arp
drop' command.

          arp add 44.26.0.19 ax25 wg7j-2 port1
    

    arp drop <hostid> ax25 | netrom <iface>            {JNOS40}

     or
     
    arp drop <hostid> ether | ax25 | netrom | arcnet <iface>    {JNOS}

     Delete a permanent entry from the arp table.

          arp delete 44.26.0.19 ax25 port1
    

    arp eaves [<iface>] [on | OFF]

     Display or set the 'arp eavesdrop' function per interface. If
set, all arp replies overheard on the interface will be logged in the
arp table. This speeds up arp discovery, but might build a huge arp
table taking up lots of memory.  Default for each interface is off.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 13

          # Set arp eavesdrop on interface port1          arp eaves port1 on
          
          
    arp flush

     Drop all automatically-created entries in the ARP table;
permanent entries are not affected.

     

    arp maxq [n]

     Display or set the maximum number of packets to be buffered
waiting for an arp resolution to finish. {JNOS} Default = 5.  {JNOS40}
Default = 2.

          arp maxq 5
    

    arp poll [<iface>] [on | off]

     Display or set the 'arp keepalive polling' per interface.  If
set, when an arp entry expires, a query will be sent for the address.
This keeps the arp table fresh, but possibly retains many unneeded
entries.

          arp poll port1 on
          
    arp publish <hostid> ax25|netrom <callsign> <iface>

     This command is similar to the 'arp add' command, but the system
will also respond to any ARP request it sees on the network that seeks
the specified address.  (Use this feature with great care!)

          arp publish 44.26.1.19 ax25 wg7j-2 port1
    

    arp sort [ON | off]                                {JNOS}

     Sorts the arp display
     
     
.c.asystat;                                            {JNOS}

     Display statistics on attached asynchronous communications
interfaces (8250 or 16550A), if any.  The display for each port
consists of three lines.  The first line gives the port label and the
configuration flags; these indicate whether the port is a 16550A chip,
the trigger character if any, whether CTS flow control is enabled,
whether  RLSD (carrier detect) line control is enabled, and the speed
in bits per second.  (Receiving the trigger character causes the
driver to signal upper layer software that data is ready; it is




JNOS and JNOS40 Commands Manual   28 February 1994      Page 14

automatically set to the appropriate frame end character for SLIP, PPPand NRS lines.)

     The second line of the status display shows receiver (RX) event
counts:  the total number of receive interrupts, received characters,
receiver overruns (lost characters) and the  receiver  high water
mark.  The high water mark is the maximum number of characters ever
read from the device during a single interrupt.  This is useful  for
monitoring system  interrupt  latency margins as it shows how close
the port hardware has come to overflowing due to the inability of the
CPU to respond to a receiver interrupt in time. 8250 chips have no
FIFO, so the high water mark  cannot  go higher  than  2  before
overruns occur. The 16550A chip, however, has a 16-byte receive FIFO
which the software programs to interrupt  the CPU when the FIFO is
one-quarter full.  The high water mark should typically be 4 or 5 when
a 16550A is used; higher values indicate that the CPU has at least
once been slow to respond to a receiver interrupt.

     When the 16550A is used, a count of FIFO timeouts is also
displayed  on the RX status line.  These are generated automatically
by the 16550A when three character intervals go by with more than  0
but  less than 4 characters in the FIFO.  Since the characters that
make up a SLIP or NRS frame are normally sent at full line speed, this
count will usually be a lower bound on the number of frames received
on the port, as only the last  fragment of a frame generally results
in a timeout (and then only when the frame is not a multiple of 4
bytes long.)

     Finally, the software fifo  overruns  and  high  water  mark  are
displayed.  These indicate whether the <bufsize> parameter on the
attach command needs to be  adjusted  (see  the  Attach  Commands
chapter).

The third line shows transmit (TX) statistics, including a  total
count of transmit interrupts, transmitted characters, the length of
the transmit queue in bytes, the number of status  interrupts, and
the number of THRE timeouts. The status interrupt count will be zero
unless CTS flow control or RLSD  line  control  has  been enabled.
The  THRE  timeout  is  a stopgap measure to catch lost transmit
interrupts, which seem to happen when there is a lot  of
activity (ideally, this will be zero).


.c.at;                                                 {JNOS}

     The 'at' command is used to provide automatic starting of other
JNOS commands at predetermined times.

    at time <cmd>

     
     time  takes the form     yymmddhhmm
                              hhmm
                              mm



JNOS and JNOS40 Commands Manual   28 February 1994      Page 15


  Attaching the Data Engine's serial port.


                              now+hhmm
     
     <cmd> is any legal JNOS command.  Multiple word commands must be
     enclosed in double quotes (" ").  Commands which invoke the DOS
     shell must include 'c/' as the first argument in order for the
     shell to be exited and NOS to be re-entered automatically.
     
     
    at k <id_num> <id_num>

     This form of the 'at' command kills jobs <id_num>...


.c.attach;

    attach <1|2|3|axip|kiss|pkiss|netrom> [options]    {JNOS40}

     Attach an interface to the Data Engine.  See also the section
     ATTACHING INTERFACES.
     Syntax is:

    'attach 1 <mode> <name> <buffer> <mtu> <speed> [c]'

     where:

     mode      - is one of 'ax25', 'pkiss', 'slip' or 'nrs'
     name      - is the interface name, e.g. 'port1'
     buffer    - is the receive buffer size
     mtu       - is the maximum transmission unit
     speed     - any common speed from 300 - 38400 Bd.
     c         - forces use of hardware handshaking except
                 for mode='pkiss' (G8BPQ polled-kiss)

Note: 19200 and higher is not very reliable if you use DE9600 modems,
due to a hardware design limitation.

See also the 'attach kiss' command

          attach 1 ax25 port1 512 256 9600













JNOS and JNOS40 Commands Manual   28 February 1994      Page 16


     Attach the Data Engine's internal radio ports

     The modem type in each port is automatically sensed when a port
is attached. Modem types A,B and D have been tested. Modem type C is
supported, but currently has not been tested.  Syntax is:

    'attach <2|3> <name> <mtu> <speed> [f][n]'         {JNOS40}

     where:

     2|3       - is one of the Data Engine internal ports
     name      - is the interface name
     mtu       - is the maximum transmission unit.
     speed     - is the radio speed.
     [f][n]    - are optional parameters. 'f' indicates full duplex
                 and 'n' is the value written to the mode AUX pins.
                 This is used in the Kantronics 1200Bd modem to choose
                 the type of CD circuitry to be used.

          attach 3 port2 256 1200 2
          attach 2 port2 1024 9600 f
          attach 2 port3 256 1200 f1

     Note: full duplex is not yet supported on port B.


Attaching the ports on a PC

    attach <hw_type> <io_addr> <vector> <mode> <label> <bufsize> <mtu>
    [<speed>]                                               {JNOS}

     Configure and attach a hardware interface to the system. Detailed
instructions for each driver are in the Attach Commands chapter.  An
easy way to obtain a summary of the parameters required for a given
device is to issue a partial attach command (e.g., attach asy). This
produces a message giving the complete command format.

        <hw_type> is the kind of I/O device being attached to the
        system.
        <io_addr> is the base address of the control registers for the
        device.
        <vector>  is the interrupt vector number.  Both the address
        and the vector must be in hexadecimal.  You may put "0x" in
        front of the numbers, but they will be interpreted in
        hexadecimal even without the prefix.
        <mode>    controls how IP datagrams are to be encapsulated in
        the device's link level protocol.
        Choices are ax25 or slip.

     slip      Encapsulates IP datagrams directly in SLIP frames
     without a link header.  This is for operating point-to-point
     lines and is compatible with 4.28BSD UNIX SLIP.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 17

          ax25      Similar to slip, except that an AX.25 header and a KISS
     TNC control header are added to the front of the datagram before
     SLIP encoding.  Either UI (connectionless) or I (connection-
     oriented) AX.25 frames can be used.
        
        <label>   defines the name by which the interface will be
        known to various commands, such as "connect", "route",
        "trace", etc.
        
        <bufsize> For ASYNCHRONOUS PORTS, specifies the size of the
        ring buffer in bytes to be statically allocated to the
        receiver; incoming bursts larger than <bufsize> may cause data
        to be lost.
        For ETHERNET, specifies how many PACKETS may be queued in the
        receive queue at one time.  Excess packets will be discarded
        as they are received.  This is useful to prevent the system
        from running out of memory should another node suddently
        develop a case of diarrhea.
        
        <mtu>     is the Maximum Transmission Unit size in bytes.  See
        the System Configuration Manual for a discussion of the effect
        of MTU on system performance.

    attach asy <io_addr> <vector> <mode> <label> <bufsize> <mtu>
    [<speed>]                                          {JNOS}

     Configure and attach a standard PC asynchronous I/O port using
the National 8250, 16450, or 16550 chip or equivalent to the system,
where:

        <io_addr> is the comm port address; e.g., com1 = 0x3f8
        <vector>  is the comm port IRQ value.
        
    attach axip <iface> <mtu> <ipaddress> [<callsign>]

     Create a RFC1226 compatible AX.25 frame encapsulator for
transmission of AX.25 frames over the IP.  This command is used to
establish a point-to-point AX.25 'tunnel' between two systems.


        <iface>   will be the name of the new interface,
        <mtu>     is the maximum transmission unit for the interface,
        <ipaddress> is the address of the system on the other side of
        the 'tunnel,
        <callsign> is the optional AX.25 callsign this station is
        listening on for frames to digipeat. Note that if you want
        cross-tunnel digipeating to work, each attached axip interface
        should listen to a different callsign.  These should also be
        different from other callsigns used on this station.
          
          attach axip axip1 256 44.26.1.19 WG7J-15
          
          



JNOS and JNOS40 Commands Manual   28 February 1994      Page 18

    attach pkiss <iface> <mtu> <ipaddress> [<callsign>]
     Attach a serial port in G8BPQ polled kiss mode.
     
     To attach other TNCs to be polled on the same port, attach them
     as additional kiss devices (see below).  They will automatically
     be polled.
     
    attach kiss <asy_iface_label> <port> <label> [mtu]

     Attach a second kiss interface on the serial port. This command
     allows the use of multiport TNCs.
     
        <asy_iface_label>   is the name of the serial port interface.
        <port>    is the port number (1-15) to use, and probably
        should be 1. (the original asy port is automatically port 0 !)
        <label>   is the name for this second kiss port.
        <mtu>     is an optional mtu, if different from the mtu on the
        first kiss port.

          # Attach a dualport tnc in kiss mode.
          # Ports are labelled 'port1' and 'port2'
          
          # First, attach the serial port on the Data Engine
          
          attach 1 ax25 port1 512 256 9600              {JNOS40}
          
          # or
          
          # Attach a PC asynch port (com1 in this example)
          
          attach asy 03f8 4 ax25 port1 512 256 9600     {JNOS}
          
          # Attach the second port on the multiport tnc
          
          attach kiss port1 port2
          
    

    

    attach netrom                                      {JNOS}

    attach netrom [ipaddress]                          {JNOS40}

     This makes available a pseudo interface to enable NET/ROM
operations.  This command is automatically executed when the netrom
server is started with the 'start netrom' command.  In JNOS40, the
netrom server is started by default and you do not have to
specifically attach the netrom interface in the autoexec file.

     [ipaddress] is an optional ip address for the netrom interface.
If not set, the system 'ip address' will be used.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 19

         attach packet                                      {JNOS}

     Driver for use with separate software "packet drivers" which
     conform to the FTP Software, Inc., Software Packet Driver
     specification.
     
    attach scc                                         {JNOS}

     PE1CHL driver for generic 8530 cards
     
     
.c.attended [off | on];                                {JNOS}

     Displays or sets the global "I am present" flag in NOS.  This
flag is used in the welcome header for incoming ttylink connections.

     
     
.c.ax25 <subcommands>;

     All AX.25 parameters are configurable per interface.  Commands of
     the form 'ax25 <command>' set the default or global values.  Use
     the 'ifconfig <iface> ax25 <command>' form to set or show the
     specific interface values.
     
     To set the system default ax.25 parameters, you must do so BEFORE
     attaching interfaces.  After attaching, you must use the 'ifconf
     <iface> ax25' command form.
     
    ax25 alias <aliascall>

     The alias command shows or sets the system's alias call. If
     netrom is enabled, this modifies the same call as the 'netrom
     alias' command.  The 'ax25 alias' command is NOT needed in that
     case!  If netrom is not used, this command allows an alias name
     to be set  such that users can connect to it.
     
     
    ax25 bbscall <bbs_call>                            {JNOS}

     For all interfaces NOT set to <mycall> or <bbs_call>, change or
     set the id to 'bbscall'.  'ax25 mycall' will not override bbscall
     once bbscall has been set.  See also 'iface <iface> bbscall
     <bbs_call>'.
     
          #Example: (in the following order)
          
          'ax25 mycall <mycall>'
          'attach <(all interfaces)>'
          'ax25 bbscall <bbscall>'      sets all ifaces to bbscall
          
          or
          



JNOS and JNOS40 Commands Manual   28 February 1994      Page 20

          'iface <name> bbscall <bbscall>'   sets only iface <name>     
    ax25 bc <iface>

     The bc command  forces an immediate broadcast on the given
     interface.  The particular interface or port must have been
     enabled with the ax25 bcport command first. If this is so, the ID
     will be broadcast as set with the ax25 bctext commands.
     
          ax25 bc port1
    

    ax25 bcinterval [<seconds>]

     (B)  The bcinterval displays or sets the time in seconds between
     broadcasts.  On display, both the interval and the countdown
     values are shown. Default = 600 (10 minutes).
     
     
    ax25 bcport [<iface>] [on | OFF]  (Deleted in 110x16)

     Display or set the active interfaces for ax.25 broadcasting (i.e.
     beacons).  You must add this statement for each port that the
     system should beacon on.  Default is off.
     
          ax25 bcport port1 on
          
          
    ax25 bctext ["broadcast text"]

     Display or set the default text to be sent for broadcast messages
     sent out every ax25 bcinterval seconds.
     

     See also 'ifconfig <iface> beacon ["bctext"].

          ax25 bctext "This is the beacon text!"
          
          
    ax25 blimit [<secs>]

     (B)  Display or set the default AX25 retransmission backoff
     limit.  Normally each successive AX25 retransmission is delayed
     by twice the value of the previous interval; this is called
     binary exponential backoff.  When the backoff reaches the blimit
     setting it is held at that value.  Default = 30.
     
     To prevent the possibility of "congestive collapse" on a loaded
     channel, blimit should be set at least as high as the number of
     stations sharing the channel.  Note that this is applicable only
     on actual AX25 connections; UI frames will never be retransmitted
     by the AX25 layer.
     
          #Set ax25 blimit to 15 seconds



JNOS and JNOS40 Commands Manual   28 February 1994      Page 21

          ax25 blimit 15          
          
    ax25 digipeat [<iface>] [ON | off]

     Display or set digipeating per interface. If cross-band or AXIP
     digipeating is to be allowed, digipeating must be enabled on both
     interfaces involved.  Default is on.
     
          # Display digipeat status of port1
          ax25 digipeat port1
          
          
    ax25 ecall <callsign>                              {JNOS40}

     Set or display and "emergency" callsign to be used as described
     under the 'ax25 etext' command which follows.
     
    ax25 etext [<your text>]

     If you connect a monitor signal to the serial port RTS pin, when
     the RTS pin is pulled LOW (less than approximately 2 volts) this
     condition can be used to define an emergency state meaning that
     the node is operating on emergency or backup power.  While in
     this state, every 5 minutes the node will transmit an ax.25 UI
     ("broadcast") packet containing the 'etext' message on all ax.25
     interfaces if 'ax25 ecall' is set.
     
     Users connecting to the node alias or via telnet will receive the
     'etext' message as part of the logon.  'motd' and 'info' will
     also append the 'etext' message.
     
     If the emergency condition ceases, broadcasting stops and etext
     is not displayed as part of other messages.
     
          Example:
          
          ax25 ecall pwrdwn
          ax25 etext "System is running on backup power.  Please
          contact sysop!"
          
     Note:  This feature was added after an area sysop had a node die
     after 24 hours of operation on emergency power.  Prior to
     shutdown, there was no indication of the problem.
    ax25 flush

     Clears the AX.25 "heard" list (see ax25 heard and ax25 hport)
     

    ax25 heard [<iface>]

     Display the AX.25 "heard" list. For each interface that is
     configured to use AX.25 heard listing (see 'ax25 hport'), a list
     of all ax25_source addresses heard on that interface is shown,



JNOS and JNOS40 Commands Manual   28 February 1994      Page 22

     along with a count of the number of packets heard from each     station and the time since each station was last heard. The
     maximum length of the heard table can be set with the 'ax25
     hsize' command.  If interface is given, only the heard list for
     that interface is displayed.
          ax25 heard port1
          
          
    ax25 hport [<iface>] [ON | off]

     Display or set the status of the ax.25 heard feature.  If no
     interface is given, all interfaces with ax.25 heard enabled will
     be listed.  If interface is given, the status of ax.25 heard for
     that interface is shown.  Default is on.
          
          #Display port1 status
          ax25 hport port1
          
          
    ax25 hsize [<size>]                                {JNOS}

     Set or display the size of the heard list table.  Default is 0
     which means no limit.
     
     
    ax25 irrt [<milliseconds>]

     (B)  Display or set the initial value of smoothed round trip time
     to be used when a new AX25 connection is created.  The actual
     round trip time will be learned by measurement once the
     connection has been established.  Default is 5000ms.
          #Set irtt to 10 seconds  (10000 milliseconds)
          ax25 irtt 10000
          
          
    ax25 kick <axcb>

     Force a retransmission on the specified AX.25 control block.  The
     control block address can be found with the ax25 status command.
     This is useful to reactivate connections that have long time-out
     values.
     

    ax25 maxframe [<count>]

     (B)  Establish the maximum number of frames that will be allowed
     to remain unacknowledged at one time on new AX.25 connections.
     This number cannot be greater than 7. Without <count> it will
     display the current setting. Note that the maximum outstanding
     frame count only works with virtual connections. UI frames are
     not affected. Also note that for optimal performance, a value of
     1 should be used.  Default is 1 frame.
     




JNOS and JNOS40 Commands Manual   28 February 1994      Page 23

     
    ax25 maxwait [<msec>]

     Sets a limit (in msec) to the retry timeout values.  Default =
     30000 (30 secs).  A value of 0 disables maxwait.
     
     
    ax25 mycall [<ax25call>]

     Display or set the default local AX.25 address.  The standard
     format is used, (e.g. WG7J or KA7EHK-5).  This command must be
     given before any attach commands using AX.25 mode are given.
          
          ax25 mycall wg7j-3
          
          
    ax25 paclen [<size>]

     (B)  This sets the default paclen used when attaching interfaces
     that will carry AX.25 connections. See also 'ifconfig <iface>
     paclen'. Default is 256 bytes.
     This parameter limits the size of I-fields on new AX.25
     connections.  If IP datagrams or fragments of datagrams larger
     than paclen are transmitted, they will be transparently
     fragmented at the AX.25 level, sent as a series of I frames, and
     reassembled back into a complete IP datagram or fragment at the
     other end of the link.  IP datagrams will not be affected if this
     parameter is greater than or equal to the MTU of the associated
     interface.
     If NET/ROM communication is configured, the NetRom MTU value
     should be Paclen - 20. !!!  The Net/Rom header takes 20 bytes,
     and is part of the AX25 data.  Default netrom mtu is 236.
     
     Note1:  the AX.25 Level 2 Version 2 definition specifies a
     maximum paclen of 256 bytes. Some systems are not equipped to
     handle larger packets (e.g. G8BPQ based systems), so be careful
     when using this parameter.
     
     Note2:  see also the discussion on paclen, mtu etc., elsewhere in
     the document.
     

    ax25 pthresh [<size>]

     (B)  Display or set the poll threshold to be used for new AX.25
     Version 2 connections.  The poll threshold controls
     retransmission behavior as follows. If the oldest unacknowledged
     I-frame size is less than the poll threshold, it will be sent
     with the poll (P) bit set if a time-out occurs. If the oldest
     unacked I-frame size is equal to or greater than the threshold,
     then a RR or RNR frame, as appropriate, with the poll bit set
     will be sent if a time-out occurs.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 24

     The idea behind the poll threshold is that the extra time needed     to send a "small" I-frame instead of a supervisory frame when
     polling after a time-out is small, and since there's a good
     chance the I-frame will have to be sent anyway (i.e., if it were
     lost previously) then you might as well send it as the poll.  But
     if the I-frame is large, send a supervisory (RR/RNR) poll instead
     to determine first if retransmitting the oldest unacknowledged I-
     frame is necessary; the time-out might have been caused by a lost
     acknowledgment.  This is obviously a tradeoff, so experiment with
     the poll threshold setting. The default is 128 bytes, one half
     the default value of <paclen>
     

    ax25 reset <axcb>

     Delete the AX.25 connection control block at the specified
     address. This deletes a connection and everything associated with
     it. The control block address can be found with the 'ax25 status'
     command.
     

    ax25 retries [<count>]

     (B)  Limit the number of successive unsuccessful retransmission
     attempts  on  new AX.25  connections.  If this  limit is
     exceeded, link re-establishment is attempted.  If the link can't
     be re-established in <count> times, then the connection  is
     abandoned and all queued data is deleted.  Default is 5.
          
    ax25 route [<subcommand>]

     Without optional subcommands, display the AX.25 routing table
     that specifies the digipeaters to be used  in reaching a given
     station.


       ax25 route add <target> <iface> [digis ...]

        Add an entry to the AX.25 routing table.  An automatic 'ax25
        route add' is executed if digipeaters are specified in an AX25
        link from the node or a connection is received from a remote
        station via digipeaters.  Such automatic routing table entries
        won't override locally created entries, however. <target> is
        the destination call to reach via digipeaters <iface> is the
        interface this is a route for.(I.e. allows different digi
        routes for different interfaces.) [digis...] is a list of one
        or more digipeaters, separated by spaces.
          
          ax25 route add k7uyx-1 port1 wg7j wa7tas n7dva
          
          
       ax25 route drop <target> <iface>

        Drop an entry for <target> from the AX.25 routing table.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 25

                    ax25 route drop k7uyx-1 port1
          
          
       ax25 route mode <target> <iface> [vc|dg|interface]

        Sets the interface ip mode to one of  vc | datagram |
        interface for target.  This indicates how ip links to the
        destination call <target> should be established.  If nothing
        is given for a certain destination or target, the interface
        default mode is used, which defaults to datagram.  (See also
        the 'mode' command).
        vc        is a virtual circuit (ax25 connected mode, meaning
                  that ip frames are sent using ax.25 connections)
        datagram  is unconnected mode, (AX25 UI frames).
        interface is the default interface mode, as set with the
                  'mode' command.
        
          ax25 route mode k7uyx-1 port1 vc
          
    ax25 status [<axcb>]

     Without an argument, display a one-line summary of each AX.25
     control block.  If the address of a particular control block is
     specified, the contents of that control block is shown in more
     detail. Note that the send queue units are frames, while the
     receive queue units are bytes.
     
    ax25 t3 [<milliseconds>]

     (B)  Display or set the AX.25 idle "keep alive" timer. Value is
     in milliseconds. Default is 0, i.e. no 'keep-alive' polling.
     

    ax25 t4 [<seconds>]

     (B)  Display or set the AX.25 Link "redundancy" timer. Value is
     in seconds. When no exchange has been had during this time the
     link is reset and closed. Default = 900 seconds (15 minutes).
     

    ax25 timertype [LINEAR|exponential|original]

     (B)  Sets or displays the type of timer used for retransmission
     and recovery.  Linear means that each retry will use a time-out
     that is RTT greater then the previous time-out. I.e. 4 sec, 8
     sec, 12 sec, 16 seconds etc.  Exponential means that each retry
     will use a time-out that is twice as large as the previous time-
     out. I.e. 4 seconds, 8 seconds, 16 seconds, 32 seconds etc.
     Original means that each retry will use a time out that is twice
     the RTT, i.e. 4 seconds, 8 seconds, 8 seconds, 8 seconds, etc.
     Default is linear.
     
          ax25 timertype exponential



JNOS and JNOS40 Commands Manual   28 February 1994      Page 26

              ax25 ttycall [ttycall]                             JNOS}

     Set or display the tty-link call for direct keyboard access.
     Remember to have both 'attended on' and 'mbox attend on' to be
     able to use this function.
     
     
    ax25 version [n]

     (B)  Display or set the version of the AX.25 protocol to attempt
     to  use  on  new connections.  Version 1 is the version that does
     not use the poll/final bits.  Default is version 2.
     

    ax25 window [<size>]

     (B)  Set the number of bytes that can be pending on an AX.25
receive queue  beyond which  I  frames will be answered with RNR
(Receiver Not Ready) responses. This presently applies only to
suspended interactive  AX.25  sessions,  since incoming  I-frames
containing  network (IP, NET/ROM) packets are always processed
immediately and are not placed on the receive queue.  However, when an
AX.25 connection carries both interactive and network packet traffic,
an RNR generated because of backlogged interactive traffic will also
stop network packet traffic from being sent.  Default is 512 bytes.

     

.c.callserver [<hostname> <port>];

     This will show or configure the host and portnumber that will be
used for the 'CAll' command. Node shell users give the 'CAll' command
access a remote network callbook server.  To see the current server,
simply type callserver.  To configure one use the full form.  If a
hostname is used instead of dotted decimal ip address, be sure that
this name is either in the domain.txt file, or a valid domain name
server has been configured already.

     

cbaud [<2400 | 4800 | 9600>]                           {JNOS40}

     Set or display the serial port baud rate for the console
connection.  Valid values are 2400, 4800, or 9600 baud.

     

.c.coldboot;                                           {JNOS40}

     Coldboot is an IMMEDIATE command (i.e. no 'are you sure?
warning...) to restart the system.  The system will 'cold-boot'. All
variables in battery backed ram will be reset to the original  values




JNOS and JNOS40 Commands Manual   28 February 1994      Page 27

in EPROM.  All links and connections to or through the node  will beimmediately lost.

comm <asy_iface> <"text_string">

     Sends "text_string" via the specified asynch interface to the
TNC.  Normally, this command is used to place the TNC in KISS mode.
Any number of 'comm' commands may be entered, one per line, with
"text_string" in the syntax required by the TNC.  Use the 'param'
command after the TNC is in KISS mode.

connect <iface> <destination> [<digi1,digi2...digin>] [d]
[e]].c.connect <iface> <destination> [<digi1,digi2...digin>];

     Initiate an ax25 connection at interface <iface> to
<destination>.  Use the "ports" command when in the mailbox or
nodeshell to discover the proper id of <iface>.  <destination> may be
either callsign-ssid or an alias.  Note that there is only a 'space'
between <destination> and <digi...>.

     [d] disables the 'stay here' feature on node connections.  If 'd'
is not placed at the end of the connect command, the circuit will stay
open to the last node connected to.  'stay here' default is ON.

     [e] is the 'escape enabling' switch.  In order for JNOS to abort
a netrom connection in progress, the escape character must be sent to
the node.  Default escape character is CTRL-T.  While in the mailbox
or nodeshell, the user may disable escape or change the escape
character or both.

     Examples:
          
          c rlimb e     -> connect to w0rli's bbs with escape
                              enabled. 'stay' is on
          c 3 wg7j-2 d  -> connect to wg7j-2 on port 3, don't stay
                              connected afterward
          c salem ed    -> connect to salem, with escape checking but
                              no 'stay'.  c salem de works the same.
          
.c.convers <subcommands>;

     These commands configure the network conference server. See the
section 'SETTING UP THE CONFERENCE BRIDGE' for details on the inner
workings of the conference system.

     

    convers drop <name>

     Drop the remote convers link to <name>.  See also 'convers link'.

          convers drop 44.26.1.19
          
          



JNOS and JNOS40 Commands Manual   28 February 1994      Page 28

    convers filter                                     {JNOS}
     Set how the convers node will respond to connect requests.
     
       convers filter mode [accept | refuse]

        Sets or displays the filter mode.  'filter mode accept' allows
        links from only the hosts in the filter list.  'filter mode
        reject' allows links from all hosts except those in the list.
        
       convers filter [ipaddress | hostname]

        Builds the filter list used in conjunction with the 'convers
        filter mode' command.
        
    convers host <name>

     Displays or set the convers hostname as will be used when
     announcing the system to conference users or remote links.
     Maximum length is 10 chars, but if you want to stay compatible
     with NOS.EXE based convers servers use a maximum of 8 character
     for the convers host name (unless the system runs jnos-v1.04 or
     later).
     
     If the 'hostname' gets set and the 'convers host'  isn't set yet,
     it will be set to the first 10 chars of the 'hostname'. After
     this, if any sub domains (i.e. periods) exist in the hostname,
     the convers hostname will be terminated at the right-most period.
     e.g. If  'converse host' is not set, and 'hostname
     jnos.wg7j.ampr.org' is given, then after this the converse
     hostname will be 'jnos.wg7j'.
     
          convers host Corvallis
          
          
    convers interface [<iface>] [on|OFF]

     Displays or sets the active convers interfaces. This command
     needs to be given for each interface that which will allow
     connections to the conference call (see 'convers mycall'); e.g.,
     this command can be used to allow conference call access only on
     the user ports but not on the backbone/linking ports.  This can
     also be useful to avoid confusion when different nodes have the
     same conference call.  (Locally, we use the call 'QSO' for the
     conference server for different nodes, and ran into problems when
     a user tried to connect to it from a backbone node. All of a
     sudden two nodes were answering the connect !)  Default is off.
     
          convers interface port1
          
          
    convers link <addr> [name]

     Add a convers link to another (remote) conference server.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 29

          <addr> is the ip address or hostname of the remote server to link
     to.
     [name] is the optional name that will show up in the links
     listing shown with the '/links' command if the link has not yet
     been established. [name] can be a maximum of 10 characters.
     
     After the link has been established, the name will be set to the
     name the remote system introduced itself with.  The link command
     will automatically add an entry for this host into the 'refuse-
     list' (See 'convers refuse' command.)  This is to avoid dual
     links, and convers loops.
          convers link 44.26.1.19 Testing
          
          
    convers maxq [<bytes>]                             {JNOS40}

    convers [u|h]maxq [<bytes>]                        {JNOS}

     Display or set the upper limit for the number of bytes that can
     be queued up waiting for transmission on a connection to another
     server.  If there is more data than this limit, the connection to
     the other server will be closed.
     
     {JNOS}  You are able to set individual limits for users and hosts
     with 'convers hmaxq' and 'convers umaxq'.  If set to 0, there is
     no limit, otherwise connections will be reset if there is more
     than the []maxq value data outstanding on the connection.  The
     connections will be RESET instead of gracefully closed.
     
     Default is 2048 bytes.
     
          convers maxq 1024


    convers maxwait [<seconds>]

     Display or set the upper limit for the time the system will wait
     to reestablish a disconnected convers link that originated at
     this system. Time is given in seconds.
          convers maxwait 600
          
          
    convers motd ["<yourmessage>"]

     Set or show the message of the day for the convers server.  This
     message is displayed when users connect to the server.
     
     
    convers <mycall>

     Display or set the 'conference call'.  'mycall' is a separate
     ax.25 callsign.  If set, users can connect to it to get
     immediately connected to the conference bridge. However, each



JNOS and JNOS40 Commands Manual   28 February 1994      Page 30

     port or interface that this call should be allowed on should be     enabled with the 'convers interface' command.  Conference call
     connections bypass the regular node interface.  This is
     independent from the settings of 'mbox convers' or whether the
     network conference server has been started. See also 'convers
     t4'.
          convers mycall QSO
          
          
    convers refuse <addr>                              {JNOS40}

     Refuse link-requests from <addr>.  This is primarily intended to
     avoid loops. An entry on this list is automatically created when
     you add a link with the 'convers link' command.
     
          convers refuse 44.26.1.19
          
          
    convers t4 [<seconds>]

     (B)  Display or the set the conference call connection T4 timer.
     t4 is the 'redundancy timer' for ax.25 connections to the
     conference server.  This allows you to set a different inactivity
     time-out for ax25 node and conference connections. Default is
     7200, i.e. 2 hours.
          convers t4 900
          
          
.c.delete <filename>;                                  {JNOS}

     Deletes the specified file.  <filename> may include a complete
path.  Functions the same as the DOS Delete command.

.c.delete <line#>;                                     {JNOS40}

     The delete command will delete the specified line number from the
configuration lines stored in battery backed ram with the 'add'
command. To show the line numbers, execute the 'add' command.

          delete 4
          
          
.c.domain <subcommand>;

     The domain commands control and show the working of the name  to
Internet address  mapping software.  JNOS40 has both a network client
and server.  The server will answer queries from data in the domain
cache, and from information stored in the rom DOMAIN.TXT file.

     

    domain addserver <hostid> [<timeout>]

     Add a domain name server to the list of name servers.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 31

          {JNOS}  <timeout> is an optional timeout setting in seconds for
     this server.  If <timeout> is not included in the command, the
     value defaults to 3 * (tcp_irtt).
     
          Example:  domain addserver wg7j.ece.orst.edu 30
     
     Note:  {JNOS40} When this command is first given in the startup
     'file', the <hostid> can be either a name or an ip address.  If a
     name is used, be sure that a valid address record exists in the
     rom DOMAIN.TXT file!!!  Otherwize, the ip address should be used
     instead of the hostname.  (If not, since no servers are setup
     yet, JNOS40 will not know how to resolve the name! )
     
          domain addserver 128.193.48.1
          domain addserver ucsd.edu
          
          
    domain cache <subcommand>

     Following commands work on the domain cache. These are resource
     records held in memory. (described in  RFC1033/1034)
     
       domain cache clean [<yes | NO>]

        Displays or sets the discard of expired resource records.
        Expired records have their time-out value decremented to zero.
        Normally resource records get a default time-out value of 1800
        seconds.  After this time they are  considered "old" and if
        referenced again the domain name resolver should be inquired
        again.  When clean is off (the default), expired records will
        be retained; if no replacement can be obtained from another
        domain name server, these records will continue to be used.
        When clean is on, expired records will be removed from the
        file whenever  any new record is added to the file.
          domain cache clean yes
          
          
       domain cache dump

        Immediately clears the domain cache
        
        
       domain cache list

        This command shows the current content of the in-memory  cache
        of  resource records.
     

       domain cache size [<size>]

        (B)    Display or set the maximum size of the local  in-memory
        domain cache. Default is 5.
          domain cache size 10



JNOS and JNOS40 Commands Manual   28 February 1994      Page 32

                    
    domain dns [on|off]

     (B)  Display or  toggle the state of the Domain Name Server.  If
     on, the system is active as a Domain Name Server. The system will
     then answer queries from other tcp/ip hosts regarding hostname to
     ip-address, and ip-address to hostname translations.  For more
     information, see the section SETTING UP THE DOMAIN NAME SYSTEM.
     

    domain dropserver <hostid>

     Remove a domain name server from the list of name servers.   You
     are  warned when you delete the last name server.
          domain dropserver ece.orst.edu
          
          
    domain listservers

     List the currently configured domain name servers, along with
     statistics  on how  many  queries  and  replies  have been
     exchanged with each one, response times, etc.
     
    domain maxwait [<time-out>]

     (B)  This sets a time-out value (1 to 255 seconds) to a query or
     domain name server.   This is not set for an already defined
     server but will be used for a newly defined name server.  Also
     the value is used for domain name lookups (E.g. when a user does
     a telnet to a host with the nodeshell 'T host' command).  Note
     that (PC based) name servers can have trouble finding records in
     a large database.  Default is 60 seconds.
     
          domain maxwait 10
          
          
    domain retries [<retries>]

     (B)  The retry value (number) limits the number of queries  sent
     out to remote domain  name resolvers before giving up and telling
     you that host xyzzy.ampr.org does not exist.  The total time lost
     with a query is (retries * time-out * number of domain servers
     defined); i.e., the delay between requesting a hostname to ip-
     address translation and getting the answer can become very long
     if you use many servers, and set the time-outs/retries high !
     Default is 2.
     
          domain retries 1


    domain subnet [on | off]                           {JNOS}





JNOS and JNOS40 Commands Manual   28 February 1994      Page 33

     This command works in conjunction with 'domain translate' to     allow or disallow translation of any address ending in 0 or 255.
     On systems which have a lot of subnets, turning off subnet
     translation can result in a considerable speedup when displaying
     routes with 'domain translate on'.
     
    domain suffix [<domain suffix> | none]

     Display or specify the default domain name suffix to be appended
     to a host name when it contains no periods.  For example, if the
     suffix is set to "ampr.org." and the user enters 'telnet ka9q',
     the domain resolver will attempt to  find 'ka9q.ampr.org.' If the
     host name being sought contains one or more periods, however, the
     default suffix is NOT applied if the last part of the name is
     less than 5 characters and contains only letters; e.g., 'telnet
     foo.bar' would NOT be turned into 'foo.bar.ampr.org.' 'telnet
     foo.ka9q' will be turned into 'foo.ka9q.ampr.org.' Note  that a
     trailing dot (.) is required for the suffix.  If the suffix is
     the string 'none' (without trailing period), the current suffix
     is cleared and forgotten.  Default is "ampr.org."
          domain suffix ece.orst.edu.


    domain trace [on| OFF]

     (B)  Display or set the flag controlling the tracing of domain
     server requests and responses.  This only works when console is
     enabled.  Default is off.
     
          domain trace on
          
          
    domain translate [on | OFF]

     (B)  Display or set the flag that controls the translation of  ip
     addresses in dot notation into symbolic names.  The translation
     process makes heavy use of reverse domain name lookups.  Do not
     set this flag unless you have a good and fast connection to a
     domain name server.
     
          domain translate on
          
          
    domain ttl [ttl]                                   {JNOS}

     Select a default 'ttl' value to be applied to server responses
     than contain none.
          
          
    domain update [on | off]                           {JNOS}

          
     Controls whether or not domain.txt file is updated with server
     responses.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 34

              domain verbose [on | off]

     (B)  Display or set the flag controlling the return of a full
name (on) or only the first name (dot delimiter) (off).  This is for
IP address to name translation only.  If off, home.wg7j.ampr.org. will
show as 'home.wg7j', whereas if on it will show as
'home.wg7j.ampr.org'

          domain verbose off
          
          
          
.c.dump <hexaddress | .> [range];

     The dump command shows memory in hex and ascii. Hex-address is a
32-bit value split into page address and page offset. A splitting
colon is not used nor accepted.  If decimal-range is not given , 128
bytes  are  displayed.  'dump .' displays memory starting at the end
of a previous dump command.  This command is primarily useful for
debugging.

          dump 12fe0008
          
          
          
.c.errors [ON | off];                                  {JNOS}

     Set whether the system will send messages about system errors and
permission infringements to user 'sysop'.  Default is on.

     

.c.exit;

     {JNOS40} When in remote sysop mode (after connection to the
node), returns the sysop to the node shell

     {JNOS}  Causes the JNOS program to terminate when at the NET>
prompt.  When shelled to DOS, causes a return to the NET> prompt.
When terminating the program, an "Are you sure?" query is given.
Enter "y(es) <cr>" to end the program.  Any other response returns to
JNOS.



.c.help  or  ?;

     Display a brief summary of top-level commands.



.c.hostname [<name>];




JNOS and JNOS40 Commands Manual   28 February 1994      Page 35

     Display or set the local host's name. By convention this shouldbe  the  same as  the  host's primary domain name. This string is used
only in the greeting messages of the various network servers;  note
that  it  does  NOT  set  the system's IP address.

          hostname crv.kuyx.ampr.org.


.c.icmp <subcommands>;

     These commands are used for the Internet Control Message Protocol
service.

     

    icmp echo [ON | off]

     (B)  Display or set the flag controlling the asynchronous
     display  of  ICMP  Echo Reply packets.  This flag must be on for
     pings to work.  Default is on.
     

    icmp quench [on | OFF]                             {JNOS}

     With 'icmp quench off', when a packet is received and memory
     available < threshold, the packet will be dropped (i.e., no
     quench or anything.)  The higher protocol layers will keep track
     of re-transmitting the dropped packets.
     
     With 'icmp quench on', when packets are received and the high
     water mark for dynamically allocatable storage has been exceeded,
     JNOS submits an ICMP Source Quench to the originator.  Usually,
     before the originator will have reacted to the source quench,
     JNOS's dynamically allocatable storage will have been exhausted.
     What happens after that is uncertain, but it is assumed to be
     unfavorable.  Many tcp/ip implementations don't even respond to
     Source Quenches at all.  See also 'memory threshold command.'
     
     Default is OFF.
    

    icmp status

     Display statistics  about  the  Internet  Control  Message
     Protocol  (ICMP), including the number of ICMP messages of each
     type sent or received.
     

    icmp timeexceed [<ON | off>]

     Allows 'time exceeded' message to be sent when the ttl of an ip
     packet to be routed becomes zero.  When turned OFF, no message is
     sent which allows the system to become invisible for
     'traceroutes', etc.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 36

          
    icmp trace [on | off]

     (B)  Display or set the flag controlling the display of ICMP
     error messages. These informational messages are generated by
     Internet routers in response to routing, protocol or congestion
     problems. This only functions when in console mode. Default is
     off.
     

.c.iface <iface> <function> <call>;

     The iface command is used to assign a callsign or alias or to
(re)set a flag on a specific port or interface after the interface is
attached.  Global assignments, i.e., setting a particular value on ALL
interfaces which do not already have a value assigned, are made using
<function> only.

.c.ifconfig [<subcommand>];

     If a valid subcommand is given, it will be executed (see below).
When no subcommand is given, display a list of interfaces, with a
short status for each.  See the 'ifconfig <iface>' command for a
description of the display.

     ALL ax25 and MOST tcp parameters are now configurable per
interface.  The 'ax25 <cmd>' commands set the system default values
and the 'ifconfig <iface> ax25 <command>' commands set or show the
interface specific value(s).  The 'tcp <cmd>' commands work in the
same manner.

     As a result of this change, 'ifconfig' NO LONGER takes multiple
commands on one line.  'ifconfig ln0 netmask ffffff00 broadcast
255.255.255.255' is invalid.  The command line must be separated into
two commands as: 'ifconfig ln0 netmask ffffff00' and 'ifconfig ln0
broadcast 255.255.255.255'

     

    ifconfig <iface> [<subcommands>]

     When only iface is given, the interface status is displayed.
     
     Interface status shows:
     
        IP addr - the ip address assigned to this interface
        MTU     - the maximum transmission unit for this interface.
        Link encap - the type of link protocol to send packets  with
                  over this interface (AX.25, NETROM etc.)
        Paclen  - if the interface is an AX.25 interface, this is the
                  Paclen used for connections on this interface
        flags   - interface flags, the sum of all the options set with
                  the various commands. See below.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 37

        netmask - the ip network mask. See elsewhere for a discussion.        broadcast - the ip broadcast address on this interface. Used
                  when doing arp, etc.
        sent ip - the number of ip packets sent on the interface
        sent tot- the total number of packets sent (i.e. ip, ax.25,
                  etc.)
        sent idle - the elapsed time this interface hasn't transmitted
                  any data.
        recv ip - the number of ip packets received on the interface
        recv tot- the total number of packets received  (i.e. ip,
                  ax.25, etc.)
        recv idle- the elapsed time this interface hasn't received any
                  data.
        descr   - a description of the interface

     Interface flag values are the sums of the following options, and
     can be set or unset (i.e. toggled) with the following commands
     (See their individual descriptions for more)

command           value                  description of flag
mode iface        DATAGRAM_MODE     0    /* Send datagrams in raw
                                            link frames */
                  CONNECT_MODE      1    /* Send datagrams in
                                            connected mode */
netrom interface  IS_NR_IFACE       2    /* Activated for netrom use
*/
                  NR_VERBOSE        4    /* broadcast routes verbose
*/
convers interface IS_CONV_IFACE     8    /* Activated for conference
                                            call access */
ax25 bport        AX25_BEACON       16   /* Broadcast AX.25 beacons */
mbox hide         HIDE_PORT         64   /* Don't show port in mbox
                                            'P' command */
ax25 digi         AX25_DIGI         128  /* Allow digipeating */
arp eaves         ARP_EAVESDROP     256  /* Listen to ARP replies */
arp poll          ARP_KEEPALIVE     512  /* Keep arp entries alive
                                            after time-out */
ax25 hport        LOG_AXHEARD       1024 /* Do ax.25 heard logging on
                                            this interface */
ip hport          LOG_IPHEARD       2048 /* Do IP heard logging on
this
                                            interface */


    ifconfig <iface> ax25 [<subcommand>]

     Sets the value for 'subcommand' per description in the ax25
     commands.  'ifconfig <iface> ax25' by itself displays the
     following list of parameters and their values:
     
          bctext
          blimit
          cdigi
          irtt



JNOS and JNOS40 Commands Manual   28 February 1994      Page 38

          maxframe          maxwait
          paclen
          pthresh
          retry
          timertype
          t3
          t4
          version
          window

    ifconfig <iface> broadcast <addr>

     Set the ip broadcast address of interface <iface> to <addr>.
     

    ifconfig <iface> cdigi <call>

     Set the 'crossband digipeater only' callsign.  If this call is
     set, digipeating works independently from the 'ax25 digipeat'
     setting.  Connections cannot be made to the cdigi call!
     
    ifconfig <iface> description "descr"

     This command sets the interface description to the string
     specified.  If no descr is supplied (i.e. ""), the current
     description will be cleared.  The description is displayed with
     the mailbox or nodeshell P command (if the interface wasn't
     hidden from that display).  It is also shown in the ifconfig
     command.
     

    ifconfig <iface> encapsulation <mode>

     Sets the encapsulation for interface iface to slip or ax25. This
     should never be needed, since it is automatically executed when
     interfaces are attached.
     

    ifconfig <iface> forward <iface-2>

     When a forward is defined, all output for interface <iface> is
     redirected to <iface-2>.  To remove the forward, set <iface-2> to
     <iface>.
     

    ifconfig <iface> ipaddress <addr>

     Set the IP address to <addr> for this interface. Normally the ip
     address is assigned from the system ip address when the interface
     is first attached. However, it might be necessary to change it
     when a system acts as a ip-gateway.
     




JNOS and JNOS40 Commands Manual   28 February 1994      Page 39

    ifconfig <iface> linkaddress <linkaddr>
     Set the hardware dependent address for this interface.  For AX.25
     this is the callsign.  If you want to allow cross band
     digipeating, give each port a different ax.25 call with this
     command.
     
     
    ifconfig <iface> mtu <num>

     Set the maximum transfer unit to <num> bytes.

     

    ifconfig <iface> netmask <address>

     Set the sub-net mask for this interface.  The <address> takes the
     form of  an IP  address  with 1's in the network and subnet parts
     of the address, and 0's in the host part of the address.  Sample:
     ifconfig  ec0  netmask  0xffffff00 for  a  class  C  network  (24
     bits).  This is related to the 'broadcast' subcommand.  See also
     the 'route' command.
     

    ifconfig <iface> paclen <num>

     Set the AX.25 paclen for this interface. This is useful if you
     want to use a value different from the default as set with the
     'ax25 paclen' command; e.g., if you have a port with an HF link,
     you might want to set it to 128.  You can also set it to greater
     than 256 if you have a high speed port.  (This command only works
     for interfaces that can carry AX.25 connections, i.e., it is not
     for SLIP interfaces, etc.)
     
     NOTE1:  The AX.25 V2 specification specifies a MAXIMUM of 256 for
     paclen. If you have a paclen > 256, you may run into problems
     when interfacing to other non-NOS systems (in particular G8BPQ-
     based systems.)
     
     NOTE2:  The value of paclen influences NETROM behavior if the
     interface is activated for netrom with the 'netrom interface'
     command!  If the paclen for this interface is smaller than any
     other (netrom active) paclen, the netrom mtu value will be set to
     this paclen - 20 !  This is to assure that you will not get
     fragmentation at the ax.25 level when trying to send large data
     packets over netrom connections.  AX.25 V2.1 fragmentation is
     presently handled only by NOS and derived code as far as is
     known.  Other systems, such as TheNet, BPQ, MSYS,  etc., may not
     include proper handling of V2.1 fragmentation.
     
     What the preceding means is, if you have a VHF port with paclen
     256, and an Hf port with paclen 128, and BOTH are active with
     netrom, the netrom mtu will be 108 !




JNOS and JNOS40 Commands Manual   28 February 1994      Page 40

    ifconfig <iface> tcp [<command>]

     Sets or displays the 'tcp' command parameters for <iface>.
     'ifconfig <iface> tcp' by itself displays the following list:
     
          irtt
          maxwait
          mss
          retries
          syndata
          timertype
          window
          
     OUTGOING tcp connections get the values for the interface on
     which the initial sync packet ('connect request') is routed out.
     INCOMING tcp connections get the values for the interface the
     initial request arrives on.
     
     System default TCP parameters must be set PRIOR TO attaching
     interfaces.  After attaching interfaces, use the 'ifconfig
     <iface> tcp' commands to set the interface.
     
     
.c.index [<areaname>];

     Causes the mailindex program to be run and re-establish the
     indexes for the mailbox.  'index *' indexes ALL mailbox files.
     
     
.c.info [<infomessage>];                               {JNOS40}

     This shows or sets the info message that will be shown when users
connect to the system alias, and by the user 'I' command.

          info "Corvallis area packet network controller, Vineyard Mt.
          1600Ft asl. Run by the OSU ARC"
          
          
.c.ip <subcommand>;

     These commands are used for the Internet Protocol service.


    ip address [<addr>]

     Display or set the default local IP  address.  This  command
     must  be  given before  an  'attach' command if it is to be used
     as the default IP address for the interface.

    ip heard

     Display the ip-heard list. This shows the recently heard tcp/ip
     systems. See also the 'ip hport' command.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 41

     
    ip hport [<iface>] [on | OFF]

     Display or set the ip-heard facility.  If no argument is given,
     show the interfaces on which ip-heard is currently active. If
     <iface> is given, shows the status of the ip-heard flag for the
     given interface. If <iface> <on|off> is given, it will set the
     flag on or off.   Default is off.
     
     If this flag is on, ip heard frames will be logged in a table.
     This table can be shown with the 'ip heard' command or with the
     nodeshell 'IHeard' command.  Ip-heard logging on ax.25 interfaces
     logs all ip stations heard on the port, even if the system wasn't
     directly involved in the ip activity.  For non-ax.25 interfaces,
     only ip frames that we were actively involved in (i.e. that we
     routed) are logged. (this difference is due to code internals)
     
          ip hport port1 on


    ip hsize [n]

     Display or  set the maximum size of  the Ip heard table. 0 means
     no limit.  Default=8
     

    ip rtimer [<seconds>]

     Display or set the IP reassembly time-out.  Default = 30 seconds
     

    ip status

     Display Internet Protocol (IP) statistics, such as total packet
     counts and error counters of various types.

    ip ttl [<hops>]

     (B)  Display or set the default time-to-live value placed in each
     outgoing IP datagram.  This limits the number of switch hops the
     datagram will be allowed to take.  The idea is to bound the
     lifetime of the packet should it become caught in a routing loop.
     You should make the value slightly larger than the number of hops
     across the network you expect to transit packets.  The default is
     set at compilation time to 255, the official recommended value
     for the Internet.

.c.keep <other command>;                               {JNOS40}

     (B)  The keep command allows you to add commands to the
configuration after the system is up and running.  <other command> is
a valid command line, which will be executed and then stored in
battery backed ram.  The next time the system restarts, all commands



JNOS and JNOS40 Commands Manual   28 February 1994      Page 42

put in eprom with the cfg.exe program will be executed.  Next anycommands saved with the 'keep' command will be executed. 'Keep' with
no arguments will show the commands stored.   Each line will show a
line number that should be used if you want to delete the line later
with the 'delete' command.

           #To add another ip route after the system is up, and
           #have it remembered after the next power outage,
          
          'keep route add 1.2.3.4 port1'

.c.leds [on|off];                                      {JNOS40}

     (B)  Toggle use of the status LEDs. Primarily intended to save
     power.

.c.look [user | socket#] (/<cmd>) (;                   {JNOS}

     This command allows peeking into a user session on the BBS or
into any non-local socket.  'look [user | socket#]' brings up a window
which follows the specified user or socket.  If looking in on a bbs
user, you can initiate a 'chat' session with that user.

       There are a few commands available:
     
       /? or /h - will show a sort help line
       /m <msg> - send a message to user. (only if 'looking' at user)
                  User sees: '<sysop>: message text'
     
       /c       - initiate a 'chat' with user. The bbs will suspend
                  while you talk with the user.
       /q or /b - if in 'chat' mode, finishes it and returns the user
                  to the bbs.
                  if in 'look' mode, finishes looking at user/socket.
     
     Note: if not in 'chat' mode, all non-command strings will be
     ignored.
     
     Looking at non-bbs sockets might be helpful debugging things or
     seeing what an ftp user or a smtp user is doing.
     
     Note that often you won't see what you expect: e.g., ftp user
     sockets don't show the data transfered including directory
     listings because data transfer occurs on a separate socket.
     (Not seeing it is NOT a bug, for once...8) )
     

.c.mbox [<subcommands>];

     Without a subcommand, display the current users of the nodeshell.
With a valid subcommand, it will execute the following commands.

     
    mbox alias [<alias>] ["cmd"]



JNOS and JNOS40 Commands Manual   28 February 1994      Page 43

     Set or show alias commands for the mailbox/nodeshell.  To use an     alias, the user must type the full alias which will then cause
     "cmd" to be executed.  If the user types 'A', a list of sysop-
     defined aliases will be displayed.  'alias' is 6 characters
     maximum.  "cmd" is 64 characters maximum.  Note that "cmd" is in
     double quotes.
     
     'mbox alias' displays the current aliases.
     'mbox alias <alias>' displays only <alias> if it is defined.
     'mbox alias <alias> <cmd>' adds, deletes, or redefines <alias>
        
        Example:  To add a new BBS command -
          
          mbox alias bbs "c port bbscall"
          
        To delete an alias-
          
          mbox alias myalias ""
          
        To redefine an alias-
        
          mbox alias bbs "c newport newbbscall"
     
    mbox attend [ON|off]                               {JNOS}

     This displays or sets the attend flag. If set, users can initiate
     chat with the sysop via the O)perator mailbox command.
     (You need to have started the ttylink server for this !)
     
     
    mbox bbsonly [iface] [on | OFF]                    {JNOS}

     Specify whether iface is only accessible to stations which have
     the BBS flag set.
     
     
    mbox convers [on|OFF]

     Display or set the access to the conference bridge.  The mailbox
     or nodeshell 'CONV' command is disallowed when off.  Default is
     ON.
     
    mbox fwdinfo [string]                              {JNOS}

     Displays or sets the string that is used in the BBS R: header
     when forwarding mail to other BBSes.
     
     
    mbox haddress [string]                             {JNOS}

     Displays or sets your system's hierarchical bbs address.  As of
     version 1.08, you must include the bbs call with the hierachical
     address.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 44

                    Example:
          mbox haddress wg7j.or.usa.na
     
     
    mbox header [on|OFF]                               {JNOS}

     Explicitly turns the R: line in the message header on or off.
     With mbox header off, regular users can forward from jnos to
     another system designated as a full-service bbs without leaving a
     trace to their system.  This avoids having a downstream bbs
     improperly identify the originating station as a bbs.
     
     The elements of the R: header are optional as of jnos107.  If not
     set the line will be empty.
     
     NOTE:  'mbox header off' also turns off 'mbox thirdparty.'


    mbox hideport [<iface>] [on | OFF]

     Display or set a port that should not be displayed when the 'P'
     command in the mailbox or nodeshell is given.  Display if
     available to users with sysop permissions.  This command is
     useful for ports that should be backbone linking only, etc.  Note
     that currently users can still do ax.25 connections via that
     port, if they know the name. Default is OFF, the port is
     displayed.

          mbox hideport port1 on
     

    mbox kick                                          {JNOS}

     This is an immediate command. It forces the system to start a new
     bbs forwarding cycle.
     
     
    mbox last                                          {JNOS40}

     Shows previous users of the nodeshell.
     
     
    mbox mailfor [interval]  and                       {JNOS}
    mbox mailfor exclude [areaname areaname ...]       {JNOS}

     Interval is in seconds.  At the end of each interval,  the system
     reads all non-area mailboxes and checks them for unread mail.
     Next, a beacon is sent on all active interfaces. (see 'mbox
     mport' command).  The beacon is addressed to the AX.25 address
     'MAIL'.  The data in this packet contains a list of the mailboxes
     with unread mail in the format 'Mail for: <user> ... '.  Systems
     such as LAN-LINK can trigger mail-snatches from this beacon.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 45

     'mbox mailfor' will show the status of the timer and list     mailboxes with unread mail.

     In certain cases you might not want a private area to show up in
     the mail beacon; e.g., private areas to be forwarded to another
     bbs.
     You can exclude areas from the beacon with the
          'mbox mailfor exclude' command.


     'mbox mailfor exclude area1 area2 area3 ...'
     
     will disable these area names from the beacon.  You can give
     multiple exclude commands to build the list.


     A simple 'mbox mailfor exclude' shows the list.


    mbox maxmsg [n]                                    {JNOS}

     This displays or set the maximum number of messages in a
     mailboxfile, for both private and public (i.e., area-) mail. If
     there are more than n messages, the user will only see the first
     n messages.
     
     
    mbox motd [string]                                 {JNOS}

     This displays or sets the message of the day which is displayed
     when regular users log on to the system.
     
     
    mbox mailstats                                     {JNOS}

     This command shows how many messages have been read and sent by
     users and how many messages have been received from and forwarded
     to BBSes.
     
     
    mbox mport [<iface>] [on | off]                    {JNOS}

     Displays or sets the interfaces for 'MAIL' beacons.  Set this
     flag for each port you want the mail beacon to be sent on.


    mbox newmail [ON|off]                              {JNOS}

     When ON, users will be notified during login which areas have new
     mail since the last time that user logged out.  This function
     uses a time stamp on a status file for each message area.  The
     information shown can later be repeated with the 'AN' mailbox
     command.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 46

         mbox nobid [on | OFF]                              {JNOS}

     Set whether to accept or refuse bulletins with NO BID.  Off means
     refuse if there is no BID.  On means accept regardless of BID.
     Default is OFF (refuse)
     
     
    mbox nrid [[ON|off]                                {JNOS}

     When set, the first time a user logs onto the system, the system
     will add the netrom node id in NODE:CALL format to the prompt.
     Users can then change it with the mailbox XN command. The system
     will use the new prompt format as set by the user the next time
     the user logs in.
     
    

    mbox past                                          {JNOS}

     Displays the users that have logged on since the system has been
     running.
     
     
    mbox password <newpassword>                        {JNOS}

     This sets a new remote sysop password.
     
    mbox prompt [ON | off]                             {JNOS}

     Turns the command prompt display of the current directory on or
     off.  Default is ON.
     
    mbox prompt [0|1|2|3|4|5|6|7]                      {JNOS40}

     The node prompt is configurable by selecting a value in the range
     0 to 7.
     
     0 = no prompt
     1 = netrom-id prompt     e.g.,  JNOS40:WG7J-1}
     2 = command prompt       e.g.,  ??,A,B,C,E...>
     3 = combined prompt      e.g.,  JNOS40:WG7J-1}??,A,B,C...>
     
     
    mbox qth [location]                                {JNOS}

     This displays or sets the location of your system, and uses it in
     the R: headers when doing bbs forwarding.
     
     
    mbox register [ON | off]

     Enable or disable user registration.  If the user gives an e-mail
     address during registration, messages sent will include a 'Reply-



JNOS and JNOS40 Commands Manual   28 February 1994      Page 47

     To:' header with that e-mail address.  Setting this command to     OFF will prevent the 'please register' message from being sent to
     new users.
     
     
    mbox secure [on |OFF]                              {JNOS}

     This displays or sets the mailbox secure flag. If set, only users
     coming on over netrom and ax25 connections can make gateway
     connects if they have the right priveleges. If not set, anyone
     with the right privs can do a telnet connect.
     
     
    mbox sendquery [ON|off]                            {JNOS}

     If on, users will be queried if they really want to send the
     message after they have typed the ^Z or /ex when sending a
     message. 'N' or 'n' will abort, anything else will send the
     message.
     
     
    mbox smtptoo [on | OFF]                            {JNOS}


     This displays or sets the smtp header flag.  If set, the system
     will include most smtp headers when forwarding the message via
     bbs forwarding.  When not set, the headers will be stripped
     (default).
     
     
    mbox stats

     Shows statistics on the number of logins, uplink and downlinks
     {JNOS40}.
     Displays the current users of the system {NOS}.
     
     
    mbox sysoponly [iface] [on | OFF]                  {JNOS}

     Specify whether port is accessible only by stations with SYSOP
     flag set.  Default is off.
     
     
    mbox timer [<nnnn>]                                {JNOS}

     Entering only the subcommand displays the forwarding setting and
     countdown timer value.  [<nnnn>] sets the interval between
     forwarding attempts in seconds.  Default = 0 (No forwarding).
     
     
    mbox tdisc [<nnnn>]                                {JNOS}






JNOS and JNOS40 Commands Manual   28 February 1994      Page 48

     This command sets the mailbox inactivity timer in seconds.  If no     user input has been received for nnnn seconds while connected to
     the mailbox, the user will be disconnected.  Default = 0 = no
     timeout.
     
     
    mbox thirdparty [on|OFF]                           {JNOS}

     Set or display whether 3rd party traffic may be handled through
     the mailbox.  Default is OFF.
     
     See also 'mbox header' command.
     
    mbox tmsg [<string>]                               {JNOS}

     Display or set the 'telnet message'.  This is the message sent to
     telnet connections before the login prompt is sent!
     
     
    mbox trace [on|OFF]                                {JNOS}

     This displays or sets the value of the trace flag. If set, the
     mailbox is verbose about certain aspects of the forwarding cycle.
     
     
    mbox utc [n]                                       {JNOS}

     Display or set the offset from UTC.  [n] is used to calculate the
     current time for the forwarding header.
     
     
    mbox zipcode [<nnnnn>]                             {JNOS}

     Set or display the system's postal zipcode.  This is used in the
     R: line when forwarding.
     
     
.c.memory <subcommands>;

     These commands are used for memory allocation.

     
    memory freelist

     Display the storage allocator free list.  Each entry consists of
     a starting segment, in hex, and a size, in decimal bytes.
     
     
    memory ibufsize [<size>]

     (B)  Display or set the size of the buffers in the  interrupt
     buffer  pool.   The size  should  be  set to the largest type of
     buffer plus a header size of 8.  For example: If your ax.25 is
     the only interface and a packet length of 512 is defined, the



JNOS and JNOS40 Commands Manual   28 February 1994      Page 49

     ibufsize  should  be 512 + 72 + 8 = 592 .  The 72 is the ax.25     header (source , destination, 8 digipeaters, 1 control byte and 1
     pid byte).  Default is 600.  See also the section on INTERFACE
     BUFFERS.
     
    memory minalloc [<bytes>]

     Set the minimum number of bytes to allocate per malloc() call.
     Setting a small value (32 or 64) might allow the realloc scheme
     to work more effectively by preventing excessive memory
     fragmentation.  Default = 0, no minimum allocation size.
     
     
    memory nibufs [<number>]

     (B)  Display or set the number of interrupt buffer pool buffers.
     If the number of buffers is set, the statistics in the 'memory
     status' display are reset for number of interrupt buffer fails.
     The minimum available value is set to the requested  number  of
     buffers.  A rule of thumb for the number of buffers is to watch
     the statistics and keep a minimum of 2  free  buffers.  Increase
     or decrease as required. Default is 10.  See also the section on
     INTERFACE BUFFERS.
     
     
    memory sizes

     Display a histogram of storage allocator requested sizes.  Each
     histogram bin is a binary order of magnitude (i.e., a factor of
     2).
     
     
    memory status

     Display a summary of storage allocator statistics.
     
     heap size 52560, avail 12880 (24%), morecores 150, coreleft 5872
     

     The first line shows the total size of the internal heap, the
     amount of memory available on the internal heap with the
     percentage of the total heap size, next the number of times
     memory has been requested from the Operating System, and the
     amount of memory the OS has left over.
     
     allocs 16706, frees 16389 (diff 317), alloc fails 0, invalid
     frees 0
     
     Next, the number of times memory has been allocated, and has been
     freed is shown.  The difference is the number of buffers
     currently allocated.  Alloc fails show up when the system is
     running out of memory resources.
     Invalid frees mean that memory was overwritten, and indicates the
     system is about to lose sanity...



JNOS and JNOS40 Commands Manual   28 February 1994      Page 50

          garbage collections yellow 0, red 0
     
     Garbage collections free memory from network control structures
     that could not have otherwise been freed.  Yellow garbage
     collections are started when the total available memory, i.e.
     avail+coreleft, becomes smaller then memthresh.  Red garbage
     collections indicate that available memory got below memthresh/2
     
     interrupts-off calls to malloc 0, free 0
     
     These should never be other then 0.  They indicate calls to the
     memory allocator with interrupts off.  These requests should be
     handled by the interrupt buffer pool.  If these values are non-
     zero, you most likely have a problem.
     
     Intqlen 9, Ibufsize 600, Iminfree 9, Ibuffail 0
     
     This line shows the current number of interrupts buffers in the
     interrupts buffer pool, the size of each buffer, and the minimum
     number of free buffers.  If this last number gets close to, or
     becomes zero, you should increase the buffer pool size with the
     'memory nibuf' command.  The statistics are reset when this
     command is executed.
     
     
    memory thresh [<size>]

     (B)  Displays or sets the memory threshold size in bytes.  If
     free memory gets below this value, no more new connections can be
     started and no new connections will be accepted.  This is an
     attempt to preserve the system's sanity.
     
     
.c.mode <iface> [vc | datagram];

     Control the default transmission mode on the specified AX.25
interface. In datagram mode, IP packets are encapsulated in AX.25 UI
frames and transmitted without any other link level mechanisms, such
as connections or acknowledgments.

     In vc (virtual circuit) mode, IP packets are encapsulated in
AX.25 I frames and are acknowledged at the link level according to the
AX.25 protocol.  Link level (i.e. AX.25) connections are opened as
necessary.

     In both modes, ARP is used to map IP to AX.25 addresses.

     (Currently not implemented in NOS: the defaults can be overridden
with the type-of-service (TOS) bits in the IP header.  Turning on the
"reliability" bit causes I frames to be used, while turning on  the
"low delay"  bit uses UI frames.  The effect of turning on both bits
is undefined and subject to change.)




JNOS and JNOS40 Commands Manual   28 February 1994      Page 51

     In both modes, IP-level fragmentation is done if the datagram islarger  than the interface  MTU.  In Virtual Circuit mode, however,
the resulting datagram (or fragments) is further fragmented at the
AX.25 layer if it (or  they) is still larger  than the AX.25 <paclen>
parameter.  In AX.25 fragmentation, datagrams are broken into several
I frames and reassembled at the  receiving end before being passed to
IP.  This is preferable to IP fragmentation whenever possible because
of decreased overhead (the IP header isn't repeated  in each
fragment) and increased  robustness  (a  lost fragment is immediately
retransmitted by the link layer).

     

.c.motd ["message"];

     Display or set the current message of the day.  This message is
shown to users logging in via telnet or via connections to the
system's alias.  It is also shown by the nodeshell 'Motd' command.

.c.netrom <subcommands>;

     These commands influence netrom behavior.

    netrom acktime [<milliseconds>]

     (B)  Displays or sets the ack delay timer, similarly to ax25 t2.
     Default is 8000ms (i.e. 8 seconds).
     
     
    netrom alias <aliascall>

     This sets the netrom alias call for this station. Other stations
     can connect to the ax25 callsign and to the Netrom alias (when
     set). The alias is broadcast with a Netrom broadcast.  If netrom
     is not activated, you can use the 'ax25 alias' command to set the
     alias callsign, such that users can still connect to the alias,
     even though netrom activities are not allowed.
     
     
    netrom bcnodes <iface>

     Initiates an immediate broadcast of nodelist on <iface>. Verbose
     behavior is controlled by the 'netrom interface' command.
     
     
    netrom bcpoll <iface>

     Initiates a poll sent to the named interface. This poll will
     request a netrom routes broadcast from other nodes, so that the
     routing table can be updated. This is automatically done any time
     an interface is activated (or changed) for netrom.  This should
     speed up route discovery at startup.  This is NOT currently
     implemented in Thenet or Net/Rom nodes, but works with Data




JNOS and JNOS40 Commands Manual   28 February 1994      Page 52

     Engines running JNOS40 or with systems running JNOS v1.05 or     later.
     
     
    netrom choke [<milliseconds>]

     (B)  Display or set the time breaking a send choke. Choke is the
     term netrom  uses for flow control conditions. Default is 180000
     ms (180 seconds.)
     
     
    netrom derate [ON|off]

     (B)  Display or set automatic derating of netrom routes on link
     failure.  Default is on.
     
     
    netrom hidden [on|OFF]

     Display or set the hidden node flag.  Nodes with aliases starting
     with the '#' character are displayed using the command 'N *'.
     Default is OFF.
     
     
    netrom interface [<iface> <quality> [n]]           {JNOS}

     Activate <iface> as a netrom interface.  <quality> can be between
     1 and  255. Interfaces are activated using verbose routes
     broadcasting by default, meaning that they broadcast all known
     routes. This can be changed by adding the optional 'n' parameter
     to the command. Then only the system itself will be announced in
     a broadcast, not the known routes.
     
     If the paclen of the interface is smaller then the netrom mtu +
     20, then the netrom mtu will be set to paclen-20 . This is to
     avoid fragmentation, causing incompatibilities with none-NOS
     based Netrom nodes. See the 'ifconfig <iface> paclen' command for
     more.
     
     If <iface> has already been activated as a netrom interface, re-
     issuing the command will set <quality> and [n] to the new values.
     'netrom interface' will show the currently active netrom
     interface.
     
     Each time an interface is activated or changed, a broadcast poll
     will be sent out on the interface.  This minimizes the route
     discovery time at startup, and will update routes when the
     interface quality has changed.
     
     
    netrom interface <iface> <quality> [<min-bc-quality>]  {JNOS40}

     Set or display the netrom interface(s) for the node.  This
     command is essentially the same as the command for JNOS.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 53

          Only nodes of min-bc-quality and better will be broadcast in a
     nodes boradcast on this interface.  If <min-bc-quality> is not
     set (no value assigned), then the 'netrom minquality' value is
     used.  If <min-bc-quality> = 0, then no nodes are broadcast
     except this one (same as 'n' parameter above.)
     
     Examples:
     
          netrom interface ax0 224 180  -> nodes >= 180 are broadcast
     
          netrom interface ax0 224 0    -> only ourself is broadcast
     
          netrom interface ax0 224      -> nodes >= 'minquality' are
                                           broadcast
     
     
    netrom irtt [<milliseconds>]

     (B)  Display or set the initial round trip time.  Default is
     45000ms, i.e. 45 seconds.
     
     
    netrom kick <nrcb>

     Give the control block a kick to get activity going again.
     

    netrom load                                        {JNOS}

     Retrieves the last set of netrom destination data saved with the
     'netrom save' command.
     
     
    netrom minquality [<minqual>]

     (B)  Display or set the minimum quality for recognizing a node
     entry. Entry's below this value are not considered valuable for
     usage. Default is 50.
     
     
    netrom mycall <call>

     Displays or sets the call to be used by the netrom interface.
     Note: this is a shortcut for the 'ifconfig netrom linkaddress'
     command.  It defaults to the 'ax25 mycall' value.
     
     
    netrom neighbor

     Display all known netrom neighbors.
     
     
    netrom nodefilter <subcommands>



JNOS and JNOS40 Commands Manual   28 February 1994      Page 54

     Manipulate node filtering.     
     
       netrom nodefilter add <neighbor> <iface>

        Add <neighbor> on port <iface> to the filter table.  See the
        'netrom nodefilter mode' command to determine the manner to
        handle node updates from <neighbor>.
        
        
       netrom nodefilter mode [none|accept|reject]

        Display or set the initial node filter scheme. 'none' accepts
        all netrom routes and is the default. 'accept' accepts routes
        only from nodes defined with the 'netrom nodefilter add'
        command. 'reject' does not accept routes from any nodes
        defined with 'netrom nodefilter add'
        
        
       netrom nodefilter drop <neighbor> <iface>

        Delete the node <neighbor>  on interface <iface> from the
        filter table.
        
        
    netrom nodetimer [<seconds>]

     (B) Display or set the interval to transmit the nodes list. If
     you want to use other than the default, you must first attach the
     netrom interface with 'attach netrom' and then set the new
     nodetimer value.  Default is 1800 seconds (half an hour).
     
     
    netrom obsoinit [#}

     (B) Display or set the initial obsolescense count for direct
     routes (Routes table entries) to other systems.  Default is 6
     
     
     netrom obsominbc [#]

     (B) Display or set the minimum obsolescense count a route should
     have to be included in routes broadcasts originating from this
     system.  Default is 4.
     
     
    netrom obsotimer [<seconds>]

     (B) Display or set the time a node obsolescence count gets
     decremented.  If you want to use other than the default, you must
     first attach the netrom interface with 'attach netrom' and then
     set the new obsotimer value.  Default is 1800 seconds.
     
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 55

    netrom promiscuous [OFF|on]
     (B) Enables nodes with a path quality greater than defined with
     minquality.  If on, all nodes are received regardless of
     nodefilter mode.  Default is off.
     
     
    netrom qlimit [<nnnn>]

     (B) Display or set the maximum queue limit for choke to occur.
     Similar to ax25 window.  Default is 512 bytes.
     
     
    netrom reset <nrcb>

     Remove the control block.  You can find the control block with
     the 'netrom status' or 'socket' commands.
     
     
    netrom retries [<nn>]

     Display or set the maximum number of retries on connect,
     disconnect or data.  Default is 3.
     
     
    netrom route <subcommands>

     Netrom routing commands. Routes can be marked as 3 types in the
     various route displays:
     
        'P' - a permanent route set with the 'netrom route add'
        command
        'B' - a route received through a nodes broadcast from a
        neighbor node
        'R' - a recorded route from an incoming packet from a not
        previously known netrom node
     
     
       netrom route add <alias> <call> <iface> <quality> <neighbor>

        Add a permanent netrom route. The new route is to netrom
        system <alias> with call <call>, and the route is on interface
        <iface> with quality <quality> via the neighbor <neighbor>.
        
          netrom route add salem af7s-1 port1 178 k7uyx-1

          A route to a direct neighbor looks like:
        
          netrom route add crv k7uyx-1 port1 192 k7uyx-1
          
          
       netrom route drop <destination> <neighbor> <iface>





JNOS and JNOS40 Commands Manual   28 February 1994      Page 56

        Delete the netrom route to call <destination> via neighbor        <neighbor> on <iface>.
        
        
     netrom route info [<destination>]

        Display the route a packet would take to get to <destination>.
        If <destination> is not given, information about all known
        netrom nodes is displayed.  'netrom route info' and 'netrom
        route info *' are equivalent commands.
        
        
    netrom status

     Display all netrom connections.
     
     
    netrom tdisc [secs]

     (B) Display or set the Netrom Link "redundancy" timer.  Value is
     in seconds.  When no data exchange has happened during this time
     the link is reset and closed.  Default is 900 seconds (15
     minutes).
     
     
    netrom timertype [exponential|LINEAR]

     (B)  Displays or sets the type of backoff used on netrom retries.
     Default is linear.
     
     
    netrom ttl [<hops>]

     (B)  Display or set the maximum number of hops a frame might take
     before being discarded.  Default is 10.
     
     
    netrom window [<frames>]

     (B)  Display or set the size of the sliding window. This is the
     largest send and receive window we might negotiate.  Default is
     2.
     
.c.nntp;

     

.c.nrstat;

     Displays the netrom serial interface statistics. This is only
valid if the serial port was attached in NRS mode. See the 'attach'
command for more.





JNOS and JNOS40 Commands Manual   28 February 1994      Page 57

.c.param <iface> [<param>];
     Invoke a device-specific control routine. A simple 'param
<iface>' will give a list of available  parameters, and their current
values, for the interface <iface>. <param>  can be the literal
description of the parameter.

     On the serial interface,  this sends  control  packets over the
serial port. Example, 'param port1 txdelay  255' will set the keyup
timer (type field =  txdelay)  on  the KISS TNC configured as port1 to
2.55 seconds (255 x .01 sec).

     On the radio ports, all timing parameters use a 10ms tick count,
e.g. 30 means 300ms. Some commonly used options are:

     slottime  - the channel access slottime
     maxwait   - maximum time to defer transmissions
     txdelay   - keyup delay before sending data
     persist   - the csma persistence (range 0-255)
     maxkey    - maximum time to allow transmitter to be keyed
                 (range 0-65000)
     txtail    - time to keep transmitter keyed up after end of packet
     
     
     NOTE: the txtail parameter is NOT settable, but is always 4
characters duration at the port's speed.  The value shown is
calculated from the speed given when the interface is first attached.
When you use the trick previously mentioned to allow interchanging of
DE1200 and DE9600 modems, the txtail shown when a DE9600 modem is used
is WRONG.  However, the actual value used is still correct.

     
     
.c.password <newpassword>;                             {JNOS40)

     Set a new sysop password. 30 chars maximum. Default is
'0123456789' .

     

.c.ping <host> [<timeout>];

     Verify a tcp host is alive.  <host> is the address to ping,
     'timeout' is option and is in seconds.  Default timeout = 30.
     
popmail <subcommands>

    popmail addserver <host> [<seconds>] [hh:mm-hh:mm] <protocol>
    <mailbox> <username> <password>


     Add hostP as a pop server. When seconds is given, a timer is
     started to query the  host with that interval for mail. If not
     specified no quering to the pop host  will be started. You have



JNOS and JNOS40 Commands Manual   28 February 1994      Page 58

     to do that manualy with a kick.  When  hh:mm is given then only     in that exact timeframe are queries to the host made (allowed).
     Protocol is either POP2 or POP3, depending on the  mail service
     the host is providing.

     Note: pop2 is superceded by pop3.

     Mailbox is the mailbox name on the host where mail has to be
     picked up.
     
     Username and password are this system's validation parameters for
     the host.

     Note: On entering this command the host name is looked up. If
     nonexistent, an error message is displayed.

    popmail dropserver <host>


     Drops host from the list of pop servers to be queried.  All
     references to the entry are deleted from the current system.

    popmail kick <host>

     Starts a pop session with host to retrieve mail.  This command is
     needed  when no interval is specified with the popmail addserver
     command.

    popmail list

     Lists the current popmail server table.

    popmail quiet <yes|no>

     Displays or sets the notification of new mail ariving via pop.

    popmail trace <level>


     Displays or sets the trace level of pop sessions. Current trace
     levels are:
     
      0 - No tracing
      1 - Serious errors reported
      2 - Transient errors reported
      3 - session progress reported
     
     Note that tracing only goes to the log file.
     
.c.ports;                                              {JNOS40}

     Displays the serial port and internal radio ports statistics.





JNOS and JNOS40 Commands Manual   28 February 1994      Page 59

     If the serial port is used as a network interface, it willdisplay port statistics.  For receive, it shows the number of received
characters, the high count in the receive buffer and the number of
characters that were dropped due to buffer overruns. The buffer in
question here is the receiver ring buffer that is setup in the attach
command (see 'attach 1'). If the high value is close to the buffer
size, of there are overrun characters, increase the buffer size. (i.e.
re configure the system with a new eprom) For transmit, it shows the
number of characters transmitted, and the number of packets that are
waiting to be sent.

     It will show the type of modem connected to each radio port, and
other variables. Variables shown are:

Modem type:    A is DE1200 and compatible, B is DE9600 and compatible,
               C is external K9NG etc., and D is loop back modem.
               State: Indicates driver state, where    
                    0=IDLE   Transmitter off, no data pending
                    1=DEFER  Deferring transmit
                    2=KEYUP  Permission to keyup the transmitter
                    3=KEYWT  Transmitter switched on, in txdelay wait
                             time
                    4=ACTIVE Transmitter on, sending data
                    5=FLUSH  CRC sent - attempt to start next frame
                    6=TAIL   End of transmission, sending tail
Queued:             the number of packets still waiting to be
                     transmitted.
Sent:               the number of packets transmitted.
Txerr:              the number of maximum key-up failures.
Rcvd:               the number of valid packets received.
Rxerror:            the number of erroneous packets received.
Rxspace:            the number of failed attempts to allocate a
                      receive buffer.
Exints:             the number of External interrupts, this includes
                      the next two.
Brkints:            the number of receiver break-abort interrupts.
Dcdints:            the number of Data-Carrier-Detect interrupts.
Spints:             the number of Special interrupts. (Spints - Error
                      should equal Rcvd !)


.c.ps;

     Display process status information. The first line shows the time
the system has been running, the active stack segment, and the
interrupt stack usage. Next it displays all processes in the system.
The fields are as follows:

     PID - Process ID (the segment of the process descriptor).

     SP - The current value of this process' stack pointer.

     stksize - The size of the stack allocated to this process.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 60

     maxstk - The apparent peak stack utilization of this process.     This is done in a  somewhat  heuristic  fashion, so the numbers
     should be treated as approximate. If this number is close to the
     stksize figure, the system is likely to crash.  Please notify the
     author if you examine such a situation. (The program should be
     recompiled to give the process a larger allocation when it is
     started.)

     event - The event this process is waiting for, if it is not
     runnable.

     fl - Process status flags. There are three: I (Interrupts
     enabled), W  (Waiting  for event) and S (suspended). The I flag
     is set whenever a task has executed a pwait() call (wait for
     event) without first disabling hardware interrupts.  Only tasks
     that wait for hardware interrupt events will turn off this flag;
     this is done to avoid critical sections and missed  interrupts.
     The  W flag  indicates  that  the  process is waiting for an
     event; the 'event' column will be non-blank. Note that although
     there may be several runnable processes at  any  time  (shown  in
     the 'ps' listing as those without the W flag and with blank event
     fields) only one process is actually running at any  one  instant
     (The  Refrigerator  Light  Effect  says that the 'ps' command is
     always the one running when this display is generated.)



.c.remote password <password>;

     Sets the remote server password. Maximum 30 chars. Default is
'0123456789' The remote server is compatible with the client in the
NOS.EXE program. The remote server provides a way to remote reboot the
system without having to connect to it. You need to address the remote
server with the remote client in the NOS.EXE program. Please see the
documentation of your favorite flavor of NOS.EXE for the syntax for
the remote command. Sending a valid password with a command will cause
the command to be executed.

     Currently the server will execute the following commands:

     reset -   restarts the system with a 'coldboot'; i.e. all
     variables in battery backed ram are reset to their default values
     
     exit  -   restarts the system with a 'warm boot'; i.e. all
     variables in battery backed ram remain the same.
     
     

.c.restart;                                            {jnos40}

     This will restart the system. This is an immediate command !
(i.e. no 'are you sure? warning...)  The system will 'warm-boot'. Thus
all variables in battery backed ram will keep their value as last set.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 61

     
.c.rip <subcommand>;

     Both JNOS and JNOS40 now have RIP-2, a newer version of RIP.
RIP-2 is not part of the "distribution compile" of JNOS from WG7J, but
it is included in the JNOS40 distribution.

     The commands given here are used for RIP.  After this list of
commands is the list for RIP-2.  The RIP-2 implementation includes
compatibility with RIP-1.  The sets of commands are separated here to
improve clarity.

     

    rip accept <gateway>

     Remove the specified gateway from  the  RIP  filter  table,
     allowing  future broadcasts from that gateway to be accepted.
     

    rip add <hostid> <seconds> <flags>

     Add an entry to the RIP broadcast table. The IP routing table
     will be sent to <hostid> every interval of seconds. If <flags> is
     specified as 1, then "split horizon" processing will be performed
     for this destination. That is,  any  IP routing  table  entries
     pointing  to the interface that will be used to send this update
     will be removed from the update.  If split horizon processing  is
     not  specified,  then all routing table entries except those
     marked "private" will be sent in each update.  (Private entries
     are never sent in RIP packets).  If flags is 2, the broadcast
     will also advertise a route to the system itself.  Flags are
     accumalative, ie a value of 3 will mean both "split horizon" and
     "me too".  See also the 'route' command.
     
     Triggered updates are always done.  That is, any change in the
     routing table that causes a previously reachable destination to
     become unreachable will trigger an update that advertises the
     destination with metric 15, defined  to mean "infinity".
     
     Note that for RIP packets to be sent properly to a broadcast
     address,  there must exist correct IP routing and ARP table
     entries that will first steer the broadcast to the correct
     interface and then place the correct link-level broadcast address
     in the link-level destination field.  If a standard IP broadcast
     address convention is used (e.g. 44.26.0.0 or 44.26.255.255) then
     chances are you already have the necessary IP routing table entry
     (unusual subnet or cluster-addressed networks may require special
     attention!)   However, an 'arp add' command will be required to
     translate this address to the appropriate link level broadcast
     address; For example, arp add 44.255.255.255 ax25 qst-0
     for an AX25 packet radio channel. (If there are multiple AX25
     interfaces, make a unique address for each interface.)



JNOS and JNOS40 Commands Manual   28 February 1994      Page 62

          
    rip drop <dest>

     Remove an entry from the RIP broadcast table.
     
     
    rip kick                                           {JNOS}

     Immediate command to send a rip update.
     
     
    rip merge [on|off]

     (B)  This flag controls an experimental feature for consolidating
     redundant entries in the IP routing table. When rip merging is
     enabled, the table is scanned after processing each RIP update.
     An entry is considered redundant if the target(s) it covers would
     be routed identically by a less "specific" entry already in the
     table. That is, the target address(es) specified by the entry in
     question must also match the target addresses of the less
     specific entry and the two entries must have the same interface
     and gateway fields. For example, if the routing table contains

Dest            Len      Interface      Gateway   Metric  P Timer  Use
44.2.3.4        32       ax0            44.96.1.2    1    0   0     0
44.1.2.3        24       ax0            44.96.1.2    1    0   0     0
     
     then the first entry would be deleted as redundant since packets
     sent to 44.2.3.4 will still be routed correctly by the second
     entry. Note that the relative metrics of the entries are ignored.
     
     
    rip refuse <gateway>

     Refuse to accept RIP updates from the specified <gateway> by
     adding the gateway to the RIP filter table. It may be later
     removed with the 'rip accept' command.
     

    rip request <gateway>

     Send a RIP Request packet to the specified <gateway>, causing it
     to reply with a RIP Response packet containing its routing table.
     
    rip status

     Display RIP status, including a count of the number of packets
     sent and received, the number of requests and responses, the
     number of unknown RIP packet types, and the number of refused RIP
     updates from hosts in the filter table.  A list of the addresses
     and intervals to which periodic RIP updates are being sent is
     also shown, along with the contents of the filter table.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 63

    rip trace [0|1|2]
     (B)  This variable controls the tracing of incoming and outgoing
     RIP packets. Setting it to 0 disables all RIP tracing. A value of
     1 causes changes in the routing table to be displayed, while
     packets that cause no changes cause no output.  Setting the
     variable to 2 produces maximum output, including tracing of RIP
     packets that cause no change in the routing table.
     
    rip ttl <seconds>

     (B)  Displays or sets the time to live timer to 'seconds'. Normal
     time-out value is 240 seconds.  This is not the ttl in a rip
     broadcast (16 = infinite).  Set this timer before starting rip.
     Change this timer only in cooperation with your surrounding
     nodes.   Default is 240 seconds.
     
     End of RIP-1 commands.
     
*********************************************************************
     

     The following text is provided by N0POY who did the NOS
implementation of RIP-2.

     This document covers the implementation of RIP-2 (RFC 1388) in
NOS.  Specifically the WG7J version of NOS.  RIP-2 is an enhanced
version of the RIP protocol (RFC 1058).  RIP and RIP-2 are an interior
gateway protocol (IGP).  RIP-2 for NOS was implemented by Jeff White,
N0POY.

     This documentation is for the beta release V0.9 of RIP-2


    RIP-2 Features


     The NOS implementation implements all features of the normal RIP
protocol (RFC 1058) and all features of the RIP-2 protocol (RFC 1388)
except multicasting (which NOS does not currently implement) and Route
Tags (NOS does not implement any EGPs).


     Features include:
        
        Routing Domains
        
        Authentication
        
        Proxy routing
        
        Filtering of naughty nodes
        
        Optional refusal of a default route



JNOS and JNOS40 Commands Manual   28 February 1994      Page 64

                Enhanced logging and tracing
        
        Route subnet masks correctly maintained
        
        Optional refusal to accept older RIP version broadcasts
        
        Mixing of RIP-1 and RIP-2 support
     
    NOS RIP COMMANDS



    RIP ACCEPT <gateway>

The RIP ACCEPT command resumes the acceptance of RIP broadcasts from a
specific node given in the <GATEWAY> field.

          RIP ACCEPT 192.55.248.1  or
          
          RIP ACCEPT skeggi.tcman.ampr.org



    RIP ADD <DEST> <INTERVAL> [<FLAGS>] [<RIPVER>] [AUTH <PASSWORD>]
    [RD <routing domain>]




     The RIP ADD command adds a node to the list of stations that are
     to be broadcast to with the local nodes routing table.

        <DEST> is the destination node, usually a broadcast address.
        <INTERVAL> is the number of seconds between broadcasts.
        <FLAGS> are the RIP flags used (see below for the flags), it
                  is a hexadecimal number.
        <RIPVER> is the version of the RIP broadcasts.  This may be a
                  1 or 2.  The AUTH identifier preceeds the
                  authentication password to be included with the RIP
                  broadcasts to this destination.
        The RD identifier preceeds the routing domain number.  This
                  number must range from 0 to 65535.
        
     The authentication fields and routing domain fields are only
     valid with RIP-2 broadcasts.  The password must be 16 characters
     or fewer.  Printable ASCII characters are recommended, but not
     required.


    RIP FLAGS


     0x01 Do 'split horizon' processing



JNOS and JNOS40 Commands Manual   28 February 1994      Page 65

          0x02 Include ourselves in the routing broadcast
     
     0x04 Broadcast RIP packets (default type)
     
     0x08 Multicast RIP packets (not implemented) (RIP-2)
     
     0x10 Poisoned Reverse on
     
     0x20 Authentication data to be included in broadcast (RIP-2)



     Recommend flags are Split Horizon, and Poisoned Reverse or 0x11.
     Authentication and routing domain data entered here only applies
     to the outgoing RIP broadcasts.  See RIP AUTHADD and RIP AUTHDROP
     for entering acceptable passwords and routing domains.



          Example:
          
          RIP ADD SKEGGI.TCMAN.AMPR.ORG 30 0x31 2 AUTH frodo RD 2

          RIP ADD BIGGUS.TCMAN.AMPR.ORG 300 0x11 1


    RIP PROXY <SRC> <DEST> <INTERVAL> [<FLAGS>] [AUTH <PASSWORD>
    [RD <ROUTING DOMAIN>]


     The RIP PROXY command adds a node to the list of stations that
     are to be broadcast to with the local nodes routing table.

        <SRC> is the node that the broadcast will "point" to.
        <DEST> is the destination node, usually a broadcast address.
                  <INTERVAL> is the number of seconds between
                  broadcasts.
        <FLAGS> are the RIP flags used (see below for the flags), it
                  is a hexadecimal number.
        The AUTH identifier preceeds the authentication password to be
                  included with the RIP broadcasts to this
                  destination.
        The RD identifier preceeds the routing domain number.  This
                  number must range from 0 to 65535.
     
     The authentication fields and routing domain fields are only
     valid with RIP-2 broadcasts.  The password must be 16 characters
     or fewer.  Printable ASCII characters are recommended, but not
     required.


    RIP FLAGS




JNOS and JNOS40 Commands Manual   28 February 1994      Page 66

        0x01   Do split horizon processing        
        0x02   Include ourselves in the routing broadcast
        
        0x04   Broadcast RIP packets (default type)
        
        0x08   Multicast RIP packets (not implemented) (RIP-2)
        
        0x10   Poisoned Reverse on
        
        0x20   Authentication data to be included in broadcast (RIP-2)
        

     Recommend flags are Split Horizon, and Poisoned Reverse or 0x11.
     Authentication and routing domain data entered here only apply to
     the outgoing RIP broadcasts.  See RIP AUTHADD and RIP AUTHDROP
     for entering acceptable passwords and routing domains.

     Proxy RIP is tricky, complex and not needed for normal use.  Do
     NOT use proxy rip unless you understand what you are doing.
     Proxy RIP's primary use would be to advertise routes to another
     machine that is aquiring routing information via another routing
     protocol.  See RFC 1388 for further details.



    RIP DROP <dest> [<DOMAIN>]

RIP DROP removes a routing broadcast entry.  If a RIP-2 broadcast was
entered, the correct routing domain needs to be entered, since it is
possible to broadcast multiple routing domains to the same address.

          Example:
          
          RIP DROP SKEGGI.TCMAN.AMPR.ORG 2


    RIP AUTHADD <interface> <routing domain> [<password>]

     RIP AUTHADD adds an acceptable routing domain and optionally a
     password to a specific interface.

          Example:

          RIP AUTHADD ax0 2 frodo

          RIP AUTHADD en0 3


    RIP AUTHDROP <interface> <routing domain>

     RIP AUTHDROP removes an acceptable routing domain (and password
     if any) from a specific interface.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 67

          Example:            
          RIP AUTHDROP ax0 2

    RIP REJECT <version>

     RIP REJECT is used to ignore older RIP broadcasts, as they may
     cause undesirable routing table alterations.  The version number
     is the version number and below that are ignored.  RIP version 0
     (XNS RIP) is always ignored.  The default is 0.

     To ignore RIP-1 broadcasts:  RIP REJECT 1 would do the job.


    RIP FILTER <ON|OFF>

     RIP FILTER will cause advertisements to the default route
     (0.0.0.0) to be tossed and ignored.  By default this is off.
     
     This can serve as a LID filter.  Default routes should NOT be
     advertised, unless there is a specific reason (ie this machine is
     a gateway to the rest of the Internet).

    RIP MERGE <ON|OFF>

     RIP MERGE will cause overlapping routing entries to be merged
     into one routing entry.
     
     For example N0BEL.TCMAN.AMPR.ORG is a route to 192.133.30.0/28,
     and 192.133.30.16/28, with merging on this would become a single
     entry of 192.133.30.0/27.


    RIP REFUSE <gateway>

     RIP REFUSE will reject all RIP broadcasts from the GATEWAY
     station.  RIP ACCEPT is the opposite.  By default all stations
     are accepted.


    RIP REQUEST <GATEWAY>

     RIP REQUEST asks the gateway station to send a routing table now,
     rather than waiting for periodic updates.


    RIP STATUS

     RIP STATUS will display various statistics for RIP-1 and RIP-2,
     RIP broadcasts, RIP refusals, and acceptable Interface, Domain
     and Password combinations.  It also displays the refusing version
     level.  The DEFAULT interface is for every interface.  Thus
     unless removed, and RIP-2 broadcast with a domain of 0 does not
     require a password and will be accepted.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 68

    RIP TRACE <level> [<FILE>]


     RIP TRACE will begin tracing RIP operations.  The higher the
     level, the more detailed the logging.  Level 9 is the useful
     maximum, with level 0 (the default) being no logging.  If a file
     is specified, logging will go to that file, else logging appears
     on the console.

    RIP TTL <time-To-LIVE>

     RIP TTL sets the time-to-live before RIP entries expire from the
     routing tables.  The default should work for almost all cases.

     End of RIP-2 Description
     
     
.c.route [<subcommand>];

     With no arguments, 'route' displays the IP routing table.
     

    route add <desthostid>[/bits] default <iface> [<gatewayhostid> |
    direct] [metric]

     NOTE:  Attempting tcp connections to an address without an
     existing route fails immediately.
     
     This command adds an entry to the routing table.  It requires at
     least two more arguments, the desthostid of the target
     destination and the name of the interface <iface> to which its
     packets should be sent.  If the destination is not local,  the
     gateway's hostid should also be specified. (If the interface is a
     point-to-point link, then <gatewayhostid> may be omitted even if
     the target is non-local because this field is only used to
     determine the gateway's link level address, if any.  If the
     destination is directly reachable, <gatewayhostid> is also
     unnecessary since the destination address is used to determine
     the interface link address).  If <rspf> is used and the system is
     a switch / router to multiple routes, the keyword 'direct' can be
     used instead of a <gatewayhostid> to set the metric higher than
     the default of 1.  This way routes advertised by other rspf
     stations can be cheaper and get selected.  If 'direct' is given
     but <metric> not, an new algorithm is used to set the metric
     dependent on the number of subnet mask bits.
     The optional /bits suffix to the destination host id specifies
     how many leading bits in the host id are to be considered
     significant in the routing comparisons.  If not specified, 32
     bits (i.e., full significance) is assumed. With this option, a
     single routing table entry may refer to many hosts all sharing a
     common bit string prefix in their IP addresses.  For example,
     ARPA Class A, B and C networks would use suffixes of /8,  /16 and
     /24 respectively. E.g. the command



JNOS and JNOS40 Commands Manual   28 February 1994      Page 69

               route add 44/8 ax0 44.64.0.2
     
     causes any IP addresses beginning with "44" in the first 8 bits
     to be routed to 44.64.0.2; the remaining 24 bits are "don't-
     cares".
     
     When an IP address to be routed matches more than one entry in
     the routing table, the entry with largest 'bits' parameter (i.e.,
     the "best" match) is used. This allows individual hosts or blocks
     of hosts to be exceptions to a more general rule for a larger
     block of hosts.
     
     The special destination 'default' is used to route datagrams to
     addresses not matched by any other entries in the routing table;
     it is equivalent to specifying a /bits suffix of /0 to any
     destination hostid. Care must be taken with 'default' entries
     since two nodes with default entries pointing at each other will
     route packets to unknown addresses back and forth in a loop until
     their  time-to-live (TTL) fields expire.  (Routing loops for
     specific addresses can also be created, but this is less likely
     to occur accidentally).
     
     There is one built-in interface: loopback. Loopback is for
     internal purposes only.
     
     Here are some examples of the route command:
          
     # Route datagrams to IP address 44.0.0.3 to SLIP line #0.
     # No gateway is needed because SLIP is point-to point.
     
     route add 44.0.0.3 sl0
     
     # Route all default traffic to the gateway on the local Ethernet
     # with IP address 44.0.0.1
     
     route add default ec0 44.0.0.1
     
     # The local Ethernet has an ARPA Class-C address assignment;
     # route all IP addresses beginning with 192.4.8 to it
     
     route add 192.4.8/24 ec0
     
     # The station with IP address 44.0.0.10 is on the local AX.25
     channel
     
     route add 44.0.0.10 ax0
     
     #An encapsulation link to 192.4.8.12 where the subnet 44.64.0.0
     is accessible. The Internet does not know
      #where we are but we just use them with what they know:
     route add 44.64.0.0/16 encap 192.4.8.12 4
          
          



JNOS and JNOS40 Commands Manual   28 February 1994      Page 70

              route addprivate <dest hostid>[/bits] | default  <iface>
    [<gateway hostid> [<metric>]]

     This command is identical to 'route add' except that  it  also
     marks  the  new entry as private; it will never be included in
     outgoing RIP updates. It will also not be shown in the nodeshell
     'IProute' command.


    route drop <dest hostid>

     Delete an entry from the table.  If  a  packet  arrives  for  the
     deleted address and a default route is in effect, it will be
     used.
     
     
.c.rspf <subcommand>;

     RSPF is the Radio Shortest Path First protocol. Each station
listens for  RRH (Router  to  Router Hello) messages. When such a RRH
message is received, it will figure out if the link is bi-directional
by pinging the  other  station. The protocol is described in the RSPF
2.1 specification.

     
    rspf interface <interface> <quality> <horizon>

     <interface> is the required interface rspf should use.  quality
     is from 1  to   127,  horizon  is between 1 to 255.  End nodes
     should have the quality set to 1. Immediate nodes normally set
     the quality to 8. The normally used value for horizon is 32.
     

    rspf mode [vc | datagram | none]

     (B)  Display the preferred mode for RSPF.  Modes are vc  (Virtual
     Circuit) and datagram.  none resets the preferred mode.
     

    rspf rrhtimer [seconds]

     (B)  Display or set the rrh timer value.
     

    rspf suspecttimer [<seconds>]

     (B)  Display or set the suspect timer value.
     

    rspf timer [<seconds>]

     (B)  Display or set the update timer value.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 71

.c.session [<session#>];                               {JNOS}

     Without arguments, displays the list of current sessions,
including session number, remote TCP or AX.25 address,  the address of
the TCP or AX.25 control block, and the session swap mode under the
'Sw' heading.  An asterisk (*) is shown next to the current session.

     Entering  a session number as an argument to the session command
will put you in converse mode with that session.  If the Telnet
session; entering a blank line at this point puts you in converse mode
with server is enabled, the user is notified of an incoming request
and a session number is automatically assigned.  The user may then
select the session normally to converse with the remote user as though
the session had been locally initiated.

    session [[<session#>] [flowmode [on | off]]]       {JNOS}

     flowmode' displays or enables / disables setting of *more*
     handling for < session#>.  This is handy for long directory
     listings coming from an ftp session, for example .  Escaping to
     command mode before issuing the dir command and entering "session
     # flowmode on" gives a page at a time to look at.  At any time
     you can escape out again and switch flowmode off.  Note that a
     ftp session has it's own flow command now built in.  See FTP
     commands later in this manual.

    session [swap [E|X|M|F]]                           {JNOS}

     Display or set the current session swap mode as Ems, Xms, Memory,
     or File.
     session screens when swapped out (ie. not the active session) can
     now be saved in 4 different modes which can save conventional
     memory.
     
     Modes are:
     0 - in EMS (if available), this is now the default mode.
     1 - in XMS (if available and no EMS) (Note: NOT! functional yet)
     2 - in conventional memory, the previous method. Used if EMS/XMS
     doesn't exist.
     3 - in a temporary file. (Use only if you have a ramdisk for
     tmpfiles, or  a fast harddisk with cache...)
     
       You can force options 1, 2 and 3 from the command line starting
     NOS with the  -m# option, where # is 1, 2 or 3.
     
     
.c.shell;                                              {JNOS}


     Suspends JNOS and executes a sub-shell  ("command  processor"
under  MS-DOS).  When the sub-shell exits, Nos resumes (under MS-DOS,
enter the exit command).




JNOS and JNOS40 Commands Manual   28 February 1994      Page 72

     Note: see the COMSPEC environment variable.


     Background activity (FTP servers, etc.) is also suspended while
the subshell executes.  Note that this will fail unless there is
sufficient unused memory for the subshell and whatever command the
user tries to run.  When shelled out, Mailbox Operator connects and
ttylink incoming connections are refused.  A 'system unattended'
message is sent to the "connector" of that socket.


     

     

     

.c.skick <socket#>;

     This is a shorthand for the various 'kick' subcommands. This one
searches  the socket for correct type and kicks the transport layer.

     

.c.smtp <subcommand>;


     These commands are used for the Simple  Message  Transport
Protocol  service (that is, mail).

    smtp batch [yes | no]

     If set smtp will batch the commands into one frame.  When off
     only one command is sent and a response is waited for.  Some old
     and flaky smtp servers cannot handle more than one command at a
     time.  NOS can handle multiple.  If you are not hindered by an
     old smtp server, setting batch reduces bandwidth.

    smtp bidcheck [ON | off]

     Sets or displays status of smtp bidchecking.  Default is ON.
     
    smtp gateway [<hostid>]

     Displays or sets the host to be used as a "smart" mail relay.
     Any  mail sent to a host not in the host table will instead be
     sent to the gateway for forwarding.

    smtp kick

     Run through the outgoing mail queue and attempt to deliver any
     pending  mail.  This command allows the user to "kick" the mail




JNOS and JNOS40 Commands Manual   28 February 1994      Page 73

     system manually.  Normally, this command is periodically invoked     by a timer whenever NOS is running.

    smtp kill [<jobid>]

     Kill <jobid> and delete the message.

    smtp list

     List the current jobs. An "L" means locked and in progress.  It
     is wise to add in autoexec.bat a "del /spool/mqueue/*.lck"
     command.  As of JNOS 1.10 (x16), all '.lck' files are
     automatically deleted on startup.

    smtp maxclients [<count>]

     Displays or sets the maximum number of simultaneous outgoing
     SMTP sessions that will be allowed.  The default is 10.  Reduce
     <count> if network congestion is a problem.

    smtp mode [queue | ROUTE]

     Sets the smtp delivery mode.  If 'queue', all messages are left
     in /spool/rqueue for external forwarding and handling.  If
     'route', messages are handled and, if for local, appended to a
     mailbox, or if remote they are forwarded.  Default = 'route'


    smtp quiet [YES | no]

     Enables or disables the message that new mail arrived at this
     system.

    smtp t4 [<seconds>]

     Displays or sets a t4 timer for smtp sessions so that they will
     disconnect after a period of inactivity and prevent lockups.
     Default = 0, i.e., no disconnect for timeout.
     
    smtp timer [<seconds>]


     Displays or sets the interval, between scans of the outbound mail
     queue.  For example, smtp timer 600 will cause the system to
     check for outgoing mail every 10 minutes and attempt to deliver
     anything it finds, subject of course to the smtp maxclients
     limit.  Setting a value of zero disables queue scanning
     altogether.  This value is  recommended  for standalone IP
     gateways that never handle mail, since it saves wear and tear on
     the floppy disk drive.  Default = 0
    

    smtp trace [<value>]




JNOS and JNOS40 Commands Manual   28 February 1994      Page 74

     Displays or sets the trace flag in the SMTP client, allowing you
     to  watch SMTP's conversations as it delivers mail.  Zero (the
     default) disables tracing.
     

    smtp usemx [yes | NO]

     Displays or sets a flag enabling or disabling MX record lookups.
     This can  be enabled if a domain server is available in the near
     distance (reachable).  It should be disabled (default) if no
     domain server is in reach to  satisfy  the MX  query.  Note that
     MX record handling is very limited in NOS.  If an answer from a
     domain name server comes in it is taken to be the destination.
.c.socket [<socket#>];

     Without an argument, displays all active  sockets,  giving  their
index  and type,  the address of the associated protocol control block
and the and owner process ID and name. If the index to an active
socket is supplied, the status display  for  the appropriate protocol
is called.  For example, if the socket refers to a TCP connection, the
display will be that given by the 'tcp status' command  with  the
protocol  control block address.

     

.c.start <servers...>;

     (B)  Start the specified servers.  Currently supported are
telnet, ax25, netrom, convers, remote, rip.  These are automatically
started at startup (i.e. no 'start xyz' needed in the autoexec
'file'.)

     

.c.status;

     Displays information on JNOS40:  When started, how long running,
etc.

     

.c.stop <server...>;

     (B)  Stop the specified server,  rejecting  any  further  remote
connect requests. Existing connections are allowed to complete
normally.

     

.c.sysop [<hostname|ip addr>] [port];

     The sysop command allows you to configure the ip address of a
remote system that nodeshell user sysop chat attempts should be routed



JNOS and JNOS40 Commands Manual   28 February 1994      Page 75

to.  The port number defaults to 87, i.e. the tcp ttylink port.  Ifconfigured, and a node shell user gives the 'Sysop' command, a tcp/ip
link will be tried to establish to the remote system.

     For example, I  have the Data Engine setup to link to my own PC's
ttylink listener, thus when a user tries to talk to the sysop, I get a
keyboard to keyboard link coming in.

          sysop 44.26.1.17


.c.tail <filename>;

     Tail displays the last 20 (twenty) lines from <filename>.  This
is most useful for looking at the last screen full of entries into the
log file.

.c.tcp <subcommand>;

     These commands are used for the Transmission Control Protocol
service.

     Notes:

     {JNOS} Attempting outgoing connections to addresses without an
existing route result in Error number 19.

     {JNOS40}  Outgoing connection attempts to addresses without an
existing route are terminated immediately.

     

    tcp irtt [<milliseconds>]

     (B)  Display or set the initial round trip time estimate, in
     milliseconds, to be used  for new TCP connections until they can
     measure and adapt to the actual value.  The default is 5000
     milliseconds (5 seconds).  Increasing irtt when operating over
     slow  channels will avoid the flurry of re-transmissions that
     would otherwise occur as the smoothed estimate settles down at
     the correct value.  Note that this command should be given before
     servers are started in order for it to have effect on incoming
     connections.
     
     TCP also keeps a cache of measured round trip times and mean
     deviations (MDEV) for current and recent destinations.  Whenever
     a new TCP connection is opened, the system first looks in this
     cache.  If the destination is found, the cached IRTT and MDEV
     values are used. If not, the default IRTT value mentioned above
     is used, along with a MDEV of 0.  This feature is fully
     automatic, and it can improve performance greatly when a series
     of connections are opened and closed to a given destination (e.g.
     a series of FTP  file transfers or directory listings).
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 76

    tcp kick <tcb_addr>
     If there is unacknowledged data on the send queue of the
     specified TCB, this command forces an immediate retransmission.
     <tcb addr> can be found with the 'tcp status' command.
     

    tcp maxwait [<msec>]

     Set or show the maximum time for retry timeout in milliseconds.
     Default = 0, no maximum.
     
     
    tcp mss [<size>]

     (B)  Display or set the TCP Maximum Segment Size in bytes that
     will be sent on all outgoing TCP connect request (SYN segments).
     This tells the remote end the size of the largest segment
     (packet) it may send.  Changing MSS affects only future
     connections; existing connections are unaffected.  See also the
     section ON MTU, etc.
     

    tcp reset <tcb_addr>

     Deletes the TCP control block at the specified address.
     

    tcp retries [<num>]

     (B)  Display or set the number of retries before a tcp connection
     will be reset. Default is 16. This is useful to eliminate idle
     connections that have not been properly shut down. Default = 0,
     there is no maximum, i.e. a connection will never retry out.
     

    tcp rtt <tcb_addr> <milliseconds>

     Replaces the automatically computed round trip time in the
     specified TCB with the rtt in milliseconds.  This command is
     useful to speed up recovery from a series of lost packets since
     it provides a manual bypass  around the normal backoff
     retransmission timing mechanisms.
     

    tcp status [<tcb_addr>]

     Without arguments, displays several TCP-level statistics, plus a
     summary  of all  existing  TCP connections, including TCB
     address, send and receive queue sizes, local and remote sockets,
     and connection state. If <tcb addr> is  specified,  a more
     detailed dump of the specified TCB is generated, including send
     and receive sequence numbers and timer information.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 77

    tcp syndata [yes | no]
     (B)  Display or set the tcp syn + data piggybacking flag. Some
     tcp systems cannot handle syn + data together.
     

    tcp timertype [linear | exponential]

     (B)  Display the current setting or set the timer type backoff
     algorithm.  Default is linear.
     

    tcp trace [yes | no]

     (B)  Display or set the tcp trace flag on or off.
     

    tcp window [<size>]

     (B)  Displays or sets the default receive window size in bytes to
     be used  by  TCP when creating new connections. Existing
     connections are unaffected.
     

.c.trace [<iface> [off | <btio>];

     Controls packet tracing by the interface drivers. Specific bits
enable  tracing  of the various interfaces and the amount of
information produced.  Tracing is controlled on a per-interface basis;
without arguments, 'trace' gives a list of all defined interfaces and
their tracing status.  Output can be limited to a single interface by
specifying it, and the control flags can be change by specifying them
as well.

     NOTE: {JNOS40} Trace works ONLY when the serial port is used as
CONSOLE, i.e. with AUX pushed in.

     The flags are given as a hexadecimal number which is interpreted
as follows:

B    - Broadcast filter flag. If set, only packets specifically
       addressed to this node will be traced; broadcast packets will
       not be displayed.
T    - Controls type of tracing:
0 - Protocol headers are decoded, but data is not displayed
1 - Protocol headers are decoded, and data (but not the headers
themselves) are displayed  as ASCII characters, 64 characters/line.
Unprintable characters are displayed as periods.
2- Protocol headers are decoded, and the entire packet (headers AND
data) is also displayed  in hexadecimal and ASCII, 16 characters per
line.
I    - Enable tracing of input packets if 1, disable if 0
O    - Enable tracing of output packets if 1, disable if 0




JNOS and JNOS40 Commands Manual   28 February 1994      Page 78

          Example:          # Trace all incoming packets on port1 and display with
          # headers
          trace port1 0111

.c.udp status;

     Show the status of active udp control blocks

     

.c.write <username|sock#> <message>;

     Send a message to a particular user. <message> is the message, if
"more then one word, put it in quotes."  <username|sock#> can be
either the user name of a nodeshell user, or a valid socket number.
The latter allows you to send a message to a network conference user
etc.

          E.g.: 'write wg7j "this is a test!"'
          
          The message will be shown as:
          
          '<bell>*** Message from node-op: this is a test!'



.c.writeall <message>;

     Send a message to all nodeshell or conference call users. E.g.
when you've changed some things that require remote rebooting, you can
warn users of the shutdown.

     























JNOS and JNOS40 Commands Manual   28 February 1994      Page 79

                           .c.Bibliography;                                   

ARRL Computer Networking Conference Proceedings
    Available from ARRL HQ, Newington CT.
    Send mail to info@arrl.org for an automatic response pointing at
    more information about the ARRL.
    Some of these papers are available online in the directory
    ucsd.edu:/hamradio/packet/tcpip/docs.

    This list is not exhaustive; there are many other interesting
    articles, but these are the ones most relevant to NOS and TCP/IP.

    NOS Overviews and Documentation

     NOS Command Set Reference
               Ian Wade G3NRW           10th (1991)

     NOSVIEW: The On-Line Documentation Package for NOS
               Ian Wade G3NRW           11th (1992)

     The KA9Q Internet (TCP/IP) Package: A Progress Report
               Phil Karn KA9Q           6th (1987)

     Amateur TCP/IP: An Update
               Phil Karn KA9Q           7th (1988)

     Amateur TCP/IP in 1989
               Phil Karn KA9Q           8th (1989)

    Services and Protocols

     The Design of a Mail System for the KA9Q Internet protocol
               Bdale Garbee, N3EUA      6th (1987)
               Gerard van der Grinten, PA0GRI     

     Finger - A User Information Lookup Service
               Michael T. Horne, KA7AXD      7th (1988)

     Callsign Server for the KA9Q Internet Protocol Package
               Doug Thom, N6OYU         8th (1989)
               Dewayne Hendricks, WA8DZP

     The Network News Transfer Protocol and its Use in Packet Radio
               Anders Klemets, SM0RGV           9th (1990)

     A Routing Agent for TCP/IP: RFC 1058 Implemented for the KA9Q
     Internet Protocol Package               7th (1988)
               Albert G. Broscius, N3FCT

     Thoughts on the Issues of Address Resolution and Routing in
     Amateur Packet Radio TCP/IP Networks
               Bdale Garbee, N3EUA      6th (1987)




JNOS and JNOS40 Commands Manual   28 February 1994      Page 80

     Another Look at Authentication               Phil Karn KA9Q           6th (1987)

     LZW Compression of Interactive Network Traffic
               Anders Klemets, SM0RGV           10th (1991)

     PACSAT Protocol Suite -- An Overview
               Harold Price, NK6K       9th (1990)
               Jeff Ward, G0/K8KA

     BULLPRO -- A Simple Bulletin Distribution Protocol
               Tom Clark, W3IWI         9th (1990)

    Macintosh

     KA9Q Internet Protocol Package on the Apple Macintosh
               Dewayne Hendricks, WA8DZP     8th (1989)
               Doug Thom, N6OYU

     Status Report on the KA9Q Internet Protocol Package for the
     Apple Macintosh
               Dewayne Hendricks, WA8DZP     9th (1990)
               Doug Thom, N6OYU

     Higher Speed Amateur Packet Radio using the Apple Macintosh
     Computer
               Doug Yuill, VE3OCU       10th (1991)

    Network design

     The Implications of High-Speed RF Networking
               Mike Chepponis, K3MC          8th (1989)
               Glenn Elmore, N6GN
               Bdale Garbee, N3EUA
               Phil Karn, KA9Q
               Kevin Rowett, N6RCE

     Design of a Next-Generation Packet Network
               Bdale Garbee, N3EUA      8th (1989)

     More and Faster Bits: A Look at Packet Radio's Future
               Bdale Garbee, N3EUA      7th (1988)

     Physical Layer Considerations in Building a High Speed Amateur
     Radio Network
               Glenn Elmore, N6GN       9th (1990)

     Spectral Efficiency Considerations for Packet Radio
               Phil Karn, KA9Q               10th (1991)

          This should be considered to be required reading.

     MACA - A New Channel Acess Method for Packet Radio
               Phil Karn, KA9Q               9th (1990)



JNOS and JNOS40 Commands Manual   28 February 1994      Page 81

     A Duplex Packet Radio Repeater Approach to Layer One
     Efficiency
               Robert Finch, N6CXB      6th (1987)
               Scott Avent, N6BGW

     A Duplex Packet Radio Repeater Approach to Layer One
     Efficiency, Part Two
               Scott Avent, N6BGW       7th (1988)
               Robert Finch, N6CXB


    Network Implementation

     Packet Radio at 19.2 kB -- A Progress Report
               John Ackermann, AG9V          11th (1992)

     Implementation of a 1Mbps Packet Data Link
               Glenn Elmore, N6GN       8th (1989)
               Kevin Rowett, N6RCE

     Hubmaster: Cluster-Based Access to High-Speed Netowrks
               Glenn Elmore, N6GN       9th (1990)
               Kevin Rowett, N6RCE
               Ed Satterthwaite, N6PLO
                    
     Recent Hubmaster Networking Progress in Northern California
               Glenn Elmore, N6GN       9th (1990)
               Kevin Rowett, N6RCE

     The 56 kb/s Modem as a Network Building Block: Some Design
     Considerations
               Barry McLarnon, VE3JF         10th (1991)


     Digital Networking with the WA4DSY Modem - Adjacent Channel
     and Co-Channel Frequency Reuse Considerations
               Ian McEachern, VE3PFH         10th (1991)

     A Full-Duplex 56kb/s CSMA/CD Packet Radio Repeater System
               Mike Chepponis, K3MC          10th (1991)
               Lars Karlsson, AA6IW

     A High Performance, Collision-Free Packet Radio Network
               Phil Karn KA9Q           6th (1987)

     Adaptation of the KA9Q TCP/IP Package for Standalone Packet
     Switch Operation
               Bdale Garbee, N3EUA      9th (1990)
               Don Lemley, N4PCR
               Milt Heath

    Hardware




JNOS and JNOS40 Commands Manual   28 February 1994      Page 82

     The KISS TNC: A Simple Host-to-TNC Communications Protocol               Mike Chepponis, K3MC          6th (1987)
               Phil Karn, KA9Q

     The Ottawa Packet Interface (PI) A Syncrhonous Serial PC
     Interface for Medium Speed Packet Radio
               Dave Perry, VE3IFB       10th (1991)

     HAPN-2: A Digital Multi-Mode Controller fo the IBM PC
               John Vanden Berg, VE3DVV 11th (1992)

     The PackeTen system - The Next Generation Packet Switch
               Don Lemley, N4PCR        9th (1990)
               Milt Heath











































JNOS and JNOS40 Commands Manual   28 February 1994      Page 83

             .c.APPENDIX A    JNOS MAILBOX USER COMMANDS;
     The following commands are available to the users connected to
the mailbox.  This file is available separately as mboxcmds.txt.


    AREA

     The Area command lists the mail areas that contain messages you
     may read.
     
A  gives a short listing, whereas
AF gives a full listing with descriptions (if available)
AN shows areas that have new mail since you last logged off.

     To read messages in one of the areas, type 'A <areaname>'.  You
     will then be told how many new, not previously listed messages
     there are in this area.
     
     You can send mail to any of the listed areas as 'S <areaname>'
     
     
    BYE

     The Bye command is used to exit from the NOS MBOX.  This will
     close your mailbox file and remove any messages that you have
     deleted with the K[ill] command.
     
     
    CONNECT

     The Connect command has the following modes:
     
C[onnect] [port] [callsign] [<digipeater> . . .] connects to station
'callsign' on interface 'port', possibly via digipeaters
'digipeater...' (note the lack of 'via'!)

C[onnect] [node] connects over netrom to a remote node with 'node' as
either node-call or node-alias
     
     
    DOWNLOAD

The download command will begin sending a file from the mailbox to
you.
     
    CONV [<channel>]

(if available) puts you in convers mode.  This is a roundtable
discussion feature.  'channel' allows specifying the conference
channel you wish to join.  Channel default = 0.


D[ownload] [/][<path_name>/]filename sends a plain ASCII text file.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 84

DU [/][<path_name>/]filename downloads binary files converted to
UUENCODED ASCII.

     You will need the "uudecode" utility to convert this ASCII file
     back to binary.  Source code, in various languages, for uudecode
     can be downloaded from this system.  Look for uudecode.bas,
     uudecode.pas, and uudecode.c.

     The optional  path_name may be included along with the filename
     if the desired file is not in the current  directory (you can
     determine this using the W[hat] command).  Please note that the
     character used to separate the path and filename is a "/"
     (forward slash).


    ESCAPE

     
     This character is what will be used if you want to  exit from the
     current session.  For  instance, if you have  started a "chat"
     session, and you don't get  any response from the operator after
     waiting a few minutes, you can  enter the escape  character,
     followed  by a <RETURN> or <ENTER>, and the session will be
     terminated.  You will then be returned to the MBOX prompt.
     
E[scape]  entered by itself will display the character that is
currently set as the  escape character.

E[scape] [<new_escape_character>]   Enter "escape" followed by a
<SPACE> and the character that will become the new escape  character.
This must be a single typed character (the <CTRL> key may be used in
addition).


     EXAMPLES
           escape ^Z     (the ASCII character <CTRL>Z)
           escape X      (the character "x" is the new escape)
     
     FINGER
     
     The finger command retrieves personal information about users of
     a system.
     
F[inger]  displays a list of known users on the current system.
     
     
F[inger] [<user_name>]  display information about if and when the user
last logged in, as well as any information which may be set in the
user's finger-file.
     
     F[inger] [<user_name>][@<host>]  Perform the same functions
     detailed above  on another TCP/IP host connected to the network.
     



JNOS and JNOS40 Commands Manual   28 February 1994      Page 85

     To get a list of the  users on a  remote  system, enter  "finger"     followed  by a <SPACE> and an "@", then the host name.  To get
     information about a remote user, insert the user name before the
     "@".

          EXAMPLES
          finger           (list the known users on this system)
          f sysop          (list info about the local user "sysop")
          f @wg7j          (list the known users at host "wg7j")
          f johan@wg7j     (display info about "johan" at host "wg7j")


    HELP

     Get on-line assistance for user commands

?   displays a list of the commands that have help descriptions
available for them:

     area       bye       connect     download  escape    finger
     help       info      jheard      kill      list      mboxuser
     nodes      nroutes   operator    ports     read      send
     telnet     upload    verbose     xpert     what      zap

H <command>   Displays help for a specific command.
          
          Example:  Display the help text for the command 'connect'.
                    'h connect'


    IHEARD

     
     The IHeard command shows the tcp/ip systems recently heard.
     
I[heard]   Show tcp/ip activity for all ports.
     
I[heard] [<port>]  Show tcp/ip activity for <port>.
     
        For ax.25 interfaces (ports), show all tcp/ip activity heard,
        even when this system was not involved in it.  For other
        interfaces, show those systems that we actively routed packets
        for (ie. systems that talked to us.)


    IPROUTE


IP[route]  shows the available TCP/IP routes the system has
configured.  It shows the interfaces and gateways involved in the
routes, and also the expiration timer (if applicable).
     





JNOS and JNOS40 Commands Manual   28 February 1994      Page 86

     This could be a LONG list if the system has a lot of ip routes.     Please ask the sysop for more about the information given in the
     display.
     
     
     
    JHEARD

     
     The jheard command will display a list of all the station
     callsigns that have been received as sending packet traffic on
     the channel, the time since  the station was heard last, and the
     total number of packets  received.

J[heard]   displays the "heard" list for all interfaces.

J[heard] [<port>]  displays a list of the stations heard on a
particular channel.  See the Ports command for determining which
channel is heard on which port.


     Warning:  if this system has been on the air for very long, and
     the channels are very active, the "heard" list could be extremely
     long.
     
     
     
    KILL



     The kill  command  allows you to delete  messages  from the
     current mailbox (if you have been given that permission by the
     operator).

K[ill] <message_number> [<message_number> . . .]  deletes the
specified messages.  If no message number is supplied, the current
message is deleted.  The message numbers you may select from can be
displayed with the "L[ist]" command.  The second parameter on each
line of the list is the <message_number>

KM will delete ALL read messages in the area.
KU will "un-kill" a message that was previously marked for deletion.
     
     The kill  command  only applies  to messages  in  the  current
     mail "area".  The current mail area can be checked and modified
     with the "A[rea]" command.


    LIST







JNOS and JNOS40 Commands Manual   28 February 1994      Page 87

L[ist] [<starting_msg_number> [<ending_msg_number>] ]  prints a listof the messages from the current mailbox (or "area").  For each
message, the list contains the subject header line, the time and date
it was created, who it is from, how many bytes long it is, and whether
or not it has been read.

     You may include an optional "starting_msg_number"  from which to
     begin displaying  the list.  If you specify a starting msg
     number, then  you may also specify an  ending number as well.
     This will limit the display for you in case there are a large
     number of messages in a particular "area" mailbox.


L  by itself will display the headers for all unread messages, if any.
LA list all messages, read or unread
LL display the last <number> of message headers.
LM is the same as 'L'
LB list all bulletins
LS [subject] list messages in the current 'area' with [subject] in the
subject line.
LT list all traffic
L> xxx  list all messages that have the string 'xxx' in the To:
address
L< xxx  list all messages that have the string 'xxx' in the From:
address


    Mailbox USERS



M  will display a list of all the current users, how they connected,
and their current activity.

ML  will list all past users of the system, when they were last on and
how many times they've connected.

ML n  will show the last n users of the system
ML call  will list when 'call' last logged in

MS  will give some info on the number of messages handled since the
system has been up
     
     
    NODES


N    prints a list of NetRom nodes that are known to this system and
for which the nodeids do not begin with '#'.
N *   will give info on all known nodes including "hidden" nodes
(those with IDs beginning with '#').
N <nodename>  displays information about routes (paths) available to
<nodename>




JNOS and JNOS40 Commands Manual   28 February 1994      Page 88


NR[oute]  command will list all known NetRom neighbour stations, with
a listing of the path quality to them, number of destinations the
neighbour knows and the obsolescense count.

'>' in front indicates that the route has been used in the past 60
seconds


    OPERATOR



O[perator] allows you to "talk" keyboard-to-keyboard with the operator
of this NOS system if the system is attended.

When you wish to terminate the chat session, type the escape character
on your keyboard, and then press <ENTER> or <RETURN>.  The default
escape character is "CTRL-X",  which  means to hold down the <CTRL>
key and press the <X> key simultaneously.  This escape character may
be changed to whatever you prefer by using the "E[scape]" command.


    PING <host>

Check of <host> is alive.  Returns RTT.

     
    PORTS


P[orts]  prints a list of AX.25 interfaces (ports) that are installed
in this system.  A description of the port is also given if one has
been setup for that port.  These ports can be used to make outgoing
AX.25 connections with the "C[onnect]" command.


    QUERY


Q <call> [<call> . . .] If available, this queries the BuckMaster
CDRom callbook server for info about the calls given.  More then one
call per query is allowed.


    READ

     Read a message (or messages) from the current mail area.
     
     
     
#              or,
R[ead] #       or,



JNOS and JNOS40 Commands Manual   28 February 1994      Page 89

     R[ead] <msg_number> [<msg_number> . . .]  To read a specificmessage, you may either type "read #" or just  the number by itself.
If there is a specific list of  messages  you are interested  in
(determined  by the use of the L[ist] command, for  instance), you can
enter the list of  message numbers  (separated by spaces) on the
"read" command-line.  You can also simply advance sequentially through
the messages by just pressing the <ENTER> or <CR> key.  This will
display the next message in order.  The "read" command displays only
an abbreviated portion of the mail headers.  If you want to display
all the header lines, use the V[erbose] command instead.

RH <msg_number> [<msg_number> . . .]  show all the headers of the
messages.
RM display without interruption all unread messages.

          EXAMPLES:
               read 3 5        (Display only messages 3 and 5)
               4               (Display message 4)
               <CR>            (Display next message)


    SEND

     The send command allows you to enter a message  and send it to a
     user at either this system, or some other system on the network.
     
     
S[end] <user>[ @ <host>] [< <from_addr>] [$<bulletin_id>]   Send a
message to <user>.  The system will prompt for "Message Subject" and
"Text" fields.  The "from_addr" and "bulletin_id" fields are  for
special use and won't be covered here.

SP <user>[ @ <host>]  (Send Personal)  As above, but only the
addressee (<user>) may read the message from the mailbox.

SB <user>[ @ <host>]  (Send Bulletin)  As above, but ANY <user> may
read the message from the mailbox.  <User> is usually a category
rather than an individual stationid when sending bulletins


SR [msg_number]  "reply" to either the  current message or the
message number specified. The subject will be copied and the reply
will be sent to the address it was sent from.

SF <user>[ @ <host>] [< <from_addr>] [$<bulletin_id>]  Forward a copy
of  the current message to the user specified.

SC <user>[ @ <host>] [< <from_addr>] [$<bulletin_id>]  Send a message
to more than one user.  The system will prompt with "Cc: ", which
allows you to add more users to be sent 'carbon copies' of the
message.  Separate users on the Cc: line with commas.

          
     EXAMPLES



JNOS and JNOS40 Commands Manual   28 February 1994      Page 90

          send kf7xx            (Send a message to the local user,                                   kf7xx)
          s kf7xx @ wb7xxx      (Send a message to kf7xx at the wb7xxx
                                   host)
          sr 3                  (Reply to message number 3)
          sf n7aaa%n7bbb@w7ccc  (Forward current msg to n7aaa at n7bbb
                                   via w7ccc)
          sc wg7j               (Send with Carbon copy to others)
           Cc: ka7ehk, n7dva@n7dva
          
          
          
          
    TELNET


T[elnet] <hostname> [<port_number>]   Initiate a TCP  connection from
the JNOS mailbox out across the network to another host.  This allows
an AX.25 user with nothing more than a terminal and TNC to gain access
to the TCP/IP network.

        By  including  the optional port_number,  you can connect to
        any TCP server at the given  host.  The  default is to  be
        connected  to the "telnet"  server, which  in the case  of NOS
        software, is the MBOX.
        
        To quit the session at any time, enter the escape character.
        (<CTRL>X,  the default, can be changed with the E[scape]
        command).


    UPLOAD


U[pload] [/][<path_name>/]<filename>   Transfer an ASCII file from
your system onto disk at this host.  You may also specify a full
path_name containing a specific directory in which to deposit the new
"upload".   All uploads can only go into the  directory that you
logged into, or into another directory under the current one.

        The transfer proceeds line-by-line until the file is sent and
        you enter either a "<CTRL>Z" or "/ex" as the first item on a
        blank line.

          EXAMPLES
               upload kepler.txt
               u /public/satelite/oscar13.txt


    VERBOSE

     This command allows you to read a message (or messages) from the
     current mail area, and it includes all the header lines for




JNOS and JNOS40 Commands Manual   28 February 1994      Page 91

     display.  The R[ead] command operates the same way, but with     abbreviated header lines.


V[erbose] <msg_number> [<msg_number> . . .]   View a specific message
or a list of messages with all headers.

VM, 'verbose mine'  Display, without interruption, all unread messages
in the area.


    WHAT

W[hat] [/][<path_name>]  Generate a sorted directory listing of the
current directory or the one specified by the optional path_name.  The
listing includes the filename (or subdirectory name if there is a "/"
appended), the file size in bytes, creation time, and date.

          EXAMPLES
               what      (Displays a directory listing of the
                              "current" dir)
               w /nos/pub    (Display a list of files contained in the
                              "/nos/pub" dir)


    XPERT


     The Xpert command toggles the prompts that the system gives

X  - toggles the prompt between using long and short prompts.
XA - toggles the 'current area' indication on or off.
XN - toggles the 'netrom id' prompt on or off
XM - shows the number of lines before -more- prompting occurs in lists
XM n - sets the number of lines ...

        The states of the above are remembered at logout and used at
        next login.


    ZAP


Z[ap] [/][<path_name>/]<filename>  The zap command allows you to
delete a file in the current directory of one you specify with the
optional path_name.  Use of this command requires that permission be
granted by the operator of this system.

EXAMPLES
     zap myfile.txt            (Deletes myfile.txt in the current dir)
     z /nos/mydir/myfile.txt   (Deletes myfile.txt in /nos/mydir)


End of Appendix A:  JNOS User Commands



JNOS and JNOS40 Commands Manual   28 February 1994      Page 92

             .c.APPENDIX B    JNOS40 NODE USER COMMANDS.;

     This is a list of user commands that can be given when a user is
connected to the JNOS40 nodeshell.  Commands marked with (*) behave
differently depending on the type of connection and are discussed in
the section JNOS40 AND THE USER (See JNOS40 Configuration Guide).
Only the CAPITAL letters need to be given, and the commands are not
case sensitive.

     NOTE:  These commands can be altered using the 'mbox alias'
command.


??        - Gives names of all JNOS40 commands

? x       - Gives extended help on command 'x'


Bye (*)   -  disconnect from nodeshell

Connect (*) - Connect, has a few options:

     C <node> [d][e]                 connect over netrom to <node>
     
     C <port> <call> [digis] [e]     connect to <call> on <port> via
                                     [digis]
               
        NOTE: List [digis] WITHOUT the 'via' and don't use commas:
        
          C PORT CALL DIGI1 DIGI2 DIGI3
          
        NOTE: the optional [e] enables escape checking during the
        connection.
        
        NOTE:  The optional [d] DISABLES the 'stay here' feature for
        NETROM circuits.
        
CONV [<channel>]    Access the conference bridge (if  available)


Escape    - set or show the current escape character

     E on      - set the default usage of the escape char to 'on' for
     this user.

     E off     - set the default to off. 'e' in connect command will
     turn it on for that connection only.

Finger    - finger, either 'f user', 'f user@host' or 'f @host' is
valid
        valid local users are:
        mem         - shows memory statistics
        ps          - shows the process status display



JNOS and JNOS40 Commands Manual   28 February 1994      Page 93

        last        - shows past users of nodeshell        stats       - shows link statistics
        heard       - shows heard calls on all interfaces
        conf        - shows conference bridge users

        All others will show the current users.

Heard   - shows the heard list. This lists the calls heard during the
past 30 minutes.
          'H port'  will show ALL heard calls for 'port' only.

Info - list the info message. The sysop could set this to node
location, frequency, height or whatever.

IHeard    - lists the recently heard tcp/ip stations.

IProute   - lists the Internet Protocol routes

Last - list the last few users of the system, and how long ago they
connected

Motd - shows the 'message of the day', set by the node-operator

Nodes     - show the known nodes.
N name    -show info on node 'name'
N *       - show info on all nodes
The latter two show the path quality, the obsolescence count, the
neighbor to reach the node, and the type of route. Three types of
routes exist:
P are permanent routes (like netrom and bpq)
B are broadcasted routes (from nodes-broadcasts)
R are recorded routes, from netrom packets passed through the system.

Operator  - if configured, will attempt a keyboard session with a
remote sysop

Port - show all ports, with some info on them (if set by the sysop)

PIng <host> - determine if <host> is alive.  Returns RTT.

Routes    - show all netrom routes

Telnet    - telnet to ip address with optional port number. The port
used defaults to the 'telnet' port, i.e. port 23.
An optional port number can either be a number, e.g. '3600', or a
name, e.g. 'convers'.
Port names currently recognized are 'telnet', 'ttylink', and
'convers'   E.g.: 't wg7j', 't wg7j 23' and 't wg7j telnet' are all
the same !

TTylink   - tty-link to address. Same as t, but to the tty-link port.

Users     - show current users and their status




JNOS and JNOS40 Commands Manual   28 February 1994      Page 94

Version   - display software version info


There are also some hidden commands, not shown in the ? list:

Data - shows some data on usage and interface statistics

LInks     - shows current AX.25 and NETROM connections

UPtime - shows system's uptime.

*** LINKED TO
          - interprets callsign changes as done by some version of
NOS.EXE and by TexNet.

@    - attempt sysop mode.  The sysop password can be set with
'password pwdstring', and defaults to '0123456789'.  When hitting the
@, you get a 5 digit challenge.  You should answer with the 5
corresponding letters in the password string (The first letter is
number 0!).  You may enter as many characters as you wish, but the
first five characters must be the correct response to the challenge.
Two lines are required to complete the response - the second line can
be a <cr> only.

The node does not reply if the response to the challenge is incorrect.
The node uses the prompt  SYSOP> while in sysop mode.

End of Appendix B:  JNOS40 User Commands




























JNOS and JNOS40 Commands Manual   28 February 1994      Page 95

             .c.APPENDIX C    Designing ATTACH Commands;
NOS supports a number of versions of the attach command to deal with
different hardware.  We'll discuss three of them here:  asy, used for
serial port connections; pi, used to connect to the Ottawa PI card;
and packet, used to interface to hardware supporting the FTP, Inc.,
packet driver protocol.  As usual, this discussion covers the basics;
see the NOS reference manual for details on all the many options.

Hosts normally have a separate IP address for each interface.  If you
are running more than one interface, you can include that interface's
IP address (in [xx.xx.xx.xx] form) at the end of the attach command.

The asy version provides an interface to a standard PC serial port.
The syntax is:

attach asy <ioaddr> <vector> <mode> <if> <bufsize> <mtu>    <speed>

In English, these parameters are:

       ioaddr -- the address of the COM port being used.  COM1 is
       usually 0x3f8 and COM2 is usually 0x2f8.  COM3 and COM4 aren't
       standardized; using them will require looking at the
       documentation for your serial card, and probably some
       experimentation.
       
       vector -- the IRQ used by the hardware.  COM1 is usually 4, and
       COM2 is usually 3.  Again, COM3 and COM4 vary.
       
       mode -- this specifies the nature of the interface.  ax25 is
       for a connection to a KISS TNC, slip for a hardwired connection
       to another host, ppp for a dial-up connection, and nrs is for
       attaching a NOS station to a NetRom node.
       
       if -- the interface name.  The convention is to use ax0, ax1,
       etc., for KISS interfaces.
       
       bufsize -- the buffer for incoming data, in bytes.  Usually a
       value of 1024 is more than sufficient for a 1200 baud channel.
       
       mtu -- the maximum transmission unit size, in bytes.  See the
       discussion in the main text on this subject.
       
       speed -- the speed of the serial (not radio) link, in baud.
       The best setting for this will depend on the speed of your
       computer, but generally two to four times the radio speed is
       adequate.

Some sample attach asy commands are:

       # COM1, KISS TNC as ax0, MTU 256, 4800 BAUD
       attach asy 0x3f8 4 ax25 ax0 1024 256 4800

       # COM2, KISS TNC as ax1, MTU 256, 2400 BAUD



JNOS and JNOS40 Commands Manual   28 February 1994      Page 96

       attach asy 0x2f8 3 ax25 ax1 1024 256 2400
       # SLIP link, COM1 as sl0, MTU 256, 9600 BAUD
       attach asy 0x3f8 4 slip sl0 1024 256 9600

The Ottawa PI card is a plug-in board for PCs designed for high-speed
performance.  It has two ports, one DMA driven for high speed and the
other interrupt driven.  The attach syntax is:

attach pi <ioaddr> <vector> <DMA chn> <mode> <name> <bufsize> <mtu>
<speed a> <speed b>

A sample attach command (using the PI's default jumper settings) is:

attach pi 380 7 1 ax25 pi0 1750 1024 0 1200

In this example, the interface name for the DMA port is "pi0a" and the
second port is "pi0b".  Because the port a speed is 0, the PI card
expects the modem to provide its own clocking.  The PI attach syntax
is explained in the manual provided with the card.

Finally, the packet interface is used to connect to ethernet cards and
other hardware that supports the FTP, Inc. "packet driver" standard.
There's a packet driver for the PI card.  The syntax is:

attach packet <ioaddr> <vector> <if> <bufsize> <mtu>

In this case, ioaddr and vector need to match those used for the
packet TSR that supports the hardware.  bufsize is the number of
packets (not bytes) that may be outstanding.  For ethernet, the
standard mtu is 1500.

End of Appendix C:  Designing Attach Commands
























JNOS and JNOS40 Commands Manual   28 February 1994      Page 97

                .c.APPENDIX D    FTPUSERS PERMISSIONS;                                   
                                   
The following is a list of the user permission values required for the
FTPUSERS file.


Name:          value  (hex)
FTP_READ          1      0x1  /* Read files */
FTP_CREATE        2      0x2  /* Create new files */
FTP_WRITE         4      0x4  /* Overwrite or delete existing files */
AX25_CMD          8      0x8  /* AX.25 gateway operation allowed */
TELNET_CMD       16     0x10  /* Telnet gateway operation allowed */
NETROM_CMD       32     0x20  /* NET/ROM gateway operation allowed */
SYSOP_CMD        64     0x40  /* Remote sysop access allowed */
EXCLUDED_CMD    128     0x80  /* This user is banned from the BBS */

            /* 256 and 512 are used in PPP*/

NO_SENDCMD     1024    0x400  /* Disallow send command */
NO_READCMD     2048    0x800  /* Disallow read command */
NO_3PARTY      4096   0x1000  /* Disallow third-party mail */
IS_BBS         8192   0x2000  /* This user is a bbs */
IS_EXPERT     16384   0x4000  /* This user is an expert */
NO_CONVERS    32768   0x8000  /* Disallow convers command */
NO_ESCAPE     65536  0x10000  /* Default is no escape char */
NO_LISTS     131072  0x20000  /* No lists displayed from mailbox */
NO_LINKEDTO  262144  0x40000  /* Disable '*** linked to'  */

     To set options, simply add values.

Format in /ftpusers file is:
     
     <name> <password> [<drive:></rootdir>;</root2>] <#perms>]...
          
     <name> is the userid, normally a callsign for amateur radio use.
     
     The <name>  "univperm" should be included in the ftpusers file.
     "univperm" allows anyone not otherwise found in the ftpusers file
     to logon with "guest" status.

     If <password> is set to '<string>', then <string> must be used.
     If <password> is set to '*', then any entry will satisfy
     password.
     
     User can be given access to several drives and directories with
     varying permissions.  These are all given on one line.
     
     <drive:> is the drive letter for each drive to which the user is
     being given access.
     
     </rootdir> is the highest directory in the system tree the user
     may access.  It becomes the users root directory.  Subdirectories




JNOS and JNOS40 Commands Manual   28 February 1994      Page 98

     under </rootdir> may be accessed by the user.  More than one     </rootdir> may be given per drive.
     
     <#permissions> is the sum of the decimal OR hexadecimal values
     which defines what the user is allowed to do while logged onto
     the system.
     
     You may provide access to more than one set of drives and
     directories with different permissions for each set.  This allows
     a user to access a personal directory with complete
     read/write/delete access and a public directory with read
     permissions only, or any other combination you may desire.

          univperm * /public 138283  (or 0x21c2b)

        gives anyone not otherwise known login permission as a guest
        who can read or create (upload) new files on FTP connections,
        access ax25 or netrom stations, but has no mbox send, read,
        3rd_party, or list functions.
        
          wg0b doug c:/wg0b 0x407f /public;/nts ox407b
        
        defines two different setps of permissions for three different
        areas.
        
     End of Appendix D, FTP User Permissions































JNOS and JNOS40 Commands Manual   28 February 1994      Page 99

                      .c.APPENDIX E    REWRITE File;
     The rewrite file is placed in the 'spool' subdirectory.  If you
don't feel comfortablewith the rewrite mechanism, please refer to or
read the 'mailbox.txt' distributed with this document.  That document,
written by NQ0I and SM0RGV, explains the bbs well. Credit goes to
those gentlemen.

     The following is by no means the best or only way to configure
your system's rewrite mechanism. It is simply the way I run it, and is
shown as an example only. My system tends to not take a lot of
bulletins, to keep the load down (most are old anyway), but you might
decide to do things differently.

     Now to the way WG7J 'runs mail'.  First thing I is catch all
Internet style (ie. SMTP targeted) mail, and make sure that those
messages go as is.  Lines 1-4 take care of this by catching most of
the top-level Internet domain names.


        *@*.edu $1@$2.edu
        *@*.com $1@$2.com
        *@*.gov $1@$2.gov
        *@*.org $1@$2.org

     Next is an example of catching some things you don't want; here
in Oregon some-one pumps in daily astronomical stuff.  By the time it
gets to my system it's way old  :-(   By rewriting it to 'refuse', the
bbs will send a 'NO' as if it already has receive it. Same for some
other things the wormhole bbs's are trying to forward to me.

        astro@* refuse
        *@dist9 refuse
        *@allin refuse
        *@okipn refuse
        *@allil* refuse
        msys@* refuse
        fbb@* refuse
        mods@* refuse
        *@ww refuse


     I want users to be able to send mail to sysop on my system
without it being forwarded elsewhere. I take care of this by rewriting
it to the 'wg7j' area (ie. my private mail area)

        sysop wg7j
        sysop@wg7j* wg7j

     Next I send everything else that comes in for sysops to the
'sysop' area. That way I can participate in receiving and forwarding
stuff like 'sb sysop@allor' etc...

        sysop@* sysop



JNOS and JNOS40 Commands Manual   28 February 1994      Page 100

     I place anything addresses to specific mail areas as setup with
the '/spool/areas' files into those mailboxes


        tcpip@* tcpip
        wanted@* wanted
        want@* wanted
        need@* wanted
        sale@* sale
        4sale@* sale
        trade@* sale
        dx@* dx
        humor@* humor
        jokes@* humor
        happy@* humor
        races@* races
        fcc@* fcc
        amsat@* amsat
        arrl@* arrl
        ares@* ares
        swap@* sale
        nasa@* nasa

Then the same thing for the @-distribution names:

        *@nasa nasa
        *@amsat amsat
        *@ares* ares
        *@arrl arrl
        *@arl arrl
        *@pnw pnw
        *@allor* allor
        *@allusw allusw
        *@allus* allusa

NOTE: if you follow this style, it is important that the lines above
       are kept in that order (TO sorting FIRST,  then AT sorting!!)
       Otherwise something like 'amsat@allusa' will end up in the
       'allusa' area instead of the 'amsat' area.

     Next I will catch anything destined for my bbs that hasn't been
already caught by a previous rule.  At this point, this <should> only
be private mail.

        *@wg7j* $1

     Then I will catch any mail destined for the bbs's I forward to
and place it in their mailbox to be forwarded.

        *@wa7tas* wa7tas
        *@wa7shp* wa7shp
        *@w0rli* w0rli
        *@n7dxt* n7dxt



JNOS and JNOS40 Commands Manual   28 February 1994      Page 101

     I place anything destined for a few in-state (ie OR) bbs's that
are north of me into the 'north' mailbox. They get forwarded north-
ward (see forward.bbs)

        *@n7hae* north
        *@n7vyn* north
        *@n7koj* north
        *@n7pwf* north
        *@wa6gfp* north
        *@n7jqk* north
        *@ka7agh* north
        *@kb7dbd* north


     Then I take all local NTS traffic and places it in it's own area.

        *@97321* ntslocal
        *@9733* ntslocal
        *@97370* ntslocal
        *@97389* ntslocal

     Other in-state NTS goes into the right direction.

        *@98* north
        *@970* north
        *@971* north
        *@972* north
        *@9730* wa7shp

     All out-of-state NTS traffic gets placed into the 'nts' area for
forwarding

        *@ntswa* north
        *@nts* nts


     The idea is, that by rewriting every in-state bbs north of me
into the north area, everything in-state left has to go south !
(Luckily, N7DXT, who gets my south traffic, is forgiving and will send
my mistakes north anyway !)

        *@*.or* south

A few other states that go south:

        *@*.ca* south
        *@*.az* south
        *@*.tx* south

These next states go to K9IU in Indiana via the wormhole:

        *@*.in* indy
        *@*.oh* indy



JNOS and JNOS40 Commands Manual   28 February 1994      Page 102

        *@*.mi* indy        *@*.ky* indy
        *@*.tn* indy

And lonesome KE7KD in Reno get the Nevada traffic:

        *@*.nv* nevada

Send all remaining North American mail north (to w0rli, who
has an HF port...)

        *@*.eu north


Catch two more continents:

        *@*.oc south
        *@*.as north

     And finally, I will catch anything that is left at this point.
It puts it in the 'check' area. The idea here is that I can manually
check the 'check' area and adjust '/spool/rewrite' accordingly and
append that mail to the right mailbox file so it goes out.  'check' is
actually an alias, that sends a copy of the message to both the
'check' area and my private mailbox, so that i will know right away
when something unknown has shown up.

        *@* check

End of Appendix E - REWRITE



























JNOS and JNOS40 Commands Manual   28 February 1994      Page 103

                .c.APPENDIX F    FTP Session Commands;     

     During converse mode with an FTP server, everything typed on the
console is first examined to see if it is a locally known command.  If
not, the line is passed intact to the remote server on the control
channel.  The following commands are executed locally.  Note that this
generally involves other commands being sent to the remote server on
the control channel.  The commands to and from the remote server are
indicated in most cases to allow understanding the flow between the
two systems.


    dir [<file> | <directory> [<local file>]]

     Without arguments, 'dir' requests that a full directory listing
     of the remote server's current directory be sent to the terminal.
     If one argument is given, this is passed along in the LIST
     command.  This can be a specific file or subdirectory that is
     meaningful to the remote file system.  If two arguments are
     given, the second is taken as the local file into which the
     directory listing should be put instead of being sent to the
     console.  The PORT command is used before the LIST command is
     sent.

    get <remote file> [<local file>]

     Tells the remote server to send <remote file>.  <local file>, if
     given, is the name of the file as saved on the local machine.
     Otherwise the file will have the  same  name as  on the remote
     machine.  The PORT and RETR commands are sent on the control
     channel.

    ls [<file> | <directory> [<local file>]]

     'ls' is identical to the 'dir' command except that the "NLST"
     command is sent to the server instead of the "LIST" command which
     results in an abbreviated directory listing, one showing only the
     file names themselves without any other information.

    mget <file> [<file> ...]

     Fetch a collection of files from the server.  File names may
     include wild card characters which will be interpreted and
     expanded into a list of files by the remote system using the NLST
     command.  Filenames will be the same on the local system as they
     were on the server.

    mkdir <remote directory>

     Create a directory on the remote machine.  You can do this only
     if permissions associated with your logon userid contained in the
     ftpusers file allow it.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 104

    mput <file> [<file> ...]
     Send a collection of files to the server.  File names may include
     wild card characters and they will be expanded by the local
     machine into a list of files to be sent.  Filenames will be the
     same  on the server as on the local system.

    put <local file> [<remote file>]

     Asks the remote server to accept data and create the file named
     in the first argument.  The second argument, if given, will be
     the name of the file on the remote machine; otherwise the file
     will have the same name as on the local machine.  The PORT and
     STOR commands are sent on the control channel.

    rmdir <remote directory>

     Deletes <remote directory> on the remote machine.  You must have
     the appropriate permissions associated with your login userid to
     be able to use this command.

    type [a | i | l <bytesize>]


     Tells both the local client and remote server the type of file
     that is to be transferred.  The default is 'a', which means ASCII
     (i.e., a text file).  Type 'i' means  image,  i.e.,  binary.   In
     ASCII  mode,  files  are  sent as varying length lines of text in
     ASCII separated by cr/lf sequences.  In IMAGE mode, files are
     sent exactly  as they appear in the file system.   ASCII mode
     should be used whenever transferring text between dissimilar
     systems  (eg. UNIX  and  MS-DOS)  because of their different end-
     of-line and/or end-of-file conventions.   When  exchanging text
     files between machines of the same type, either mode will work
     but IMAGE mode is usually faster.  When exchanging raw binary
     files (executables, compressed archives, etc) IMAGE mode must be
     used.
     
     Type 'l' (logical byte size) is used when exchanging binary files
     with  remote servers having oddball word sizes (eg. DECSYSTEM-10s
     and 20s).  Locally it works exactly like IMAGE, except that it
     notifies the remote system how large the byte size is.  Bytesize
     is typically 8.  The type command sets the local transfer mode
     and generates the TYPE command on the control channel.

    verbose [0 | 1 | 2 | 3]

     Set or display the level of message output in file transfers.
     This command is entered after the ftp session is started.
     Verbose 0 gives the least output and verbose 3 the most as
     follows:
     
     0 - Display error messages only.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 105

     1 - Display error messages plus a one-line summary after each     transfer giving the name of the file, its size, and the transfer
     time and rate.
     2 - Display error and summary messages plus the progress messages
     generated by the remote FTP server. (This setting is default.)
     3 - Display all messages.  In addition, a "hash mark" (#) is
     displayed for every 1,000 bytes sent or received.
     
     If a command is sent to the remote server because it is not
     recognized locally, the response is always displayed regardless
     of the setting of verbose.  This is necessary  for commands like
     'pwd' (display working directory) which would otherwise produce
     no message at all if verbose were set to 0 or 1.
     
End of Appendix F:  FTP Session Commands










































JNOS and JNOS40 Commands Manual   28 February 1994      Page 106

                    .c.APPENDIX G    FORWARD.BBS;
     This file contains the instructions for forwarding to AX.25 BBSs.
The file contains the instructions to determine destination, route,
and areas to be forwarded as a series of forwarding 'records' with
records being separated by a line containing two or more hyphens.  The
general layout for a forwarding record is:


     --------
     BBS callsign
     Route
     Connection commands
     Areas to be forwarded  <one per line>
     --------               <end of record>
     
     
     Where:
     
     BBS callsign is the ordinary call of the remote BBS.
     
     On the same line you may put a list of intervals when forwarding
     is to take place.  List items are separated by commas.  Each
     interval is a four digit number where the first two digits are
     the beginning hour of the interval and the last two digits are
     the last hour of the interval.

          Example:  k0hyd 0006, 1515

     Forwarding to k0hyd will occur during hours 00, 01, 02, 03, 04,
     05, 06 and 15.  Outside of these times the timer will not cause
     mail to be forwarded to k0hyd.  The default forwarding interval
     is 0023 which means once each hour.


    Route


     First indicate the type of protocol to be used.  This is either
     ax25, netrom or tcp.  Next is information required to make the
     connection.  For example, ax25 needs to have the port and the
     destination named while netrom and tcp only require the
     destination name without the port.

     The following will all establish connections of the types
     indicated to k0hyd:
     
     ax25 09 k0hyd-10
     netrom scksbb
     telnet k0hyd
     
     To avoid any misunderstanding:  The preceding three lines are
     examples of route statements.  Only one type should be used for a
     route to any one station.



JNOS and JNOS40 Commands Manual   28 February 1994      Page 107

    Connection commands


     Connection commands are the script which may be required to
     complete the path and 'logon' to the destination BBS and come
     after the connection route in the record.  These commands are
     entered one per line and take the form of a dot (period) followed
     by the command(s) which will be transmitted after the connection
     defined in the first line of the connection route is established.

     A netrom connection route and connection command to are easy to
     show.
     
     netrom kswch   <- Connect to netrom node
      .c k0hyd-10   <- Downlink to k0hyd
     
     However, since k0hyd-10 is also netrom node 'scksbb', this script
     could more easily be written
     
     netrom scksbb
     
     
     Note:  Some nodes have difficulty with lines that have the dot at
     the very beginning of the line.  It is good practice to indent
     one space as is shown above in order to avoid such problems.
     
     AX25 connections through digipeaters need to have the digipeater
     route entered in autoexec.nos.  You cannot enter the digipeaters
     as part of the route in this file.  Use the 'route add' command.



    Areas to be forwarded


     This is a list of areas in the SPOOL\MAIL directory which will be
     forwarded to the remote BBS.  There is one entry per line and as
     many entries as desired may be used.  Areas may be personal
     (callsign) or public (areaname).

     An entry ,callsign' will cause the file SPOOL\MAIL\callsign.TXT
     to be scanned and unread messages to be sent to the remote BBS.
     The messages are then deleted from the file.
     
     To forward public areas, place a line containing the areaname
     record.  In a manner similar to the private areas, the program
     will search the 'areaname.txt' file and any messages which have
     not been forwarded to the destination BBS in question will be
     sent.  These messages (bulletins) will NOT be deleted after
     forwarding.  Public areas are ones which have their names entered
     in the 'areas' file which is a listing of the area names and a
     description for each area.




JNOS and JNOS40 Commands Manual   28 February 1994      Page 108

     The format of the 'areas' file is:

          areaname description

     As a matter of convenience to your users, 'areaname' should be
     short but clear.  This is because the areaname must be typed in
     full when changing areas.  Descriptions can be any length, but
     the combination of areaname and description should fit on one
     line.  If you have more than about twenty areas, when the user
     enters the 'AF' command the first ones will scroll off the top of
     the screen which can be frustrating.


    Changing the recipient address


     The 'To:' header line in a message is not changed by the alias or
     rewrite functions, but occasionally it may be desireable to alter
     the address used by the "S" command while forwarding.  You can
     accomplish this in the forward.bbs file by appending the new
     address on the same line as the areaname.  This would look like:

          area new_address

     This command will replace the originally typed destination with
     the string new_address.
     
     End of Appendix G - Forward.BBS




























JNOS and JNOS40 Commands Manual   28 February 1994      Page 109
