TCP/IP Package for RT-11 Documentation


                                 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:
        baldwin@shop-pdp.kent.edu
        baldwin@ksuvxd.kent.edu














                                    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 '$@TCPIP.RUN' 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:       username@machine.domain.name 



           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:       username@machine.domain.name 



           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.  

Return to TCP/IP Documentation Index

... Home Page