perm filename IMPHLP.MAC[IP,NET] blob sn#702357
filedate 1983-02-09 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00013 PAGES
C REC PAGE DESCRIPTION
TITLE IMPHLP -- HELP MESSAGES FOR IMPCOM
SUBTTL SUNDBERG/1-FEB-72 RLS/HVZ/EAT/EW03 -- 22 JAN 74
THIS FILE CONTAINS ALL OF THE TEXT FOR THE HELP COMMAND IN IMPCOM. IT
IS IN RUNOFF FORMAT. THE OUTPUT FROM RUNOFF WILL BE IN MACRO FORMAT.
THIS IS THEN ASSEMBLED AND LOADED WITH IMPCOM.MAC. THE TEXT GETS
LOADED INTO THE LOW SEGMENT, FROM WHERE IT IS WRITTEN INTO FILE
IMPCOM.HLP DURING INITIALIZATION AND FLUSHED.
DEFINE MESSAG(C,T) <
> ASCIZ \T\
HLPTXT::!PHASE 0 ;KEEP RELATIVE ADDRESSES WITHIN FILE
This file contains all the helping texts for the IMPCOM program. It
is very long (about 12 pages). The IMPCOM program has a facility for
accessing parts of this file selectively. To suppress the remainder
of this typeout, send a control-O character. Then type the monitor
for information on specific IMPCOM commands.
The CLOSE command closes all specified sockets and connections. One
or more explicit arguments must be given. To close all sockets
belonging to your local job, the /SELF switch may be used. Note that
closing a connection generally does not kill a remote job, but merely
detaches it. The remote site will appreciate it if you log out first.
Examples: CLOSE IMP1: Close physical IMP device.
CLOSE TELNET: Close logical IMP device.
CLOSE BERKELEY/FAST Close all your connections to
BERKELEY, with fast timeout.
The CONNECT command allows the user to generate a simplex connection
to any other network socket. The remote host must be specified, and
switches must be included to set the local and remote socket numbers.
The byte size, if not specified, defaults to 8. The local socket must
be in either the CLOSED or the RFC IN state. If the socket is in the
RFC IN state, the parameters must match the incoming request
For example: Connect DATA:CMUA/Local:40/Remote:41
The DEASSIGN command is used to deassign one or more IMP devices,
which must be explicitly specified. Both the input and output sides
of the IMP must be closed before it can be deassigned. This command
is functionally equivalent to the monitor-level DEASSIGN command.
Most IMPCOM commands, such as CLOSE, do an implicit DEASSIGN.
The ERROR command types out error summaries and operating statistics
compiled by the monitor. Subsets of the information may be obtained
by listing any of the following as arguments to the ERROR command:
BUFFER Buffer utilization.
EPLCNT Error in previous leader message count.
ERRORS Only actual error statistics.
HISTOG Data message size histogram.
IMPFLT IMP data message faults.
IMPMES IMP-Host message summary.
INCCNT Incomplete transmission message count.
NCPERR Received NCP error messages.
NCPFLT NCP message faults.
NCPMES NCP message summary.
The /INTERVAL:n switch will produce repeated updates of the
information every n seconds.
IMPCOM commands are given at monitor level preceded by the word
'IMPCOM'. The IMPCOM program may also be started by the command
'R IMPCOM', in which case subsequent commands should not be preceded
by the word 'IMPCOM'. Information about individual commands may be
obtained by listing their names as arguments to the HELP command. If
you are a novice, try:
HELP SAMPLE, SYNTAX, TELNET, HOST, CLOSE
In addition to the IMPCOM command names, the following arguments to
HELP will provide information about the indicated topics:
The HOST command provides information about any host on the network.
For each host which matches the HOST argument, IMPCOM gives the
official name, the host address, the status (Server, User, or Tip),
and any nicknames that IMPCOM will recognize for that host. Legal
arguments are full host names (e.g. 'BBN-TENEX'), network addresses (
host.site or host.site.network ), nicknames ('TENEX'), site names
('BBN'), and site numbers ('/SITE:5'). If a site number is specified,
all hosts at that site will be listed. The /ALL switch will yield a
list of all the network hosts. The /TITLES switch forces printout of
a title line.
Examples: HOST USC-ISI Full host name.
HOST 1.41, 0.3 IMP/Host pairs.
HOST 3.23.0 Network/IMP/Host triplets.
HOST SEX Host nickname.
HOST /SITE:5 All hosts connected to IMP 5.
HOST /ALL All hosts in the table.
The LISTEN command places a specified socket in a listening state.
The local socket must be specified via the /LOCAL switch. Byte size,
remote host, and remote socket number are optional. Requests for
connection to this socket which do not match supplied parameters will
be refused by the NCP. The LISTEN command does not wait for an
For example: Listen DATA:CMUA/Local:40
The REQUEST command performs the function of the LISTEN command, then
waits for an incoming RFC which satisfies the request before
returning. The local socket must be supplied. When the NOWAIT switch
is used, the REQUEST command is exactly equivalent to the LISTEN
NCPDWN is a privileged command to take the PDP-10 off the network in
an orderly fashion. It requires a confirmation which cannot be typed
ahead. The command does not take effect for about thirty seconds;
however, IMPCOM does not wait for this period.
NCPINI is a privileged command to reinitialize the entire NCP. It
requires a confirmation which cannot be typed ahead. At least thirty
seconds prior to this command, an NCPDWN command should be given to
take the PDP-10 off the net as gracefully as possible.
NCPUP is a privileged command to connect the PDP-10 to the network.
There is an initialization period of about thirty seconds for which
IMPCOM does not wait.
The NEWS command connects the terminal to the Network News Service.
Currently, this is equivalent to typing the command:
TELNET BBN-TENEX /REMOTE:#367
RESET is a privileged command to reinitialize all communication with a
specified host. All open connections to that host are closed by this
command. A confirmation is required.
The STATUS command returns status information about each local socket
specified. A null argument string returns the status of all IMP
devices assigned to your job. The /ALL switch returns the status of
all IMP devices in the system. The switches /FAST and /LONG control
the amount of information listed about each socket. The /TITLES
switch controls the printout of a title line. The status information
listed is as follows:
IMP Physical device name (e.g. IMP3:). If a double quote
follows the number, a duplex connection in even-odd
socket pairs exists, and only the input side is listed.
Logical Logical device name, if any.
Job Job owning or controlled by IMP.
Local-Skt Local socket number.
State Connection state.
Byte Connection byte size.
Foreign-Host The host at the other end of the connection.
Foreign-Skt Foreign socket number
TTY Local teletype line connected to the IMP device, if any.
An asterisk signals a local terminal crosspatched to
(i.e. controlling rather than controlled by) the IMP
Lnk Link number.
M-All Messages allocated.
Bits-Alloc Bits allocated.
Flags Various special internal flags.
Examples: STATUS All IMPs belonging to local job.
STATUS IMP0:/F Quick status of device IMP0.
STATUS SAIL Status of all connections to SU-AI.
STATUS /ALL/LONG Extended status of all IMP devices in
The TALK command is identical to the TELNET command.
The TN command is identical to the TELNET command.
The TELNET command connects your terminal to a specified remote host.
For a new connection, the only required specification is the remote
host name. If the remote host is willing, TELNET will then (1) follow
the network Initial Connection Protocol to open a duplex connection to
that host, (2) logically disconnect your terminal from your local job,
and (3) connect it as a terminal of the remote host through an IMP
device whose logical name is TELNET. You may then log on, etc., just
as if you were at the remote site. Typing the local escape character
(initially ↑← or control-shift-O) will cause your terminal to be
disconnected from the remote host and reconnected to your local job.
This does not, however, break your network connection, and you can
reconnect to the remote host by again typing
or TELNET TELNET:
or TELNET IMP3: etc.
If you have exactly one open Telnet connection, the TELNET command
with no arguments will refer to that. To break a connection cleanly,
(1) log off the remote system, (2) escape back to your local job, and
(3) use the CLOSE command to close the network sockets.
A number of switches may be given in the TELNET command (see 'HELP
SWITCH'). An explicit logical device name or local socket number need
be given only when making multiple Telnet connections to the same
Examples: TELNET CMUB Open connection to CMU-10B using
logical device TELNET:.
TELNET DMS Open a connection to MIT-DMS. No
logical device name is assigned since
the name TELNET: is already in use.
TELNET CON2:CMUB Open a second connection to CMU-10B
using logical device CON2:. A
logical device name is required in
this case to cause a new connection
to be made.
TELNET TELNET: Reattach to the first CMU connection.
Telnet control commands are mapped from familiar characters to those
defined in the Telnet protocol and sent preceded by the protocol
escape character. To send one requires that a network escape
character be defined (see 'HELP ESCAPE'), denoted below as '<esc>'.
The meanings of these control codes are described in the Telnet
<esc> NULL NOP.
<esc> S SYNCH. (Upper or lower case will work.)
<esc> B BREAK.
<esc> control-C Interrupt process.
<esc> control-O Abort output.
<esc> control-E Are you there?
<esc> RUBOUT Erase character.
<esc> control-U Erase line.
<esc> control-G GA.
<esc> W WILL.
<esc> control-W WONT (Note: cONTrol).
<esc> D DO.
<esc> control-D DONT.
When a negotiation is sent, the user must then type the negotiation
code, preceded by a quote character (see 'HELP ESCAPE').
<quote> control-A Echo (will and won't are ignored).
<quote> control-C Supress GA.
The various hosts on the network have different conventions with
regard to echoing and the treatment of end-of-line. Four switches are
defined for use with the TELNET command to control these
/ECHO Specifies that typein is to be echoed locally (user-Telnet
/NOECHO Suppresses local echoing (assumes server echoing).
/LF Specifies that a line-feed is to be appended to every
typed-in carriage return. Thus, striking <cr> causes
<cr><lf> to be transmitted; this is the standard network
/NOLF Specifies that <lf> is not to be appended to a typed-in <cr>.
When a connection is opened for the first time, the current local line
characteristics, modified by the above switches if present, are used
for the connection. Thereafter, for the life of the connection,
IMPCOM remembers both the local and connection settings and switches
If the Telnet control codes 'echo', 'no echo', or 'hide your input'
are received from the remote host while the connection is open, local
echoing will automatically be turned on or off as appropriate.
When a local terminal is connected (or 'crosspatched') to the network
through an IMP device, the usual monitor functions of characters such
as control-C are disabled. All characters are transmitted exactly as
typed with the exception of the following special escapes:
Local Escape Causes the terminal to be disconnected from the IMP
device and reconnected to the local job. The
default local escape character is ↑←
Network Escape Causes the next character to be mapped into its
corresponding Telnet control code. There is no
default network escape character. Type
'HELP CONTROL' for more information.
Quote Causes the next character to be transmitted
literally no matter what it is. The default quote
character is ↑Q (control-Q).
Shift Causes the next character, if it is a letter, to be
shifted to upper or lower case. There is no
default shift character. Type 'HELP SHIFT' for
There are four monitor-level TTY commands for defining and changing
these special characters. They are:
.TTY LOCAL x Makes x be the local escape character.
.TTY NETWORK x Makes x be the network escape character.
.TTY QUOTE x Makes x be the quote character.
.TTY SHIFT x Makes x be the shift character.
where "x" may be any arbitrary character except breaks, null, or
alphabetic. Also the various escape characters must all be different.
To eliminate a special character without substituting another one,
use, for example,
.TTY NO SHIFT Eliminates the shift character.
The only other special character is control-O, which has its usual
local function of suppressing output. The effect terminates when any
other character is typed in. Additionally, if any characters have
been typed ahead but not yet transmitted, it causes them to be send
immediately. Thus, for example, if the remote host is a PDP-10 and
you want to send it two control-C's to stop a job that is typing at
you, type the two control-C's followed by a control-O, which stops the
typeout and sends the control-C's on their way.
Some samples of IMPCOM commands (the periods are typed by the PDP-10
monitor and the asterisks by IMPCOM).
.IMP TELNET AIC Connect to SRI-KL.
.IMP TELNET Reconnect to already-open connection.
*CLOSE SU-AI Close all of your connections to Stanford.
*CLOSE/SELF Close all your connections.
.IMP TEL MULTICS/FAST Connect to Multics, but don't bother if
response is slow.
.IMP STATUS/ALL Type status of all connections at this site.
The shift character, defined by the TTY SHIFT command (see
'HELP ESCAPE'), translates between upper and lower case, allowing
users whose terminals can generate only one case to transmit letters
in either case.
Defining a shift character causes all subsequent letters to be mapped
into lower case unless immediately preceded by that shift character,
in which case they are mapped into upper case. Typing two successive
shift characters reverses the mapping, i.e. all letters are mapped
into upper case unless immediately preceded by the shift character, in
which case they are shifted into lower case. The echo, if any, is
generated after translation; thus, a local user with local echoing or
a remote user with server echoing will see the correct character if
his printer types both upper and lower case.
While a shift character is defined, the normal effects of the TTY LC
and TTY UC settings are disabled to avoid confusing interactions.
A socket number is a 32-bit number which identifies a process
connection at a network host. Its format is host-specific except the
low-order bit, which indicates the direction of data flow (odd means
output). A user at this site may specify a local socket number
between 0 and 511. The system generates a complete local socket
number from it by appending it to either the user's programmer number
or his job number (the latter if the user-specified number is 256 or
more). Sockets may also be specified contextually, either by the
physical or logical IMP device name to which they are connected (e.g.
IMP5:, TELNET:) or by the name of the remote host to which they are
connected (e.g. SAIL). If a contextual specification is used, all
sockets matching the context will be included; for example, the
command CLOSE IMP0: will close both the input and output sockets
associated with IMP0.
The following are the mnemonics for the legal socket states and their
ABORT The remote host has cancelled an unacknowledged request for
CLOSED The socket is closed (not in use).
CLSIN The socket has been closed, but there is still buffered data
to be read from it.
CLSOUT A close request has been sent but not yet acknowledged.
ICPRFM The NCP's ICP socket is open and waiting for a RFNM.
LISTEN The socket is listening for a request for connection.
OPEN The socket connection is open.
RFCIN A request for connection has been received on a listening
socket, but the job owning the IMP device has not yet
responded to it.
RFCOUT A request for connection has been sent but not yet
RFMOUT A foreign close has been received for a connection with a
Switches are used to modify and control commands and to supply
parameters. A switch consists of a slash followed by the switch name,
followed, in some cases, by a colon and a numeric or symbolic value
for the switch.
The following switches do not take parameters:
/ABSOLUTE Specifies interpretation of the local socket number as
being absolute rather than user- or job-relative.
/ALL Specifies that all connections in the system are being
/DEITY Forces an operation to be done even if the user doesn't own
the IMP device (requires special privileges).
/ECHO Specifies local Telnet echoing. The local system will echo
everything, including passwords.
/FAST Sets timeout interval to 16 seconds (default is 32).
/INPUT Tests for an even local socket number.
/LF Enables insertion of <lf> after <cr> over Telnet
/LONG Gives long typeouts in STATUS command.
/NOECHO Attempts to disable local Telnet echoing. This may not
work, because the Telnet protocol specifies that a server
need not echo.
/NOLF Disables insertion of <lf> after <cr>.
/NOWAIT Instructs IMPCOM not to wait for completion of certain
/OUTPUT Tests for an odd local socket number.
/RFNM Tests for an output socket in RFNM wait.
/SELF Examines only those devices belonging to this job.
/SLOW Sets timeout interval to 128 seconds.
/TITLES Controls presence of titles in STATUS and HOST commands.
The remaining switches accept parameters, which must be numeric except
where otherwise stated.
/ALLOCATE Sets the desired input bit allocation for the TELNET
/BYTESIZE Sets the connection byte size (1 to 255).
/INTERVAL Sets update interval (seconds) in ERROR command.
/JOB Sets the local job number (0 to 127).
/LOCAL Sets the local socket number (0 to 511).
/REMOTE Sets the remote socket number (any 32-bit number).
/SITE Specifies all hosts at a site (argument is a decimal site
/STATE Sets the desired state of the socket to the symbolic value
given. See HELP STATE for information.
/USER Sets the user (programmer) number. Note that PDP-10 user
numbers are expressed in octal and thus should be preceded
by a hash (e.g. /USER:#54). The symbol SELF indicates
the current user.
/WAIT Sets the timeout code (1 to 7). The timeout period will be
4*2↑code seconds (default is 32 seconds).
The IMP command handler is invoked by the monitor command 'IMPCOM' or
by explicitly running the IMPCOM program. In the former case, the
arguments may be on the same line as the command, e.g.
IMP TELNET UTAH
In the latter, the user is prompted with an asterisk and the command
should be typed on a separate line. Most commands are interpreted as
<command-name> <first field>, <second field>, ....
The <command-name> must be one of the commands IMPCOM recognizes. The
fields have three parts, all of which may be optional. Each field may
contain a device specification, either a physical device name
( 'IMP4:' ) or a logical device name ( 'TELNET:' ). The device name
must be followed by a colon. Each field may, in addition, contain a
host specification. This may be either the offical name of some host
( 'SRI-KL' ), a nickname for some host ( 'AIC' ), or the host address
( '1.2' ). See 'HELP HOST'. Following the device and host
specification, a field may have switches. A switch consists of a
slash followed by a symbol, possibly followed by a colon and a switch
parameter (see 'HELP SWITCH'). With the exception of device names,
all symbols may be abbreviated, including commands, switches, and host
names, so long as enough characters are typed to make each
specification unique. Numbers are decimal unless preceded by a hash
(#) to make them octal.
MHLPLN==:HLPTXT-. ;MINUS LENGTH OF ALL TEXT