home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / MISC / MN322O32.ZIP / old_docs / makenl.txt < prev    next >
Text File  |  2004-07-09  |  108KB  |  2,414 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.                             MakeNL -- Version 2.51
  27.  
  28.                           NODELIST Generator Program
  29.  
  30.  
  31.  
  32.  
  33.  
  34.                                  by Ben Baker
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.                   Copyright 1987-1992 -- All Rights Reserved
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.                                Table of Contents
  55.  
  56.  
  57.  
  58.        1. Introduction                                                 1
  59.           1.1 How to use this manual                                   2
  60.  
  61.        2. MakeNL Operation                                             3
  62.           2.1 Operational overview                                     3
  63.           2.2 Operation at a Hub or simple Network                     4
  64.           2.3 Operation at a large Network                             6
  65.           2.4 Operation by a Regional Coordinator                     10
  66.           2.5 Operation by a Zone Coordinator                         10
  67.           2.6 Putting together a Distribution Nodelist Segment        13
  68.  
  69.        3. Definitions                                                 14
  70.           3.1 Composite Nodelist                                      14
  71.           3.2 Generic File Name                                       14
  72.           3.3 Explicit File Name                                      14
  73.           3.4 Archive File                                            14
  74.           3.5 Difference File                                         15
  75.           3.6 Submittal File                                          15
  76.           3.7 Distribution File                                       15
  77.           3.8 Absolute Directory Path                                 15
  78.           3.9 Relative Directory Path                                 15
  79.           3.10 Publication Date                                       15
  80.  
  81.        4. MakeNL Command Line                                         17
  82.           4.1 Control file name                                       17
  83.           4.2 /TEST switch                                            17
  84.           4.3 /PROCESS switch                                         18
  85.           4.4 /MERGE switch                                           18
  86.           4.5 /NAME=<network_name>                                    18
  87.           4.6 Error return codes                                      19
  88.  
  89.        5. MakeNL Directories                                          20
  90.           5.1 Master Directory                                        20
  91.           5.2 Update Directory                                        20
  92.           5.3 Mailfiles Directory                                     20
  93.           5.4 Upload Directory                                        20
  94.           5.5 Other Directories                                       20
  95.  
  96.        6. MakeNL Control File                                         21
  97.           6.1 Control statements                                      21
  98.              6.1.1 MAKe <segment_type> [<number> [<source_file>]]     21
  99.              6.1.2 NAMe <network_name>                                22
  100.              6.1.3 PUBlish <day_of_week>                              22
  101.              6.1.4 PROcess <day_of_week>                              23
  102.              6.1.5 MERge [<nodelist_name>]                            24
  103.  
  104.                                         i
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.              6.1.6 PRIvate <disposition>                              25
  112.              6.1.7 MINphone <minimum_parts>                           25
  113.              6.1.8 BAUdrate <valid_baud_rates>                        26
  114.           6.2 Defining nodelist segment directories                   27
  115.              6.2.1 MASter <directory_path_name>                       27
  116.              6.2.2 UPLoads <directory_path_name>                      27
  117.              6.2.3 MAIlfiles <directory_path_name>                    28
  118.              6.2.4 UPDate <directory_path_name>                       28
  119.              6.2.5 BADfiles <directory_path_name>                     28
  120.           6.3 Defining output                                         29
  121.              6.3.1 OUTFile <filename>                                 29
  122.              6.3.2 OUTPath <directory_path_name>                      29
  123.              6.3.3 THReshold <arc_size> [<diff_size>]                 29
  124.              6.3.4 ARC <n>                                            30
  125.              6.3.5 OUTDiff <generic_filename>                         30
  126.              6.3.6 CLEanup                                            32
  127.           6.4 External message transmission                           32
  128.              6.4.1 NETaddress [<zone>:]<net>/<node>                   33
  129.              6.4.2 MESsages <directory_path_name>                     33
  130.              6.4.3 SUBmit <address> [<flags>]                         33
  131.              6.4.4 NOTify <type> [<flags>]                            34
  132.           6.5 Defining special files                                  34
  133.              6.5.1 Output comments files                              34
  134.                 6.5.1.1 COPyright <explicit_filename>                 35
  135.                 6.5.1.2 PROlog <explicit_filename>                    36
  136.                 6.5.1.3 EPIlog <explicit_filename>                    36
  137.              6.5.2 Comments from received files                       36
  138.                 6.5.2.1 COMments <explicit_filename>                  36
  139.           6.6 DATa                                                    36
  140.           6.7 FILes                                                   37
  141.  
  142.        7. Disk and Memory Space Considerations                        38
  143.  
  144.        8. Contents of MakeNL Distribution Package                     40
  145.  
  146.        9. MakeNL License Information                                  41
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.                                         ii
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.                                Table of Figures
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.        Figure 1.  Data Flow - Test Mode vs. Process Mode               3
  184.  
  185.        Figure 2.  Sample control files for Hubs and small Nets         5
  186.  
  187.        Figure 3.  Sample control file for large Nets                   7
  188.  
  189.        Figure 4.  Sample control file for Regional Coordinator         9
  190.  
  191.        Figure 5.  Sample control file for Zone Coordinators           11
  192.  
  193.        Figure 6,  Sample control file for distribution lists          12
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.                                         iii
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.                                 1. Introduction
  241.  
  242.  
  243.        FidoNet, a  trade mark of Tom Jennings, was the name of the first
  244.        amateur electronic  mail program.   There  are now  several  mail
  245.        server programs  that support  FidoNet protocols.   Many  amateur
  246.        networks, large  and small,  are using  one or more of these mail
  247.        servers to communicate regularly.
  248.  
  249.        The glue  that holds an amateur network together is its nodelist,
  250.        a document  that describes  the nodes in the network, and the re-
  251.        lationship between them.  To be effective, this document must use
  252.        a consistent format, so that programs may process its information
  253.        automatically.   The FidoNet  Technical Standards Committee main-
  254.        tains, among  others, a document called FTS-0005.TXT that defines
  255.        the format  for a  FidoNet compatible  nodelist.   A copy of that
  256.        document is included in this distribution.
  257.  
  258.        Furthermore, a nodelist must be accurate and current.  An out-of-
  259.        date phone  number, for  example, is useless.  It must be updated
  260.        regularly, and  most networks  publish a  new nodelist each week.
  261.        This is  an enormous task in any network of more than a few dozen
  262.        nodes.   No one  person can  do it.   But  division of labor adds
  263.        complexity.
  264.  
  265.        Obviously, we  need a  tool that  can  help  verify  consistency,
  266.        maximize accuracy  and currency,  minimize effort,  and  minimize
  267.        cost.  MakeNL is such a tool.
  268.  
  269.        MakeNL supports  the multilevel  nodelist  generation  techniques
  270.        presently in  use in  several FidoNet  compatible electronic mail
  271.        networks.   It helps maintain nodelist segments at any level from
  272.        Hub through  Network, Region  and Zone  to the  composite distri-
  273.        bution nodelist.
  274.  
  275.        MakeNL's main  purpose for  being is to create a "submittal file"
  276.        (see definitions - section 3 on page 14) containing your nodelist
  277.        update, and to send it to your coordinator.  It can do this auto-
  278.        matically, if  you set  up its  control file  properly.   It is a
  279.        complex program  and looks  intimidating, but  it is  not  really
  280.        difficult.
  281.  
  282.        MakeNL has features to help in nodelist preparation at any level,
  283.        but it is also adaptable.  Features you don't need you may safely
  284.        ignore, and MakeNL will not complain.
  285.  
  286.  
  287.  
  288.        MakeNL                     Introduction                    Page 2
  289.  
  290.  
  291.        1.1 How to use this manual
  292.  
  293.        Section 2  is a  tutorial on setting up and operating MakeNL.  It
  294.        starts with  the simplest  case --  the lowest  level of nodelist
  295.        maintenance -- and expands in steps to Zone Coordinator.
  296.  
  297.        Sections 3  through 8  contain  detailed  reference  information.
  298.        Section 2  necessarily refers  to information  contained in later
  299.        sections.   The early  paragraphs of  section 2  contain frequent
  300.        forward references to assist the reader.
  301.  
  302.        I recommend  you read the entire document through once.  Pay par-
  303.        ticular attention  to those  parts of  section 2  that pertain to
  304.        you, but  at least  skim the rest.  Familiarize yourself with the
  305.        layout and  content of  the various sections, but do not read for
  306.        thorough understanding on your first pass.
  307.  
  308.        Carefully study section 2 a second time.  Refer to other sections
  309.        for clarification of terms as necessary.
  310.  
  311.        Select the  sample control file that best represents your partic-
  312.        ular needs.   Edit  it to fit your particular environment, as in-
  313.        dicated in section 2 and the comments in the control file.
  314.  
  315.        Make copies  of your  master data  files in  a safe place (floppy
  316.        diskette, or a directory tucked away in a far corner of your hard
  317.        disk).
  318.  
  319.        Familiarize yourself  with MakeNL by actually running it, in both
  320.        test and  process mode.  During this phase, I suggest you comment
  321.        out any  "Submit" or  "Notify" statements in your control file to
  322.        avoid generating spurious messages.
  323.  
  324.        Introduce data  errors to see how MakeNL handles them.  Make sure
  325.        you're comfortable with it before you put it on line.
  326.  
  327.        When you're  satisfied, delete  all "test case" files.  Copy your
  328.        master files  to your  master  directory.    Make  the  necessary
  329.        changes to  enable your mail server's "external event" for MakeNL
  330.        and you're up.
  331.  
  332.        MakeNL simplifies  your life.  It looks imposing, but it's really
  333.        not very difficult.
  334.  
  335.  
  336.  
  337.        MakeNL                                                     Page 3
  338.  
  339.  
  340.  
  341.               Test Mode            Directory          Process Mode
  342.                              +------------------+
  343.                   +----------|                  |----------+
  344.                   |          |      UPLOADS     |          |
  345.                   |    +-----|                  |-----+    |
  346.                   |    |     +------------------+     |    |
  347.                   |    |                              |    |
  348.                   |    |     +------------------+     |    |
  349.                   |    | /---|                  |---\ |    |
  350.                   |    |<    |     MAILFILES    |    >|    |
  351.                   |    | \---|                  |---/ |    |
  352.                   |    |     +------------------+     |    |
  353.                   |    |                              |    |
  354.                   |    |     +------------------+     |    |
  355.                   |    +---\ |                  |---\ |    |
  356.        Received   |         >|      UPDATE      |    >|    |
  357.        Update     +--------/ |                  |---/ |    |
  358.        Files                 +------------------+     |    |
  359.         - - - - - - - - - - - - - - - - - - - - - - - |    | - - - - - -
  360.        Master                +------------------+     |    |
  361.        Files                 |                  | /---+    |
  362.                              |      MASTER      |<         |
  363.                              |                  | \--------+
  364.                              +------------------+
  365.                                     |    |
  366.                                     |    +-------\   OUTPUT
  367.                                     |             >
  368.                                     +------------/   FILES
  369.  
  370.  
  371.                Figure 1.  Data Flow - Test Mode vs. Process Mode
  372.  
  373.  
  374.  
  375.  
  376.                               2. MakeNL Operation
  377.  
  378.  
  379.        2.1 Operational overview
  380.  
  381.        MakeNL operates  in two  distinct modes,  test mode  and  process
  382.        mode.   The mode  of operation  is controlled  by  the  "PROcess"
  383.        statement in your control file (see section 6.1.4 on page 23), or
  384.        by the  "/T" and "/P" command line switches (see sections 4.2 and
  385.        4.3 on page 17).
  386.  
  387.        In test  mode your  personal nodelist  segment, the  part of  the
  388.        nodelist you  maintain, and any update segments you have received
  389.        from others  are tested  for errors.   Submitters of any received
  390.        files are  notified as  indicated by the NOTify statements in the
  391.        control file,  and their files are moved to the UPDate directory.
  392.        (See section  5 on  page 20  for a description of MakeNL's direc-
  393.        tories.)
  394.  
  395.  
  396.  
  397.        MakeNL                   MakeNL Operation                  Page 4
  398.  
  399.  
  400.        In process mode your MASter directory is updated by any files re-
  401.        ceived since  the last  time MakeNL was executed in process mode.
  402.        Master data  files are used to produce your submittal and/or dis-
  403.        tribution files.
  404.  
  405.        In general,  MakeNL should  be run  in process mode once and only
  406.        once each  week.   Ideally, this  will be  done by  an  "external
  407.        event" from your mail server.  It is then automatic, and one less
  408.        thing you have to worry about.
  409.  
  410.        It may  be run  in test mode as often as desired to test received
  411.        files or changes in your own data.
  412.  
  413.        MakeNL uses  several directories  to store  data.   Section 5 de-
  414.        scribes them  in detail.  Figure 1 illustrates the data flow from
  415.        directory to  directory in the two modes of operation.  Above the
  416.        dashed line,  the data  flow all  deals with  files received from
  417.        others --  perhaps from  your Hubs  if you are a Network Host, or
  418.        from Network  Hosts if  you are  a Regional  Coordinator.   It is
  419.        clear from  this picture  that if  you do  not  receive  nodelist
  420.        updates from  others (and many of you don't), you have no use for
  421.        three of  MakeNL's data  directories, and a good deal of MakeNL's
  422.        complexity disappears.
  423.  
  424.        The following  paragraphs give  recommended set-up  and operating
  425.        procedures for various types of coordinators.
  426.  
  427.        2.2 Operation at a Hub or simple Network
  428.  
  429.        Here is  where the  nodelist update  process begins.   You have a
  430.        small nodelist segment that you maintain.  You do not receive any
  431.        update files  from anyone else.  If you are a Network Coordinator
  432.        and your  network has  Hubs, YOU maintain their data -- they just
  433.        forward the  mail.  Yours is the easiest task, so your set-up for
  434.        MakeNL is the simplest for you.
  435.  
  436.        Figure 2  shows two  variations of a MakeNL control file tailored
  437.        to your needs.  You may maintain your nodelist segment as a sepa-
  438.        rate file,  or you  may embed  your data  in your  MakeNL control
  439.        file.  (I prefer the latter method, but it is a matter of taste.)
  440.        If you  wish to  maintain your  data in a separate file, refer to
  441.        the top  half of  Figure 2  (a facsimile  of file HUB.CTL in your
  442.        distribution package).   If  you want  to keep  your data in your
  443.        control file,  refer to  the bottom half of Figure 2 (a facsimile
  444.        of file  NET-S.CTL in  your distribution package).  Refer to sec-
  445.        tions 5 and 6 as you study these files.
  446.  
  447.        In either  case, some minor editing of the control file you chose
  448.        as indicated  by comments  in the file will have you nearly ready
  449.        to go.  When you have edited the control file to your liking, re-
  450.        name it  MAKENL.CTL and  move  it  to  your  mail  server's  home
  451.        directory.
  452.  
  453.  
  454.  
  455.        MakeNL                   MakeNL Operation                  Page 5
  456.  
  457.  
  458.  
  459.        +---------------------------------------------------------------+
  460.        | ; This variation uses a "master data file" for input and      |
  461.        | ; sends output to the same file name.                         |
  462.        |                                                               |
  463.        | make hub <100> <hub.100>  ; note explicit name of file        |
  464.        |                           ; simplifies processing             |
  465.        | outfile   <hub.100>       ; master and output files have SAME |
  466.        |                           ; name                              |
  467.        |                                                               |
  468.        | submit   <host's address> ; where you send updates, CRASH     |
  469.        |                           ; and/or HOLD optional              |
  470.        | netaddress <your address> ; your network address here         |
  471.        | messages   <directory>    ; path name to mail server's        |
  472.        |                           ; mail area                         |
  473.        |                                                               |
  474.        | ; No other options are needed.  Master directory and output   |
  475.        | ; directory will default to the current directory.            |
  476.        +---------------------------------------------------------------+
  477.        | ; This variation uses "internal" data at the bottom of the    |
  478.        | ; control file.                                               |
  479.        |                                                               |
  480.        | make network <nbr>        ; No "master data file"  input data |
  481.        |                           ; is below.                         |
  482.        | outfile <explicit name>   ; output file                       |
  483.        |                                                               |
  484.        | submit     <RC's address> ; where you send updates, CRASH     |
  485.        |                           ; and/or HOLD optional              |
  486.        | netaddress <your address> ; your network address here         |
  487.        | messages   <directory>    ; path name to mail server's        |
  488.        |                           ; mail area                         |
  489.        |                                                               |
  490.        | ; No other options are needed.  Master directory and output   |
  491.        | ; directory will default to the current directory.            |
  492.        |                                                               |
  493.        | data                                                          |
  494.        |                                                               |
  495.        | ; Your source data goes here.  The advantage of this over     |
  496.        | ; the version above is that MAKENL will not reformat or change|
  497.        | ; your source data, even if you have errors.                  |
  498.        +---------------------------------------------------------------+
  499.  
  500.  
  501.             Figure 2.  Sample control files for Hubs and small Nets
  502.  
  503.  
  504.        Since you  don't have  many files to keep track of, you will exe-
  505.        cute MakeNL  from your mail server's home directory, and let your
  506.        MASter directory default to this directory as well.
  507.  
  508.        Set up  an external  event in  your mail server to execute once a
  509.        week at  a day  and time early enough to meet the deadline set by
  510.        your coordinator, but not much earlier than that.  The batch file
  511.  
  512.  
  513.  
  514.        MakeNL                   MakeNL Operation                  Page 6
  515.  
  516.  
  517.        fragment corresponding  to this  external event  will execute the
  518.        statement:
  519.  
  520.             MAKENL
  521.  
  522.        You will  normally ignore  MakeNL.   It will take care of itself.
  523.        When a  change occurs in your data, edit your file using your fa-
  524.        vorite editor.  After editing, execute the following DOS command:
  525.  
  526.             MAKENL /T
  527.  
  528.        just to be sure there are no errors.  If MakeNL reports an error,
  529.        repeat the above steps until you've got it right.
  530.  
  531.        If you have added new nodes to your list, and wish to inform them
  532.        of their  node number  assignments immediately,  you need  to get
  533.        your changes  into your  mail server's nodelist.  MakeNL can per-
  534.        form the first step for you if you execute the DOS command:
  535.  
  536.             MAKENL /T /M[[=<path>\]<filename>]
  537.  
  538.        The /M  switch tells  MakeNL to  merge your data with an existing
  539.        distribution nodelist into a temporary nodelist with an extension
  540.        of ".999".   To do this, MakeNL must find a distribution list not
  541.        more than  two weeks  old.   If /M is used by itself, MakeNL will
  542.        look  for  NODELIST.htu  (see  section  3.2  on  page  14  for  a
  543.        description of  this notation)  in the  current  directory.    If
  544.        either the directory or the stem generic name are different, they
  545.        must be given as a value in the /M switch.
  546.  
  547.             Examples
  548.  
  549.                  MAKENL /T /M               ; use NODELIST in current
  550.                  MAKENL /T /M=\BBS\NODELIST ; use NODELIST in \BBS\
  551.                  MAKENL /T /M=R10-LIST      ; use R10-LIST in current
  552.  
  553.        When the  external event triggers MakeNL in process mode (you are
  554.        in bed,  sound asleep)   It will create a new copy of your master
  555.        file, compare  it to the old copy, and if nothing has changed, it
  556.        will simply  delete the  new copy.   If  the file has changed, it
  557.        will update  your master  file and  create a submittal message to
  558.        send it to your coordinator.
  559.  
  560.        That's all there is to it!  MakeNL will take care of getting your
  561.        nodelist changes in on time if and when they occur.
  562.  
  563.        2.3 Operation at a large Network
  564.  
  565.        Your life  is a little more complicated than above.  You assemble
  566.        your submittal  segment from  your own  file plus  files received
  567.        from your Hubs.  Not only do you need to figure out this section.
  568.        You need to understand the forgoing one too, so that you may ren-
  569.        der assistance to your Hubs if necessary.  But cheer up, it's not
  570.        too bad!
  571.  
  572.  
  573.  
  574.        MakeNL                   MakeNL Operation                  Page 7
  575.  
  576.  
  577.  
  578.        +---------------------------------------------------------------+
  579.        |                                                               |
  580.        | make network <nbr>        ; No "master data file"  input data |
  581.        |                           ; is below.                         |
  582.        |                                                               |
  583.        | outfile <explicit name>   ; use generic name if output file   |
  584.        |                           ; is very large                     |
  585.        |                                                               |
  586.        | process    Wednesday      ; Set this day to meet deadline RC  |
  587.        |                           ; gives you                         |
  588.        |                                                               |
  589.        | master     <directory>    ; where master files reside         |
  590.        |                           ; (default - current)               |
  591.        | update     <directory>    ; where to save received files      |
  592.        |                           ; 'till processing                  |
  593.        | mailfiles  <directory>    ; where mail server places received |
  594.        |                           ; files                             |
  595.        | uploads    <directory>    ; where BBS places uploaded files   |
  596.        |                           ; (if needed)                       |
  597.        | badfiles   <directory>    ; optional "waste can" for files    |
  598.        |                           ; with fatal errors                 |
  599.        |                                                               |
  600.        | notify  receipt           ; notify both receipt and errors    |
  601.        |                           ; CRASH and/or HOLD optional        |
  602.        | submit     <RC's address> ; where you send updates, CRASH     |
  603.        |                           ; and/or HOLD optional              |
  604.        | netaddress <your address> ; your network address here         |
  605.        | messages   <directory>    ; path name to mail server's        |
  606.        |                           ; mail area                         |
  607.        |                                                               |
  608.        | ; No other options are needed.                                |
  609.        |                                                               |
  610.        | data                                                          |
  611.        |                                                               |
  612.        | ; Your source data goes here.                                 |
  613.        |                                                               |
  614.        | files                                                         |
  615.        |                                                               |
  616.        | Hub <nbr> <file name>     ; either generic or explicit file   |
  617.        |                           ; name, but must match convention   |
  618.        | Hub <nbr> <file name>     ; used by Hub.                      |
  619.        | Hub <nbr> <file name> <notification address>; if not "net/hub"|
  620.        | Hub <nbr> <file name>                                         |
  621.        | ;      etc.                                                   |
  622.        +---------------------------------------------------------------+
  623.  
  624.  
  625.                  Figure 3.  Sample control file for large Nets
  626.  
  627.  
  628.        Refer to the figure 3 (a facsimile of file NET-L.CTL in your dis-
  629.        tribution package).
  630.  
  631.  
  632.  
  633.        MakeNL                   MakeNL Operation                  Page 8
  634.  
  635.  
  636.        The submittal file for most local networks will be less than five
  637.        kilobytes in  size.   For files this small, there is no advantage
  638.        in using a generic output file name (see section 3.2 on page 14).
  639.        Your Regional  Coordinator will  probably tell  you to use an ex-
  640.        plicit file  name.   There is  certainly no  reason  for  you  to
  641.        require your  Hubs to  use generic  submittal file names.  Notice
  642.        that the  OUTFile statement  in figure  3 indicates the use of an
  643.        explicit name.
  644.  
  645.        Rename NET-L.CTL  to MAKENL.CTL  and move it to the directory you
  646.        wish to  use as  the current  directory when  you execute MakeNL.
  647.        Usually, this  will be  your mail  server's home directory.  Edit
  648.        the file  as indicated in the comments in NET-L.CTL.  If you only
  649.        have two  or three  hubs, you  may wish to comment out the MASter
  650.        directory statement and let it default to the current directory.
  651.  
  652.        Copy your  own source  data, the part you maintain which contains
  653.        the "Host"  statement into  the control file between the DATa and
  654.        FILes statements.   Following  the FILes  statement, edit the HUB
  655.        definition statements  to match  the Hubs who submit update files
  656.        to you.  Make sure the directories exist for all path names, that
  657.        they are all distinct  directories, and if you used relative path
  658.        names, that  they are  relative to  the directory  from which you
  659.        will execute  MakeNL.   Make sure the process statement names the
  660.        right day  so that  you can  meet your  RC's submittal  deadline.
  661.        That should get your control file in order.
  662.  
  663.        Move your  current copies  of your Hubs' segment files to the di-
  664.        rectory defined as MASter in your control file.
  665.  
  666.        Set up  an external event in your mail server to execute daily at
  667.        a time  early enough that, on your process day, you will meet the
  668.        deadline set  by your  Regional Coordinator, but not much earlier
  669.        than that.   The batch file fragment corresponding to this exter-
  670.        nal event will execute the statement:
  671.  
  672.             MAKENL
  673.  
  674.                  or if you want to keep a log of activity
  675.  
  676.             MAKENL    >>MAKENL.LOG
  677.  
  678.        MakeNL is now set up to pretty well take care of itself.  On non-
  679.        process days the external event will execute MakeNL in test mode.
  680.        It will  scan the  UPLoads and MAIlfiles directories for received
  681.        files, test  them for errors, send out notifications and move the
  682.        files to the UPDate directory.
  683.  
  684.        On the  process day  MakeNL will be executed in process mode.  It
  685.        will scan  the UPLoads  and MAIlfiles directories for late files,
  686.        the UPDate  directory for files received earlier in the week, and
  687.        the MASter directory for files not updated this week.
  688.  
  689.  
  690.  
  691.        MakeNL                   MakeNL Operation                  Page 9
  692.  
  693.  
  694.  
  695.        +---------------------------------------------------------------+
  696.        | make region <nbr>         ; No "master data file"  input data |
  697.        |                           ; is below.                         |
  698.        |                                                               |
  699.        | outfile <generic name>    ; use generic name for output file  |
  700.        |                                                               |
  701.        | process    Thursday       ; Set this day to meet deadline ZC  |
  702.        |                           ; gives you                         |
  703.        |                                                               |
  704.        | arc 5      ; force ARC 6 or 7 to generate level 5 archives    |
  705.        |            ; DO NOT use ARC5 with ARC versions earlier than 6 |
  706.        |                                                               |
  707.        | master     <directory>    ; where master files reside         |
  708.        |                           ; (default - current)               |
  709.        | update     <directory>    ; where to save received files      |
  710.        |                           ; 'till processing                  |
  711.        | mailfiles  <directory>    ; where mail server places received |
  712.        |                           ; files                             |
  713.        | uploads    <directory>    ; where BBS places uploaded files   |
  714.        |                           ; (if needed)                       |
  715.        | badfiles   <directory>    ; optional "waste can" for files    |
  716.        |                           ; with fatal errors                 |
  717.        |                                                               |
  718.        | notify  errors CRASH      ; notify of errors (CRASH and/or    |
  719.        |                           ; HOLD optional)                    |
  720.        | notify  receipt           ; use either of these or both with  |
  721.        |                           ; different attributes.             |
  722.        |                                                               |
  723.        | submit     <ZC's address> ; where you send updates, CRASH     |
  724.        |                           ;  and/or HOLD optional             |
  725.        | netaddress <your address> ; your network address here         |
  726.        | messages   <directory>    ; path name to mail server's        |
  727.        |                           ; mail area                         |
  728.        |                                                               |
  729.        | data                                                          |
  730.        |                                                               |
  731.        | ; Your region source data goes here.                          |
  732.        |                                                               |
  733.        | files                                                         |
  734.        |                                                               |
  735.        | Net <nbr> <file name>     ; either generic or explicit file   |
  736.        | Net <nbr> <file name>     ; name, but must match convention   |
  737.        |                           ; used by Net.                      |
  738.        | Net <nbr> <file name> <notification address> ; if not "net/0" |
  739.        | Net <nbr> <file name>                                         |
  740.        +---------------------------------------------------------------+
  741.  
  742.  
  743.             Figure 4.  Sample control file for Regional Coordinator
  744.  
  745.  
  746.  
  747.        MakeNL                   MakeNL Operation                 Page 10
  748.  
  749.  
  750.        All files  will be  tested (again)  for errors,  and sent to your
  751.        master output  file.  Your master copies of your Hubs' files will
  752.        be updated as necessary.
  753.  
  754.        If (and  only if) this week's output is changed from last week's,
  755.        your submittal file will be created in the current directory, and
  756.        a "file  attach" message  will be  generated to  send it  to your
  757.        Regional Coordinator.  All untouched by human hands!
  758.  
  759.        When the  data changes  in your  own nodelist  segment, edit your
  760.        data file  (usually  your  control  file)  and  execute  the  DOS
  761.        command:
  762.  
  763.             MAKENL /T
  764.                or
  765.             MAKENL /T /M   ; see discussion in the previous section
  766.  
  767.        Given a  chance, MakeNL  will do  the right  things at  the right
  768.        times.   You worry  about other  things, like  "Why can't Hub 999
  769.        send me a file without errors?  I gotta get him to use MakeNL!"
  770.  
  771.        2.4 Operation by a Regional Coordinator
  772.  
  773.        For the  most part, section 2.3 applies to you too, but there are
  774.        some differences.
  775.  
  776.        Figure 4 is a facsimile of REGION.CTL, the prototype control file
  777.        you will use.
  778.  
  779.        You have  enough files you will want to get them out of the clut-
  780.        ter of your mail server's home directory.  You will set up a sep-
  781.        arate MASter directory (see section 5.1 on page 20).
  782.  
  783.        Your output  file is  probably large enough that you will want to
  784.        take advantage  of the  benefits of  using a  generic output file
  785.        name.  In fact, your ZC may require it.
  786.  
  787.        If your  region file  is larger  than   10 kilobytes, MakeNL will
  788.        create a compressed archive by executing the program ARC.  If you
  789.        have version  6 or 7 of ARC and your ZC does not, you may want to
  790.        force ARC to produce level-5 compatible archives.
  791.  
  792.        Other than  that, substitute  Network for Hub, Region for Network
  793.        and Zone  for Region,  and follow the procedures in 2.3 using the
  794.        file REGION.CTL from your distribution package.
  795.  
  796.        2.5 Operation by a Zone Coordinator
  797.  
  798.        Life gets still more complicated, but is still manageable.
  799.  
  800.        Preparing a zone segment is much the same as preparing the region
  801.        segments of  which it  is made.   Refer  to sections  2.3 and 2.4
  802.        above, figure  5 (a facsimile of the file ZONE.CTL from your dis-
  803.        tribution package).
  804.  
  805.  
  806.  
  807.        MakeNL                   MakeNL Operation                 Page 11
  808.  
  809.  
  810.  
  811.        +---------------------------------------------------------------+
  812.        | make zone <nbr>           ; No "master data file"  input data |
  813.        |                           ; is below.                         |
  814.        | outfile <explicit name>   ; use generic name for output file  |
  815.        |                           ; if very large                     |
  816.        | process    Thursday       ; Set this day to meet deadline ITC |
  817.        |                           ; gives you or Friday after         |
  818.        |                           ; cut-over to zone based nodelist   |
  819.        | arc 5      ; force ARC 6 or 7 to generate level 5 archives    |
  820.        |            ; DO NOT use ARC5 with ARC versions earlier than 6 |
  821.        |                                                               |
  822.        | master     <directory>    ; where master files reside         |
  823.        |                           ; (default - current)               |
  824.        | update     <directory>    ; where to save received files      |
  825.        |                           ; 'till processing                  |
  826.        | mailfiles  <directory>    ; where mail server places received |
  827.        |                           ; files                             |
  828.        | uploads    <directory>    ; where BBS places uploaded files   |
  829.        |                           ; (if needed)                       |
  830.        | badfiles   <directory>    ; optional "waste can" for files    |
  831.        |                           ; with fatal errors                 |
  832.        | notify  errors CRASH      ; notify of errors (CRASH optional) |
  833.        |                           ; Errors should not occur at this   |
  834.        |                           ; level, but. . .                   |
  835.        | submit     1:1/0          ; where you send updates, CRASH     |
  836.        |                           ; and/or HOLD optional              |
  837.        | netaddress <your address> ; your network address here         |
  838.        | messages   <directory>    ; path name to mail server's        |
  839.        |                           ; mail area                         |
  840.        |                                                               |
  841.        | data                                                          |
  842.        |                                                               |
  843.        | ; Your zone source data goes here.  Note that first           |
  844.        | ; non-comment statement must begin with the keyword "Zone"    |
  845.        | ; not "Region"                                                |
  846.        |                                                               |
  847.        | files                                                         |
  848.        |                                                               |
  849.        | Region <nbr> <generic name>                                   |
  850.        | Region <nbr> <generic name>                                   |
  851.        | Region <nbr> <generic name> <notification address> ; if not   |
  852.        |                                          ; "region/0"         |
  853.        | Region <nbr> <generic name>                                   |
  854.        | ;      etc.                                                   |
  855.        +---------------------------------------------------------------+
  856.  
  857.  
  858.              Figure 5.  Sample control file for Zone Coordinators
  859.  
  860.  
  861.        On your process day, after generating your zone segment, you will
  862.        execute MakeNL  a second  time with  a special  control  file  to
  863.        create your zone's version of the distribution nodelist.  Section
  864.  
  865.  
  866.  
  867.        MakeNL                   MakeNL Operation                 Page 12
  868.  
  869.  
  870.  
  871.        +---------------------------------------------------------------+
  872.        | make composite                                                |
  873.        | name <network name>    ; eg. FidoNet or AlterNet or EGGnet    |
  874.        |                                                               |
  875.        | threshold  0 -1 ; force ARC -- no submittal difference file   |
  876.        |                                                               |
  877.        | arc 5      ; force ARC 6 or 7 to generate level 5 archives    |
  878.        |            ; DO NOT use ARC5 with ARC versions earlier than 6 |
  879.        |                                                               |
  880.        | outfile <generic name> ; recommended names:                   |
  881.        |                        ;  NODELIST - complete composite list  |
  882.        |                        ;  Zn-LIST  - zone distribution list   |
  883.        |                        ;  Rnn-LIST - region distribution list |
  884.        |                        ;  NnnnLIST - network distribution list|
  885.        |                                                               |
  886.        | outdiff <generic name> ; recommended names:                   |
  887.        |                        ;  NODEDIFF - complete composite list  |
  888.        |                        ;  Zn-DIFF  - zone distribution list   |
  889.        |                        ;  Rnn-DIFF - region distribution list |
  890.        |                        ;  NnnnDIFF - network distribution list|
  891.        |                                                               |
  892.        | master     <directory> ; same as OUTPath or MASter in         |
  893.        |                        ; previous run                         |
  894.        | outpath    .           ; put <name>.nnn in current directory  |
  895.        |                                                               |
  896.        | copyright <cpy-dist.txt>; if these three files are not path-  |
  897.        | prolog    <file name>   ; qualified, they are lodated in the  |
  898.        | epilog    <file name>   ; master directory                    |
  899.        |                                                               |
  900.        | files                                                         |
  901.        |                                                               |
  902.        | Network <nbr> <explicit name>  ; must match OUTFile name of   |
  903.        |                                ;  previous run                |
  904.        | ;   or                                                        |
  905.        | Region  <nbr> <generic name>   ; must match OUTFile name      |
  906.        | ;   or                                                        |
  907.        | Zone    <nbr> <generic name>   ; must match OUTFile name      |
  908.        | Zone    <nbr> <generic name>   ; file(s) received from        |
  909.        | ;  etc. . .                    ;  other ZC(s)                 |
  910.        +---------------------------------------------------------------+
  911.  
  912.  
  913.              Figure 6,  Sample control file for distribution lists
  914.  
  915.        (?) deals  with distribution  lists.  The only difference for ZCs
  916.        is that  they will  need to  define the MAIlfiles path to pick up
  917.        the files from the other ZCs.
  918.  
  919.        There are  several advantages  to  "zone  specific"  distribution
  920.        NODELISTs. Prologue  and epilogue  comments may  be "zone  local-
  921.        ized."  The local zone may be placed first in the list, a signif-
  922.        icant convenience to the nodes in your zone.  There will probably
  923.        be quicker and better NODELIST availability.
  924.  
  925.  
  926.  
  927.        MakeNL                   MakeNL Operation                 Page 13
  928.  
  929.  
  930.        2.6 Putting together a Distribution Nodelist Segment
  931.  
  932.        Distribution lists  (see section  3.7 on page 15) may be prepared
  933.        at any  level except  Hub, though  it is  not  recommended  below
  934.        Region.   In theory,  a distribution  list may be prepared at the
  935.        same time  your submittal  file is  prepared (MakeNL will support
  936.        this method).   In  practice, it is better to make a distribution
  937.        list in  a separate  run of  MakeNL so that the distribution list
  938.        may have  a distinct  file name,  and different copyright notices
  939.        and comments.
  940.  
  941.        Refer to  figure 6  (a facsimile  of the file DISTRIB.CTL in your
  942.        distribution package).  Now that you thoroughly understand all of
  943.        the forgoing  (you do,  don't you?),  this file  is fairly  self-
  944.        explanatory.   After you edit it to fit your specific needs, your
  945.        MakeNL external  event can  use it  to create  your  distribution
  946.        files.   If your  MakeNL external event executes once a week, the
  947.        batch file fragment is trivial:
  948.  
  949.             MAKENL
  950.             MAKENL  DISTRIB
  951.  
  952.        If your MakeNL external event is a daily event then:
  953.  
  954.             MAKENL
  955.               IF ERRORLEVEL 3 GOTO LOOP
  956.             MAKENL  DISTRIB
  957.  
  958.        Here you  make use  of the  fact that  a return code of 3, 4 or 5
  959.        means that  MakeNL was  executed in test mode.  That means it was
  960.        not your  normal process  day, so  the batch file simply restarts
  961.        your mail  server after  testing any  received files.  On process
  962.        day you will "drop through" and create distribution files.
  963.  
  964.  
  965.  
  966.        MakeNL                                                    Page 14
  967.  
  968.  
  969.                                 3. Definitions
  970.  
  971.  
  972.        Before we  proceed further,  we need  to define some terms in use
  973.        throughout this document.
  974.  
  975.        3.1 Composite Nodelist
  976.  
  977.        The composite  nodelist is defined, for our purposes, as the com-
  978.        plete list  of all  nodes in the network.  It includes all Zones,
  979.        all Regions and all local nets.
  980.  
  981.        3.2 Generic File Name
  982.  
  983.        To MakeNL,  a generic file name is one which does not have a file
  984.        type (or  file extension).  For example, NODELIST and FILES\ZONE1
  985.        are generic  file names.  MakeNL does special processing on files
  986.        when you  specify them  by generic  names.  It creates file types
  987.        for them based on publication date and contents of the files.
  988.  
  989.        The publication  date is  translated into  a 3-digit day-of-year,
  990.        represented here as "htu" where "h" is the hundreds digit, "t" is
  991.        the tens digit and "u" is the units digit of day-of-year.  MakeNL
  992.        recognizes and/or creates the following file types for files with
  993.        generic names:
  994.  
  995.             .htu - Master files, uncompressed submittal and distribution
  996.                       files, distribution difference files
  997.             .Atu - Archived submittal and distribution files, archived
  998.                       distribution difference files
  999.             .Dtu - Submittal difference files
  1000.             .ADu - Archived submittal difference files
  1001.  
  1002.        3.3 Explicit File Name
  1003.  
  1004.        An explicit  file name,  on the  other hand, has a specified file
  1005.        type.   PROLOG.TXT is  an example.  When data files are specified
  1006.        this way,  MakeNL does  only limited  processing on  them, speci-
  1007.        fically checking  them for errors and copying them from directory
  1008.        to directory.   It makes no attempt to deal with archives or dif-
  1009.        ference files.
  1010.  
  1011.        3.4 Archive File
  1012.  
  1013.        An archive  file is  a compressed file created by the ARC program
  1014.        from System Enhancement Associates.  You must have a copy of this
  1015.        program in your current directory or on your DOS path (see "PATH"
  1016.        command in  your DOS  manual) to  make use  of this capability of
  1017.        MakeNL.
  1018.  
  1019.        The ARC  program, version  6 and later, has the ability to create
  1020.        archives compatible  with earlier  versions of  ARC.  MakeNL pro-
  1021.        vides a  configuration verb to permit the use of this capability.
  1022.        (See section 6.3.4 on page 30)
  1023.  
  1024.  
  1025.  
  1026.        MakeNL                     Definitions                    Page 15
  1027.  
  1028.  
  1029.        3.5 Difference File
  1030.  
  1031.        A difference file is a file which defines the differences between
  1032.        an older version of a file and a newly created one.  In fact, the
  1033.        difference file (sometimes called a "diff" file from the NODEDIFF
  1034.        naming convention)  contains a  simple editing  language.  With a
  1035.        copy of  the old  file and  the difference file, MakeNL can accu-
  1036.        rately recreate the new version of file.
  1037.  
  1038.        3.6 Submittal File
  1039.  
  1040.        A submittal file is one which you will send forward up the ladder
  1041.        to be  merged with  other files from your level.  A Hub sends his
  1042.        submittal file to his network host.  The host sends his submittal
  1043.        file to  his regional coordinator, etc..  MakeNL will create your
  1044.        submittal file  for you  each week, and can even create the "file
  1045.        attach" message to send the file over the network.
  1046.  
  1047.        3.7 Distribution File
  1048.  
  1049.        Distribution files, on the other hand go the other way.  They are
  1050.        meant  for  distribution  down  the  ladder.    NODELIST.htu  and
  1051.        NODEDIFF.htu are well known examples, but let's say you are a re-
  1052.        gional coordinator,  and some of the nodes in your region have no
  1053.        interest in communicating with nodes outside the region.  To con-
  1054.        serve valuable  disk space,  they might  wish to  use a  nodelist
  1055.        which only  contains your  region.  MakeNL can create such files.
  1056.        They differ  from submittal  files only in the naming conventions
  1057.        they observe.
  1058.  
  1059.        3.8 Absolute Directory Path
  1060.  
  1061.        An absolute  path name  is one  specified from  the  disk's  root
  1062.        directory.  It will always begin with a back-slant (\) or a drive
  1063.        specifier followed  by a back-slant (C:\)  C:\BBS and \MASTER are
  1064.        examples of absolute path names.
  1065.  
  1066.        3.9 Relative Directory Path
  1067.  
  1068.        A relative path name is one specified as a subdirectory  from the
  1069.        current working  directory, without  specifying what that is.  It
  1070.        never begins  with a  back-slant.   FILES\RECEIVED and D:OPUS are
  1071.        examples of  relative path names.  In the latter case the path is
  1072.        relative to the current directory of the D drive.
  1073.  
  1074.        See your DOS manual for additional information on path names.
  1075.  
  1076.        3.10 Publication Date
  1077.  
  1078.        The "publication date" is the date of the next publication of the
  1079.        composite nodelist.   It  is always the same day of the week.  It
  1080.        is usually a Friday, but can be any day of the week.
  1081.  
  1082.  
  1083.  
  1084.        MakeNL                     Definitions                    Page 16
  1085.  
  1086.  
  1087.        The  publication   date  is   specifically,  the  next  occurring
  1088.        publication day (today, if this is your publication day).
  1089.  
  1090.             NOTE:   Most FidoNet  compatible networks publish their
  1091.             nodelist on Friday, but a few publish on other days.  A
  1092.             special verb  is provided  to control  publication day.
  1093.             (See section 6.1.3 on page 22.)
  1094.  
  1095.  
  1096.  
  1097.        MakeNL                                                    Page 17
  1098.  
  1099.  
  1100.                             4. MakeNL Command Line
  1101.  
  1102.  
  1103.        MakeNL is invoked with the following command line:
  1104.  
  1105.             MakeNL [<control_file_name>] [/PROCESS | /TEST]
  1106.                  [/MERGE[=<list_name>] [/NAME=<composite_name>]
  1107.  
  1108.        The switch names may be spelled out (/TEST), or abbreviated to as
  1109.        few as one letter (/T).
  1110.  
  1111.        4.1 Control file name
  1112.  
  1113.        By  default,   MakeNL  expects  to  find  a  control  file  named
  1114.        MAKENL.CTL in  the current  directory.  This can be overridden by
  1115.        placing the  name (optionally  qualified with a path) on the com-
  1116.        mand line.   The control file may have any file extension, but if
  1117.        none is given .CTL is assumed.  For example:
  1118.  
  1119.             MakeNL ZONE1
  1120.  
  1121.        causes MakeNL to use ZONE1.CTL in the current directory, and:
  1122.  
  1123.             MakeNL MASTER\NET100.CFG
  1124.  
  1125.        causes MakeNL  to use NET100.CFG in the subdirectory named MASTER
  1126.        as its control file.
  1127.  
  1128.        MakeNL must  have a  control file  and will  abort if it can find
  1129.        none.   See section  6 on page 21 for the contents of the control
  1130.        file.
  1131.  
  1132.        In operation,  MakeNL writes  a number  of progress  messages  to
  1133.        "standard output."   By default, DOS sends these messages to your
  1134.        screen, but  you may  redirect them  to a file to retain a log of
  1135.        MakeNL's activity:
  1136.  
  1137.             MAKENL   >MAKENL.LOG
  1138.  
  1139.             MAKENL  >>MAKENL.LOG
  1140.  
  1141.        In the  first case,  the log  file is  recreated fresh  each time
  1142.        MakeNL is  executed.   In the second case, MakeNL appends the re-
  1143.        sults of each execution to the end of the log file.
  1144.  
  1145.        4.2 /TEST switch
  1146.  
  1147.        The optional  "/TEST" switch,  if given,  will  force  MakeNL  to
  1148.        operate in test mode, even on the normal process day.
  1149.  
  1150.  
  1151.  
  1152.        MakeNL                 MakeNL Command Line                Page 18
  1153.  
  1154.  
  1155.        4.3 /PROCESS switch
  1156.  
  1157.        The optional  "/PROCESS" switch,  if given,  will force MakeNL to
  1158.        operate in  process mode,  overriding the  effect  of  a  PROcess
  1159.        statement in the control file.
  1160.  
  1161.        4.4 /MERGE switch
  1162.  
  1163.        The optional  "/MERGE" switch,  if given,  will cause  MakeNL  to
  1164.        merge your updated nodelist segment with an existing distribution
  1165.        nodelist to produce a temporary nodelist containing your updates.
  1166.  
  1167.        If <list_name> is given, it must have the form:
  1168.  
  1169.             /M=[path\]<generic_name>
  1170.  
  1171.        See discussion  of MERge  control file  verb on  page 24 for more
  1172.        details.
  1173.  
  1174.        4.5 /NAME=<network_name>
  1175.  
  1176.        The optional /NAME switch is a specialized cosmetic switch.  When
  1177.        you MAKe  a composite  list (see  section 6.1.1  on page 21), the
  1178.        generated list  begins, by  default, with  the  line  "  Nodelist
  1179.        for. . ."
  1180.  
  1181.        The /NAME switch may be used to insert a network name in front of
  1182.        the first  word in  that line.  If the specified replacement name
  1183.        contains spaces, the entire parameter must be enclosed in quotes.
  1184.  
  1185.        For example,  the coordinator  for a  network operated  by the US
  1186.        Parks Service might use:
  1187.  
  1188.             MAKENL "/N=Parks Service"
  1189.  
  1190.        The first  line of  his generated  list would read "Parks Service
  1191.        Nodelist for. . ."  Note that to the right of the equal sign case
  1192.        is significant.  Any capitalization present will be preserved.
  1193.  
  1194.        A FidoNet ZC might use:
  1195.  
  1196.             MAKNL /N=FidoNet
  1197.  
  1198.        If the  MAKe statement  in your control file (see page 21) is not
  1199.        "MAKE COMPOSITE" the /NAME switch will have no effect.
  1200.  
  1201.        See also the NAMe verb in section (?), page (?).
  1202.  
  1203.  
  1204.  
  1205.        MakeNL                 MakeNL Command Line                Page 19
  1206.  
  1207.  
  1208.        4.6 Error return codes
  1209.  
  1210.        MakeNL terminates with ERRORLEVEL (see your DOS manual) set to
  1211.        one of the following values:
  1212.  
  1213.             0  = Process mode - no errors encountered
  1214.             1  = Process mode - no fatal errors encountered
  1215.             2  = Process mode - one or more fatal errors encountered
  1216.             3  = Test mode - no errors encountered
  1217.             4  = Test mode - no fatal errors encountered
  1218.             5  = Test mode - one or more fatal errors encountered
  1219.           254  = MakeNL aborted - I/O error
  1220.           255  = MakeNL aborted - Control file error
  1221.  
  1222.  
  1223.  
  1224.        MakeNL                                                    Page 20
  1225.  
  1226.  
  1227.                              5. MakeNL Directories
  1228.  
  1229.  
  1230.        MakeNL uses  several disk  directories in  the performance of its
  1231.        tasks.   Some are  required -- others are needed only to make use
  1232.        of special  features.  In this text, MakeNL's directories will be
  1233.        referred to by the following names.
  1234.  
  1235.        5.1 Master Directory
  1236.  
  1237.        The master  directory is  where MakeNL  stores all  of its master
  1238.        files.   Received files  will migrate  to this directory.  MakeNL
  1239.        requires a master directory.
  1240.  
  1241.        5.2 Update Directory
  1242.  
  1243.        The update directory provides interim storage for received files.
  1244.        It is  needed only if you process files received from others, and
  1245.        notify them  on receipt or when errors occur.  It prevents multi-
  1246.        ple notification.
  1247.  
  1248.        5.3 Mailfiles Directory
  1249.  
  1250.        The mailfiles  directory is  the directory  in  which  your  mail
  1251.        server receives  files.   It is  required if you receive nodelist
  1252.        segments from others via the network.
  1253.  
  1254.        5.4 Upload Directory
  1255.  
  1256.        The upload  directory is  the directory  in which your BBS stores
  1257.        uploaded files.   It  is required  if others upload nodelist seg-
  1258.        ments to your BBS.
  1259.  
  1260.        5.5 Other Directories
  1261.  
  1262.        Depending on the options selected in the control file, MakeNL may
  1263.        need access to other directories.
  1264.  
  1265.        If MakeNL  will be generating network messages it must be told in
  1266.        which directory your mail server expects to find these messages.
  1267.  
  1268.        By default,  MakeNL places  the master copy of its output file in
  1269.        the directory  with your  other master  files.  You can, however,
  1270.        define another directory to receive output files.
  1271.  
  1272.        When a  received file  has a "fatal error," one which renders the
  1273.        entire file  unusable, MakeNL  must get it out of the way to pre-
  1274.        vent further  attempts to  process it.   By  default,  it  simply
  1275.        deletes the  offending file,  but you  may define  a "bad  files"
  1276.        directory and MakeNL will move such files there.
  1277.  
  1278.        The "current directory" when MakeNL is invoked is the default di-
  1279.        rectory for MakeNL's control file.
  1280.  
  1281.  
  1282.  
  1283.        MakeNL                                                    Page 21
  1284.  
  1285.  
  1286.                             6. MakeNL Control File
  1287.  
  1288.  
  1289.        MakeNL requires  a control  file to  define its operating parame-
  1290.        ters.   By default,  this file  is named  MAKENL.CTL, but you may
  1291.        specify another control file name on the command line.
  1292.  
  1293.        The contents  of the control file is a series of statements which
  1294.        tell MakeNL  what it  is to  do, and  how it  is to  do it.  Each
  1295.        statement begins with a verb, and may have as many as three addi-
  1296.        tional arguments.
  1297.  
  1298.        MakeNL is  not sensitive  to "case"  of characters in the control
  1299.        file.  Upper, lower or mixed case may be used.  In the discussion
  1300.        of the  control verbs  below, upper  case is used to indicate the
  1301.        minimum abbreviation required.
  1302.  
  1303.        The definitions of the control file verbs are grouped by type for
  1304.        clarity.  Except for DATA and FILES, they may appear in your con-
  1305.        trol file in any order.
  1306.  
  1307.        6.1 Control statements
  1308.  
  1309.        The following statements control the overall operation of MakeNL.
  1310.  
  1311.        6.1.1 MAKe <segment_type> [<number> [<source_file>]]
  1312.  
  1313.             A MAKe  statement is  required in  every control  file.   It
  1314.             tells MakeNL  what type of nodelist segment it is to produce
  1315.             and what kind of input to expect.
  1316.  
  1317.             <segment_type> is  one of  HUB,  NETwork,  REGion,  ZONe  or
  1318.             COMposite.
  1319.  
  1320.             <number> is  shown above as "optional."  This isn't strictly
  1321.             correct.   For all segment types except COMposite, it is re-
  1322.             quired.  It must NOT be used for COMposite.  <number> is the
  1323.             network address  number associated  with the  segment  being
  1324.             made.
  1325.  
  1326.             Even if  you are  a Zone Coordinator, there is a part of the
  1327.             nodelist segment you prepare which you, yourself maintain --
  1328.             the list  of nodes  associated directly  with  your  segment
  1329.             heading.   In the case of a ZONe segment type, this includes
  1330.             the "zone  gate" nodes.  In the case of an RC it is the list
  1331.             of "independent"  nodes in  your region.  There are two ways
  1332.             to input  your sub-segment  into MakeNL.  One is through the
  1333.             use of the DATa statement (see section (?) on page (?).  The
  1334.             other is by specifying a source file in the MAKe statement.
  1335.  
  1336.             <source_file> must  be an  explicit file name without a path
  1337.             qualifier.  The named file must exist in the directory named
  1338.             as your  master directory.   The first non-comment statement
  1339.  
  1340.  
  1341.  
  1342.        MakeNL                 MakeNL Control File                Page 22
  1343.  
  1344.  
  1345.             in the  file must match the MAKe statement in <segment_type>
  1346.             and <number>.
  1347.  
  1348.             Examples:
  1349.  
  1350.                  MAKE COMPOSITE      ; make a complete nodelist
  1351.  
  1352.                  MAKE NET 100 MASTER.DAT ; input data from "master"
  1353.  
  1354.                  MAKE REGION 10      ; use DATA statement
  1355.  
  1356.        6.1.2 NAMe <network_name>
  1357.  
  1358.             When you  MAKe a  composite list  (see section  6.1.1),  the
  1359.             generated list  begins, by default, with the line " Nodelist
  1360.             for. . ."
  1361.  
  1362.             With the  NAMe verb,  you can  define a  <network_name> that
  1363.             will be  inserted in  front of  the first word of that line.
  1364.             <network_name> is  the only  parameter in  your control file
  1365.                                    ____
  1366.             that is  case-sensitive.  It will appear in the list exactly
  1367.             the way  it appears  in your  control file.   This  verb  is
  1368.             almost identical  to the  /NAME switch  (see section  4.5 on
  1369.             page 18).
  1370.  
  1371.             There are  two restrictions imposed by the NAMe verb that do
  1372.             not apply  to the  /NAME switch.   <network_name>  can be no
  1373.             more than 15 characters long, and can not contain any spaces
  1374.             or tabs.
  1375.  
  1376.             If you  use both  the NAMe  verb in the control file and the
  1377.             /NAME switch  on the  command line,  the command line switch
  1378.             will override.
  1379.  
  1380.        6.1.3 PUBlish <day_of_week>
  1381.  
  1382.             Most FidoNet  compatible networks  publish  their  nodelists
  1383.             each Friday.   For that reason, MakeNL assumes a Friday pub-
  1384.             lication day.
  1385.  
  1386.             As noted  earlier, the  file extensions  MakeNL computes for
  1387.             generic file names are determined by publication date, which
  1388.                                                              ____
  1389.             is defined  as the  next occurrence of your publication day,
  1390.                                                                     ___
  1391.             expressed as  day of year.  Obviously, your next publication
  1392.                           ___________
  1393.             date if  different if  you publish  on Saturday, than if you
  1394.             publish on Friday.
  1395.  
  1396.             The PUBlish  statement let's you inform MakeNL that you pub-
  1397.             lish your  list on  some day  other than Friday, and he will
  1398.             adjust his  generic file  name extensions  accordingly.  The
  1399.             <day_of_week> may  be a full day name, or may be abbreviated
  1400.             to as few as three characters.
  1401.  
  1402.  
  1403.  
  1404.        MakeNL                 MakeNL Control File                Page 23
  1405.  
  1406.  
  1407.             Example:
  1408.  
  1409.                  PUBLISH SUNDAY      ; sets file extensions according to
  1410.                                      ; Sunday's date
  1411.  
  1412.             CAUTION:   Some nodelist processors may fail to operate
  1413.             correctly with  file name  extensions keyed to a day of
  1414.             week other  than Friday.    For  example,  versions  of
  1415.             EditNL earlier  than 4.20  will never  find such files.
  1416.             On the  other hand,  XLATLIST handles  all such  exten-
  1417.             sions, but  has a  problem with the first list of a new
  1418.             year if  you don't delete the list(s) from the previous
  1419.             year first.
  1420.  
  1421.        6.1.4 PROcess <day_of_week>
  1422.  
  1423.             MakeNL has  two fundamental  modes of  operation, "test" and
  1424.             "process."
  1425.  
  1426.             In test  mode, it  scans input data and checks it for errors
  1427.             and it  moves received update files to the update directory.
  1428.             Unless the  MERge statement or the /M command line switch is
  1429.             used, it does not produce any output.
  1430.  
  1431.             In process  mode MakeNL  produces an updated master file for
  1432.             your nodelist  segment and any required submittal or distri-
  1433.             bution files.  Normally you will do this once each week.
  1434.  
  1435.             If no  PROcess statement  is present, MakeNL will operate in
  1436.             process mode  unless the /T command line switch is used.  If
  1437.             the PROcess  statement is present, it controls MakeNL's mode
  1438.             of operation.   Except  on the  day specified in this state-
  1439.             ment, MakeNL will operate in test mode.  When MakeNL is exe-
  1440.             cuted on  the defined  process day,  it operates  in process
  1441.             mode.
  1442.  
  1443.             This statement  is most  useful to  coordinators who receive
  1444.             update files from others.  It permits them to operate MakeNL
  1445.             daily in an "external event" of their mail server.  It error
  1446.             checks received files and sends back notification on a daily
  1447.             basis as files are received, but only on the appropriate day
  1448.             does it  create a  submittal file and forward it up the lad-
  1449.             der.
  1450.  
  1451.             The <day_of_week> may be a full day name, or may be abbrevi-
  1452.             ated to  as few as three characters.  It should be chosen so
  1453.             that you  may meet  the submittal  deadline set  by the next
  1454.             higher coordinator.
  1455.  
  1456.             Example:
  1457.  
  1458.                   PROCESS THURSDAY
  1459.  
  1460.  
  1461.  
  1462.        MakeNL                 MakeNL Control File                Page 24
  1463.  
  1464.  
  1465.        6.1.5 MERge [<nodelist_name>]
  1466.  
  1467.             When you add new nodes (or nets, as the case may be) to your
  1468.             list, you  might like  to notify them immediately that their
  1469.             applications have  been acted  upon.  This is complicated by
  1470.             the fact that your mail server needs to know about these new
  1471.             nodes (or nets), and that information comes from the distri-
  1472.             bution nodelist.   It may be several days before you receive
  1473.             the updated  version of the distribution nodelist containing
  1474.             the new listing.
  1475.  
  1476.             The MERge  statement tells MakeNL to merge your updated seg-
  1477.             ment into an existing distribution nodelist to create a tem-
  1478.             porary nodelist  your mail server can use.  This action will
  1479.             occur even if MakeNL is operating in test mode.
  1480.  
  1481.             By default,  MakeNL will  search for  NODELIST.htu not  more
  1482.             than two weeks old in the current directory, create a tempo-
  1483.             rary list  named NODELIST.999,  copy from  the  distribution
  1484.             list to  the temporary  list until  it finds your segment in
  1485.             the distribution  list, generate  an updated version of your
  1486.             segment in  the temporary list and finally, copy the remain-
  1487.             der of the distribution list to the temporary list.
  1488.  
  1489.             In order  to find  your segment  in the  distribution  list,
  1490.             MakeNL uses  information from the MAKe and NETaddress state-
  1491.             ments in your control file.
  1492.  
  1493.             If you  are MAKing  a HUB,  NETaddress must  provide the net
  1494.             number.   If no  NETaddress is given, the MERge command will
  1495.             be canceled.
  1496.  
  1497.             If you  are MAKing  anything other  than a  ZONE, and if the
  1498.             distribution list is a zone-based list, the zone number from
  1499.             the NETaddress  command is used to place your segment in the
  1500.             correct zone.   If  no zone  number is given, MakeNL assumes
  1501.             that your  segment goes  in the  first zone it encounters in
  1502.             the distribution list.
  1503.  
  1504.             If present, <nodelist_name> must be a generic file name, but
  1505.             may be  qualified by a path name.  It overrides the name and
  1506.             location of  the distribution  list, but the rest of the ac-
  1507.             tions are  the same.   The  temporary list  is placed in the
  1508.             same directory as the distribution list being merged.
  1509.  
  1510.             If the MERge statement is used in your control file, it will
  1511.             ALWAYS be  executed.  If you prefer to "merge on demand" use
  1512.             the /M  command line  switch instead.  It is exactly equiva-
  1513.             lent to the MERge statement. (See section 4.4 on page 18.)
  1514.  
  1515.             Example:
  1516.  
  1517.                  MERGE \BBS\NODELIST
  1518.  
  1519.  
  1520.  
  1521.        MakeNL                 MakeNL Control File                Page 25
  1522.  
  1523.  
  1524.        6.1.6 PRIvate <disposition>
  1525.  
  1526.             Private  nodes   (identified  by  the  PVT  keyword  in  the
  1527.             nodelist) are not universally permitted by all networks.  In
  1528.             a commercial network, for example, a node with no phone num-
  1529.             ber listing  is not particularly useful.  By default, MakeNL
  1530.             will accept these node entries contrary to a network coordi-
  1531.             nator's intentions.
  1532.  
  1533.             The PRIvate  statement permits  you to define other disposi-
  1534.             tions for  such entries.   <disposition>  must be one of OK,
  1535.             NONE, ZONE, REGION, HOST or HUB.
  1536.  
  1537.             "PRIvate OK"  is equivalent to the default action -- private
  1538.             nodes are permitted (but, of course, only within nets).
  1539.  
  1540.             NONE says  they are  not permitted.  The PVT keyword will be
  1541.             treated as an error, with a note that "Private nodes are not
  1542.             permitted in this network."
  1543.  
  1544.             If <disposition> is any of the hierarchical keywords, a pri-
  1545.             vate node  will be transformed into an "open" node by remov-
  1546.             ing the PVT keyword and substituting a known phone number in
  1547.             the phone  number field.   The  number used  is that  of the
  1548.             nearest node  at least  as high in the hierarchy as the key-
  1549.             word specified.  For instance, if "PRIvate HOST" is given, a
  1550.             private node will become a normal node with the phone number
  1551.             of the most recently encountered Host, Region or Zone state-
  1552.             ment.  Even if the previous entry were a Hub, his phone num-
  1553.             ber would not be used unless "PRIvate HUB" had been given.
  1554.  
  1555.             For fairly  obvious reasons, if you are MAKing a NETwork and
  1556.             enter the statement "PRIvate ZONE," MakeNL will abort with a
  1557.             control file  error.   It must  be able to find at least one
  1558.             phone number  to make  the substitution, and your file can't
  1559.             have any  zones or regions in it!  The hierarchical level of
  1560.             <disposition> must  be equal  to or lower than the level you
  1561.             are MAKing.   In  the case  you MAKe  COMPosite, MakeNL will
  1562.             take your word for anything your PRIvate statement tells it,
  1563.             but if no matching phone number has been found before it en-
  1564.             counters a private node, the private node will be treated as
  1565.             though the  statement were "PRIvate NONE," and will generate
  1566.             an error.
  1567.  
  1568.        6.1.7 MINphone <minimum_parts>
  1569.  
  1570.             The sixth  field of  a nodelist  entry is  the phone  number
  1571.             field.   MakeNL insures  that it meets certain minimum stan-
  1572.             dards.  It must begin and end with a digit.  It must contain
  1573.             only digits and hyphens.  There must not be two hyphens in a
  1574.             row.
  1575.  
  1576.             Phone numbers usually consist of several parts, separated by
  1577.             hyphens.   For example,  a number might have a country code,
  1578.  
  1579.  
  1580.  
  1581.        MakeNL                 MakeNL Control File                Page 26
  1582.  
  1583.  
  1584.             and area  code, an  exchange code  and a  line number.    To
  1585.             MakeNL, a  phone number  is a  phone number.  It attaches no
  1586.             special meaning the number's various parts.
  1587.  
  1588.             Some nodelist  processing programs  do attach meaning to the
  1589.             parts of a phone number, and complain if they are not there!
  1590.             For this  reason MakeNL  will  enforce  an  additional  con-
  1591.             straint, if  told to do so.  It will insure that every phone
  1592.             number has a certain minimum number of parts.
  1593.  
  1594.             Example:
  1595.  
  1596.                  MINPHONE 4
  1597.  
  1598.             This statement  in a control file instructs MakeNL to reject
  1599.             any entry  with a  phone number  that does not have at least
  1600.             four parts.   The  number "123-4567"  would not be valid and
  1601.             would cause an error message to be issued.
  1602.  
  1603.             In a  large hierarchical network of international scope, the
  1604.             MINphone verb should only be used at the lower levels.  Hubs
  1605.             and Hosts  may expect all phone numbers to fit some standard
  1606.             format.   Except in North America, regional coordinators are
  1607.             likely to find variability in phone number format from coun-
  1608.             try to country.  A zone coordinator will certainly encounter
  1609.             such variability.   Attempts to enforce a standard number of
  1610.             parts in  a phone  number at  these levels  will not be very
  1611.             successful.
  1612.  
  1613.             This is  not a  serious constraint  on the  use of MINphone.
  1614.             The files  received by  RCs and  ZCs have  already been pro-
  1615.             cessed at least once by MakeNL at a lower level where format
  1616.             can be enforced.  There should be no need to do it again.
  1617.  
  1618.        6.1.8 BAUdrate <valid_baud_rates>
  1619.  
  1620.             The seventh  field of  a nodelist  entry is  the  baud  rate
  1621.             field.   MakeNL checks  the value  in this  field against  a
  1622.             table of  valid baud rates.  Experience has shown this to be
  1623.             necessary.   Certain types of errors can cause a part of the
  1624.             phone number  to appear to be in the baud rate field.  With-
  1625.             out a  validity check, these errors could go undetected.  By
  1626.             default, the  valid rates  are 300,  1200, 2400,  4800,  and
  1627.             9600.
  1628.  
  1629.             To accommodate future growth, the "valid baud rate" table is
  1630.             configurable through  the use  of the  BAUdrate verb.    The
  1631.             <valid_baud_rates> parameter  is a list of up to twelve (12)
  1632.             valid baud  rates (numeric strings) separated by commas.  It
  1633.             may contain  no spaces  of tabs.   It  must be  the complete
  1634.             list, and will replace MakeNL's internal table.
  1635.  
  1636.  
  1637.  
  1638.        MakeNL                 MakeNL Control File                Page 27
  1639.  
  1640.  
  1641.             For example:
  1642.  
  1643.                  BAUDRATE 1200,2400,4800,9600
  1644.  
  1645.             This statement  would effectively  eliminate 300  baud nodes
  1646.             from your list, while:
  1647.  
  1648.                  BAUDRATE 300,1200,2400,4800,9600,14400
  1649.  
  1650.             would permit  nodes to  use 14400  baud in their entries.  A
  1651.             caveat in this case.  Any new values must be authorized from
  1652.             the top  down.   If you  used this statement and submitted a
  1653.             list with  14400 baud  nodes, the  first coordinator who did
  1654.             not have  a similar  BAUdrate statement  would reject  those
  1655.             nodes as having invalid baud rates.
  1656.  
  1657.             In general,  you can  be more restrictive than the coordina-
  1658.             tor(s) above you, but you cannot be more liberal!
  1659.  
  1660.        6.2 Defining nodelist segment directories
  1661.  
  1662.        MakeNL uses  several directories for various purposes for storage
  1663.        of nodelist  segment data.   The following statements are used to
  1664.        define to  MakeNL where  these directories are located.  They all
  1665.        have the same format:
  1666.  
  1667.             <verb> <directory_path_name>
  1668.  
  1669.        <verb> is  one of  MASter, UPDate, MAIlfiles, UPLoads or BADfiles
  1670.        as defined below.
  1671.  
  1672.        <directory_path_name> is  a relative  or absolute  directory path
  1673.        name, with or without a disk specifier.
  1674.  
  1675.        6.2.1 MASter <directory_path_name>
  1676.  
  1677.             This is the directory in which MakeNL keeps all its "master"
  1678.             files.   This includes  the master  copy of  your  submittal
  1679.             file,   master copies  of nodelist  segments  received  from
  1680.             others, your  input source  file, if  used,  and  the  three
  1681.             "comments" text  files, if used.  In addition, for each seg-
  1682.             ment given a generic name, week-old copies are kept here and
  1683.             used create and/or apply difference files.
  1684.  
  1685.             MakeNL always uses a master directory.  If this statement is
  1686.             absent, the  current directory  is used as the master direc-
  1687.             tory.
  1688.  
  1689.        6.2.2 UPLoads <directory_path_name>
  1690.  
  1691.             If others  upload update  files to  your BBS, this statement
  1692.             tells MakeNL where to look for them.  Only one upload direc-
  1693.             tory may  be named.  If your BBS supports more than one, you
  1694.  
  1695.  
  1696.  
  1697.        MakeNL                 MakeNL Control File                Page 28
  1698.  
  1699.  
  1700.             need to  inform your  submitters how to upload their updates
  1701.             so that they wind up in the right directory.
  1702.  
  1703.             If you  don't receive  update files  via upload,  omit  this
  1704.             statement and MakeNL will ignore it.
  1705.  
  1706.        6.2.3 MAIlfiles <directory_path_name>
  1707.  
  1708.             If you  receive update  files from  others via network mail,
  1709.             this statement  tells MakeNL where your file server will put
  1710.             the files.
  1711.  
  1712.             If you  don't receive  update files  via network  mail, omit
  1713.             this statement and MakeNL will ignore it.
  1714.  
  1715.        6.2.4 UPDate <directory_path_name>
  1716.  
  1717.             If you  receive update  files from others by any means, this
  1718.             statement defines  a temporary  holding directory  for them.
  1719.             When MakeNL  is operated in test mode, files it finds in the
  1720.             UPLoads or  MAIlfiles directories  are moved  to this direc-
  1721.             tory.   If you use notification (and you should use at least
  1722.             error notification),  MakeNL will  generate  a  notification
  1723.             message each  time it finds a submitter's update file in one
  1724.             of those  directories.   Moving received files to the update
  1725.             directory prevents multiple notification.
  1726.  
  1727.             If received files were moved to the master directory in test
  1728.             mode, and if a subsequent difference file were received from
  1729.             one of your submitters, you might have already lost the file
  1730.             MakeNL needs to apply the difference file against!
  1731.  
  1732.             When MakeNL  operates in  process mode, it moves files found
  1733.             in any  of these directories to the master directory as part
  1734.             of its update process.
  1735.  
  1736.             If you  don't receive  update files  from others,  omit this
  1737.             statement and MakeNL will ignore it.
  1738.  
  1739.        6.2.5 BADfiles <directory_path_name>
  1740.  
  1741.             When a received file generates a fatal error, MakeNL refuses
  1742.             to process  it further.   By  default, it simply deletes the
  1743.             offending file,  but if  this directory  is defined,  MakeNL
  1744.             will move  files with  fatal errors  here.  This gives you a
  1745.             chance (if you feel so inclined) to edit the file to correct
  1746.             the error,  then move it back to say the MAIlfiles directory
  1747.             and process it again.
  1748.  
  1749.             If you  don't receive update files from others or don't want
  1750.             to correct  their errors  for them,  omit this statement and
  1751.             MakeNL will ignore it.
  1752.  
  1753.  
  1754.  
  1755.        MakeNL                 MakeNL Control File                Page 29
  1756.  
  1757.  
  1758.        6.3 Defining output
  1759.  
  1760.        The following  statements tell MakeNL what output to generate and
  1761.        how to  generate it.   They only have effect when MakeNL operates
  1762.        in process mode.
  1763.  
  1764.        6.3.1 OUTFile <filename>
  1765.  
  1766.             This statement is required in your control file.  It defines
  1767.             the name  of your master and submittal files.  These are the
  1768.             same file  unless MakeNL  creates an archive or a difference
  1769.             file.   These files are placed in your OUTFile directory, or
  1770.             if it is not defined, your MASter directory.
  1771.  
  1772.             <filename> may be either explicit or generic, but the choice
  1773.             carries some implications with it.  Using an explicit output
  1774.             file name  inhibits some  of MakeNL's  features, but if your
  1775.             output file  is small  they may  not be  of interest to you.
  1776.             Specifically, MakeNL will create neither an archive file nor
  1777.             a difference file for explicitly named files.  The reason is
  1778.             that to  do so,  MakeNL must  have the freedom to manipulate
  1779.             file extensions,  but it  cannot do  that if  you give it an
  1780.             explicit file extension.
  1781.  
  1782.        6.3.2 OUTPath <directory_path_name>
  1783.  
  1784.             By default,  MakeNL keeps  all of its output (except a merge
  1785.             file) in  the MASter  directory.   This includes  the output
  1786.             master  file,   the  submittal   file  (if  different),  and
  1787.             distribution files.   The  OUTPath  statement,  if  present,
  1788.             tells MakeNL to keep its output in a different directory.
  1789.  
  1790.        6.3.3 THReshold <arc_size> [<diff_size>]
  1791.  
  1792.             When you  use a generic output file name, MakeNL will do its
  1793.             best to  insure that  your submittal file is small enough to
  1794.             send to your coordinator in a one-minute phone call.  It has
  1795.             two ways to compress a file.
  1796.  
  1797.             First, it can create an archive file, using the ARC program.
  1798.             This will typically achieve about 40% reduction in size.
  1799.  
  1800.             Second, it  can create  a difference  file.   This is a file
  1801.             which contains  only the differences between your new output
  1802.             file and your previous one.  This technique can achieve dra-
  1803.             matic file size reduction, but is not as safe as the former.
  1804.             It assumes that your coordinator has a copy of your previous
  1805.             file (usually  a safe assumption).  With it and the new dif-
  1806.             ference file he can reconstruct your new output file.
  1807.  
  1808.             At 2400 baud, you can transmit a file about 10000 characters
  1809.             long in  a one-minute  phone call.  If an archive file is at
  1810.             least 40%  smaller than  its uncompressed version, a file of
  1811.             up to  16666 characters can be archived and transmitted in a
  1812.  
  1813.  
  1814.  
  1815.        MakeNL                 MakeNL Control File                Page 30
  1816.  
  1817.  
  1818.             minute.  These are the two default thresholds MakeNL uses to
  1819.             determine  what  to  do  with  your  submittal  file.    The
  1820.             THReshold statement can override these defaults.
  1821.  
  1822.             If your submittal file is larger than <arc_size> (in bytes),
  1823.             MakeNL will  use ARC  to create an archive of it, and submit
  1824.             the archive file.
  1825.  
  1826.             If your  submittal file  is greater than <diff_size>, MakeNL
  1827.             will create  a difference  file and submit it.  If a differ-
  1828.             ence file  is still larger than <arc_size>, MakeNL will cre-
  1829.             ate an  archive of  the difference file and submit that, but
  1830.             that is the best it can do.
  1831.  
  1832.             If <diff_size> is given, it must be greater than or equal to
  1833.             <arc_size>.  If <diff_size> is not given it is calculated by
  1834.             MakeNL as 5/3 * <arc_size>.
  1835.  
  1836.             Examples:
  1837.  
  1838.                  THRESHOLD 5000 ; recommended value for 1200 baud
  1839.  
  1840.                  THR 0          ; always create an archived diff file
  1841.  
  1842.                  THR 0 -1       ; always archive -- no diff
  1843.  
  1844.                  THR -1 -1      ; turn compression off
  1845.  
  1846.        6.3.4 ARC <n>
  1847.  
  1848.             MakeNL creates  compressed archive  files by  executing  the
  1849.             program ARC by System Enhancement Associates.
  1850.  
  1851.             ARC will,  by default,  produce the  maximum compression  of
  1852.             which it  is capable.  This may not always be desirable.  If
  1853.             you have  version 6  or 7  of ARC, and the recipient of your
  1854.             archived file  does not,  he will  be unable  to unpack your
  1855.             archives.
  1856.  
  1857.             The ARC <n> verb will force these versions to create level-5
  1858.             or level-6 compatible archives, thus insuring compatibility.
  1859.             The parameter <n> must be either "5" or "6."
  1860.  
  1861.             Do not use ARC <n> if you have ARC version 5 or earlier.  It
  1862.             will cause  errors, as  will the use of "ARC 6" with version
  1863.             6!   The compatibility  level must always be LOWER that your
  1864.             version level. 
  1865.  
  1866.        6.3.5 OUTDiff <generic_filename>
  1867.  
  1868.             MakeNL's primary  mission  is  to  gather  segments  of  the
  1869.             nodelist and  assemble larger  segments for submittal to the
  1870.             next higher coordinator, until finally all the segments have
  1871.             been assembled  and the result is the network's distribution
  1872.  
  1873.  
  1874.  
  1875.        MakeNL                 MakeNL Control File                Page 31
  1876.  
  1877.  
  1878.             nodelist.   However, if  desired, distribution  lists may be
  1879.             created at any step along the way.
  1880.  
  1881.             Distribution lists  are actually created in pairs.  A famil-
  1882.             iar pair  is NODELIST.htu  and NODEDIFF.htu, the files which
  1883.             define the Public FidoNet Network.
  1884.  
  1885.             There is no reason why a node must use the full network list
  1886.             if a  smaller list  will suit  his needs.   Indeed, programs
  1887.             such as PRUNE are based on this philosophy.
  1888.  
  1889.             When the  OUTDiff statement  appears in  your control  file,
  1890.             MakeNL will  produce a  pair of distribution files.  OUTFile
  1891.             and OUTDiff  must specify  distinct generic  names, and they
  1892.             will become the "stem" names of your distribution files.
  1893.  
  1894.             Distribution files differ from submittal files in the naming
  1895.             conventions used to determine file extensions.  For example,
  1896.             assume:
  1897.  
  1898.                  OUTFILE REGION10
  1899.                  OUTDIFF R10-DIFF
  1900.  
  1901.             Then the following table defines the file names of generated
  1902.             submittal and distribution files:
  1903.  
  1904.                  Compression         Submittal           Distribution
  1905.  
  1906.                  None                REGION10.htu        REGION10.htu
  1907.                  Archive             REGION10.Atu        REGION10.Atu
  1908.                  Difference          REGION10.Dtu        R10-DIFF.htu
  1909.                  Both                REGION10.ADu        R10-DIFF.Atu
  1910.  
  1911.             Note that  the full  list and its archive bear the same name
  1912.             in both columns.  Indeed, they are the same files.  But sub-
  1913.             mittal files  use the  same filename  stem for  all types of
  1914.             files, while distribution difference files have unique file-
  1915.             name stems.   The  reason for  this is  to support  the tra-
  1916.             ditional  names  NODELIST  and  NODEDIFF  as  painlessly  as
  1917.             possible.
  1918.  
  1919.             Distribution files,  as with  submittal files, are placed in
  1920.             the OUTPath  directory.   Once created,  these files are ig-
  1921.             nored by  MakeNL, unless explicitly told to clean up its old
  1922.             files (see the CLEanup command below).
  1923.  
  1924.             The following  control file  fragment would  create NODELIST
  1925.             distribution files for the Public FidoNet Network.
  1926.  
  1927.  
  1928.  
  1929.        MakeNL                 MakeNL Control File                Page 32
  1930.  
  1931.  
  1932.             Example:
  1933.  
  1934.                  MAKE COMPOSITE
  1935.                  THRESHOLD 0 -1 ; force archiving -- no submittal diff
  1936.                  OUTPATH  .        ; master list to current directory
  1937.                  OUTFILE  NODELIST ; create NODELIST.Atu
  1938.                  OUTDIFF  NODEDIFF ; create NODEDIFF.Atu
  1939.  
  1940.             When MakeNL  has finished,  three files are left in the cur-
  1941.             rent directory; NODELIST.htu, NODELIST.Atu and NODEDIFF.Atu.
  1942.             Note that  with "THRESHOLD  0 0," NODELIST.ADu would be cre-
  1943.             ated with contents identical to NODEDIFF.Atu.
  1944.  
  1945.        6.3.6 CLEanup
  1946.  
  1947.             If you  use a  generic  OUTFILE  name,  and  if  you  create
  1948.             difference and/or  archive files, they tend to accumulate in
  1949.             your OUTPATH  directory  over  time.    By  default,  MakeNL
  1950.             ignores them  completely.   This is done so that OUTPATH can
  1951.             point to a "download" directory where several editions might
  1952.             be made available to users.
  1953.  
  1954.             When  MakeNL  operates  in  process  mode  and  CLEanup  (no
  1955.             arguments) appears  in the  control file,  after  all  other
  1956.             processing is  done, it  searches the  OUTPATH directory for
  1957.             old difference  and/or archive  files  and  deletes  any  it
  1958.             finds.
  1959.  
  1960.             CLEanup has  no effect  on current  files or the handling of
  1961.             output master  files.  It has no effect whatever when MakeNL
  1962.             is operated in test mode.
  1963.  
  1964.        6.4 External message transmission
  1965.  
  1966.        MakeNL can  generate two  kinds of network messages, notification
  1967.        messages and submittal messages.
  1968.  
  1969.        Notification messages  are addressed to submitters to notify them
  1970.        of receipt of and/or errors in their submittal files.
  1971.  
  1972.        A submittal  message is  addressed to  your coordinator,  and has
  1973.        your submittal file attached.
  1974.  
  1975.        Messages created  by MakeNL  are compatible with SEAdog by System
  1976.        Enhancement Associates.   Except  for CRASH  and  HOLD  attribute
  1977.        flags, they  are compatible with Fido v11, and (I think) Fido v12
  1978.        by Tom  Jennings.   They are  probably compatible with other mail
  1979.        servers, but I cannot guarantee it.
  1980.  
  1981.        The  following   statements  control   the  generation  of  these
  1982.        messages.
  1983.  
  1984.  
  1985.  
  1986.        MakeNL                 MakeNL Control File                Page 33
  1987.  
  1988.  
  1989.        6.4.1 NETaddress [<zone>:]<net>/<node>
  1990.  
  1991.             This statement  is used to tell MakeNL what your network ad-
  1992.             dress is.  MakeNL must know your network address in order to
  1993.             generate the "From:" field in submittal or notification mes-
  1994.             sages.   If MakeNL must create inter-zone messages, it needs
  1995.             to know  your zone  number.   In addition, your zone number,
  1996.             and if  you are  MAKing a HUB, your net number may be needed
  1997.             to properly perform a MERge operation.
  1998.  
  1999.             If your  control file  does not  contain a NETaddress state-
  2000.             ment, MakeNL will try to guess you network address from your
  2001.             MAKe statement.   If  you are  MAKing a  ZONE, your  default
  2002.             network address  is <nbr>:<nbr>/0.   If  you  are  MAKing  a
  2003.             REGION  or   NETWORK,  your   default  network   address  is
  2004.             0:<nbr>/0.  If you are MAKing a HUB, MakeNL hasn't a clue!
  2005.  
  2006.             If the  default network  address MakeNL  selects for  you is
  2007.             satisfactory, you  don't need a NETaddress statement, but it
  2008.             is recommended that you include one to remove all doubt.
  2009.  
  2010.             Examples:
  2011.  
  2012.                  NETADDRESS  100/76
  2013.  
  2014.                  NETADDRESS  1:1/0
  2015.  
  2016.        6.4.2 MESsages <directory_path_name>
  2017.  
  2018.             This statement is required if MakeNL is to generate ANY out-
  2019.             going messages.   It  tells MakeNL the name of the directory
  2020.             used by your mail server for network mail messages.
  2021.  
  2022.             Example:
  2023.  
  2024.                  MESSAGES  D:\BBS\MAIL
  2025.  
  2026.        6.4.3 SUBmit <address> [<flags>]
  2027.  
  2028.             The SUBmit statement tells MakeNL that in process mode it is
  2029.             to create  a "file  attach" message  to send  your submittal
  2030.             file to your coordinator.  <address> is his network address.
  2031.  
  2032.             Optional <flags>  may be  any or all of CRASH, HOLD or INTL.
  2033.             These should  not be  used unless  your mail server supports
  2034.             them.
  2035.  
  2036.             Example:
  2037.  
  2038.                  SUBMIT  13/0  CRASH
  2039.  
  2040.             The INTL  flag is  a special  case.  It forces MakeNL to add
  2041.             the "^AINTL:  <from> <to>"  extended  address  line  to  all
  2042.                                                                      ___
  2043.             messages it creates, even if they are not leaving your zone.
  2044.  
  2045.  
  2046.  
  2047.        MakeNL                 MakeNL Control File                Page 34
  2048.  
  2049.  
  2050.             Indiscriminate use  of this  flag is  not recommended.   You
  2051.                                                   ___
  2052.             should use it only if your mail server needs all messages to
  2053.             contain the expanded address.
  2054.  
  2055.             NOTE:   If you don't know what I'm talking about, don't
  2056.             use the  INTL flag.  It may cause you trouble.  Consult
  2057.             your mail  server's documentation  for guidance.   Most
  2058.             mail servers  do not  require  this  feature  and  many
  2059.             consider these  messages malformed.  Two which may need
  2060.             the INTL flag are D'Bridge and FrontDoor.
  2061.  
  2062.        6.4.4 NOTify <type> [<flags>]
  2063.  
  2064.             If the  NOTify statement  is used,  when MakeNL  finds a re-
  2065.             ceived update file in either the UPLoads or MAIlfiles direc-
  2066.             tory, it  will notify  the submitter  that the  file was re-
  2067.             ceived and/or that the file contained errors.
  2068.  
  2069.             Optional <flags>  may be  any or all of CRASH, HOLD or INTL.
  2070.             These should  not be  used unless  your mail server supports
  2071.             them.   (INTL need only be specified once, and it applies to
  2072.             all messages.)
  2073.             ___
  2074.  
  2075.             <type> is one of RECeipt, ERRors or SELF.
  2076.  
  2077.             RECeipt and  ERRors control notification of nodes submitting
  2078.             files to you.  If only NOTIFY RECEIPT is used, all notifica-
  2079.             tion messages  will have  the same attributes, as defined by
  2080.             <flags>.   If only  NOTIFY ERRORS  is used, the submitter is
  2081.             NOT notified  unless his  update file  has errors.    NOTIFY
  2082.             RECEIPT and  NOTIFY ERRORS  may both  be used with different
  2083.             message attribute flags, if desired.  In other words, normal
  2084.             receipt notification may be sent "regular" mail, while error
  2085.             messages are sent "CRASH."
  2086.  
  2087.             Unless you  execute MakeNL with the "/T" switch, NOTIFY SELF
  2088.             instructs MakeNL  to enter a message to you if it encounters
  2089.             any errors in your input data.  If you edit your master file
  2090.             without testing  it and you goof (shame), the error could go
  2091.             unnoticed for  some time.   When  MakeNL is executed by your
  2092.             external event, the error will cause a message to you to ap-
  2093.             pear in you network mail area.
  2094.  
  2095.        6.5 Defining special files
  2096.  
  2097.        MakeNL uses  a number  of special files in the performance of its
  2098.        duties.   The statements in this section provide the means to de-
  2099.        fine these files and/or alter defaults.
  2100.  
  2101.        6.5.1 Output comments files
  2102.  
  2103.             When MakeNL processes nodelist segment data, it ignores com-
  2104.             ments embedded  in the  data files.   These comments are as-
  2105.             sumed to  be your notes to yourself.  They might be anything
  2106.  
  2107.  
  2108.  
  2109.        MakeNL                 MakeNL Control File                Page 35
  2110.  
  2111.  
  2112.             -- voice phone numbers, suspense dates when "down" nodes are
  2113.             expected to come back on line, etc..
  2114.  
  2115.             Comments may  be placed  in submittal  files to  communicate
  2116.             information to your coordinator, or in distribution files to
  2117.             communicate information  to your users, but not by embedding
  2118.             them in your data.
  2119.  
  2120.             Instead, comments  are placed in your output files by creat-
  2121.             ing and  maintaining three special text files in your MASter
  2122.             directory.  In process mode, MakeNL searches for these files
  2123.             and, if  they exist,  copies them  into your submittal file.
  2124.             It is  not an  error if any of them does not exist.  Missing
  2125.             comments are simply ignored.
  2126.  
  2127.             When MakeNL copies any of these files to the output file, it
  2128.             examines the  first character of each line to see if it con-
  2129.             tains a "comments flag," a semicolon (;) character. Any line
  2130.             beginning with  a semicolon  is copied  as is  to the output
  2131.             file.   MakeNL inserts  ";S "  at the  beginning of any line
  2132.             which does not begin with a semicolon.
  2133.  
  2134.        6.5.1.1 COPyright <explicit_filename>
  2135.  
  2136.             By default,  MakeNL looks  for a  file named CPYRIGHT.TXT in
  2137.             the MASter  directory.   If it exists, it is assumed to be a
  2138.             copyright notice, and is copied into the output file immedi-
  2139.             ately under the identification header line.
  2140.  
  2141.             The copyright  file gets  a special treatment the other com-
  2142.             ments files  do not  get.   If a  string of four pound signs
  2143.             (####) is  found in  the first line, it is replaced with the
  2144.             current year.   Thus  "Copyright  ####"  becomes  "Copyright
  2145.             1987" automatically.   You  don't have  to remember  to edit
  2146.             your copyright notice in January.
  2147.  
  2148.             The COPyright  statement lets  you override the default name
  2149.             "CPYRIGHT.TXT" with any other explicit name.  You might need
  2150.             to do  this if,  for example, you are a Regional Coordinator
  2151.             and use two different control files to create your submittal
  2152.             file and  distribution files.   You  may use the same MASter
  2153.             directory for  both and  have different copyright notices on
  2154.             each.   In fact,  you might  name a  nonexistent  file  when
  2155.             generating your submittal file, thus eliminating the notice.
  2156.  
  2157.             Examples:
  2158.  
  2159.                  COPYRIGHT  CPY-DIST.TXT
  2160.  
  2161.                  COPYRIGHT  NONE  ; file "NONE" does not exist
  2162.  
  2163.  
  2164.  
  2165.        MakeNL                 MakeNL Control File                Page 36
  2166.  
  2167.  
  2168.        6.5.1.2 PROlog <explicit_filename>
  2169.  
  2170.             By default,  MakeNL looks for a file named PROLOG.TXT in the
  2171.             MASter directory.   If it exists, it is copied into the out-
  2172.             put file immediately under any copyright notice.
  2173.  
  2174.             The PROlog  statement allows  you to  override  the  default
  2175.             filename, "PROLOG.TXT"  with any explicit file name.  If the
  2176.             named file  does not  exist in the MASter directory, the ef-
  2177.             fect is to turn off prologue comments.
  2178.  
  2179.        6.5.1.3 EPIlog <explicit_filename>
  2180.  
  2181.             By default,  MakeNL looks for a file named EPILOG.TXT in the
  2182.             MASter directory.   If it exists, it is copied into the out-
  2183.             put file following all nodelist segment data.
  2184.  
  2185.             The EPIlog  statement allows  you to  override  the  default
  2186.             filename, "EPILOG.TXT"  with any explicit file name.  If the
  2187.             named file  does not  exist in the MASter directory, the ef-
  2188.             fect is to turn off epilogue comments.
  2189.  
  2190.        6.5.2 Comments from received files
  2191.  
  2192.             As stated  earlier, comments  in nodelist segment data files
  2193.             are NOT  copied into output files.  But comments in your re-
  2194.             ceived files  are probably  there to communicate information
  2195.             to YOU.  Like the old dairy cream separator, MakeNL can sep-
  2196.             arate comments from received files out into their own file.
  2197.  
  2198.        6.5.2.1 COMments <explicit_filename>
  2199.  
  2200.             When the COMments statement appears in your control file, it
  2201.             tells MakeNL  to write  the name  of each  input file to the
  2202.             named comments  file, followed  by any  comments  statements
  2203.             that appear in that file.
  2204.  
  2205.             The file  name MUST  be explicit,  but may have a path name.
  2206.             The comments file will appear in the current directory if no
  2207.             path is given.
  2208.  
  2209.             If the  COMments statement  is omitted, comments in received
  2210.             files are ignored by MakeNL.
  2211.  
  2212.        6.6 DATa
  2213.  
  2214.        The DATa  statement is  used as an alternative method of entering
  2215.        your nodelist  segment (see  MAKe on page 21).  If used, the DATa
  2216.        statement MUST follow all control statements except FILes.
  2217.  
  2218.        The DATa statement actually causes MakeNL to shift gears.  It has
  2219.        been processing  control information.   After the DATa statement,
  2220.        it begins  processing nodelist data, which immediately follows it
  2221.  
  2222.  
  2223.  
  2224.        MakeNL                 MakeNL Control File                Page 37
  2225.  
  2226.  
  2227.        in your control file.  The format and rules for this data are the
  2228.        same as for any nodelist data.
  2229.  
  2230.        The first  non-comment statement  encountered must match the MAKe
  2231.        statement in  <segment_type> and  <number>, or a fatal error will
  2232.        occur.
  2233.  
  2234.        6.7 FILes
  2235.  
  2236.        If you  receive segment  updates from  others, you  must use  the
  2237.        FILes statement  to define the files you receive and process.  If
  2238.        you furnish all the input data yourself, you will not use a FILes
  2239.        statement.
  2240.  
  2241.        When used, the FILes statement MUST be the last control statement
  2242.        in the  control file.   It  is followed  by a  list of file entry
  2243.        statements in the following format:
  2244.  
  2245.             <segment_type> <number> <filename> [<notify>]
  2246.  
  2247.        <segment_type> is  one of  HUB, NETwork,  REGion or  ZONe, but it
  2248.        must be  hierarchically lower  than the  MAKe <segment_type>.  In
  2249.        other words,  if MAKing  a region segment, <segment_type> must be
  2250.        either NETwork or HUB -- it may not be REGion or higher.
  2251.  
  2252.        <number> is, of course the network address number associated with
  2253.        the segment.
  2254.  
  2255.        <filename> is used by MakeNL to search through the various direc-
  2256.        tories for  the file defining this segment.  You and your submit-
  2257.        ter must  agree on  this filename.  His MakeNL must generate what
  2258.        your MakeNL  will look for.  <filename> may be either explicit or
  2259.        generic, but  it must  be defined  the same  by both you and your
  2260.        submitter.
  2261.  
  2262.        The first  non-comment statement  in an  input segment  file must
  2263.        match <segment_type> and <number>, or a fatal error occurs.
  2264.  
  2265.        When you  use notification,  MakeNL will  calculate a network ad-
  2266.        dress for  notification messages.   If  you are  MAKing a network
  2267.        segment for, say net 107, and receiving update segments from your
  2268.        Hubs, notification messages will be sent to 107/<number>.  In all
  2269.        other cases,  MakeNL sends notification messages to <number>/0 by
  2270.        default.
  2271.  
  2272.        The optional  argument <notify>  is the  network  address  MakeNL
  2273.        should use for notification messages and will override the calcu-
  2274.        lated address.
  2275.  
  2276.             Examples:
  2277.  
  2278.                  REGION    14   REGION14       14/61
  2279.                  NETWORK  100   NETWORK.100
  2280.  
  2281.  
  2282.  
  2283.        MakeNL                                                    Page 38
  2284.  
  2285.  
  2286.                     7. Disk and Memory Space Considerations
  2287.  
  2288.  
  2289.        If you  do not  use archiving  compression, MakeNL should execute
  2290.        satisfactorily in  about 160 kilobytes.  If you are using archiv-
  2291.        ing, you  should have  about 290  kilobytes of  memory.   IF  YOU
  2292.        ATTEMPT TO  EXECUTE ARC  WITH TOO  LITTLE MEMORY,  YOU  MAY  LOSE
  2293.        FILES!
  2294.  
  2295.        MakeNL is not as extravagant with disk space as it sounds, but if
  2296.        you are  a Regional  or Zone  Coordinator, you should do a little
  2297.        planning.
  2298.  
  2299.        Your MASter  directory will  hold one  copy of each .TXT comments
  2300.        file you use (plus backups if your editor creates them), one copy
  2301.        of each  data file with an explicit name, two copies of each data
  2302.        file with  a generic  name, and,  if you use it, one copy of your
  2303.        master input  file.   MakeNL automatically manages the data files
  2304.        in the  MASter directory  so that this is true.  Obviously, there
  2305.        can only  be one  copy of a file with an explicit name in any di-
  2306.        rectory.   Generically named  data files  more that two weeks old
  2307.        are automatically  deleted.   (The most  current file  is  always
  2308.        kept, no matter how old it is.)
  2309.  
  2310.        Your OUTPath  directory (usually  the same  as your  MASter) will
  2311.        hold one  copy of  your output  master file  if it  is explicitly
  2312.        named, and  two copies  if it is generically named.  In addition,
  2313.        when MakeNL  executes in process mode, it creates a temporary new
  2314.        output master  file, and  the OUTPath directory must have room to
  2315.        hold it.   At least one of these copies (and occasionally two, if
  2316.        there were  no changes) will be deleted before MakeNL attempts to
  2317.        do anything with or about your submittal file.
  2318.  
  2319.        If your  submittal file  is to be compressed, the compressed copy
  2320.        will also  be placed  in the  OUTPath directory.   On completion,
  2321.        there will  be only  one submittal  file, but if, for example, an
  2322.        archived diff  file is being produced, there must be space enough
  2323.        for both  until ARC  completes.   Then  the  diff  file  will  be
  2324.        deleted.
  2325.  
  2326.        It is  conceivable (though  most unlikely)  that you could have a
  2327.        copy of  each of  your data  files in  each of the subdirectories
  2328.        UPLoads, MAIlfiles and UPDate.  It is probable that by the end of
  2329.        each process  cycle you  will have  at least one copy of at least
  2330.        half of  these files in one of these directories.  When a file is
  2331.        received in compressed form, MakeNL decompresses it in the direc-
  2332.        tory that  received it,  and the  compressed version  is deleted.
  2333.        When files  are moved  from one  directory to another on the same
  2334.        drive, they  are moved  by renaming them.  No additional space is
  2335.        required for this operation.
  2336.  
  2337.        "So how  much !@#$%^ space do I need!?"  If you are a Hub or net-
  2338.        work coordinator,  not much.  Here is a guide I would suggest for
  2339.        Regional or  Zone coordinators.   Make  sure you have three times
  2340.  
  2341.  
  2342.  
  2343.        MakeNL         Disk and Memory Space Considerations       Page 39
  2344.  
  2345.  
  2346.        the space  required for  one set  of your generically named files
  2347.        plus two  times the space required for one set of your explicitly
  2348.        named files.
  2349.  
  2350.        With experience,  you'll get a better feel for how much space you
  2351.        need to operate MakeNL.  Before cutting yourself too fine, remem-
  2352.        ber that  MakeNL needs  some temporary  working space  while exe-
  2353.        cuting.
  2354.  
  2355.  
  2356.  
  2357.        MakeNL                                                    Page 40
  2358.  
  2359.  
  2360.                   8. Contents of MakeNL Distribution Package
  2361.  
  2362.  
  2363.        The MakeNL distribution package consists of the following files:
  2364.  
  2365.           MAKENL.EXE   The MakeNL program
  2366.           MAKENL.PRN   This documentation file
  2367.           HUB.CTL      Sample control file for Hub Coordinators
  2368.           NET-S.CTL    Sample control file for Network Coordinators
  2369.           NET-L.CTL    Sample control file for Network Coordinators
  2370.           REGION.CTL   Sample control file for Regional Coordinators
  2371.           ZONE.CTL     Sample control file for Zone Coordinators
  2372.           DISTRIB.CTL  Sample control file for Distribution Lists
  2373.           CPYRIGHT.TXT Sample copyright notice
  2374.           PROLOG.TXT   Sample prologue file
  2375.           EPILOG.TXT   Sample epilogue file
  2376.           FTS-0005.TXT Nodelist Format Specifications
  2377.  
  2378.  
  2379.  
  2380.        MakeNL                                                    Page 41
  2381.  
  2382.  
  2383.                          9. MakeNL License Information
  2384.  
  2385.  
  2386.        MakeNL is  distributed under  the "shareware" concept.  It may be
  2387.        freely copied  and distributed  provided all  the files listed in
  2388.        section 8  are included  in the  distribution.  But MakeNL is NOT
  2389.        FREE.
  2390.  
  2391.        If you are a non-commercial user of MakeNL, you are asked to sup-
  2392.        port its  development and  maintenance both with your suggestions
  2393.        and bug  reports and with your dollars.  No particular fee is set
  2394.        for non-commercial use.  Let your conscience be your guide.
  2395.  
  2396.        Commercial users, and users participating in a commercial network
  2397.        are required  to pay a license fee of twenty five (25) U. S. dol-
  2398.        lars for each computer on which MakeNL is installed for use.
  2399.  
  2400.        The Coordinator  of a commercial network may obtain a network li-
  2401.        cense for  a one-time  fee of  $1,500 US.   This will license all
  2402.        current and  future nodes  of the  network for the use of MakeNL.
  2403.        MakeNL and  EditNL may be licensed as a set for a one-time fee of
  2404.        $2,250.
  2405.  
  2406.        Please address all correspondence to:
  2407.  
  2408.             Ben Baker
  2409.             Baker & Associates
  2410.             One Mark Twain Plaza, Ste 325G
  2411.             Edwardsville, IL 62025
  2412.  
  2413.             (618) 656-8850
  2414.