TCP/IP Package
for
RT-11
CHAPTER 1 SOFTWARE INSTALLATION 1-1
1.1 INSTALLATION CONFIGURATIONS 1-1
1.1.1 Install All Files on System Device 1-2
1.1.2 Install Only Command Files on System Device 1-2
1.1.3 Install All Files on a Logical Disk 1-2
1.2 SOFTWARE COMPONENTS 1-2
1.3 INSTALLATION IN DETAIL 1-6
CHAPTER 2 HARDWARE INSTALLATION 2-1
2.1 Q-BUS SYSTEMS 2-1
2.2 UNIBUS SYSTEMS 2-2
2.3 SERIAL PORT INSTALLATION 2-2
CHAPTER 3 RT-11 SYSTEM GENERATION 3-1
3.1 DEVICE HANDLER SUMMARY 3-2
CHAPTER 4 CONFIGURING RT-11 FOR REMOTE LOGIN 4-1
CHAPTER 5 PROGRAM OPTIONS 5-1
5.1 TCPIP 5-1
5.2 SKTMON 5-8
5.3 PASSWORD SETUP 5-9
5.4 TELNET 5-10
5.5 RTELNT 5-11
5.6 CNCT 5-12
5.7 RCNCT 5-13
5.8 FTP 5-14
5.9 FTPL 5-16
5.10 RFTP 5-18
5.11 MAIL 5-19
5.12 MMAIL 5-21
5.13 RPOP3 5-23
5.14 MAILER 5-24
5.15 RSMTP 5-26
5.16 LLPQRM 5-27
5.16.1 LLPC 5-28
5.16.2 LLPQ 5-29
5.16.3 LLPR 5-29
5.16.4 LLPRM 5-29
5.17 RLPD 5-30
5.18 LPRINT 5-31
5.19 LPQRM 5-32
5.19.1 LPC 5-34
5.19.2 LPQ 5-34
5.19.3 LPR 5-34
5.19.4 LPRM 5-34
5.20 NTSND 5-35
5.21 RHTTP 5-35
5.22 RGOPH 5-37
5.23 UTIL 5-42
5.23.1 LCD 5-42
5.23.2 LDEL 5-43
5.23.3 LDIR 5-43
5.23.4 LLS 5-43
5.23.5 LMKDIR 5-44
5.23.6 LPRO 5-44
Page ii
5.23.7 LRENAM 5-44
5.23.8 LRMDIR 5-45
5.23.9 LUNP 5-45
5.24 LDISKS 5-45
5.25 ABRTCP 5-45
5.26 ABRTJB 5-46
CHAPTER 6 ETHERNET DEVICE HANDLERS 6-1
6.1 DEVICE HANDLER SYSTEM SUMMARY 6-3
6.2 DEVICE HANDLER FEATURE SUMMARY 6-4
6.3 PROGRAMMING 6-5
6.4 USE OF SPECIAL FUNCTIONS (.SPFUN) 6-5
6.4.1 Unit Specification (.SPFUN 200) 6-6
6.4.1.1 Allocate Unit 6-7
6.4.1.2 Deallocate Unit 6-8
6.4.2 Promiscuous Mode (.SPFUN 201) 6-9
6.4.2.1 Enable Promiscuous Mode 6-9
6.4.2.2 Disable Promiscuous Mode 6-10
6.4.3 Protocol Type (.SPFUN 202) 6-11
6.4.3.1 Enable Protocol Type 6-11
6.4.3.2 Disable Protocol Type 6-12
6.4.4 Multicast Address (.SPFUN 203) 6-13
6.4.4.1 Enable Multicast Address 6-13
6.4.4.2 Disable Multicast Address 6-14
6.4.5 Transmit Ethernet Frame (.SPFUN 204) 6-15
6.4.6 Receive Ethernet Frame (.SPFUN 205) 6-16
6.4.7 Frame Queueing (.SPFUN 206) 6-17
6.4.7.1 Enable Frame Queueing 6-18
6.4.7.2 Disable Frame Queueing 6-18
6.4.8 Get Ethernet Address (.SPFUN 207) 6-19
6.4.9 Get Ethernet Status Block (.SPFUN 210) 6-20
6.4.10 Abort Job I/O (.SPFUN 211) 6-21
6.5 HANDLERS FOR TSX-PLUS V6.0 THROUGH V6.2 6-21
6.5.1 Get PLAS Allocation Size (.SPFUN 300) 6-22
6.5.2 Initialize Handler (.SPFUN 301) 6-22
6.5.3 ENPLAS.SAV - Allocating the PLAS Region 6-23
CHAPTER 7 BUILDING THE TCP/IP PACKAGE 7-1
7.1 C COMPILER 7-1
7.2 TCP/IP PACKAGE 7-2
7.3 COMPILING OPTIONS 7-2
CHAPTER 8 DISTRIBUTION DISKS 8-1
APPENDIX A HIDDEN OPTIONS A-1
A.1 DISABLE PASSWORD A-1
Page iii
TCP/IP Package for RT-11
Submitted by Alan R. Baldwin,
Kent State University, Kent, Ohio 44242
Operating System: RT-11-XM or RT-11-ZM
Source Langauge: DECUS C and RT-11 Macro
Abstract:
The TCP/IP Package for RT-11 provides networking services for
mapped RT-11 systems. The package is an assemblage of server
and client programs designed to provide Telnet, FTP, Mail, POP3,
LPD, and HTTP services for local and remote users of RT-11 sys-
tems. The programs are written in C and RT-11 macro. A secu-
rity system allows usernames/passwords and authorizations for
each client/server component to be specified for each user.
The sources for the 'TCP/IP Package for RT-11' include
header, command, C language, and macro files. The DECUS C com-
piler (with some bug fixes) and AS assembler are included with
the software distribution to allow the package to be recompiled
from the supplied sources.
The current implementation uses 5 global regions to support
multiple client/server programs simultaneously. The number of
regions used by each service is TELNET(1), RTELNT(1), FTP(2),
FTPL(2), RFTP(2), MAIL(1), RSMTP(1), RPOP3(1), MMAIL(1),
MAILER(1), CNCT(1), RCNCT(1), RHTTP(1), RGOPH(1), NTSND(1),
LPQRM(1), and RLPD(1).
The hardware requirements are an RT-11 mapped system (version
5.3 or later) having a minimum of 512k bytes of memory, a DECNA
(Pro), a DEQNA/DELQA (Q-Bus), or a DEUNA/DELUA (Unibus) ethernet
card with associated thick or thin wire adapter, and optionally
a pair of dedicated serial lines for a remote Telnet session.
Alan R. Baldwin
Physics Department
Kent State University
Kent, Ohio 44242
tel: (330) 672 2531
fax: (330) 672 2959
Internet:
[email protected]
[email protected]
CHAPTER 1
SOFTWARE INSTALLATION
The TCP/IP Package software components should be installed as
described in the following sections. The ethernet device
handler specific to your particular hardware configuration must
be copied to the RT-11 system device. The logical name assign-
ments used by the package are:
1. TCP: Location of client/server programs
and assorted configuration, message,
and help files.
2. PAS: Location of password files.
3. ENx: Selected device driver units 0-3.
The logical name assignments MAI:, location of mailboxes,
HTP:, location of HTTP home directory, and GPH:, location of GO-
PHER files, may be used in various command files.
The TCP/IP Package for RT-11 executables are found on logical
disks RTDSK1.DSK, RTDSK2.DSK, and RTDSK3.DSK. The required
device handlers are found on the logical disk DVRDSK.DSK.
1.1 INSTALLATION CONFIGURATIONS
The RT-11 package may be installed in one of the following
three configurations:
SOFTWARE INSTALLATION PAGE 1-2
INSTALLATION CONFIGURATIONS
1.1.1 Install All Files on System Device
All command files and client/server programs are copied
directly to your system disk. Assign SY: to TCP:. This confi-
guration puts everything in one place but installs about 90
files (and 2100 blocks) on your system disk.
1.1.2 Install Only Command Files on System Device
Create a seperate logical disk (assigned as TCP:) for the
client/server programs and perhaps seperate logical disks for
the password files (assigned as PAS:) and mail boxes (assigned
as MAI:). Copy the command files to the system directory. This
will install about 50 files (and 50 blocks) on your system
device.
1.1.3 Install All Files on a Logical Disk
Create a seperate logical disk (assigned as TCP:) for the
package and perhaps seperate logical disks for the password
files (assigned as PAS:) and mail boxes (assigned as MAI:).
Copy all the files to the TCP: disk. This configuration re-
quires the user to specify the TCP: logical when using any
TCP/IP command file or program but removes all files from the
system disk. CCL commands may be defined to obviate the need
for using TCP:, see the file RTUCL.INS for a complete set of de-
finitions using IND command files or RTUCLV.INS for definitions
using the VRUN command without command files. Edit the selected
file to include only the CCL definitions you wish defined.
1.2 SOFTWARE COMPONENTS
The following annotated list summarizes the software
components:
1. TCP/IP Network Server
1. TCPIP.COM TCPIP startup command file
2. TCPIP.SAV TCPIP network server Program
3. TCPIP.CFG TCPIP configuration file
2. Telnet Client
1. TELNET.COM TELNET startup command file
2. TELNET.SAV TELNET client program
SOFTWARE INSTALLATION PAGE 1-3
SOFTWARE COMPONENTS
3. Remote TELNET Server
1. RTELNT.CML TELNET server startup command line
2. RTELNT.COM TELNET server startup command file
3. RTELNT.SAV TELNET server program
4. RTELNT.MSG TELNET server message file
5. RTELNT.HLP TELNET server help file
4. CNCT Client
1. CNCT.COM CNCT startup command file
2. CNCT.SAV CNCT client program
5. Remote CNCT Server
1. RCNCT.CML CNCT server startup command line
2. RCNCT.COM CNCT server startup command file
3. RCNCT.SAV CNCT server program
4. RCNCT.MSG CNCT server message file
5. RCNCT.HLP CNCT server help file
6. FTP Client
1. FTP.COM FTP startup command file
2. FTP.SAV FTP client program
3. FTPCMD.TXT FTP command help text
7. FTPL Client
1. FTPL.COM FTPL startup command file
2. FTPL.SAV FTPL client program
8. Remote FTP Server
1. RFTP.CML FTP server startup command line
2. RFTP.COM FTP server startup command file
3. RFTP.SAV FTP server program
4. RFTP.MSG FTP server message file
5. RFTP.HLP FTP server help file
9. MAIL Client
1. MAIL.COM MAIL startup command file
2. MAIL.SAV MAIL client program
3. MAICMD.TXT MAIL command help text
10. MMAIL Client
1. MMAIL.COM MMAIL startup command file
2. MMAIL.SAV MMAIL client program
3. MMACMD.TXT MMAIL command help text
SOFTWARE INSTALLATION PAGE 1-4
SOFTWARE COMPONENTS
11. POP3 Mail Server
1. RPOP3.CML RPOP3 server startup command line
2. RPOP3.COM RPOP3 server startup command file
3. RPOP3.SAV RPOP3 server program
12. MAILER Task
1. MAILER.CML MAILER task startup command line
2. MAILER.COM MAILER task startup command file
3. MAILER.SAV MAILER task program
13. Remote MAIL Server
1. RSMTP.CML MAIL server startup command line
2. RSMTP.COM MAIL server startup command file
3. RSMTP.SAV MAIL server program
4. RSMTP.HLP MAIL server help file
14. Local Printer Utilities
1. LLPC.COM LLPC local start printer queue
2. LLPQ.COM LLPQ local printer queue status
3. LLPR.COM LLPR local print command
4. LLPRM.COM LLPRM local remove print job
5. LLPQRM.SAV LLPxx local printer control program
15. Remote LPD Server
1. RLPD.CML RLPD server startup commnad line
2. RLDP.COM RLPD server startup command file
3. RLPD.SAV RLPD server program
16. Printer Daemon
1. LPRINT.CML LPRINT task startup command line
2. LPRINT.COM LPRINT task startup command file
3. LPRINT.SAV LPRINT task program
4. LPDQRM.CFG LPRINT configuration file
17. Remote Printer Utilities
1. LPC.COM LPC local start printer queue
2. LPQ.COM LPQ local printer queue status
3. LPR.COM LPR local print command
4. LPRM.COM LPRM local remove print job
5. LPQRM.SAV LPxx local printer control program
18. Remote Binary File Printing
1. NTSND.COM NTSND client startup command file
2. NTSND.SAV NTSND client program
SOFTWARE INSTALLATION PAGE 1-5
SOFTWARE COMPONENTS
19. Remote HTTP Web Server
1. RHTTP.CML RHTTP server startup command line
2. RHTTP.COM RHTTP server startup command file
3. RHTTP.SAV RHTTP server program
20. Remote Gopher Server
1. RGOPH.CML RGOPH server startup commnad line
2. RGOPH.COM RGOPH server startup command file
3. RGOPH.SAV RGOPH server program
4. RGOPH.CFG RGOPH server configuration list
21. Password and Authorization Files
1. PASWRD.COM Password startup command file
2. PASWRD.SAV Password program
3. PASWRD.FIL Password and authorization data file
22. Client/Server Monitor
1. SKTMON.COM Monitor startup command file
2. SKTMON.SAV Monitor program
23. Subdirectory Utilities
1. LCD.COM Change directory command file
2. LDEL.COM Delete file command file
3. LDIR.COM List directory command file
4. LLS.COM List directory command file
5. LMKDIR.COM Make directory command file
6. LPRO.COM Protect file command file
7. LRENAM.COM Rename file command file
8. LRMDIR.COM Delete Subdirectory command file
9. LUNP.COM Unprotect file command file
10. UTIL.SAV Utilities program
24. Subdirectory Summary Utility
1. LDISKS.COM Subdirectory summary command file
2. RFTHLP.COM Generate RFTP.HLP command file
3. LDISKS.SAV Subdirectory summary program file
25. Miscellaneous Files
1. ABRTCP.SAV Abort all Client/Server programs
2. ABRTJB.COM Abort Client/Server Job command file
3. ABRTJB.SAV Abort Client/Server Job program
4. REMOVE.COM Remove all Client/Server global regions
5. DELAY2.SAV Programmed 2 Second Delay
SOFTWARE INSTALLATION PAGE 1-6
INSTALLATION IN DETAIL
1.3 INSTALLATION IN DETAIL
Complete the hardware installation as described in the
chapter titled Hardware Installation.
Under RT-11 the most convenient installation is:
1. Create RTTCP.DSK[2400] as TCP:,
a logical disk for the TCP/IP files
2. Create PASWRD.DSK[200] as PAS:,
a logical disk for the password files
3. Optionally Create MAIL.DSK[nnn] as MAI:,
a logical disk for the MAIL directory
4. Optionally Create HTTP.DSK[nnn] as HTP:,
a logical disk for the HTTP home directory
5. Optionally Create GOPHER.DSK[nnn] as GPH:,
a logical disk for the GOPHER home directory
NOTE
The MAIL, HTTP, and GOPHER directories are
needed only if you are going to use the mail,
http, or gopher servers. The size of the
MAI:, GPH:, and HTP: logical disks are what-
ever is needed.
6. Copy the contents of the distribution disks RTDSK1,
RTDSK2, and RTDSK3 to TCP:.
7. Verify that your RT-11 mapped system was sysgened to
include timer and device timeout support. If not, then
perform a system generation or rebuild the device
handlers to your requirements.
8. Copy and rename the appropriate device handler from the
logical disk DVRDSK.DSK to SY:. (See the chapter on
device handlers for more information on selecting the
appropriate device handler.)
9. Edit the file TCP:RTUCL.INS or TCP:RTUCLV.INS to in-
clude the CCL commands you want and install these com-
mands.
SOFTWARE INSTALLATION PAGE 1-7
INSTALLATION IN DETAIL
10. Edit the file TCP:TCPIP.RUN to mount TCP:, PAS:, [MAI:,
HTP:, and GPH:], load the appropriate device handler
and assign units 0-3 of the device handler to EN0-3,
and start the selected programs. Copy TCP:TCPIP.RUN to
SY:.
11. Add the line '$@SY:TCPIP.RUN' to your startup command
file.
12. Copy PASWRD.SAV and PASWRD.FIL to PAS:.
13. Update the password file. The password file contains
an anonymous account which you will need to update or
delete. If you delete the anonymous account then add
at least one valid account for initial testing with
remote FTP enabled.
14. Edit the file TCP:TCPIP.CFG for your configuration.
Your machine's name and IP address are required and the
specification of a name server and gateway may be re-
quired for your network.
15. Edit the files TCP:*.CML to contain the proper command
line arguments for jobs started by SY:TCPIP.RUN.
16. Reboot your RT-11 system. Verify that the job TCPIP is
running. (If the job did not start then check that
SY:TCPIP.RUN has TCP: defined correctly, the confi-
guration file path is correct, file TCPIP.CFG is cor-
rect, and that the selected device driver was loaded.
Try starting the TCPIP server from the console using
the IND control file TCP:TCPIP.COM with the appropriate
command line arguments and see what errors the program
gives.
17. Verify that another networked computer can communicate
with your machine by doing a 'ping'. Don't know what a
ping is? Skip this step. (verifies that TCPIP is able
to respond to data sent over the Ethernet wire)
18. Attempt to Telnet or FTP to a local computer using only
the IP number of that computer. (verifies connections
are possible)
19. Attempt to Telnet or FTP to a local computer using the
computer's name. The computer's name and IP address
must not be in the TCPIP.CFG file. (verifies that the
name server entry is correct)
20. Attempt to Telnet or FTP to a machine not on your local
network. If you use the machine's name then the name
server must be working or the machine's name and IP
SOFTWARE INSTALLATION PAGE 1-8
INSTALLATION IN DETAIL
number must be in the configurataion file
TCP:TCPIP.CFG. (verifies that the gateway entry is
correct)
21. If the RFTP job is running then attempt to FTP to your
computer from some other networked machine using your
machine's IP address. If your machine's name has not
been added to the name server you must use the IP
number. (verifies that the command line file
TCP:RFTP.CML is correct and that password checking is
working)
Essentially your installation is now complete. You only need
to update the password file to specify user/password informa-
tion, access rights, and default FTP and MAIL directories. In-
dividual program configuration information is contained in the
chapter titled Program Options.
CHAPTER 2
HARDWARE INSTALLATION
2.1 Q-BUS SYSTEMS
A Q-Bus based RT-11 system requires the installation of a
DEQNA or DELQA communications controller. A system memory of at
least 512k is required when installing the Internet Package.
The DEQNA/DELQA EQ22XM.SYS handler requires 36k bytes for code
and packet buffers (the NQXV56.SYS handler requires 14K bytes
for code and packet buffers) and the network server program
TCPIP.SAV will use 64k bytes for a maximum of approximately 100k
bytes before activating any client/server programs. Each active
client/server program will use an additional 64k bytes plus one
or two global PLAS regions each 8k bytes in size.
NOTE
It is possible to install the TCP/IP Package on a 248K
machine using the DEQNA/DELQA 18-bit EQ18XM.SYS
handler. This handler requires 7.5k bytes for code
and packet buffers. This configuration allows at most
one networking application to be active.
Blockmode memory is recommended for use with the DEQNA/DELQA
communications controller although not necessary. The DEQNA or
DELQA interface is connected via a bulkhead cable assembly (with
perhaps an extension ETHERNET transceiver cable) to a tran-
sceiver (with either a thick or thin wire connection).
HARDWARE INSTALLATION PAGE 2-2
UNIBUS SYSTEMS
2.2 UNIBUS SYSTEMS
A Unibus based RT-11 system requires the installation of a
DEUNA or DELUA communications controller. A system memory of at
least 384k is recommended when installing the Internet Package.
The DEUNA/DELUA 22-bit (Unibus Mapping) NUXV56.SYS handler re-
quires 14k bytes for code and packet buffers and the network
server program TCPIP.SAV will use 64k bytes for a maximum of
approximately 78k bytes before activating any client/server pro-
grams. Each active client/server program will use an additional
64k bytes plus one or two global PLAS regions each 8k bytes in
size.
NOTE
It is possible to install the TCP/IP Package on a 248K
machine using the DEUNA/DELUA 18-bit (Non Unibus Map-
ping) EU18XM.SYS handler. This handler requires 7.5k
bytes for code and packet buffers. This configuration
allows at most one networking application to be ac-
tive.
The DEUNA or DELUA interface is connected via a bulkhead ca-
ble assembly (with perhaps an extension ETHERNET transceiver ca-
ble) to a transceiver (with either a thick or thin wire
connection).
2.3 SERIAL PORT INSTALLATION
If the system is to be configured for remote Telnet login
then a pair of dedicated serial lines is required for the ses-
sion. The dedicated pair consists of a multi-terminal line
cross connected to second multi-terminal line via a NULL-MODEM
cable.
For a DLV11-J four port serial board the cross connection may
be easily obtained by constructing a 4" cable with the 10 wire
flat cable flipped between the two ends (1->10, 2->9, ....
10->1). Then cut wires 1,2,9,and 10 at both connectors leaving
a 6-wire NULL-MODEM cable. The DLV11-J baud rate should be lim-
ited to 4800 as two serial ports are required for the session
and is a relatively heavy burden even for a LSI-11/73.
Cross connected DZ ports will provide faster and more effi-
cient communication.
CHAPTER 3
RT-11 SYSTEM GENERATION
The TCP/IP Package for RT-11 is for versions 5.3 and later
and requires a mapped monitor of the type XM (or ZM). Device
handlers supporting the DEQNA/DELQA (EQ and NQ), DEUNA/DELUA (EU
and NU), and DECNA (NC) are provided for the various devices and
processor configurations.
The selection of the appropriate device handler is dependent
upon the RT11 version and processor configuration. A custom
device handler may be built using the supplied conditional
files. Options for building the EQ and EU device handlers in-
clude the number of internal packet buffers, device timeout, in-
terrupt processing at FORK level, mfps/mtps or PSW processor
types, and optional spfun selection.
RT-11 SYSTEM GENERATION Page 3-2
3.1 DEVICE HANDLER SUMMARY
The pre-built device handlers summarized in the following two
tables were configured to operate with RT11 monitors sysgened to
include timer and device timeout support. Timer support is re-
quired for all TCP/IP Package programs and device timeout is
conditionally required by the device handlers.
Summary of EQ/EU/NC/NQ/NU ---
device drivers and supported systems:
RT-11 VERSION [5.3] [5.4] [5.5] [5.6 ...]
----- ----- ----- ---------
eq18xm.sys XM XM XM XM/ZM
eq22xm.sys XM XM XM XM/ZM
eu18xm.sys XM XM XM XM/ZM
ncxv56.sys - ? ? XM/ZM
nqxv56.sys - ? ? XM/ZM
nuxv56.sys - ? ? XM/ZM
Summary of EQ/EU/NC/NQ/NU ---
device driver features:
SPFUNS DEVICE
206 207 210 211 EIS PSW UMR FORK TIMEOUT
--- --- --- --- --- --- --- ---- -------
eq18xm.sys X X X - X X - X X
eq22xm.sys X X X - X X - X X
eu18xm.sys X X X - X X - X X
ncxv56.sys X X X - X X - - -
nqxv56.sys X X X - X X - - -
nuxv56.sys X X X - X X X - -
CHAPTER 4
CONFIGURING RT-11 FOR REMOTE LOGIN
The server programs RTELNT.SAV and RCNCT.SAV can be used to
login to an RT-11 system:
(1) The system must be sysgened for multiterminal
support (3 local DL/DZ/DH lines are required)
(2) Assuming the console is on line 0, cross connect
lines 1 and 2 (at the same baud rate ...)
(3) At boot up define the logical directories and
startup the TCPIP.SAV server and RTELNT.SAV
The RTELNT.CML command line file should be something
like:
-rctpyz 2 1 PAS:paswrd.fil 15 600 or
-r -c 2 -t 1 -p PAS:paswrd.fil -y 15 -z 600
Terms: -r at connection termination, restart
-c 2 RTELNT.SAV connects to line 2
-t 1 Console will connect to line 1
-p PAS:paswrd.fil
-y 15 15 second login timeout
-z 600 600 second inactivity timeout
(4) Use the keyboard set command to
change the console terminal:
set TT: consol=1
Be sure you have tested the password file (by configuring
first for incoming FTP service). Once the console is set you
cannot change it back to your local terminal from your local
terminal.
CONFIGURING RT-11 FOR REMOTE LOGIN Page 4-2
When you log into RT through the TELNET link you are at the
console! If you terminate the running TCPIP or RTELNT jobs
while you are logged in, your connection will terminate and the
RT system must be rebooted (the consol is connected to line 1
going to line 2 going nowhere).
If you change the console connection while logged in then you
will not get any response from the RT system (although the
TCP/IP connection will still be active).
You must terminate the TELNET connection from your connection
terminal. (However that is accomplished from the remote sys-
tem.) If you are connected from another RT system running the
TCPIP package, then use CTRL-A X and request connection termina-
tion.
CHAPTER 5
PROGRAM OPTIONS
The various client/server/utility program startup options are
outlined and typical startup command files listed.
5.1 TCPIP
The network server program TCPIP.SAV provides the software
interface between the Ethernet device handler and the
client/server programs in the TCP/IP Package. The network
server program handles the processing of various network packets
and services (TCP, IP, UDP, BOOTP, ARP, RARP, and DOMAIN name
lookup).
The TCPIP.SAV program may be started interactively (usually
for diagnostic purposes) with the following options:
TCPIP [?] [-f filename]
? List this Help Text and Exit TCPIP
f filename Configuration File
TCPIP uses four logical EN units for network access: three are
used to receive IP(EN0:), ARP(EN1:), and RARP(EN2:) packets and
one is used to transmit(EN3:) all packet types. The startup
command file TCPIP.RUN loads and assigns the network server
device EN to one of the network handlers: NC for the DECNA,
NQ/EQ for the DEQNA/DELQA, or NU/EU for the DEUNA/DELUA, mounts
and assigns the logical disk directories, and starts the
selected network jobs.
PROGRAM OPTIONS PAGE 5-2
TCPIP
The TCPIP.RUN command file:
! TCPIP.RUN
!
! load eq:
! assign eq0: en0:
! assign eq1: en1:
! assign eq2: en2:
! assign eq3: en3:
!
! load eu:
! assign eu0: en0:
! assign eu1: en1:
! assign eu2: en2:
! assign eu3: en3:
!
! load nc:
! assign nc0: en0:
! assign nc1: en1:
! assign nc2: en2:
! assign nc3: en3:
!
! load nq:
! assign nq0: en0:
! assign nq1: en1:
! assign nq2: en2:
! assign nq3: en3:
!
load nu:
assign nu0: en0:
assign nu1: en1:
assign nu2: en2:
assign nu3: en3:
!
load ld:
mount ld7: dl1:rttcp.dsk
mount ld6: dl1:paswrd.dsk
! mount ld5: dl1:mail.dsk
! mount ld4: dl1:http.dsk
! mount ld3: dl1:gopher.dsk
assign ld7: TCP:
assign ld6: PAS:
! assign ld5: MAI:
! assign ld4: HTP:
! assign ld3: GPH:
!
! Select System Jobs
!
assign ld7: DK:
srun sy:vbgexe.sav/name:tcpip
run delay2
srun sy:vbgexe.sav/name:rftp
PROGRAM OPTIONS PAGE 5-3
TCPIP
run delay2
! srun sy:vbgexe.sav/name:rtelnt
! run delay2
! srun sy:vbgexe.sav/name:rcnct
! run delay2
! srun sy:vbgexe.sav/name:rsmtp
! run delay2
! srun sy:vbgexe.sav/name:rpop3
! run delay2
! srun sy:vbgexe.sav/name:mailer
! run delay2
! srun sy:vbgexe.sav/name:rhttp
! run delay2
! srun sy:vbgexe.sav/name:rgoph
! run delay2
! srun sy:vbgexe.sav/name:rlpd
! run delay2
! srun sy:vbgexe.sav/name:lprint
! run delay2
!
! Finish Up
!
assign sy: dk:
set kmon ind
The TCPIP program is usually started at RT-11 startup by insert-
ing the line '[email protected]' in the startup command file. The
network IND control files require that the command 'SET KMON
IND' be included in the startup command file.
The network server programs (RFTP, RTELNT, ...) when started
as a foreground or system job gets the command line arguments
from an associated .CML file in TCP:. For example, the RFTP.SAV
program command line file RFTP.CML is:
-r -p PAS:paswrd.fil -y 15 -z 600
The TCPIP.SAV program requires the configuration file
TCPIP.CFG which defines all the parameters required to configure
the network server. Note that TCP/IP services and tasks are
commented out as these must be explicitly started under RT-11.
Typical configuration parameters are detailed in the following
configuration file:
PROGRAM OPTIONS PAGE 5-4
TCPIP
#
# Example host file for TCP/IP server
#
# This file is free form
# Separators are any char <32, 'space' and '='
# Comments are preceeded by #
#
# The form is keyword=value for each parameter.
# The first set of parameters refer to the whole program's defaults.
# These parameter values can be in any order.
# Following this are the individual machine specs.
# If the first machine is name "default", then it contains default
# values for the rest of the machines.
#
# These options are specified for this host machine:
#
# myname=____.____.____ # my internet name
# myip=___.___.___.___ # host machines's IP number
# =BOOTP # to use BOOTP to get host info
# =RARP # to use RARP to get IP number
# netmask=___.___.___.___ # subnetting mask
# domain=____.____ # default domain for lookup
# nndomto=____ # timeout for domain lookups
# nnretry=____ # number of retries for lookup
# nnarpto=____ # timeout for ARPs
# nndto=____ # timeout for data layer
# nnpkt=____ # TCPIP upper limit packets per transq
# # nnpkt=1, requires ACK for each packet
# nnwin=____ # TCPIP upper limit window size
# nnseg=____ # TCPIP upper limit input segment size
# nnmtu=____ # TCPIP upper limit output transfer size
# service=___,___,_____ # TCPIP services specification
# task=___,___,_____ # TCPIP task specification
# logsession=__________ # TCPIP session logging filespec
#
PROGRAM OPTIONS PAGE 5-5
TCPIP
#
# These are the options which may be specified for each
# individual machine specification:
#
# name=____ # name of session (required)
# host=____ # full name of host computer
# hostip=___.___.___.___ # IP number of host
# port=____ # specify initial connection port
# nameserver=____ # name server level
# gateway=____ # gateway level
# retrans=____ # initial retransmit timeout
# contime=____ # opening connection timeout
# mwin=____ # advertized window size for this host
# mseg=____ # maximum advertized input segment size
# mtu=____ # maximum output transfer size
# delete=backspace # value to use for character deletion
# crmap=4.3BSDCRNUL # for 4.3BSD null CR
# duplex=half # for half duplex TELNET connections
# copyfrom=____ # copy parameters from this name
#
myname=machine.domain.name
myip=192.3.2.100 # required, this machine's IP number
netmask=255.255.255.0 # subnetting mask
domain="domain.name" # domain name search path
# affects machines on your local network
nnwin=2920 # limit advertized window (nnwin == mwin)
nndomto=5 # domain timeout
nnretry=4 # number of retries
nnarpto=2 # arp timeout in seconds
nnpkt=2 # send only 2 packet(s) per transq
PROGRAM OPTIONS PAGE 5-6
TCPIP
# The following line specifies the TCPIP logging file
# which will contain information for each session
# started: TELNET / RTELNT / FTP / RFTP / CNCT / RCNCT /
# MAIL / RSMTP
# RPOP3 / MAILER / MMAIL
# RLPD / LPRINT / LPQRM / LLPQRM
# NTSND
# RHTTP
# RGOPH
# logsession=sy:tcpip.log[100]
# The following are services supported by TCPIP.
# Each entry contains the listen port, maximum number of
# sessions and the name of the command file to initiate
# the service.
# service=21,2,sy:rftp.srv # remote ftp server
# service=23,2,sy:rtelnt.srv # remote telnet server
# service=25,2,sy:rsmtp.srv # remote smtp server
# service=27,2,sy:rcnct.srv # remote cnct server
# service=70,2,sy:rgoph.srv # remote gopher server
# service=80,4,sy:rhttp.srv # remote http server
# service=110,2,sy:rpop3.srv # remote pop3 server (task: -t 1)
# service=515,2,sy:rlpd.srv # remote lpd server (task: -t 2)
# The following specify the tasks that may be initiated by TCPIP.
# Each entry contains the taskid number, timer interval in seconds
# (zero means not an automatically started task), and the name
# of the command file to initiate the service. These tasks donot
# have to be related to TCPIP programs, however a TCPIP program
# can use the TASKCLASS to start a specific task. The selected
# task will be scheduled by TCPIP and only one (1) copy of the
# the task will be allowed to run. Additional requests to start
# the task will be queued as a single request to rerun the task
# at the completion of the currently executing task.
# task=1,0,sy:mailer.srv # mmail / pop3 mail delivery agent
# task=2,0,sy:lprint.srv # rlpd / llpqrm printing delivery agent
PROGRAM OPTIONS PAGE 5-7
TCPIP
#
# Following are individual machine specifications
# Gateways are used in the order that they appear in the file
# Nameservers rotate, #1, #2, #3, #1, #2 when a request fails
#
# The machine named "default" contains the fields which are
# automatically filled in for later hosts
#
name=default # Session name, "default" is a reserved name
# Not a real machine, default parameters only
delete=delete # Assume mostly non-UNIX connections
# The following entries affect the tuning of
# TCP connections to this host.
# They should be set by the network administrator who is familiar
# with the requirements of your specific network.
contime=12 # timeout in seconds to try connection
# before returning error to user
retrans=5 # starting retransmit time out in seconds
mtu=1460 # maximum transmit unit in bytes
# outgoing packet size, MAX=1460
mseg=1460 # largest segment we can receive
# whatever the hardware can take, MAX=1460
mwin=2920 # most bytes we can receive without ACK
# =TCP window size, MAX=3047
# larger isn't always better
#
# Below this line, most of the communication parameters are obtained
# from the "default" host entry.
# Machine names, IP addresses, and special communication parameters
# are present when needed.
#
name=mygateway hostip=192.3.2.2
gateway=1
name=nameserver hostip=192.3.2.1
nameserver=1
name=alpha host=alpha.domain.name
hostip=192.3.2.200
PROGRAM OPTIONS PAGE 5-8
TCPIP
#
# If during TCPIP startup you get the error Sreadhosts() error 2,
# you probably have exceeded the memory limits of the machine.
#
# (1) reduce the number of machine definitions above
# (2) or donot use session logging
#
# Sesion logging and Debugging should not be simultaneously enabled.
#
The network server needs to know the ip address(number) of
the machine to which it is connecting. If the TCPIP.CFG file
does not contain the named machines' ip number then it will make
a request to the specified name server to obtain the machines ip
number. If a name server is not specified then the connection
cannot be made using the machines name (place the machines name
and ip address in the configuration file). If the ip address is
given as the input to the client program rather than the name
then a domain name lookup is not required.
All changes to the configuration file will take effect at the
next startup of TCPIP.SAV.
5.2 SKTMON
The SKTMON program provides a diagnostic tool for observing
the state of all TCPIP connections. SKTMON displays the current
state of network connections by showing the global regions
through which the TCPIP network server program and the
client/server programs communicate. The program shows in detail
the various network packets, the incoming and outgoing data
streams, and the status of the network ethernet driver.
The IND control file SKTMON.COM starts the program:
.sets cmdlin "0 "+"'p1'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:sktmon.sav
.data 'cmdlin'
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-9
PASSWORD SETUP
5.3 PASSWORD SETUP
A password file (eg PASWRD.FIL) must be built if the lo-
cal/remote MAIL services are to be used or if remote network ac-
cess (ie remote FTP, TELNET or CNCT) must be restricted. It is
suggested that a seperate password directory be created to hold
the files PASWRD.SAV and PASWRD.FIL. This directory need be no
larger than about 200 blocks. The maximum number of user/pass-
word specifications is limited by the program memory size to
about 50. The PASWRD.FIL contains 1 block for each user/pass-
word specification. The PASWRD.COM command file should be up-
dated to reflect the location of the password files. A seperate
directory allows the exclusion of its access by remote FTP ses-
sions.
Copy the file PASWRD.SAV (and optionally the supplied pass-
word file PASWRD.FIL) to the created directory. Modify the
PASWRD.COM file to access this subdirectory.
Initiating PASWRD.SAV with a file specification will open an
existing file or create the file if no existing file is found.
The PASWRD program screens will indicate all the options and the
file USRBLK.H illustrates the formats for the device/file speci-
fications required by the password program.
NOTE
The password for any added user must also be speci-
fied, any user not requiring a password (ie an
'anonymous' account) must have this password entered
as a null string by typing only a carriage return for
the password.
To use the created password file be sure the program startup
command files have specified the correct path to the password
file.
NOTE
The device/file access rights are only used by the
remote FTP server.
PROGRAM OPTIONS PAGE 5-10
PASSWORD SETUP
The IND control file PASWRD.COM starts the program:
.sets cmdlin "'p1'"+"PAS:paswrd.fil"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:paswrd.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.4 TELNET
The TELNET program allows the user to initiate a connection
to a remote host for a terminal session. The startup options
for TELNET are:
TELNET destination [?] [-hp]
? List the Help Text and Exit TELNET
h List the Help Text and Open Connection
p filename Specify the Password Filespec
The destination host specification may be the host name or host
ip number. If the connection is to be made to an alternate port
then follow the name/ip with the port number (decimal).
The TELNET program supports the following command line op-
tions which are activated by the META character 'control A':
M->C open capture file
M->D close capture file
M->F FTP [internet address]
M->H this help screen
M->I type my internet address
M->K erase character
M->O abort output
M->Q are you there?
M->R toggle <CR> follow character
M->S skip to end of buffer
M->T toggle backspace/delete
M->U erase line
M->X close connection
M->Y interrupt process
M->@ send a true null character
^? abort Telnet session
The IND control file TELNET.COM starts the program:
PROGRAM OPTIONS PAGE 5-11
TELNET
.sets cmdlin "-hb "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:telnet.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.5 RTELNT
RTELNT is a server program for a remote TELNET session into
RT-11. The program startup options are:
RTELNT [?] [-hmp filespec] [-certvyz] [parameters]
? List the Help Text and Exit RTELNT
c i Connection Line i is attached to Terminal Line j
e Enable Monitoring of all Transactions
h Specify the Help Filespec
m Specify the Message Filespec
p Specify the Password Filespec
r Restart RTELNT after Disconnect
t j Terminal Line j is attached to Connection Line i
v Verbose Mode
y s Login Timeout in seconds
z s Inactivity Timeout in seconds
The program may be started interactively (for diagnostic pur-
poses) by the command file RTELNT.COM:
.sets cmdlin "-rpyz PAS:paswrd.fil 15 600 ...
... "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rtelnt.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RTELNT.CML:
-r -p PAS:paswrd.fil -y 15 -z 600
The RTELNT help and message files are RTELNT.HLP and RTELNT.MSG
respectively. The h or m options may be used if these files are
PROGRAM OPTIONS PAGE 5-12
RTELNT
not on the TCP: device. These files are created by the system
manager and are not required.
5.6 CNCT
The CNCT program allows the user to initiate a connection to
a remote RT-11/TSX-Plus host for a terminal session. This pro-
gram is the TELNET program stripped of all TELNET negotiations
and uses a non standard TCP port (27). The startup options for
CNCT are:
CNCT destination [?] [-hp]
? List the Help Text and Exit CNCT
h List the Help Text and Open Connection
p filename Specify the Password Filespec
The destination host specification may be the host name or host
ip number. If the connection is to be made to an alternate port
then follow the name/ip with the port number (decimal).
The CNCT program supports the following command line options
which are activated by the META character 'control A':
M->C open capture file
M->D close capture file
M->F FTP [internet address]
M->H this help screen
M->I type my internet address
M->O abort output
M->Q are you there?
M->S skip to end of buffer
M->X close connection
M->Y interrupt process
^? abort CNCT session
The IND control file CNCT.COM starts the program:
.sets cmdlin "-hb "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:cnct.sav
.data 'cmdlin'
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-13
RCNCT
5.7 RCNCT
RCNCT is a server program for remote CNCT sessions into
RT-11. This program is the RTELNT program stripped of all
TELNET negotiations and uses a non standard TCP port (27). The
startup options for RCNCT are:
RCNCT [?] [-hmp filespec] [-certvyz] [parameters]
? List the Help Text and Exit RCNCT
c i Connection Line i is attached to Terminal Line j
e Enable Monitoring of all Transactions
h Specify the Help Filespec
m Specify the Message Filespec
p Specify the Password Filespec
r Restart RCNCT after Disconnect
t j Terminal Line j is attached to Connection Line i
v Verbose Mode
y s Login Timeout in seconds
z s Inactivity Timeout in seconds
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RCNCT.COM:
.sets cmdlin "-rpyz PAS:paswrd.fil 15 600 ...
... "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rcnct.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RCNCT.CML:
-r -p PAS:paswrd.fil -y 15 -z 600
The RCNCT help and message files are RCNCT.HLP and RCNCT.MSG
respectively. The h or m options may be used if these files are
not on the TCP: device. These files are created by the system
manager and are not required.
PROGRAM OPTIONS PAGE 5-14
FTP
5.8 FTP
The FTP program provides reliable data transfer between
cooperating computer systems. The FTP program startup options
are:
FTP [?] [-f filename] [-p filename]
[-ghinrv] [destination host]
? List this Help Text and Exit FTP
f filename Command File
g Wildcard Expansion Disabled
h FTP Help List
i Interactive Prompting Off
n AutoLogin Disabled on Connect
p filename Specify the Password Filespec
r Output Redirection Disabled
v Verbose Mode Disabled
The destination host specification may be the host name or host
ip number. If the connection is to be made to an alternate port
then follow the name/ip with the port number (decimal).
If the work file device, wf:, is not assigned then the pro-
gram will fail to execute the commands mget, mdel, or mls.
The IND control file FTP.COM starts the program:
.sets cmdlin "-hb "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:ftp.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The FTP program supports the following command line options:
? print local help information
ascii set ascii transfer type
bell toggle command completed beep
bget get a file in binary mode
binary set binary transfer type
bput put a file in binary mode
bye terminate ftp session and exit
cd change remote working directory
close terminate ftp session
debug toggle/set debugging mode
delete delete remote file
- inquires if prompting is on
PROGRAM OPTIONS PAGE 5-15
FTP
dir list contents of remote directory
get receive file
hash toggle printing `#' for each
1024 bytes transferred
help print local help information
home set default directory to home
interactive turn on prompting for multiple commands
lcd change local working directory
ldelete delete local files
ldir list contents of local directory
lls list contents of local directory
lprotect set protection flag on local file
lpwd show local working directory
lrename rename a local file
ls list contents of remote directory
ltype print a local file to the screen
lunprotect clear protection flag on a local file
mdelete delete multiple files
mdir list contents of multiple remote directories
mget get multiple files
mkdir make directory on the remote machine
mls list contents of multiple remote directories
mode set file transfer mode
mput send multiple files
noninteractive turn off prompting on multiple commands
open connect to remote ftp
passive enable or disable passive transfer mode
prompt toggle interactive prompting
on multiple commands
protect set protection flag on file
put send one file
pwd print working directory on remote machine
quit terminate ftp session and exit
quote send arbitrary ftp command
recv receive file
remotehelp get help from remote server
rename rename remote file
rm delete remote file
rmdir remove directory on the remote machine
send send one file
sendport toggle use of PORT cmd for each data connection
status show current status
struct set file transfer structure
system query remote system type
type print a remote file to the screen
unprotect clear protection flag on file
user send new user information
verbose toggle verbose mode
version FTP-11 version displayed
wild toggle wildcard expansion of local file names
> <filespec> redirect (m)dir or (m)ls response to a file
PROGRAM OPTIONS PAGE 5-16
FTP
The commands bget, get, put, and send allow explicit renaming
of the files during the transfer by specifying the optional
destination file name:
bget/get/put/send [source name] [destination name]
5.9 FTPL
The FTPL program provides reliable data transfer between
cooperating computer systems. FTPL is a stripped version of the
FTP program for use on smaller systems. The FTPL program
startup options are:
FTPL [?] [-p filename] [-ghinv] [destination host]
? List this Help Text and Exit FTPL
g Wildcard Expansion Disabled
h FTPL Help List
i Interactive Prompting Off
n AutoLogin Disabled on Connect
v Verbose Mode Disabled
The destination host specification may be the host name or host
ip number. If the connection is to be made to an alternate port
then follow the name/ip with the port number (decimal).
If the work file device, wf:, is not assigned then the pro-
gram will fail to execute the commands mget, mdel, or mls.
The IND control file FTPL.COM starts the program:
.sets cmdlin "-h "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:ftpl.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The FTPL program supports the following command line options:
? print local help information
ascii set ascii transfer type
bell toggle command completed beep
bget get a file in binary mode
binary set binary transfer type
bput put a file in binary mode
bye terminate ftp session and exit
cd change remote working directory
PROGRAM OPTIONS PAGE 5-17
FTPL
close terminate ftp session
debug toggle/set debugging mode
delete delete remote file
- inquires if prompting is on
dir list contents of remote directory
get receive file
hash toggle printing `#' for each
1024 bytes transferred
help print local help information
interactive turn on prompting for multiple commands
ls list contents of remote directory
mdelete delete multiple files
mget get multiple files
mkdir make directory on the remote machine
mode set file transfer mode
mput send multiple files
noninteractive turn off prompting on multiple commands
open connect to remote ftp
passive enable or disable passive transfer mode
prompt toggle interactive prompting
on multiple commands
put send one file
pwd print working directory on remote machine
quit terminate ftp session and exit
quote send arbitrary ftp command
recv receive file
remotehelp get help from remote server
rename rename remote file
rm delete remote file
rmdir remove directory on the remote machine
send send one file
sendport toggle use of PORT cmd for each data connection
status show current status
struct set file transfer structure
system query remote system type
type print a remote file to the screen
user send new user information
verbose toggle verbose mode
version FTP-11 version displayed
wild toggle wildcard expansion of local file names
The commands bget, get, put, and send allow explicit renaming
of the files during the transfer by specifying the optional
destination file name:
bget/get/put/send [source name] [destination name]
PROGRAM OPTIONS PAGE 5-18
RFTP
5.10 RFTP
RFTP is a server program for remote FTP sessions into RT-11.
The program startup options are:
RFTP [?] [-hmp filespec] [-y s] [-z s] [-eruv]
? List the Help Text and Exit RFTP
e Monitor all RFTP Transactions
h Specify the Help Filespec
m Specify the Message Filespec
p Specify the Password Filespec
r Restart RFTP after Disconnect
u UNIX Style DIR Command
v Verbose Mode
y s Login Timeout in seconds
z s Inactivity Timeout in seconds
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RFTP.COM:
.sets cmdlin "-rpyz PAS:paswrd.fil 15 600 ...
... "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rftp.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RFTP.CML:
-r -p PAS:paswrd.fil -y 15 -z 600
The RFTP help and message files are RFTP.HLP and RFTP.MSG
respectively. The h or m options may be used if these files are
not on the TCP: device. These files are created by the system
manager and are not required.
The -u option specifies that the 'LIST' command returns a
UNIX style directory listing rather than the default RT-11 style
directory format. This format is useful if the remote systems
are PC's using one of the window oriented FTP utilities such as
PROCOMM V3.0 (DataStorm Technologies). These utilities use the
unix access-rights string to determine whether the entries are
PROGRAM OPTIONS PAGE 5-19
RFTP
files or directories. The general form for the UNIX style
directory is:
-rwxrwxrwx 1 system user 1536 12 Jan 96 file.ext
drwxrwxrwx 1 system user 512000 01 Mar 96 subdir.dsk
5.11 MAIL
The MAIL program provides local and internet mail services.
This program is recommended for systems not requiring a POP3
server. The startup options for MAIL are:
MAIL [?] [-fp filespec] [-i IP Address] [-z s]
? List the Help Text and Exit MAIL
f filename Command File
h Help list
i IP Address Intermediate Host Name / IP Address
p filename Specify the Password Filespec
z s Connection Timeout in Seconds
The Intermediate Host IP option provides a means of routing the
internet mail through another host machine. The RT-11 MAIL pro-
gram does not support retry operations if the mail cannot be
delivered, using an intermediate host supporting retries will
provide this feature to the RT-11 MAIL system. Permission to
use a particular host as a MAIL relay should be obtained from
the hosts' system manager. The option must be specified using
the complete name (an IP address may also be used). A typical
invocation follows:
-i mail.domain.name
The MAIL program is invoked from the IND control file MAIL.COM:
.sets cmdlin "-hpz PAS:paswrd.fil 60 ...
... "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:mail.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The MAIL program supports the following command line options:
PROGRAM OPTIONS PAGE 5-20
MAIL
? print local help information
bye terminate the MAIL program
copy copy a message to a file
debug toggle/set debugging mode
delete delete a message
dir list of unread mail messages
exit terminate the MAIL program
hash toggle printing `#' during transfers
help print local help information
home go to home (initial) directory
index an index of received mail
interactive turn on prompting on multiple commands
last read most recent mail message
lcd change local working directory
ldelete delete local files
ldir list contents of local directory
listmail list of unread mail messages
lls list contents of local directory
lprotect set protection flag on local file
lpwd show local working directory
lrename rename a local file
ltype print a local file to the screen
lunprotect clear protection flag on a local file
mail go to mail directory
newmail count number of new mail messages
noninteractive turn off prompting on multiple commands
prompt toggle interactive prompting
on multiple commands
quit terminate the MAIL program
read read a mail message
scan scan directory for all mail messages
send [filespec] initiate the sending of a message
status show current status
user enter a new user/password access key
verbose toggle verbose mode
version MAIL-11 version displayed
wild toggle wildcard expansion of local file names
Mail is sent to a local user if only a name is specified and to
a remote machine if the user and IP address are specified.
Local: username
Internet: [email protected]
The MAIL programs MAIL.SAV, MMAIL.SAV, MAILER.SAV, RPOP3.SAV,
and RSMTP.SAV make use of the password file to restrict access
to the mail system. A user may have local and/or remote MAIL
access (or no access) depending on the password file parameters.
PROGRAM OPTIONS PAGE 5-21
MAIL
Incoming mail may be directed to a users' default directory
or to a specific mail directory (specified in the password
file). A typical configuration is to create a mail directory,
SY:MAIL.DSK, and have mail subdirectories for each user. Thus
the path SY:/MAIL/USER1/ specifies the users' unique mail direc-
tory and should be specified in the password configuration. The
local mail programs MAIL.SAV, MMAIL.SAV, and MAILER.SAV and the
remote mail programs RSMTP.SAV and RPOP3.SAV check the password
file to verify that the user has the privilege to send or re-
ceive mail via the network and places any received mail in the
specified mail directory. These programs will use/create a mail
index file in the mail directory which is used to keep an index
of all received mail.
5.12 MMAIL
The MMAIL program is a front end interface to the MAILER ser-
vice. This program is recommended for systems requiring a POP3
server. The startup options for MMAIL are:
MMAIL [?] [-fp filespec] [-h]
? List the Help Text and Exit MMAIL
f filename Command File
h Help list
p filename Specify the Password Filespec
The MAILER delivery task must have been started in TCPIP.RUN.
The MAILER actually sends the mail messages produced by MMAIL.
The MMAIL program is invoked from the IND control file
MMAIL.COM:
.sets cmdlin "-hp PAS:paswrd.fil ...
... "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:mmail.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The MMAIL program supports the following command line options:
? print local help information
bye terminate the MMAIL program
copy copy a message to a file
debug toggle/set debugging mode
delete delete a message
PROGRAM OPTIONS PAGE 5-22
MMAIL
dir list of unread mail messages
exit terminate the SMAIL program
help print local help information
home go to home (initial) directory
index an index of received mail
interactive turn on prompting for multiple commands
last read most recent mail message
lcd change local working directory
ldelete delete local files
ldir list contents of local directory
listmail list of unread mail messages
lls list contents of local directory
lprotect set protection flag on local file
lpwd show local working directory
lrename rename a local file
ltype print a local file to the screen
lunprotect clear protection flag on a local file
mail go to mail directory
newmail count number of new mail messages
noninteractive turn off prompting for multiple commands
prompt toggle interactive prompting
on multiple commands
quit terminate the MAIL program
read read a mail message
scan scan directory for all mail messages
send [filespec] initiate the sending of a message
status show current status
user enter a new user/password access key
version SMAIL-11 version displayed
wild toggle wildcard expansion of local file names
Mail is sent to a local user if only a name is specified and to
a remote machine if the user and IP address are specified.
Local: username
Internet: [email protected]
The MAIL programs MAIL.SAV, MMAIL.SAV, MAILER.SAV, RPOP3.SAV,
and RSMTP.SAV make use of the password file to restrict access
to the mail system. A user may have local and/or remote MAIL
access (or no access) depending on the password file parameters.
Incoming mail may be directed to a users' default directory
or to a specific mail directory (specified in the password
file). A typical configuration is to create a mail directory,
SY:MAIL.DSK, and have mail subdirectories for each user. Thus
the path SY:/MAIL/USER1/ specifies the users' unique mail
directory and should be specified in the password configuration.
PROGRAM OPTIONS PAGE 5-23
MMAIL
The local mail programs MAIL.SAV, MMAIL.SAV, and MAILER.SAV and
the remote mail programs RSMTP.SAV and RPOP3.SAV check the pass-
word file to verify that the user has the privilege to send or
receive mail via the network and places any received mail in the
specified mail directory. These programs will use/create a mail
index file in the mail directory which is used to keep an index
of all received mail.
5.13 RPOP3
RPOP3 is a server program for remote access to the RT-11 mail
system via the extended POP3 protocol. This server supports the
PC shareware packages PC Eudora and WinQVT/Net for Windows 3.x
and NT in particular and others using the POP3 protocol. The
program startup options are:
RPOP3 [?] [-p filespec] [-y s ] [-z s] [-erv]
? List the Help Text and Exit RPOP3
e Enable Monitoring of
RPOP3 Transactions
p filespec Specify the Password Filespec
r Restart RPOP3 after Disconnect
v Verbose Mode
y s Login Timeout in seconds
z s Inactivity Timeout in seconds
If an extended POP3 client is sending mail to the POP3 server
then the MAILER delivery task must have been started in
TCPIP.RUN. The MAILER actually sends the mail messages produced
by RPOP3.
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RPOP3.COM:
.sets cmdlin -rpyz PAS:paswrd.fil 15 600 ...
... "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rpop3.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RPOP3.CML:
PROGRAM OPTIONS PAGE 5-24
RPOP3
-r -p PAS:paswrd.fil -y 15 -z 600
The MAIL programs MAIL.SAV, MMAIL.SAV, MAILER.SAV, RPOP3.SAV,
and RSMTP.SAV make use of the password file to restrict access
to the mail system. A user may have local and/or remote MAIL
access (or no access) depending on the password file parameters.
Incoming mail may be directed to a users' default directory
or to a specific mail directory (specified in the password
file). A typical configuration is to create a mail directory,
SY:MAIL.DSK, and have mail subdirectories for each user. Thus
the path SY:/MAIL/USER1/ specifies the users' unique mail direc-
tory and should be specified in the password configuration. The
local mail programs MAIL.SAV, MMAIL.SAV, and MAILER.SAV and the
remote mail programs RSMTP.SAV and RPOP3.SAV check the password
file to verify that the user has the privilege to send or re-
ceive mail via the network and places any received mail in the
specified mail directory. These programs will use/create a mail
index file in the mail directory which is used to keep an index
of all received mail.
5.14 MAILER
MAILER is a backend program for MMAIL and RPOP3 which
provides mail delivery to local users and remote destinations.
When MAILER is activated it scans all user mail directories for
files with names similiar to ml____.nnn created by MMAIL or
RPOP3. These files are routed to their respective destinations
and then deleted. If the mail is not deliverable then the mes-
sage is directed back to the sender. The program startup op-
tions are:
MAILER [?] [-p filespec] [-i IP-address] [-z s] [-ev]
? List the Help Text and Exit MAILER
e Enable Monitoring of MAILER Transactions
i IP-address Intermediate Host Name / IP Address
p filespec Specify the Password Filespec
t n (minutes) Continuous Scanning Time Interval
v Verbose Mode
z s Connection Timeout in Seconds
The Intermediate Host IP option provides a means of routing the
internet mail through another host machine. The RT-11 MAIL pro-
gram does not support retry operations if the mail cannot be
delivered, using an intermediate host supporting retries will
provide this feature to the RT-11 MAIL system. Permission to
use a particular host as a MAIL relay should be obtained from
PROGRAM OPTIONS PAGE 5-25
MAILER
the hosts' system manager. The option must be specified using
the complete name (an IP address may also be used). A typical
invocation follows:
-i mail.domain.name
The program may be started interactively (for diagnostic pur-
poses) by the IND control file MAILER.COM:
.sets cmdlin "-pit PAS:paswrd.fil ...
... mail.domain.name 15 "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:mailer.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:MAILER.CML:
-p PAS:paswrd.fil -t 15 -i mail.domain.name
The specification of device wf: is required by MAILER to tem-
porarily store local mail messages before writing the mail to
the users mail directories. If wf: is undefined, inaccessable,
or not initialized then mail will not be delivered.
The MAIL programs MAIL.SAV, MMAIL.SAV, MAILER.SAV, RPOP3.SAV,
and RSMTP.SAV make use of the password file to restrict access
to the mail system. A user may have local and/or remote MAIL
access (or no access) depending on the password file parameters.
Incoming mail may be directed to a users' default directory
or to a specific mail directory (specified in the password
file). A typical configuration is to create a mail directory,
SY:MAIL.DSK, and have mail subdirectories for each user. Thus
the path SY:/MAIL/USER1/ specifies the users' unique mail direc-
tory and should be specified in the password configuration. The
local mail programs MAIL.SAV, MMAIL.SAV, and MAILER.SAV and the
remote mail programs RSMTP.SAV and RPOP3.SAV check the password
file to verify that the user has the privilege to send or re-
ceive mail via the network and places any received mail in the
specified mail directory. These programs will use/create a mail
index file in the mail directory which is used to keep an index
of all received mail.
PROGRAM OPTIONS PAGE 5-26
RSMTP
5.15 RSMTP
RSMTP is a server program for remote MAIL into RT-11. The
program startup options are:
RSMTP [?] [-hp filespec] [-z s] [-erv]
? List the Help Text and Exit RSMTP
e Monitor all RSMTP Transactions
h Specify the Help Filespec
p Specify the Password Filespec
r Restart RSMTP after Disconnect
v Verbose Mode
z s Inactivity Timeout in Seconds
The RSMTP help file RSMTP.HLP is of diagnostic use only.
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RSMTP.COM:
.sets cmdlin "-rpz PAS:paswrd.fil 600 ...
... "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rsmtp.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RSMTP.CML:
-r -p PAS:paswrd.fil -z 600
The specification of device wf: is required by RSMTP to tem-
porarily store incoming mail messages before writing the mail to
the users mail directories. If wf: is undefined, inaccessable,
or not initialized then incoming mail will not be delivered.
The MAIL programs MAIL.SAV, MMAIL.SAV, MAILER.SAV, RPOP3.SAV,
and RSMTP.SAV make use of the password file to restrict access
to the mail system. A user may have local and/or remote MAIL
access (or no access) depending on the password file parameters.
Incoming mail may be directed to a users' default directory
or to a specific mail directory (specified in the password
file). A typical configuration is to create a mail directory,
PROGRAM OPTIONS PAGE 5-27
RSMTP
SY:MAIL.DSK, and have mail subdirectories for each user. Thus
the path SY:/MAIL/USER1/ specifies the users' unique mail direc-
tory and should be specified in the password configuration. The
local mail programs MAIL.SAV, MMAIL.SAV, and MAILER.SAV and the
remote mail programs RSMTP.SAV and RPOP3.SAV check the password
file to verify that the user has the privilege to send or re-
ceive mail via the network and places any received mail in the
specified mail directory. These programs will use/create a mail
index file in the mail directory which is used to keep an index
of all received mail.
5.16 LLPQRM
LLPQRM is the program which submits, controls and reports the
status of the local LPRINT daemon. The program performs the
functions of LPC, LPQ, LPR, and LPRM. The program startup op-
tions are:
LLPQRM [?] [-p filespec] -o opt [opt arguments]
? List the Help Text and Exit LLPQRM
p filespec LPD configuration file
o lpc [?] Start printer queue
lpq [?] Get printer queue status
lpr [?] Submit a job to a printer queue
lprm [?] Remove a job from a printer queue
The -o opt argument must preceed the opt specific op-
tions.
The LPRINT job must be running for LLPQRM to function properly
and is usually started in TCPIP.RUN.
Program sub options are:
PROGRAM OPTIONS PAGE 5-28
LLPQRM
LPC [?]
? List the LPC Help Text and Exit LLPQRM
LPQ [?] [-#P argument]
? List the LPQ Help Text and Exit LLPQRM
# n Repeat query time in seconds
P Queue Name Printer Queue
LPR [?] [-#IPW argument] [-flr] [file to print]
? List the LPR Help Text and Exit LLPQRM
# n # of copies to print (1-5)
I n Indentation
P Queue Name Printer Queue (default = lp)
W n Page Width
f Plain Text Printing (default)
l No Control Character Processing
r Fortran Carriage Control Printing
LPRM [?] [-P argument] [file to remove from queue]
? List the LPRM Help Text and Exit LLPQRM
P Queue Name Printer Queue
Each of the options is invoked by an IND control file more indi-
cative of its intended function. The IND control file QUOTE.COM
places the arguments in quotes. DECUS C will convert everything
to lower case without the quotes.
5.16.1 LLPC
LLPC.COM is the local start printer daemon IND control file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:llpqrm.sav
.data -pto TCP:lpdqrm.cfg 2 lpc
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
PROGRAM OPTIONS PAGE 5-29
LLPQRM
5.16.2 LLPQ
LLPQ.COM is the local check printer queue status IND control
file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:llpqrm.sav
.data -pto TCP:lpdqrm.cfg 2 lpq
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
5.16.3 LLPR
LLPR.COM is the local print command file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:llpqrm.sav
.data -bpto TCP:lpdqrm.cfg 2 lpr
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
5.16.4 LLPRM
LLPRM.COM is the local remove queued print file command file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:llpqrm.sav
.data -bpto TCP:lpdqrm.cfg 2 lprm
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
For a normal user:
(1) if the printer queue is not specified then all of the queues are
checked.
(2) If a file name is not specified then all queued files for this
user are checked and the user queried for each file to be
deleted.
For the special user 'system':
(1) if the printer queue is not specified then all of the queues are
checked.
(2) If a file name is not specified then all queued files for all
users are checked and the 'system' queried for each file to be
PROGRAM OPTIONS PAGE 5-30
LLPQRM
deleted.
(3) If a username is entered, then all files for this user are
checked and 'system' queried for each file deletion.
(4) If a filename is entered, then the specific file is checked and
'system' queried for file deletion.
5.17 RLPD
RLPD is a server program providing remote printing on the
RT-11 system printer. The program startup options are:
RLPD [?] [-p filespec] [-erv]
? List the Help Text and Exit RLPD
e Enable Monitoring of RLPD Transactions
p filespec Specify the Configuration Filespec
r Restart RLPD after Disconnect
v Verbose Mode
The LPRINT job must be running for LLPQRM to function properly
and is usually started in TCPIP.RUN.
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RLPD.COM:
.sets cmdlin "-rp TCP:lpdqrm.cfg "+"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rlpd.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RLPD.CML:
-r -p TCP:lpdqrm.cfg
PROGRAM OPTIONS PAGE 5-31
LPRINT
5.18 LPRINT
The program LPRINT is the backend printing daemon servicing
printing on the RT-11 system. Print jobs submitted by remote
systems through the RLPD server and local print jobs submitted
through LLPQRM are processed by the LPRINT task. RLPD and
LLPQRM write two files (cfa.nnn and dfa.nnn) into a temporary
file directory, cfa.nnn is the print control file and dfa.nnn is
the print data file. At the completion of the printing job
these files are deleted.
The command options for LPRINT are:
LPRINT [?] [-p filespec] [-t n] [-v]
? List the Help Text and Exit LPRINT
p filespec Specify the Configuration Filespec
t n (minutes) Continuous Scanning Time Interval
v Verbose Mode
The LLPQRM.CFG configuration file is of the following form:
001 ; three digit sequence
sy2:\lpdtmp\ ; temporary directory
sy0:\paswrd\paswrd.fil ; pass word file
lp * name ls: ; line printer
dspcgc * name hf: ; cgc graphics device
dspqbs * name hg: ; qbs graphics device
file * name sy3:\tmpwrk\ ; write to a file
lp pdp * ls: ; line printer
dspcgc pdp * hf: ; cgc graphics device
dspqbs pdp * hg: ; qbs graphics device
The first line is a sequence number maintained by RLPD, LLPQRM,
and LPRINT. The second line is the directory used for holding
the queued files until processed by LPRINT. The third line
references the password file which may be used to check if the
user exists.
The fourth and succeeding lines contain printing queues and
their access permissions. The four entries are:
(1) queue name
(2) machine name (* is any)
(3) user name (* is any)
(4) device
The data is copied to the specified printing device or random
access device using the name in the print control file
(cfa.nnn).
PROGRAM OPTIONS PAGE 5-32
LPRINT
The program may be started interactively (for diagnostic pur-
poses) by the IND control file LPRINT.COM:
.sets cmdlin "-pt TCP:lpdqrm.cfg 15 " ...
... +"'p1' 'p2' 'p3' 'p4'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:lprint.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:LPRINT.CML:
-p TCP:lpdqrm.cfg -t 2
The specification of device wf: is required by LPRINT to tem-
porarily store data files before writing the data to subdirec-
tories. If wf: is undefined, inaccessable, or not initialized
then data will not be copied.
5.19 LPQRM
LPQRM is the program which submits, controls and reports the
status of remote printer queues. The program performs the func-
tions of LPC, LPQ, LPR, and LPRM. The program startup options
are:
LPQRM [?] [-ipq argument] [-e] -o opt [opt arguments]
? List the Help Text and Exit LPQRM
e Enable Monitoring of LPQRM Transactions
i IP Address Remote Server Name / IP Address
n Port Number Remote Server Port Number
q Queue Name Remote Server Printer Queue
p filespec Configuration File
o lpc [?] Start printer queue
lpq [?] Get printer queue status
lpr [?] Submit a job to a printer queue
lprm [?] Remove a job from a printer queue
The -o opt argument must preceed the opt specific op-
tions.
Program sub options are:
PROGRAM OPTIONS PAGE 5-33
LPQRM
LPC [?] [-SP argument]
? List the LPC Help Text and Exit LPQRM
P Queue Name Remote Host Printer Queue
S IP Address Remote Host IP Address
LPQ [?] [-SP# argument] [-l]
? List the LPQ Help Text and Exit LPQRM
# n Repeat query time in seconds
l Long form of queue status
P Queue Name Remote Host Printer Queue
S IP Address Remote Host Name / IP Address
LPR [?] [-SPIW# argument] [-flr] [filespec]
? List the LPR Help Text and Exit LPQRM
# n # of copies to print (1-5)
P Queue Name Remote Host Printer Queue
S IP Address Remote Host Name / IP Address
f ASCII Plain Text (default)
l ASCII With Controls
r Fortran Carriage Control
I n Indentation (f option only)
W n Page Width (flr options only)
Other Options:
1234cdghnoptvz UNIX(tm) Options
M Mail Option
C Class J Job
L Banner T Title
LPRM [?] [-SP argument] job [job [...]]
? List the LPRM Help Text and Exit LPQRM
P Queue Name Remote Host Printer Queue
S IP Address Remote Host Name / IP Address
Each of the options is invoked by a command file more indicative
of its intended function. The IND control file QUOTE.COM places
the arguments in quotes. DECUS C will convert everything to
lower case without the quotes.
PROGRAM OPTIONS PAGE 5-34
LPQRM
5.19.1 LPC
LPC.COM is the remote start printer daemon IND control file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:lpqrm.sav
.data -po TCP:lpdqrm.cfg lpc
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
5.19.2 LPQ
LPQ.COM is the remote check printer queue status IND control
file.
.open tcpfun.com
.data r sy:vbgexe.sav
.data TCP:lpqrm.sav
.data -po TCP:lpdqrm.cfg lpq
.close
@TCP:quote 'P1' 'P2' 'P3' 'P4' 'P5' 'P6'
5.19.3 LPR
LPR.COM is the remote print IND control file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:lpqrm.sav
.data -bpo TCP:lpdqrm.cfg lpr
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
5.19.4 LPRM
LPRM.COM is the remote remove queued print file IND control
file.
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:lpqrm.sav
.data -bpo TCP:lpdqrm.cfg lprm
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
PROGRAM OPTIONS PAGE 5-35
NTSND
5.20 NTSND
NTSND is a program for transferring data to a remote printer
without any translation (good for binary files). This program
supports products such as the Emulex NETJET for the HP 4Si/Mx
printer. The command options are:
NTSND [?] [-inpq argument] file [file [...]]
? List the Help Text and Exit NTSND
i IP Address Remote Server Name / IP Address
n Port Number Remote Server Port Number
p filespec Password File
q Query for File Name
The NTSND program is invoked from the IND control file
NTSND.COM:
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:ntsnd.sav
.data -bp PAS:paswrd.fil
.close
@TCP:quote 'p1' 'p2' 'p3' 'p4' 'p5' 'p6'
5.21 RHTTP
RHTTP is an HTTP/0.9 server supporting only simple request
and response formats for GET, HEAD, and POST methods. The POST
method always responds as unimplemented. HTTP transfers are
always in BINARY format except for files of type HTM, DOC, TXT,
and LST which are in ASCII format. The command options are:
RHTTP [?] [-p filespec] [-z s] [-erv]
? List the Help Text and Exit RHTTP
e Enable Monitoring of all
RHTTP Transactions
p Specify the HTTP Directory and Home File
r Restart RHTTP after Disconnect
v Verbose Mode
z s Inactivity Timeout in seconds
The HTTP directory and home file must be specified, using the -p
option. The directory path is used as the base directory for
all HTTP accesses. HTTP accesses with absolute directory speci-
fications (e.g. dl1:file.ext) are reported as unauthorized.
The RT-11 version of RHTTP does not support subdirectory pro-
cessing. The home file is the file read when a request is made
PROGRAM OPTIONS PAGE 5-36
RHTTP
with no file specified, this is typically the home page for this
computer system.
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RHTTP.COM:
.sets cmdlin "-rpz HTP:/home.htm 30 "+ ...
... "'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rhttp.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
program gets the command line arguments from the file
TCP:RHTTP.CML:
-r -p HTP:/home.htm
The RHTTP program requires, at the minimum, a dedicated
device (logical device) and a home file. Only files in this
directory are accessable by the http server. The home file is
the file read by the http server when no specific file is speci-
fied. The http directory and home file are specified by the
RHTTP option:
-p dl1:/home.htm
NOTE
The slash, /, is required to delimit the HTTP base
directory.
All accesses to files outside the http directory are not per-
mitted and are reported as unauthorized. Absolute references
are not allowed (e.g. dl1:/file.ext) even if they are in the
http directory, these are also reported as unauthorized. Use
only relative paths in file specifications to the http direc-
tory. These requirements provide the most security for http re-
quests which require no password authentication.
PROGRAM OPTIONS PAGE 5-37
RHTTP
The home file is an HTML file and should be written to re-
flect the functionality of the browsers you wish to support with
this http server.
5.22 RGOPH
RGOPH is a simple Gopher server supporting transfers of text,
binary, and image files and linking to other network resources
using basic ASCII text constructs. The command options are:
RGOPH [?] [-p filespec] [-z s] [-erv]
? List the Help Text and Exit RGOPH
e Enable Monitoring of all
RGOPH Transactions
p Specify the Master GOPHER File
r Restart RGOPH after Disconnect
v Verbose Mode
z s Inactivity Timeout in seconds
The Gopher master file must be specified, using the -p option.
The master file contains the access specifications for the go-
pher server. The format of the master file is described in the
file RGOPH.CFG and included here for reference:
NOTE
The RT-11 version of RGOPH does not support local sub-
directory processing, only real devices and logical
devices are supported for local access.
PROGRAM OPTIONS PAGE 5-38
RGOPH
#
# This is the Master Gopher List
#
# Each entry has the following format:
#<code><TAB>description
# <TAB>file or list specification
# <TAB>machine name or IP address
# <TAB>port number
#
# End list with '.' and <CRLF>
#
# Common item types specified by <code> are:
#
# 0 item is a file
# 1 item is a directory
# 2 item is a CSO phone-book server
# 3 Error
# 4 item is a NINHEXed MacIntosh file
# 5 item is DOS archive of some sort
# 6 item is a UNIX uuencoded file
# 7 item is an Index-Search server
# 8 item points to a text-based telnet server
# 9 item is a binary file
# + item is a redundant server
# T item points to a text-based TN3270 session
# g item is a GIF format graphics file
# I item is some kind of image file
#
# All references are described in RFC1436
#
The master list contains file and list references which denote a
tree structure of accessible resources. A typical master list
is shown here to clarify the specification.
The top level follows:
PROGRAM OPTIONS PAGE 5-39
RGOPH
0 About This GOPHER Site
sy2:/gopher.dsk/rgoph.doc
shop-pdp.kent.edu
70
1 TCP/IP Package For TSX-Plus, ...
List1/
shop-pdp.kent.edu
70
1 ASxxxx Assemblers and Linker
List2/
shop-pdp.kent.edu
70
.
The 'List1/' (<code> = 1) specification indicates this is a
directory of subitems:
PROGRAM OPTIONS PAGE 5-40
RGOPH
#
# Elements of List1/
#
List1/
0 Abstract [2K]
sy3:/tcpip.pkg/abstra.doc
shop-pdp.kent.edu
70
0 Documentation [158K]
sy3:/tcpip.pkg/manual.doc
shop-pdp.kent.edu
70
9 Minimal Package, Logical Disk Image, [300K]
sy3:/tcpipm.dsk
shop-pdp.kent.edu
70
9 Complete Package, Multilevel Logical ...
sy3:/tcpip.pkg/tcpip.dsk
shop-pdp.kent.edu
70
9 Disk1 of Package, RX02 Image [494K]
sy3:/tcpip.pkg/tcpip.dsk/disk1.dsk
shop-pdp.kent.edu
70
9 Disk2 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk2.dsk
shop-pdp.kent.edu
70
9 Disk3 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk3.dsk
shop-pdp.kent.edu
70
9 Disk4 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk4.dsk
shop-pdp.kent.edu
70
9 Disk5 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk5.dsk
shop-pdp.kent.edu
70
9 Disk6 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk6.dsk
shop-pdp.kent.edu
70
9 Disk7 of Package, RXO2 Image [494k]
sy3:/tcpip.pkg/tcpip.dsk/disk7.dsk
shop-pdp.kent.edu
70
PROGRAM OPTIONS PAGE 5-41
RGOPH
9 Documentation Source, RX02 Image [494K]
sy3:/tcpip.pkg/tcpip.dsk/tcpdoc.dsk
shop-pdp.kent.edu
70
9 Current Updates, Logical Disk Image [988K]
sy3:update.dsk
shop-pdp.kent.edu
70
.
The 'List2/' (<code> = 1) specification indicates the presence
of a second directory of available resources:
#
# Elements of List2/
#
List2/
1 ASxxxx for PDP-11 and LSI-11 Computers
List2.1/
shop-pdp.kent.edu
70
1 ASxxxx for PC Compatible Computers
List2.2/
shop-pdp.kent.edu
70
.
These elements also contain references to additional subdirec-
tories of resources. Nesting to any level may be accomplished
using this syntax. Ensure that all subdirectory references have
unique names. The use of 'xxxxx/' is not required, any unique
character string may be used to reference a subdirectory entry.
The program may be started interactively (for diagnostic pur-
poses) by the IND control file RGOPH.COM:
.sets cmdlin "-rp GPH:/home.htm "+ ...
... "'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:rgoph.sav
.data 'cmdlin'
.close
$@sy:tcpfun
The program is normally started as a system job by the TCPIP.RUN
command file. When started as a foreground or system job the
PROGRAM OPTIONS PAGE 5-42
RGOPH
program gets the command line arguments from the file
TCP:RGOPH.CML:
-r -p GPH:/home.htm
5.23 UTIL
The program UTIL is a compendium of various functions used to
perform useful operations on RT-11 subdirectories. The command
options for UTIL are:
UTIL [?] [-cdlmnpqru] [file-spec(s)]
? List this Help Text and Exit UTIL
c change directory
d delete a file
l list a directory
m make a directory
n delete a directory
p set protection flag on a file
q disable query on delete
r rename a file
u clr protection flag on afile
Each of the options is invoked by a command file more indicative
of its intended function. Most of the subdirectory commands are
not supported in the RT-11 version of UTIL.
5.23.1 LCD
Change directory IND control file LCD.COM:
.sets cmdlin "-sc 0 4 "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.data $@wf:cmdfil
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-43
UTIL
5.23.2 LDEL
Delete file IND control file LDEL.COM:
.sets cmdlin "-d "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.23.3 LDIR
List directory IND control file LDIR.COM:
.sets cmdlin "-l "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.23.4 LLS
List directory IND control file LLS.COM:
.sets cmdlin "-l "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-44
UTIL
5.23.5 LMKDIR
Make a subdirectory IND control file LMKDIR.COM:
.sets cmdlin "-m "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.23.6 LPRO
Set protection flag IND control file LPRO.COM:
.sets cmdlin "-p "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.23.7 LRENAM
Rename a file IND control file LRENAM.COM:
.sets cmdlin "-r "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-45
UTIL
5.23.8 LRMDIR
Remove a subdirectory IND control file LRMDIR.COM:
.sets cmdlin "-n "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.23.9 LUNP
Clear protection flag IND control file LUNP.COM:
.sets cmdlin "-u "+"'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:util.sav
.data 'cmdlin'
.close
$@sy:tcpfun
5.24 LDISKS
The LDISKS program generates a subdirectory map for each
device specified and optionally outputs the result to a file.
This utility is not supported under RT-11.
5.25 ABRTCP
ABRTCP is a program which attempts to gracefully abort the
TCPIP system. All TCP/IP connections are closed, all
client(s)/server(s) are requested to abort, and the TCPIP server
closes. The program is invoked from the IND control file
ABRTCP.COM: as:
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:abrtcp.sav
.close
$@sy:tcpfun
PROGRAM OPTIONS PAGE 5-46
ABRTJB
5.26 ABRTJB
ABRTJB is a program which attempts to gracefully abort a
specific TCP/IP client/server program. The program is invoked
from the IND control file ABRTJB.COM:
.sets cmdlin "'p1' 'p2' 'p3' 'p4' 'p5' 'p6'"
.open sy:tcpfun.com
.data r sy:vbgexe.sav
.data TCP:abrtjb.sav
.data 'cmdlin'
.close
$@sy:tcpfun
and may request from 1 to 6 jobs be aborted. The job aborts are
sent to the TCPIP server program which closes any open connec-
tions associated with the job and sends an abort request to the
specified job. This program will not abort the TCPIP server
program.
CHAPTER 6
ETHERNET DEVICE HANDLERS
The device handlers provide support for the following
hardware controllers:
1. DEQNA/DELQA (EQ and NQ Drivers)
2. DEUNA/DELUA (EU and NU Drivers)
3. DECNA (NC Driver)
The Ethernet handlers provide support for one controller and
a maximum of 8 units numbered 0 through 7. These unit numbers
are used as a logical connection between a user program and an
address/protocol pair to be recognized by the Ethernet hardware.
The NC/NQ/NU device handlers are the DEC handlers modified to
include special functions 206 (enable/disable frame bufferring),
207 (get physical address) and 210 (get handler status block).
These handlers support only RT11XM V5.6 (and later), NU is coded
to use the UB.SYS pseudo handler for UNIBUS systems with greater
than 256K bytes. The NC/NQ/NU handlers perform all interrupt
processing at IRQ level (FORK level is never entered), and do
not internally support device timeout.
The EQ/EU device handlers are logically equivalent to the
NQ/NU device handlers but were designed with special functions
206 (enable/disable frame bufferring), 207 (get physical ad-
dress), 210 (get handler status block), and 211 (abort job i/o,
for SJ monitors only). These handlers may be conditionally as-
sembled to support the RT11 SJ, SB, FB, and XM monitors (ver-
sions 5.3 and later) not supported by the NQ/NU device handlers.
The EQ and EU handlers may be conditionally assembled for
Version 6 of the TSX-Plus operating system. The 22-bit EU
handler requires a change in the TSX sysgen file TSGEN.MAC to
allocate 4 UMR registers to the EU handler. TSX-Plus versions
6.0 through 6.2 require a unique version of the EQ/EU handler
ETHERNET DEVICE HANDLERS Page 6-2
with special functions 300 (get PLAS region size), 301 (initial-
ize handler with PLAS region base address), and the support pro-
gram ENPLAS.SAV. The program ENPLAS.SAV creates the PLAS memory
region required by the handler.
ETHERNET DEVICE HANDLERS Page 6-3
6.1 DEVICE HANDLER SYSTEM SUMMARY
Summary of prebuilt EQ/EU/NC/NQ/NU
device drivers and supported systems:
RT-11 VERSION [5.3] [5.4] [5.5] [5.6 ...] TSX
----- ----- ----- --------- ---
eqsjms.sys SJ/FB SJ/FB SJ/FB - -
eusjms.sys SJ/FB SJ/FB SJ/FB - -
eqsjps.sys SJ/FB SJ/FB SJ/FB - -
eusjps.sys SJ/FB SJ/FB SJ/FB - -
eqsbms.sys - - - SB/FB -
eusbms.sys - - - SB/FB -
eqsbps.sys - - - SB/FB -
eusbps.sys - - - SB/FB -
eq18xm.sys XM XM XM XB/XM/ZB/ZM -
eq22xm.sys XM XM XM XB/XM/ZB/ZM -
eu18xm.sys XM XM XM XB/XM/ZB/ZM -
ncxv56.sys - ? ? XB/XM/ZB/ZM -
nqxv56.sys - ? ? XB/XM/ZB/ZM -
nuxv56.sys - ? ? XB/XM/ZB/ZM -
eq18.v62 - - - - <= V6.2
eq22.v62 - - - - <= V6.2
eu18.v62 - - - - <= V6.2
eu22.v62 - - - - <= V6.2
eq18.tsx - - - - >= V6.4
eq22.tsx - - - - >= V6.4
eu18.tsx - - - - >= V6.4
eu22.tsx - - - - >= V6.4
____ms.sys Drivers are for LSI/11 processors not having
a processor status word (PSW == @#177776).
____ps.sys Drivers are for all processors with a
processor status word (PSW == @#177776).
__sj__.sys Drivers contain special function 211 (abort
job i/o) for RT11SJ monitors.
ETHERNET DEVICE HANDLERS PAGE 6-4
DEVICE HANDLER SYSTEM SUMMARY
6.2 DEVICE HANDLER FEATURE SUMMARY
Summary of prebuilt EQ/EU/NC/NQ/NU
device driver features:
SPFUNS DEVICE
206 207 210 211 EIS PSW UMR FORK TIMEOUT
--- --- --- --- --- --- --- ---- -------
eqsjms.sys X - - X - - - X X
eusjms.sys X - - X - - - X X
eqsjps.sys X - - X - X - X X
eusjps.sys X - - X - X - X X
eqsbms.sys X - - - - - - X X
eusbms.sys X - - - - - - X X
eqsbps.sys X - - - - X - X X
eusbps.sys X - - - - X - X X
eq18xm.sys X X X - X X - X X
eq22xm.sys X X X - X X - X X
eu18xm.sys X X X - X X - X X
ncxv56.sys X X X - X X - - -
nqxv56.sys X X X - X X - - -
nuxv56.sys X X X - X X X - -
eq18.v62 X X X - X X - X X
eq22.v62 X X X - X X - X X
eu18.v62 X X X - X X - X X
eu22.v62 X X X - X X X X X
eq18.tsx X X X - X X - X X
eq22.tsx X X X - X X - X X
eu18.tsx X X X - X X - X X
eu22.tsx X X X - X X X X X
____ms.sys Drivers are for LSI/11 processors not having
a processor status word (PSW == @#177776).
____ps.sys Drivers are for all processors with a
processor status word (PSW == @#177776).
__sj__.sys Drivers contain special function 211 (abort
job i/o) for RT11SJ monitors.
ETHERNET DEVICE HANDLERS PAGE 6-5
DEVICE HANDLER FEATURE SUMMARY
6.3 PROGRAMMING
Programs that call the Ethernet handler must follow a certain
order. Write such programs with the following elements in the
order indicated.
1. Use the .LOOKUP programmed request to open a channel to
the device unit.
2. Allocate the unit using SPFUN 200.
3. Perform the Ethernet operation(s).
4. Deallocate the unit using SPFUN 200.
5. Use the .CLOSE programmed request to close the channel
to the specified device unit.
NOTE
Special functions 207 (get physical address), 210 (get
handler status block), and 211 (abort job i/o) do not
require device allocation.
6.4 USE OF SPECIAL FUNCTIONS (.SPFUN)
The EQ/EU/NC/NQ/NU Ethernet handlers operate the Ethernet
controllers using the .SPFUN programmed request with the follow-
ing function codes:
ETHERNET DEVICE HANDLERS PAGE 6-6
USE OF SPECIAL FUNCTIONS (.SPFUN)
Function Code
-------- ----
Allocate unit 200
Deallocate unit 200
Enable Promiscuous Mode 201
Disable Promiscuous Mode 201
Enable protocol type 202
Disable protocol type 202
Enable multicast address 203
Disable multicast address 203
Transmit Ethernet frame 204
Receive Ethernet frame 205
Enable frame bufferring 206
Disable frame bufferring 206
Get physical address 207
Get handler status block 210
Abort Job I/O 211
Successful completion of a .SPFUN request clears the carry bit.
Completion with an error sets the carry bit, and the status word
in the buffer contains an error code.
6.4.1 Unit Specification (.SPFUN 200)
The allocate unit special function allocates a unit for a
job's exclusive use.
The deallocate unit special function deallocates a unit so it
can be used by another job.
ETHERNET DEVICE HANDLERS PAGE 6-7
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.1.1 Allocate Unit -
The following is the form of the special function allocate
unit (.SPFUN 200):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 200
buf is the address of a 4-word buffer
containing the status word and space
for the station's physical address.
The buffer contents are returned by
the allocate unit special function.
The high byte of the status word contains a 0.
Allocate unit returns one of the following
octal status codes in the low byte of the
status word:
0 Success
2 Controller error while attempting to
initialize the network interface
3 No resources (unit in use)
11 Reserved
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
ETHERNET DEVICE HANDLERS PAGE 6-8
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.1.2 Deallocate Unit -
The following is the form of the special function deallocate
unit (.SPFUN 200):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 200
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Deallocate unit returns one of the following
octal status codes in the low byte of the
status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
11 Unit still active
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
ETHERNET DEVICE HANDLERS PAGE 6-9
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.2 Promiscuous Mode (.SPFUN 201)
The enable promiscuous mode special function enables the
Ethernet hardware to receive all network traffic regardless of
address or protocol. Any read request to the handler will re-
turn the first available packet received by the controller in-
terface.
The disable promiscuous mode special function enables the ad-
dress/protocol filtering provided by the Ethernet hardware and
enables the specified protocol.
6.4.2.1 Enable Promiscuous Mode -
The following is the form of the special function enable
promiscuous mode (.SPFUN 201):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 201
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Enable promiscuous mode returns one of the
following octal status codes in the low byte
of the status word:
0 Success
6 address/protocol active
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
ETHERNET DEVICE HANDLERS PAGE 6-10
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.2.2 Disable Promiscuous Mode -
The following is the form of the special function disable
promiscuous mode (which performs an enable protocol type)
(.SPFUN 201):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 201
buf is the address of a 2-word buffer that
contains the status word, followed by
the 1-word protocol type that is to be
enabled when the promiscuous mode is
disabled.
The high byte of the status word contains a 0.
The disable promiscuous mode returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
3 Reserved
6 Reserved
10 Protocol type in use
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
ETHERNET DEVICE HANDLERS PAGE 6-11
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.3 Protocol Type (.SPFUN 202)
The enable protocol type special function adds a protocol
type to those to be recognized by the Ethernet controller. Only
one protocol type can be specified for each unit. At least one
protocol type must be enabled to receive Ethernet frames.
The disable protocol type special function removes the pro-
tocol type from the list of those recognized by the Ethernet
controller.
6.4.3.1 Enable Protocol Type -
The following is the form of the special function enable pro-
tocol type (.SPFUN 202):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 202
buf is the address of a 2-word buffer
that contains the status word followed
by the protocol type word.
The high byte of the status word contains a 0.
Enable protocol type returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was
not opened by the job issuing the
request
2 Controller error while attempting to
initialize the network interface
3 No resources (unit's protocol table full)
6 Reserved
ETHERNET DEVICE HANDLERS PAGE 6-12
USE OF SPECIAL FUNCTIONS (.SPFUN)
10 Protocol type in use
The protocol type is specified by the user
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
6.4.3.2 Disable Protocol Type -
The following is the form of the special function disable
protocol type (.SPFUN 202):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 202
buf is the address of a 2-word buffer
that contains the status word followed
by the protocol type word.
The high byte of the status word contains a 0.
Disable protocol type returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was
not opened by the job issuing the
request
2 Controller error while attempting to
initialize the network interface
If the disabled protocol type is not the
same as the enabled protocol type for this
unit then 'success' is returned.
wcnt is 0
ETHERNET DEVICE HANDLERS PAGE 6-13
USE OF SPECIAL FUNCTIONS (.SPFUN)
blkn is 0
crtn is the entry point of a completion routine
6.4.4 Multicast Address (.SPFUN 203)
The enable multicast address special function adds the multi-
cast address to those recognized by the Ethernet controller.
Ypu need not specify the unit's physical or broadcast address.
Only one multicast address is allowed per handler unit.
The disable multicast address special function removes the
multicast address from those to be recognized by the Ethernet
controller.
6.4.4.1 Enable Multicast Address -
The following is the form of the special function enable mul-
ticast address (.SPFUN 203):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 203
buf is the address of a 4-word buffer
that contains the status word, followed
by the 3-word multicast address. The
low order bit of the first address
word should be a 1.
The high byte of the status word contains a 0.
Enable multicast address returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
ETHERNET DEVICE HANDLERS PAGE 6-14
USE OF SPECIAL FUNCTIONS (.SPFUN)
initialize the network interface
3 No resources (unit's address table is full,
or hardware address table full)
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
6.4.4.2 Disable Multicast Address -
The following is the form of the special function disable
multicast address (.SPFUN 203):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 203
buf is the address of a 4-word buffer
that contains the status word, followed
by the 3-word multicast address. The
low order bit of the first address
word should be a 1.
The high byte of the status word contains a 0.
Disable multicast address returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
If the disabled multicast address is not the
same as the enabled multicast address for this
unit then 'success' is returned.
ETHERNET DEVICE HANDLERS PAGE 6-15
USE OF SPECIAL FUNCTIONS (.SPFUN)
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
6.4.5 Transmit Ethernet Frame (.SPFUN 204)
The special function transmit Ethernet frame transmits the
Ethernet frame pointed to in the buf argument. If the source
field of the frame is not zero, it is kept and used. If the
source field of the frame is zero, the controllers physical ad-
dress is inserted in the source field before transmission.
The following is the form of the special function transmit
Ethernet frame (.SPFUN 204):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 204
buf is the address of a variable size buffer
containing the status word, followed by
the Ethernet packet to be transmitted.
The first word following the status word
is reserved. Next is the 3-word destination
address field followed by the 3-word
source address field. The next word is the
packet protocol type. Following this is the
variable length packet containing from 23 to
750 words.
The transmit Ethernet frame returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
ETHERNET DEVICE HANDLERS PAGE 6-16
USE OF SPECIAL FUNCTIONS (.SPFUN)
initialize the network interface
13 Transmit failed
When status code 13 is returned in the low byte
of the status word, transmit Ethernet frame
returns one of the following octal status codes
in the high byte of the status word:
1 Invalid frame length
2 Excessive collisions
3 Carrier check failed
wcnt is determined by the variable size of the user
buffer (including the status word and reserved
word). The packet size (including the status
word and reserved word) can vary between 32
and 759 words.
blkn is 0
crtn is the entry point of a completion routine
6.4.6 Receive Ethernet Frame (.SPFUN 205)
The receive Ethernet frame special function returns the next
Ethernet packet with the desired unit address and protocol type
to the buffer. The function does not return Ethernet frames
that are received with errors.
The following is the form of the special function receive
Ethernet frame (.SPFUN 205):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 205
buf is the address of a variable size buffer
containing the status word, a word
containing the frame size, and followed by
ETHERNET DEVICE HANDLERS PAGE 6-17
USE OF SPECIAL FUNCTIONS (.SPFUN)
upto 757 words to receive the Ethernet
frame. The buffer contents are returned
by the receive Ethernet frame function.
The high byte of the status word contains a 0.
The receive Ethernet frame special function
returns one of the following octal status
codes in the low byte of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
wcnt is the size of the user buffer including
the status and frame size words
blkn is 0
crtn is the entry point of a completion routine
6.4.7 Frame Queueing (.SPFUN 206)
The Enable frame queueing special function allows the
handlers to internally queue received packets that match any
enabled address/protocol even though a receive request has not
been issued for that address/protocol or a previous packet has
not been processed. The EQ handler normally allocates space for
internally queueing upto 20 packets (this may be changed by mod-
ifying 'rbcnt' in EQ.MAC and rebuilding the EQ handler). The
22-bit EU handler normally allocates space for internally queue-
ing 10 packets and the 18-bit EU handler allocates space for 2
packets (this may be changed by modifying 'rbcnt' in EU.MAC and
rebuilding the EU handlers).
The disable frame queueing special function disables the in-
ternal queueing of packets. This function may only be issued if
all address/protocol pairs have been disabled.
ETHERNET DEVICE HANDLERS PAGE 6-18
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.7.1 Enable Frame Queueing -
The following is the form of the special function enable
frame queueing (.SPFUN 206):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 206
buf is the address of a 1-word buffer
for the returned status word which
is always 0
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
6.4.7.2 Disable Frame Queueing -
The following is the form of the special function disable
frame queueing (.SPFUN 206):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 206
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Disable frame queueing returns one of the
following octal status codes in the low byte
of the status word:
ETHERNET DEVICE HANDLERS PAGE 6-19
USE OF SPECIAL FUNCTIONS (.SPFUN)
0 Success
6 address/protocol active
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
6.4.8 Get Ethernet Address (.SPFUN 207)
The get Ethernet address special function returns the physi-
cal address of the Ethernet controller card.
The following is the form of the special function get
Ethernet address (.SPFUN 207):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 207
buf is the address of a 4-word buffer
in which the status word, which is
always 0, and the six byte physical
Ethernet address are returned.
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
ETHERNET DEVICE HANDLERS PAGE 6-20
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.9 Get Ethernet Status Block (.SPFUN 210)
The get Ethernet status block special function returns the
handler's internal parameter block. The information contained
in the parameter block includes the number of packets received
and transmitted for each EQ/EU unit as well as timeout informa-
tion.
The following is the form of the special function get
Ethernet status block (.SPFUN 210):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 210
buf is the address of a buffer into which
wcnt words are written from the
EQ/EU handlers status block.
wcnt is the number of words to return
to the buffer. The status word
must be included in the word count.
blkn is 0
crtn is the entry point of a completion routine
The complete list of parameters in the status block may be found
in the EQ/EU Ethernet handler files EQ.MAC, EU.MAC, and EI.MAC.
The first word is always a status word of value 0, the following
4-byte (long integer) parameters are:
eiipkt total receiver interrupts
eiopkt total transmitter interrupts
eirtmo total receive timeouts
eixtmo total transmit timeouts
eirun[8] received packets for each unit
eixun[8] transmitted packets for each unit
These are the only parameters used by any program in the
'TCP/IP Package for TSX-Plus' or 'TCP/IP Package for RT-11'.
ETHERNET DEVICE HANDLERS PAGE 6-21
USE OF SPECIAL FUNCTIONS (.SPFUN)
6.4.10 Abort Job I/O (.SPFUN 211)
The abort job i/o special function is conditionally assembled
into drivers for the RT11SJ monitors. The SJ monitor never
calls the abort entry point in the device handler (either from a
.ABTIO request or at job termination) this means that the inter-
nally queued i/o requests will never complete and the monitor
will lock waiting for the i/o to complete. This special func-
tion calls the abort entry point clearing all internally queued
elements associated with the current job.
The following is the form of the special function Abort Job
I/O (.SPFUN 211):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 211
buf is not used
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
6.5 HANDLERS FOR TSX-PLUS V6.0 THROUGH V6.2
The EQ and EU Ethernet handlers configured for TSX-Plus ver-
sions 6.0 through 6.2 have these additional .SPFUN programmed
requests:
Function Code
-------- ----
Get PLAS Allocation Size 300
Initialize Handler 301
Successful completion of a .SPFUN request clears the carry bit.
Completion with an error sets the carry bit without any error
ETHERNET DEVICE HANDLERS PAGE 6-22
HANDLERS FOR TSX-PLUS V6.0 THROUGH V6.2
code.
6.5.1 Get PLAS Allocation Size (.SPFUN 300)
The following is the form of the special function Get PLAS
Alocation Size (.SPFUN 300):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 300
buf handler returns the requested allocation
size, in 32. word increments, in the
first word of the buffer
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
6.5.2 Initialize Handler (.SPFUN 301)
The following is the form of the special function Initialize
Handler (.SPFUN 301):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 301
buf the address of buf is the PLAS base address
ETHERNET DEVICE HANDLERS PAGE 6-23
HANDLERS FOR TSX-PLUS V6.0 THROUGH V6.2
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
Attempting to reinitialize the handler or to initialize the
handler with a PLAS base address of 0 will be reported as an er-
ror by setting the carry bit.
6.5.3 ENPLAS.SAV - Allocating the PLAS Region
The program ENPLAS.SAV is a support program which creates the
PLAS buffer required by the TSX-Plus V6.0 through V6.2 EQ and EU
device handlers. The program uses .spfun 300 to get the buffer
size, creates the PLAS region, uses .spfun 301 to handoff the
PLAS region's Base Address to the device handler and to initial-
ize the handler. This program must run before the EQ or EU
device handler can be used.
The device EN0: must be assigned before running ENPLAS.SAV.
ASSIGN EU0: EN0: or
ASSIGN EQ0: EN0:
R ENPLAS.SAV
The device handler requires only a single initialization to
be used by the TCPIP.SAV server or the small system client pro-
grams.
CHAPTER 7
BUILDING THE TCP/IP PACKAGE
7.1 C COMPILER
The DECUS C Compiler and Assembler and the RT-11 Macro Assem-
bler and Linker are required to build the the TCP/IP Package for
RT-11 from the source files included in the distribution. The
DECUS C Compiler is from the DECUS 11-SP-18 distribution with
bug fixes made to the compiler and the library. (The updates
are on logical disk CCDSK2.DSK). EIS and non-EIS versions of
the compiler along with the assembler, library, and the necesary
header files are included with the distribution to allow the
package to be recompiled.
1. Create CDISK.DSK[1500] as C:,
a logical disk for the C compiler
2. Copy the contents of the logical disk CCDSK1.DSK to C:.
The device containing the compiler, assembler and
header files should be assigned as device C:. The
build procedures assume that the compiler and header
files are on the logical device 'C:'.
3. Copy the compiler helper files from logical disk
CCXDSK.DSK to C:.
4. Use the command file C:CCSET.EIS to copy the EIS
specific files into the C: directory with the
appropriate .SAV and .OBJ file types.
5. UCL CC and ASM commands.
1. For RT-11-XM V5.3 use file C:CCXASM.V53 to create
the UCL commands to invoke CC and ASM.
2. For RT-11-XM V5.6 (and later) use file C:CCXASM.V56
to create the UCL commands to invoke CC and ASM.
BUILDING THE TCP/IP PACKAGE PAGE 7-2
TCP/IP PACKAGE
7.2 TCP/IP PACKAGE
The TCP/IP Package is supplied with the complete source code
as an assemblage of C files (*.c), macro files (*.mac), header
files (*.h), and an assortment of command files (*.com).
1. Copy the logical disks SRDSK1.DSK, SRDSK2.DSK,
SRDSK3.DSK, and SRDSK4.DSK to a disk or logical disk
having at least 10000 blocks of free space.
2. Use the command file BLDRT.SET to create the RT-11 con-
ditional files.
3. The command file BLDALL.COM will compile and link the
complete TCP/IP Package. Inspect BLDALL.COM to see how
each individual component is built. An unloaded 11/73
processor will take from 40 to 50 minutes to compile
and link the complete package.
4. Rename all .SAV files to .SXV files.
5. The command file RTV53.INS or RTV56.INS may be used to
copy all the files necessary to configure a complete
implementation of the TCP/IP Package for RT-11 to the
TCP: directory. (This includes all the files found on
logical disks RTDSK1.DSK, RTDSK2.DSK, and RTDSK3.DSK).
7.3 COMPILING OPTIONS
The TCP/IP Package components may be compiled with or without
the diagnostic options (the default is no diagnostics). Each
component has an individual header file, e.g. VTCPIP.H for
TCPIP.SAV, which contains define statements that have been com-
mented out to exclude the diagnostics. Several other programs
have optional sections that may be disabled by commenting out
selected define statements.
CHAPTER 8
DISTRIBUTION DISKS
The "TCP/IP Package for TSX-Plus", the "TCP/IP Package for
RT-11", and the "FTP and Telnet Package for Small Systems" are
distributed as a combined package of 21 RX02 logical floppy
disks:
1. TSDSK1 TCP/IP Package for TSX-Plus
2. TSDSK2 Executables for TSX-Plus Systems.
3. TSDSK3 (EQ/EU Device Driver Required)
4. RTDSK1 TCP/IP Package for RT-11
5. RTDSK2 Executables for RT-11 Mapped Systems.
6. RTDSK3 (EQ/EU/NC/NQ/NU Device Driver Required)
7. SRDSK1 TCP/IP Package Sources
8. SRDSK2 All source code files for:
9. SRDSK3 TCP/IP Package for TSX-Plus
10. SRDSK4 TCP/IP Package for RT-11
11. SMLTCP Small System Package Executables
(EQ/EU/NC/NQ/NU Device Driver Required)
12. SSDSK1 Small System Package Sources
13. DVRDSK EQ/EU/NC/NQ/NU Device Drivers
14. CCDSK1 DECUS C Compiler, Assembler, and Libraries.
15. CCDSK2 DECUS C Source Changes
16. CCXDSK Compiler helper files for mapped
RT-11 systems.
17. DOCDSK Package Documentation
18. RNODSK Package Documentation in RNO Format
19. RTHTML RT-11 Docs in HTML Format
20. TSHTML TSX-Plus Docs in HTML Format
DISTRIBUTION DISKS Page 8-2
21. SSHTML Small System Docs in HTML Format
APPENDIX A
HIDDEN OPTIONS
A.1 DISABLE PASSWORD
The -b option will disable the user/password query in pro-
grams TELNET, RTELNT, FTP, RFTP, CNCT, RCNCT, MAIL, and MMAIL.
Local users normally are not required to use passwords when ac-
tivating TELNET, FTP, or CNCT. The MAIL and MMAIL programs and
the network server programs RTELNT, RFTP, and RCNCT should not
specify the -b option for security reasons.