home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / nef238.zip / Nef.Doc < prev    next >
Text File  |  1996-12-09  |  126KB  |  3,097 lines

  1.         **************************************************************
  2.         *                                                            *
  3.         *                                                            *
  4.         *                   **   ** ******* *******                  *
  5.         *                   ***  **  **   *  **   *                  *
  6.         *                   **** **  ** *    ** *                    *
  7.         *                   ** ****  ****    ****                    *
  8.         *                   **  ***  ** *    ** *                    *
  9.         *                   **   **  **   *  **                      *
  10.         *                   **   ** ******* ****                     *
  11.         *                                                            *
  12.         *                                                            *
  13.         *                        Version 2.38                        *
  14.         *                                                            *
  15.         *      File Distribution for "BinkleyTerm Style" Systems     *
  16.         *                                                            *
  17.         *                                                            *
  18.         **************************************************************
  19.         *                                                            *
  20.         *       (C) Copyright 1991-1996  by  Alberto Pasquale        *
  21.         *                                                            *
  22.         *           A L L   R I G H T S   R E S E R V E D            *
  23.         *                                                            *
  24.         **************************************************************
  25.         
  26.         
  27.             "BinkleyTerm" is trademark of Bit Bucket Software, Co.
  28.         
  29.         
  30.  
  31.                 NEF 2.38 User's Manual, by Alberto Pasquale
  32.         
  33.         
  34.                                   INTRODUCTION
  35.         
  36.         
  37.         -> For licensing information, please see License.Doc.
  38.         
  39.         Thanks for evaluating NEF: a "New Echo Files" distribution
  40.         system.
  41.         
  42.                                  Main Features
  43.         
  44.         
  45.         - It works on systems with a Binkley Style outbound and
  46.           *.MSG or Squish message base.
  47.         
  48.         - File Import/Forward/Hatch via the standard .TIC system,
  49.           initially implemented by Tick.
  50.         
  51.         - File "Areafix", to automatically link/unlink file areas via
  52.           netmail messages. Wildcards can be used to make multiple
  53.           link/unlink requests easier.
  54.         
  55.         - The traditional privilege specification (<level>[/<keys>])
  56.           is used extensively (see <WSEL>) and is useful to create
  57.           "groups" of areas for selective operations (e.g. Announce).
  58.         
  59.           However, it is recommended that file-network coordinators
  60.           organize their area TAGS in a hierarchical way:
  61.           NewNet.OS2.COMMS
  62.           NewNet.OS2.GAMES
  63.           NewNet.WIN.COMMS
  64.           NewNet.WIN.MISC
  65.         
  66.         - Support for "FileBone.Na style" files.
  67.         
  68.         - Automatic forwarding of requests for missing areas to the
  69.           uplinks.
  70.         
  71.         - Fast Squish netmail scan.
  72.         
  73.         - Flexible file announcements via echo or netmail messages.
  74.           Wildcards in file area tags allow easy configuration of
  75.           multiple announcement areas for different groups of file
  76.           areas.
  77.         
  78.         - Full multitasking support. File sharing problems are handled
  79.           wherever necessary.
  80.         
  81.         - Full 4D operation; no direct support for ancient pointnet
  82.           addressing method. However points addressed via pointnet can
  83.           obviously be seen with their pointnet adress.
  84.         
  85.         - Different outbounds for different domains are supported the
  86.           same way as in Squish, via zone mapping.
  87.         
  88.         - Very flexible MultiAka support. You can use different
  89.           addresses in different areas, different addresses for
  90.           different downlinks in the same area, etc.
  91.         
  92.         - Outbound analysis and report to message areas and/or file.
  93.         
  94.         - "Passthru" Area support, with optional deletion-age parameter.
  95.         
  96.         - Long Description ("LDESC" keyword) support.
  97.         
  98.         - Multiple "Desc" support.
  99.         
  100.         - Multi-line description support for Files.Bbs.
  101.         
  102.         - EchoToss.Log support.
  103.         
  104.         - Automatic creation of new areas from authorized uplinks.
  105.         
  106.         - Automatic linking of specified downlinks to selected new
  107.           areas when they are automatically created.
  108.         
  109.         - Check on imported description strings, to avoid trojan horses
  110.           using certain control characters.
  111.         
  112.         - Clean and compact link configuration file.
  113.         
  114.         - Easy addition (on area TAG basis) of text strings at the head
  115.           of imported descriptions, to allow inclusion of flags and
  116.           download counters in selected areas.
  117.         
  118.         - Easy partial/total area split/merge: you can forward
  119.           certain files to a new area TAG.
  120.         
  121.         - Support for Maximus 3.xx FileBase: when the file areas
  122.           are modified the filebase is internally updated (no need for
  123.           external FB/FBP).  The additional UniFiles.Idx (with no
  124.           duplicates) created by QFB (my FB/FBP substitute) is also
  125.           maintained.
  126.         
  127.         - Automatic addition of new areas to the Maximus 3.xx
  128.           configuration.
  129.         
  130.         - Support for Squish configuration file, to get the
  131.           information about path, type and primary address of message
  132.           areas directly from it.
  133.         
  134.         - (OS/2) Support for "Feature DLLs": developers can find the
  135.           necessary Header file and an example C source included in
  136.           the NEF package (Nefeat.H, Feature.C, Feature.Dll).
  137.           Currently available (on 2:332/504):
  138.             NefDsc13.zip by Michael Hohner (stores descriptions in EAs).
  139.         
  140.         
  141.                                     CREDITS
  142.         
  143.         "BinkleyTerm" is a trademark of Bit Bucket Software Co.
  144.         
  145.         This program uses the Squish "MsgAPI" code, Copyright 1991-1994
  146.         by Lanius Corporation. "Squish" and "Maximus" are trademarks of
  147.         Lanius Corporation.
  148.         
  149.         "Tick" is Copyright by Barry Geller
  150.         
  151.         The archivers referred-to throughout this documentation are
  152.         Copyright and/or trademarks of the respective owners.
  153.  
  154.         
  155.                                OVERALL OPERATION
  156.         
  157.         
  158.         When invoked, first of all NEF looks into the netmail area(s)
  159.         for netmail messages to the Link Robot (Areafix like) and
  160.         executes the commands required; then it looks for new .TIC files
  161.         in the netfile area(s) and forwards them.
  162.         
  163.         The ingoing files are moved to their destination directory and
  164.         the description is appended to the files.bbs.
  165.         
  166.         A careful check is operated on the text of the description, to
  167.         avoid trojan horses that use special control characters.
  168.         
  169.         Existing old descriptions for the ingoing files are deleted.
  170.         
  171.         If the Replaces keywords are present in the ingoing .TIC (and
  172.         the function is not disabled in NEF.CFG), the pertinent files
  173.         are erased and their description removed from the files.bbs.
  174.         
  175.         The forwarded TICs will have a new Path line with UTC time of
  176.         forward and updated SeenBys; Points are not included in the
  177.         SeenBys of TICs addressed to other links, to avoid unnecessarily
  178.         huge lists of SeenBys.
  179.         
  180.         The .BSY support avoids conflicts in the outbound, while
  181.         possible conflicts in the access to files.bbs are minimized by
  182.         waiting several seconds before giving up.
  183.         
  184.         Finally, NEF writes the announcements of the received files;
  185.         each message is limited (before splitting) to the maximum size
  186.         specified with the "MsgSize" statement (default is 12KB to avoid
  187.         problems with old mail processors).
  188.         
  189.         Conflicts on the message base are handled by the Squish MsgAPI.
  190.         
  191.         When the Maximus FileBase support is enabled, a mutual exclusive
  192.         semaphore flag "FileBase.Bsy" is used to avoid concurrent access
  193.         and modification of the filebase by other ApWorks programs.
  194.         There is no need to delete this flag if it remains after a power
  195.         failure or abnormal termination (ApWorks programs are smart
  196.         enough to realize whether the flag is really in use or not).
  197.         
  198.         
  199.                              From Address Selection
  200.         
  201.         The algorythm to choose the "From" address for the TIC files is:
  202.         
  203.         If an aka ovverride (#<adr>) is used in "FileArea"
  204.            then use FileArea aka override
  205.         else if an aka override is present in the "FileLink" definition
  206.            then use FileLink aka override
  207.         else if the destination zone matches an "Address" statement
  208.            then use the zone-matching address
  209.         else if an aka default (@<adr>) is used in "FileArea"
  210.            then use FileArea aka default
  211.         else
  212.            use the primary (first) "Address" statement.
  213.         
  214.         
  215.                               Description Handling
  216.         
  217.         The TIC files can contain "Desc" and "LDesc" lines. Usually the
  218.         description contained in "Desc" line(s) is short and
  219.         unformatted, while that carried by the "LDesc" lines is long,
  220.         multi-line and formatted.
  221.         
  222.         For the announcements, the longest one is selected.
  223.         
  224.         For the Files.Bbs: if MultiLineDesc support is enabled, the
  225.         longest description is used, otherwise the "Desc" one.
  226.         
  227.  
  228.         
  229.         
  230.         
  231.                                   INSTALLATION
  232.         
  233.         
  234.         1) There are 3 versions of NEF: OS/2, NT and DOS/32, distributed
  235.            in different archives. The main program is always named
  236.            NEF.EXE: please make sure you have the correct version.
  237.         
  238.         2) Edit your Nef.Cfg.
  239.            You can find useful examples in the NEF_*.Cfg files and
  240.            detailed information in the "CFG REFERENCE" section of this
  241.            documentation.
  242.         
  243.         3) Edit your batch file in order to call NEF whenever you would
  244.            like to test for the presence of .TIC files in your inbounds
  245.            and process them. If you do not pass a different pathname as
  246.            a command line parameter, Nef.Cfg must reside in the current
  247.            directory.
  248.         
  249.         4) (OS/2): Make sure you have the MSGAPI32.DLL in a directory
  250.              contained in your LIBPATH and the PmHatch.Exe program in
  251.              your PATH. MSGAPI32.DLL can be found in the Squish 1.11
  252.              archive (SQSHP111.LZH).
  253.         
  254.            (NT): Make sure you have the MSGAPINT.DLL in a directory
  255.              contained in your PATH. MSGAPINT.DLL can be found in the
  256.              Max 3.01 for Windows archive (MAX301N.ZIP).
  257.         
  258.            (DOS): Make sure you have the DOS4GW.EXE Dos extender (from
  259.              Rational System Inc.) in your path.
  260.         
  261.              The DOS4GW extender requires an XMS or DPMI memory driver
  262.              installed in your config.sys: e.g. HIMEM.SYS, QEMM (by
  263.              QuarterDeck Office Systems Inc.).
  264.         
  265.         5) In order to have a correct UTC time specification in your
  266.            outgoing TICs, please note that you must have the environment
  267.            variable "TZ" correctly set in config.sys (OS/2) or
  268.            autoexec.bat (DOS).
  269.         
  270.            E.g. for Central European Time (CET):
  271.         
  272.              SET TZ=CET-01 (winter, "normal" solar time)
  273.              SET TZ=CET-02 (summer, daylight saving time).
  274.         
  275.            E.g. for USA East Coast:
  276.         
  277.              SET TZ=EST5EDT
  278.         
  279.              Eastern time is 5h less than UTC and Daylight saving
  280.              applies with the "standard rule" from the first sunday o
  281.              april to the last sunday of october.
  282.         
  283.            More complicate expressions might be used to specify
  284.            automatic change to and back from daylight saving, if a fixed
  285.            rule is available.
  286.         
  287.            E.g. for Central Europe: daylight saving is 1h ahead from the
  288.            last sunday of march to the last sunday of october.
  289.         
  290.              SET TZ=CET-01CDT,M3.5.0,M10.5.0
  291.         
  292.            (See a C manual for further details).
  293.         
  294.  
  295.         
  296.                        Command Line OPTIONS and SWITCHES
  297.         
  298.         
  299.         To get help about the command line syntax, use the "-h" or "-?"
  300.         command line switch: type "NEF -h" or "NEF -?".
  301.         
  302.         The following forms are available:
  303.         
  304.           NEF [<sw>]
  305.           NEF [<sw>] NOTIFY [<adr> ...]
  306.           NEF [<sw>] FILEFIX <adr> <cmd> ...
  307.           NEF [<sw>] OUT|OUTVIEW [<file>]
  308.           NEF [<sw>] CLEAN
  309.           NEF [<sw>] HATCH|MATCH|CATCH|SEND
  310.           NEF [<sw>] HATCH|MATCH|CATCH <name>[/<repl>] <TAG> [<desc> [<ldesc>]]
  311.         
  312.         where:
  313.         
  314.           <sw> is one or more of:
  315.         
  316.             -c<cfg>
  317.                       Use <cfg> as configuration file instead of the
  318.                       default "Nef.Cfg".
  319.         
  320.                       Example: "Nef -ce:\cfg\nef2.cfg"
  321.         
  322.         
  323.             -d<adr>
  324.                       Hatch to <adr> only.
  325.         
  326.                       If you Hatch/Catch/Match/Send a file with the
  327.                       -d<adr> command line switch, it is sent to <adr>
  328.                       only.
  329.         
  330.                       <adr> can be any 4D address: in the case it is
  331.                       defined as a link in the matching "FileArea" or
  332.                       even only as a "FileLink", the specified akas,
  333.                       password and switches are applied.
  334.         
  335.                       If, on the contrary, <adr> is a unknown address,
  336.                       the Hold flavour is used, no password is put in
  337.                       the TIC and the "from" aka is derived from an
  338.                       aka-match on the zone.
  339.         
  340.                       Example: "Nef -d2:332/589 hatch"
  341.         
  342.         
  343.             -h or -?
  344.                       Help.
  345.         
  346.         
  347.             -k
  348.                       Keep local files (do not Replace,
  349.                       for Match/Catch).
  350.         
  351.         
  352.             -l<log>
  353.                       Use <log> as logfile instead of the one specified
  354.                       via the "StatusLog <log>" configuration statement.
  355.         
  356.                       Example: "Nef -le:\cfg\nef.log"
  357.         
  358.         
  359.             -p
  360.                       Clean passthru areas before terminating, see also
  361.                       the "CLEAN" option.
  362.         
  363.                       Examples:
  364.         
  365.                         NEF -p
  366.                         NEF -p OUT
  367.         
  368.         
  369.             -t
  370.                       Toggle Secure mode (see also the NoSecure cfg
  371.                       statement).
  372.         
  373.           
  374.           A description of options follows:
  375.         
  376.             NOTIFY
  377.                       Notify linked areas to the specified address list,
  378.                       where <adr> is a 4D address.
  379.         
  380.                       If no address is given, NEF will notify only the
  381.                       nodes flagged with the 'Y' flag in their FileLink
  382.                       statement.
  383.         
  384.                       If "ALL" is specified, all defined links will be
  385.                       notified.
  386.         
  387.             FILEFIX
  388.                       Execute <cmd>s as if they were received via netmail
  389.                       from <adr> addressed to the AutoLink robot.
  390.         
  391.                       Please note that there might be some problem using
  392.                       the '%' character in front of filefix commands:
  393.                       4OS2 will substitute the corresponding environment
  394.                       variable. You can use the '?' character in the
  395.                       place of '%' or precede '%' with an escape character.
  396.         
  397.             OUT
  398.                       Outbound analysis (message output), optional
  399.                       concise output to <file> (no specification of each
  400.                       and every attached file). See the <OUT> and
  401.                       <OUTVIEW> "special tags" in the "Announce"
  402.                       section.
  403.         
  404.             OUTVIEW
  405.                       Same as OUT, but optional output to <file> is
  406.                       verbose.
  407.         
  408.             CLEAN
  409.                       Clean passthru areas.
  410.         
  411.                       Since it might be not efficient to always scan the
  412.                       entire outbound to check for passthru files to be
  413.                       deleted, NEF must be explicitly instructed to do
  414.                       so (see also the "-p" command line switch).
  415.         
  416.                       Example: "Nef Clean"
  417.         
  418.             HATCH
  419.                       Traditional hatch.
  420.             MATCH
  421.                       Move file to destination area then hatch.
  422.             CATCH
  423.                       Copy file to destination area then hatch.
  424.             SEND
  425.                       (OS/2) Hatch via PM Dialog.
  426.         
  427.                       If you use one of these hatch options, NEF will
  428.                       not process inbound .TICs; instead it will send
  429.                       the specified files to your links.
  430.         
  431.                       Examples:
  432.                                 "Nef Hatch"
  433.                                 "Nef Match"
  434.                                 "Nef Catch"
  435.                                 "Nef Send" (OS/2 Only)
  436.         
  437.                       When no parameters are specified after the hatch
  438.                       option, your interaction is required: you will be
  439.                       requested the filename specification (Dos or OS/2
  440.                       wildcards allowed) and, for each matching file,
  441.                       the optional "replace" names (separated by space),
  442.                       the area TAG, the description and the optional
  443.                       "Long Description".
  444.         
  445.                       On the other hand, if you specify the hatch
  446.                       parameters on the command line, you cannot give a
  447.                       multi-line "Long Description" apart from that
  448.                       taken from the File_Id.Diz, Files.Bbs or specified
  449.                       file.
  450.         
  451.                       HATCH sends the specified files; they are not
  452.                       moved and their local description is NOT modified.
  453.         
  454.                       MATCH moves the specified files to the directory
  455.                       that corresponds to the specified <TAG>, updates
  456.                       their descriptions (see "Description Handling" in
  457.                       Overall operation) and sends them as per normal
  458.                       hatch. If <replace> files are specified, they are
  459.                       deleted with their associated description.
  460.         
  461.                       CATCH is just like Match, but the files are copied
  462.                       instead of moved.
  463.         
  464.                       Note that MATCH/CATCH can be used even when the
  465.                       files already reside in their destination
  466.                       directory, in order to change the local
  467.                       description and possibly apply the specified
  468.                       replaces.
  469.         
  470.                (OS/2)
  471.                       SEND allows to specify all the hatch parameters
  472.                       via a user friendly PM Dialog. Please make sure
  473.                       the PmHatch.Exe file is in the PATH. In the case
  474.                       the PmHatch program terminates abnormally, the NEF
  475.                       program will wait for it indefinitely: you can
  476.                       terminate it using CTRL-C or CTRL-Break.
  477.         
  478.                       See the "PmHatch" section below for further
  479.                       information.
  480.         
  481.         
  482.           Parameters for Hatch/Match/Catch:
  483.         
  484.             <name>
  485.                       This is the full pathname of the files you want to
  486.                       H/M/Catch. You need to specify the full path even
  487.                       if you are hatching files that reside in the
  488.                       directory corresponding to <TAG>. O.S. wildcards
  489.                       are allowed.
  490.         
  491.             <repl>
  492.                       This is the optional list of names of the files to
  493.                       be replaced (separated by '/'): if the receiving
  494.                       system has this feature enabled, the indicated
  495.                       files in the <TAG> area will be deleted while
  496.                       importing the new file.
  497.         
  498.             <TAG>
  499.                       This is the tag used for distributing an echo-file
  500.                       area.
  501.         
  502.             <desc>
  503.             <ldesc>
  504.                       These are the "short" one-line file description
  505.                       and the "long" multi-line one.
  506.         
  507.                       They can be specified between quotes (one line
  508.                       even for <ldesc>) or by means of:
  509.         
  510.                       @BBS     to load from Files.Bbs
  511.                       @DIZ     to load from the contained File_Id.Diz
  512.                       @<file>  to load from <file>
  513.         
  514.                       In the case you need to include the '"' character
  515.                       in the description when using the "quoted string"
  516.                       method, just precede it with a backslash escape
  517.                       character: '\"'.
  518.                 Note:
  519.                       Please realize that the "short" and "long"
  520.                       descriptions are two separate and independent
  521.                       items.
  522.         
  523.                       Short description: single line, "Desc" keyword in
  524.                       TIC files.
  525.         
  526.                       Lond description: multiple lines, "Ldesc" keywords
  527.                       in TIC files.
  528.         
  529.         
  530.         
  531.         Examples:
  532.         
  533.             NEF Hatch d:\p\prg12.rar/prg11.rar COMMS "New comm prg"
  534.         
  535.                 d:\p\prg12.rar is hatched (NOT moved) into the COMMS
  536.                 area; prg11.rar will be deleted on receiving systems.
  537.         
  538.             NEF Catch d:\p\prg12.rar/prg11.rar COMMS "New comm prg"
  539.         
  540.                 d:\p\prg12.rar is copied to the directory corresponding
  541.                 to the COMMS file area and is hatched to the COMMS area.
  542.                 prg11.rar is deleted locally and will be deleted on
  543.                 receiving systems.
  544.         
  545.             NEF Match d:\p\prg12.rar COMMS "New comm prg"
  546.         
  547.                 d:\p\prg12.rar is moved to the directory corresponding
  548.                 to the COMMS file area, it is hatched to the COMMS area,
  549.                 no replace information is put in the outgoing TICs.
  550.         
  551.             NEF Send
  552.         
  553.                 (OS/2) Invokes the PM dialog window.
  554.         
  555.             NEF Hatch d:\apbbs\nef999.rar APBBS @bbs
  556.         
  557.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  558.                 taking the description from the files.bbs.
  559.         
  560.             NEF Hatch d:\apbbs\nef999.rar APBBS "Nef 9.99" @diz
  561.         
  562.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  563.                 taking "Nef 9.99" as the "short" description and the
  564.                 File_Id.Diz (if present in the archive) as the "long"
  565.                 description.
  566.         
  567.             NEF Hatch d:\apbbs\nef999.rar APBBS @bbs @diz
  568.         
  569.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  570.                 taking the "short" description from the files.bbs and
  571.                 the "long" description from the File_Id.Diz (if it is
  572.                 contained in the archive).
  573.         
  574.             NEF -d2:332/504.2 Hatch d:\apbbs\nef999.rar APBBS @bbs @diz
  575.         
  576.                 Same as above, but the file is hatched to 2:332/504.2
  577.                 only.
  578.         
  579.             NEF OUT
  580.         
  581.                 An outbound analysis is performed, the results are
  582.                 reported via messages in the area(s) configured in
  583.                 Nef.Cfg (see the Announce statement).
  584.         
  585.             NEF OUT Out.Txt
  586.         
  587.                 Same as above, but the output is also written to
  588.                 "Out.Txt" in "concise mode".
  589.         
  590.             NEF OUTVIEW Out.Txt
  591.         
  592.                 Same as above but the file output is verbose.
  593.         
  594.             NEF -p OUT
  595.         
  596.                 NEF will report the status of the outbound and clean the
  597.                 passthru areas.
  598.         
  599.                 If you need to maintain passthru areas, this is the most
  600.                 efficient use, since NEF must scan the outbound once to
  601.                 make two different things ("clean passthru" and
  602.                 "outbound report").
  603.         
  604.             NEF Notify
  605.                 A notification message (specifying the linked areas)
  606.                 is sent to the nodes that have the 'Y' flag in their
  607.                 FileLink statement.
  608.         
  609.             NEF Notify All
  610.         
  611.                 A notification message is sent to all the defined links,
  612.                 specifying the linked areas.
  613.         
  614.             NEF Notify 2:332/589 1:234/567
  615.         
  616.                 A notification message is sent to the specified links.
  617.         
  618.             NEF FileFix 2:332/567 APBBS -APBBSDOS
  619.         
  620.                 Node 2:332/567 is linked to the APBBS area and unlinked
  621.                 from the APBBSDOS one.
  622.         
  623.             NEF FileFix 2:332/678 ?QUERY
  624.         
  625.                 Node 2:332/678 is sent a filefix answer to the QUERY
  626.                 command.
  627.         
  628.         
  629.                                     PmHatch
  630.         
  631.            OS/2 Only:
  632.         
  633.                 To invoke the PM hatch program you must type "NEF send".
  634.                 The PmHatch program is very simple and intuitive to use:
  635.                 see the following description.
  636.         
  637.                 To move between fields, use the mouse or the TAB key.
  638.         
  639.                 You can select the destination Area Tag via a drop-down
  640.                 list: just click with the mouse on the button at the
  641.                 right of the entry field or press ALT-down_arrow.
  642.         
  643.                 You have three radio buttons to select the "type" of
  644.                 hatch (normal, with Copy, with Move), just as you use
  645.                 Hatch/Catch/Match from the command line. You can use the
  646.                 arrows and the space bar to select.
  647.         
  648.                 You can choose the file to be hatched via a file dialog
  649.                 box: just click on the "Browse" push button on the right
  650.                 of the field or press ALT-W. The file dialog starts from
  651.                 the directory corresponding to the selected Tag, but you
  652.                 can move to any drive or directory.
  653.         
  654.                 You can also specify one or more "Replace" files via a
  655.                 file-dialog by clicking on the "Browse" push-button (or
  656.                 pressing ALT-W) when the cursor is in the "Repl" field.
  657.         
  658.                 When doing Copy or Move, the files.bbs of the
  659.                 destination area is updated and the "replace" files (if
  660.                 specified) are deleted, just as if the file were tossed
  661.                 from the inbound.
  662.         
  663.                 You can mark the "NoLoc" checkbox to prevent NEF
  664.                 from deleting the "replace" files in the local area.
  665.                 Click with the mouse, move with the vertical arrows and
  666.                 check with the space bar or use the ALT-L hotkey.
  667.         
  668.                 You can load a one line description (Desc) from the
  669.                 file_id.diz, files.bbs or specified file by clicking on
  670.                 the "Arc Diz", "FilesBbs", "File" push-buttons or by
  671.                 pressing the ALT-D, ALT-B, ALT-F keys respectively.
  672.         
  673.                 You can load a multi-line "long description" (Long Desc)
  674.                 by using the same method, when the cursor is in the
  675.                 Long Desc field.
  676.         
  677.                 The "Arc Diz" method supports also self-extracting
  678.                 archives.
  679.         
  680.                 If you do not have the "CompressCfg <filename>"
  681.                 statement in Nef.Cfg, the "Arc Diz" push-button will be
  682.                 disabled.
  683.         
  684.                 Of course you can always fill-in or modify any field
  685.                 manually.
  686.         
  687.                 Now look at the five push-buttons at the bottom of the
  688.                 hatch dialog:
  689.         
  690.                 <OK> (ALT-O): to exit the dialog and hatch all the
  691.                     entered files.
  692.         
  693.                 <Prev> (ALT-P): to visualize the previous hatch entry.
  694.         
  695.                 <Next> (ALT-N): to create a new (empty) entry in order
  696.                     to hatch another file or to move to next entry if
  697.                     <Prev> has been used.
  698.         
  699.                 <Copy> (ALT-C): to copy the visualized entry to the
  700.                     first free position, in order to hatch another file
  701.                     by modifying the current entry.
  702.         
  703.                 <Cancel> or ESC: to cancel the current entry.
  704.         
  705.                 ALT-F4 or "Close", to abort (cancel all the hatch
  706.                 entries).
  707.         
  708.         
  709.         
  710.         
  711.                                   ERRORLEVELS
  712.         
  713.         
  714.           0 - File areas modified: Match or .TIC processed.
  715.           1 - File areas not modified: Hatch or NO .TIC processed.
  716.           2 - Help requested.
  717.           3 - Abnormal termination
  718.           4 - Configuration file not found.
  719.           5 - Invalid parameter on command line.
  720.           6 - No Outbound defined in cfg file.
  721.           7 - Disk Full.
  722.           8 - Out of Memory.
  723.           9 - Can't open Log file.
  724.          10 - Prefix or Suffix too long.
  725.          11 - User Input Error (interactive hatch/match).
  726.          12 - TimeOut waiting for concurrent NEF process to finish.
  727.          13 - Error while accessing .SAV file.
  728.          17 - FileBase Busy TimeOut.
  729.         
  730.         250 - MsgApi: Init Error.
  731.         251 - MsgApi: Area Open Error.
  732.  
  733.         
  734.         
  735.                                  CFG REFERENCE
  736.         
  737.         
  738.         Before analyzing the cfg keywords in detail, let's introduce the
  739.         overall mechanism that is at the basis of NEF's file forwarding
  740.         capabilities.
  741.         
  742.         Each area (defined via the FileArea keyword) can be
  743.         mono-directional or bi-directional.
  744.         
  745.         In bidirectional areas every link can send files to us and we
  746.         forward to everyone, unless those with a "receive-from"
  747.         override.
  748.         
  749.         Monodirectional areas can be "receive from everyone" or "send to
  750.         everyone". Obviously, at least one link must have an override in
  751.         the opposite direction, unless we are the destination or
  752.         origination of all the files.
  753.         
  754.         NEF uses the three flags 'I' (Input: we accept from), 'O'
  755.         (Output: we send to) and '*' (bidirectional) to define the
  756.         direction of an area or link.
  757.         
  758.         Each area has a direction, that can be overridden on a per-node
  759.         basis by a global (in the FileLink statement) or local (in the
  760.         FileArea statement, before the pertinent link address) direction
  761.         override.
  762.         
  763.         In other words: each link has a direction that is defined in
  764.         order of priority (from lowest to highest) by the area direction
  765.         (I|O|* in FileArea), the global link override (in the FileLink
  766.         statement), the local link override (before link address in the
  767.         FileArea statement).
  768.         
  769.         It is recommended not to use the global link override when not
  770.         really useful, so that the area definition statements remain
  771.         clearly readable without the need to keep one eye on the
  772.         FileLink statements.
  773.         
  774.         Usually the global link override is useful when you have an
  775.         uplink for many areas. For example: if one day the uplink and
  776.         one of the downlinks switch their role, you have to move the 'I'
  777.         flag from one FileLink statement to the other with no need to
  778.         change all the area definitions.
  779.         
  780.         The area direction definition is very useful to allow automatic
  781.         linking via the Link Robot both to normal "Uplink to Downlinks"
  782.         areas and to reverse "Downlinks to Uplink" areas (mostly used
  783.         for "pre" areas to collect files and send them to the
  784.         coordinator).
  785.         
  786.         As a matter of facts, in response to a link request, the Link
  787.         Robot only adds the requesting address (with no flags) to the
  788.         FileArea statement. So the real characteristics of the link
  789.         depend on the Area direction and on the link flags (FileLink
  790.         statement).
  791.         
  792.         
  793.         
  794.         
  795.                                  Conventions
  796.         
  797.         
  798.         
  799.         - Items between square brackets (e.g. [<item>]) are optional.
  800.         
  801.         - Items separated by '|' are mutually exclusive (e.g. I|O|*).
  802.         
  803.         - The names of the various Keywords are NOT case sensitive.
  804.         
  805.         - The area TAGs are NOT case sensitive.
  806.           Please be aware that old TIC processors might not be able to
  807.           handle tags longer than 8 characters or containing dots.
  808.         
  809.         - <WTAG> is a "Wild TAG" specification: it can be a normal area
  810.           TAG or contain wildcards in the "OS/2 style".
  811.         
  812.           Examples:
  813.         
  814.           "*LOC*" specifies all tags that contain "LOC".
  815.         
  816.           "FW???" specifies all tags that have up to three characters
  817.           after "FW".
  818.         
  819.         
  820.         - <ACS> is an access privilege specification in the form:
  821.           <level>[/<keys>].
  822.         
  823.           <level> is an integer in the range 0-65535
  824.         
  825.           <keys> is a set of digits or (case insensitive) letters from
  826.           "12345678ABCDEFGHIJKLMNOPQRSTUVWX".
  827.         
  828.           To access a protected area it's necessary to have a level
  829.           above or equal to the specified one and a set of keys containg
  830.           the required ones.
  831.         
  832.         
  833.         - <WSEL> is a combination of <WTAG> and <ACS> in the form:
  834.           [<WTAG>][:[<level>][/<keys>]].
  835.         
  836.           Level and keys are used to enhance the selectivity of <WTAG>.
  837.         
  838.           - If <WTAG> is omitted, '*' is assumed.
  839.           - if ':' is not used, any area matching <WTAG> is
  840.             included.
  841.           - if ":/<keys>" is used, <level> is assumed 65535.
  842.         
  843.         
  844.           Examples:
  845.         
  846.               Announce OS2*            ; All OS2* areas
  847.         
  848.               Announce OS2*:100/fg     ; OS2* areas that can be
  849.                                        ; accessed with privilege level
  850.                                        ; 100 and keys fg
  851.         
  852.               Announce :100/fg         ; All areas that can be accessed
  853.                                        ; with level 100 and keys fg
  854.         
  855.               Announce *:100           ; All areas that can be accessed
  856.                                        ; with level 100
  857.         
  858.               Announce :/g             ; All areas that can be accessed
  859.                                        ; with key g (and level 65535).
  860.         
  861.         
  862.         - When a directory path is required, the trailing backslash '\'
  863.           is optional.
  864.         
  865.         - The ';' character starts comments: any character following the
  866.           ';' is ignored. Please note that configuration text strings
  867.           (e.g. Subj, Origin) can contain the ';' character provided
  868.           they are enclosed in quotes '"'.
  869.         
  870.         - The maximum length of configuration lines (including FileArea
  871.           definitions) is 510 characters.
  872.         
  873.         - ... means that you can list further items of the same type.
  874.         
  875.         - Unless differently specified, addresses are standard 4D and
  876.           MUST begin with the zone number (FileArea statements excluded).
  877.         
  878.         Please, note that the order of the configuration statements
  879.         follows some logical rule. In order not to create confusion in
  880.         the .cfg file and not to break some _necessary_ order relation,
  881.         please follow the scheme proposed in the example NEF_*.CFG files
  882.         and in this reference documentation.
  883.         
  884.         
  885.         
  886.                                   S Y S T E M
  887.         
  888.         
  889.         RegKey <RegKey>
  890.         
  891.                 Registered Users only: <RegKey> is the registration key
  892.                 and it is NOT case sensitive.
  893.         
  894.             Example:
  895.         
  896.                 RegKey dfhyuwru6274623
  897.         
  898.         
  899.         
  900.         Address <Address>
  901.         
  902.                 You can use as many Address statements as you need for
  903.                 all of your AKAs. The first one specifies the "primary"
  904.                 address. <Address> is a standard 4D address
  905.                 specification.
  906.         
  907.             Example:
  908.         
  909.                 Address 2:332/504.0   ; Primary Address
  910.                 Address 2:332/524.0   ; Second line aka
  911.                 Address 2:332/500.0   ; Hub aka
  912.                 Address 9:999/999.9   ; one more aka
  913.         
  914.         
  915.         
  916.         StatusLog <LogFile>
  917.         
  918.                 <LogFile> is the name of the file where all the
  919.                 operations performed by NEF will be logged, following
  920.                 the "Binkley Style".
  921.         
  922.                 In multitasking environments, please be sure to use a
  923.                 file that cannot be used by other processes at the same
  924.                 time. For example: if (in your system) NEF can be
  925.                 executed while Binkley is running, please use different
  926.                 log files.
  927.         
  928.                 Multiple NEF processes using the same config file
  929.                 (and therefore the same <LogFile>) will have no problem
  930.                 since NEF does not begin operations until the previous
  931.                 launched instance (if it uses the same .cfg file) has
  932.                 finished.
  933.         
  934.                 Should you not want the log file, you can comment this
  935.                 keyword out.
  936.         
  937.             Example:
  938.         
  939.                 StatusLog d:\bbs\log\nef.log
  940.         
  941.         
  942.         
  943.         EchoTossLog <filename>
  944.         
  945.                 When a message is written into echoareas defined with
  946.                 the "AreaTag" statement, the corresponding
  947.                 TAGs are written (one per line) to <filename>.
  948.         
  949.                 If you use the "MaxPrm" statement (or MAXIMUS
  950.                 environment variable), "EchoTossLog" is not necessary
  951.                 and becomes an override of the echotosslog specification
  952.                 found in the Maximus .PRM file.
  953.         
  954.                 If you do not like this output, you can override with
  955.                 the NUL name: "EchoTossLog NUL".
  956.         
  957.             Example:
  958.         
  959.                 EchoTossLog d:\bbs\squish\echotoss.log
  960.         
  961.         
  962.         
  963.         NetFile <InboundDir>
  964.         
  965.                 You can specify as many NetFile statements as you need,
  966.                 one for each inbound directory where NEF must look for
  967.                 new .TIC files.
  968.                 <InboundDir> is the pathname of the inbound directory.
  969.         
  970.             Example:
  971.         
  972.                 NetFile c:\file\net
  973.         
  974.         
  975.         
  976.         OutBound <RootPath> [<Zone>]
  977.         
  978.                 The outbound directories are specified with the same
  979.                 method as in squish.cfg.
  980.                 <RootPath> should not have an extension.
  981.         
  982.                 The first OutBound statement does not have the <Zone>
  983.                 field and specifies the directory where NEF will build
  984.                 file attaches for the zone of the primary address.
  985.         
  986.                 Subsequent OutBound statements must have the <Zone>
  987.                 field (Decimal). File attaches for the specified <Zone>
  988.                 are built in <RootPath>.<###>, where <###> is a 3 digit
  989.                 extension representing the zone number (hexadecimal).
  990.         
  991.                 File attaches for zones different from the primary one
  992.                 and not matching any <Zone> of the OutBound statements
  993.                 are built in <RootPath>.<###>, where <RootPath> is the
  994.                 one specified in the first OutBound statement and <###>
  995.                 is a 3 digit extension representing the hexadecimal
  996.                 zone number.
  997.         
  998.             Note:
  999.         
  1000.                 The "OutBound" statements MUST be preceded by the
  1001.                 "Address" ones.
  1002.         
  1003.             Example:
  1004.         
  1005.                 OutBound c:\out\fidonet
  1006.                 OutBound c:\out\amiganet 39
  1007.                 OutBound c:\out\amiganet 40
  1008.         
  1009.                 FileAttaches will be built in:
  1010.                 Primary zone -> c:\out\fidonet
  1011.                 zone 39      -> c:\out\amiganet.027
  1012.                 zone 40      -> c:\out\amiganet.028
  1013.                 other zones  -> c:\out\fidonet.<###>
  1014.                                 where <###> is the 3 digit hexadecimal
  1015.                                 representation of the zone number
  1016.         
  1017.         
  1018.         
  1019.         TicHold <TicDir>
  1020.         
  1021.                 This specifies the directory that holds all the .TIC
  1022.                 files addressed to downlinks until they are sent and
  1023.                 erased.
  1024.         
  1025.             Example:
  1026.         
  1027.                 TicHold c:\file\tichold
  1028.         
  1029.         
  1030.         
  1031.         BusyFlags
  1032.         
  1033.                 This enables the Binkley-Style .BSY support.
  1034.         
  1035.                 When attaching a file to a node, the presence of an
  1036.                 appropriate .BSY file is checked; if it is present, some
  1037.                 other process may be working on the same node, so NEF
  1038.                 saves the attach info to a private <config>.SAV file
  1039.                 (i.e. NEF.SAV when NEF.CFG is the config file). On
  1040.                 subsequent runs, NEF will look for a <config>.SAV file
  1041.                 and use the information in it to attempt again the
  1042.                 creation of the file attaches.
  1043.                 If the .BSY file is not found, it is created, the file
  1044.                 attach is built, then the .BSY is erased.
  1045.                 The name of the .BSY file is the same as a file attach
  1046.                 to the same node: only the extension changes.
  1047.         
  1048.             Warning:
  1049.         
  1050.                 The .BSY method has a nasty drawback: if the process
  1051.                 that has created a .BSY file hangs or is shutdown
  1052.                 abruptly, the .BSY file remains in its outbound
  1053.                 directory, so that no other process will gain access to
  1054.                 that node until somebody erases the .BSY file. It is
  1055.                 advisable to delete *.BSY from the most used outbound
  1056.                 directories at startup (in autoexec.bat (Dos) or
  1057.                 startup.cmd (OS/2)).
  1058.         
  1059.         
  1060.         
  1061.         NoRaidBeforeHatch
  1062.         
  1063.                 Skips the scanning of netmail before the execution of
  1064.                 hatch commands. This might be useful to avoid delays
  1065.                 with huge *.MSG areas.
  1066.         
  1067.         
  1068.         
  1069.         MsgSize <bytes>
  1070.         
  1071.                To specify the maximum size (in bytes) for a message
  1072.                generated by NEF (minimum 8KB, default 12KB).
  1073.         
  1074.                Usually a larger message size is useful to avoid too many
  1075.                messages in reports of filebone availability. Anyway,
  1076.                please be careful not to use a size larger than your
  1077.                downlinks can handle.
  1078.         
  1079.                Example:
  1080.         
  1081.                MsgSize 90000
  1082.         
  1083.         
  1084.         
  1085.         TicAreaCfg <filename>
  1086.         
  1087.                 This defines the name of the file that contains all the
  1088.                 file area definitions. See the "FileArea" keyword below
  1089.                 for a description of the syntax.
  1090.         
  1091.                 This keyword is optional: if you omit it, you can define
  1092.                 your file areas directly in the .cfg file, provided you
  1093.                 put all the FileArea statements _after_ the FileLink
  1094.                 ones, at the end of the .cfg file.
  1095.         
  1096.                 For systems with few areas the one-file configuration is
  1097.                 handy, for systems with many areas and links, the
  1098.                 separate file solution is recommended.
  1099.         
  1100.                 Please note that the TicAreaCfg file can contain
  1101.                 FileArea statements and comments ONLY.
  1102.         
  1103.             Example:
  1104.         
  1105.                 TicAreaCfg d:\bbs\nef\ticarea.cfg
  1106.         
  1107.         
  1108.         
  1109.         CompressCfg <filename>
  1110.         
  1111.           (OS2)
  1112.                 To allow the extraction of File_Id.Diz while using the
  1113.                 Pm Hatch.
  1114.         
  1115.                 <filename> must specify the location and name of a
  1116.                 "Squish style" compress definition file.
  1117.         
  1118.                 In the case you are using a case-sensitive
  1119.                 de/compression program (e.g. OS/2 ZIP/UNZIP), please
  1120.                 make sure to use the correct switches in <filename>.
  1121.         
  1122.                 If you are already using Squish and or Maximus, you
  1123.                 can just specify the name of their compress.cfg (but do
  1124.                 check that they indicate the necessary switches to avoid
  1125.                 case sensitiveness during extraction).
  1126.         
  1127.                 Refer to the "Compress Definition File" section at the
  1128.                 end of this reference for the syntax of this
  1129.                 configuration file.
  1130.         
  1131.             Example:
  1132.         
  1133.                 CompressCfg c:\squish\compress.cfg
  1134.          
  1135.         
  1136.         
  1137.                             Optional Squish Support
  1138.         
  1139.         
  1140.         SquishCfg <filename>
  1141.         
  1142.                 It is used to specify the squish configuration file, so
  1143.                 that the path, type (SDM vs Squish) and primary address
  1144.                 for the announcement areas defined with the "AreaTag"
  1145.                 statement can be automatically looked up.
  1146.         
  1147.                 When SquishCfg is defined, if you use "AreaTag <Tag>" to
  1148.                 define announcement areas, the "FromNode <adr>"
  1149.                 statement is only used to override the primary address
  1150.                 specified for that area in Squish.Cfg (including the
  1151.                 -p<address> overrides).
  1152.         
  1153.                 The "Include" keyword of Squish.Cfg is supported: just
  1154.                 be sure to always use the full pathname in the Include
  1155.                 statement if different from the working path.
  1156.         
  1157.                 Both echomail and netmail areas are recognized by their
  1158.                 Squish tags.
  1159.         
  1160.                 Netmail areas will have the Private attribute and no
  1161.                 origin by default. Local overrides are still possible
  1162.                 via local "Origin" and "Attr" statements.
  1163.         
  1164.             Example:
  1165.         
  1166.                 SquishCfg c:\squish\squish.cfg
  1167.         
  1168.         
  1169.         
  1170.                          Optional Maximus 3.xx Support
  1171.         
  1172.         
  1173.         MaxPrm <filename>
  1174.         
  1175.                 If the MAXIMUS environment variable is defined, this
  1176.                 statement is an optional override only.
  1177.         
  1178.                 It is used to take the default for EchoTossLog and to
  1179.                 get the name and location of the files necessary for
  1180.                 filebase updating. The ".prm" extension in <filename>
  1181.                 can be omitted.
  1182.         
  1183.             Example:
  1184.         
  1185.                 MaxPrm d:\bbs\max\max.prm
  1186.         
  1187.         
  1188.         MaxAreaAdd <fileareactl> <lev[/keys]> <acs> [<division>]
  1189.         MaxAreaCompile <command>
  1190.         
  1191.                NEF is able to add new (created) areas to the Maximus
  1192.                filearea.ctl or equivalent.
  1193.         
  1194.         
  1195.                <fileareactl> is the fully qualified name of the Maximus
  1196.                file-area definition file.
  1197.         
  1198.                <lev[/keys]> protects areas of higher privilege from
  1199.                being automatically added to the Maximus configuration.
  1200.                The level and keys are to be compared to those of
  1201.                ProtArea statements and FileBone-format files.
  1202.         
  1203.                <acs> is the Maximus access string to be used in
  1204.                <fileareactl> for the new area.
  1205.         
  1206.                <division> is the optional specification of a division
  1207.                where you want to put new areas. If not specified or not
  1208.                found, the new areas will be appended at the end of
  1209.                <fileareactl>.
  1210.         
  1211.                <command> is an external command to be executed before
  1212.                NEF ends, from the Maximus system directory.
  1213.                It should be used to compile the new Maximus
  1214.                configuration via SILT/SILTP.
  1215.         
  1216.         
  1217.                The area name is taken equal to the area TAG, with dots
  1218.                changed to underscores.
  1219.         
  1220.                The area description is taken from the FileBone-format
  1221.                files if available, otherwise it is taken equal to the
  1222.                area TAG.
  1223.         
  1224.         
  1225.                Example:
  1226.         
  1227.                MaxAreaAdd d:\max\filearea.ctl 0 Transient Tic.New
  1228.                MaxAreaCompile siltp max -a -2a
  1229.         
  1230.                The new areas, will be inserted at the end of division
  1231.                "Tic.New" in the file "d:\max\filearea.ctl", with an
  1232.                access string of "Transient". Areas with protection level
  1233.                above 0 or any protection key will NOT be added to
  1234.                maximus configuration.
  1235.         
  1236.                Before terminating, NEF will invoke the SILTP compiler to
  1237.                update the area configuration. The command will be
  1238.                executed after changing the current directory to the
  1239.                Maximus system one (probably d:\max\).
  1240.         
  1241.         
  1242.         
  1243.         
  1244.         FileBaseUpdate
  1245.         
  1246.                 Requires the MAXIMUS environment variable or the
  1247.                 "MaxPrm" statement _before_ in the cfg.
  1248.         
  1249.                 NEF will automatically update the filebase for all the
  1250.                 areas changed when tossing/hatching new files. No more
  1251.                 need to run external FBP (FB).
  1252.         
  1253.             Example:
  1254.         
  1255.                 FileBaseUpdate
  1256.         
  1257.         
  1258.         
  1259.         UniqueDmpLine
  1260.         
  1261.                 Forces the generation of FILES.DMP filebase files with
  1262.                 descriptions on one line only (multiple lines are
  1263.                 concatenated).
  1264.         
  1265.                 By default, multi-line descriptions are output without
  1266.                 changes to FILES.DMP: when using L)ocate and N)ewfiles
  1267.                 commands, Maximus will respect the original formatting,
  1268.                 but the continuation lines will be aligned to the left.
  1269.         
  1270.                 When this statement is used, the original formatting of
  1271.                 descriptions is lost (in the filebase) but Maximus will
  1272.                 be able to word-wrap and align when executing L)ocate or
  1273.                 N)ewfiles commands.
  1274.         
  1275.         
  1276.         
  1277.         
  1278.                                  TIC Processing
  1279.         
  1280.         
  1281.         NoSecure
  1282.         
  1283.                 Disables the secure mode.
  1284.         
  1285.                 When "NoSecure" is used, NEF will toss incoming files
  1286.                 ignoring errors due to missing password, password
  1287.                 mismatch and missing from-authorization (sender not
  1288.                 linked, sender receive only).
  1289.         
  1290.                 You can also use the "-t" command line switch to toggle
  1291.                 between Secure and NoSecure modes.
  1292.         
  1293.                 Anyway the error will be noted in the logs and <BAD>
  1294.                 message report (see Announce statement).
  1295.         
  1296.             Example:
  1297.         
  1298.                 NoSecure
  1299.         
  1300.         
  1301.         
  1302.         NoReplace <WSEL> ...
  1303.         
  1304.                 The specified <WSEL>s indicate in which areas you do not
  1305.                 want NEF to delete files specified by the "Replaces"
  1306.                 keyword in inbound TICs.
  1307.         
  1308.             Example:
  1309.         
  1310.                 NoReplace *     ; to avoid Replace in all areas
  1311.         
  1312.         
  1313.         
  1314.         GetDizDesc <WSEL> ...
  1315.         
  1316.                 When tossing files, NEF will use the File_Id.Diz
  1317.                 description (if available) for FILES.BBS instead of
  1318.                 the Desc/LDesc lines of the inbound TIC.
  1319.         
  1320.                 Requires CompressCfg
  1321.         
  1322.             Example:
  1323.         
  1324.                 GetDizDesc Desc.Poor.*:/p
  1325.         
  1326.         
  1327.         
  1328.         NoOverWrite
  1329.         
  1330.                 The tossed file will NOT overwrite an existing file of
  1331.                 the same name, unless an explicit "Replaces" keyword is
  1332.                 present in the incoming TIC.
  1333.         
  1334.                 The situation will be handled by triggering a "BAD TIC"
  1335.                 error.
  1336.         
  1337.         
  1338.         
  1339.         CheckCRC
  1340.         
  1341.                 This enables the CRC check of ingoing .TICs.
  1342.                 If an ingoing .TIC has the CRC keyword, the specified
  1343.                 CRC is checked against that of the relative file and an
  1344.                 error is reported in case of mismatch.
  1345.                 Outgoing .TICs will have the CRC only if it is present
  1346.                 in the ingoing one.
  1347.                 TICs originated by NEF (various Hatch modes) will always
  1348.                 have the CRC keyword.
  1349.         
  1350.         
  1351.         
  1352.         Touch [Creation] [Write]
  1353.         
  1354.                 Ingoing files are "touched" while being moved to their
  1355.                 destination directory (i.e. their timestamps are set to
  1356.                 NOW, so that they will be seen as new files by all the
  1357.                 utilities that use the file date-time to compute the age
  1358.                 of files).
  1359.         
  1360.             (OS/2)
  1361.                 There are two optional parameters ("Creation" and
  1362.                 "Write") that allow to configure the type of touch
  1363.                 needed to best suit your environment.
  1364.         
  1365.                 "Creation" -> touch the creation (upload) date
  1366.                 "Write"    -> touch the last-write (modification) date
  1367.         
  1368.                 You can specify either or both options.
  1369.         
  1370.                 When no parameter is used, "Creation" is assumed.
  1371.         
  1372.                 On FAT, the only available date (last-write) is touched
  1373.                 regardless of the Touch options.
  1374.         
  1375.                 On HPFS, the specified date(s) is/are touched.
  1376.         
  1377.                 Usually, you do not need to specify any touch parameter,
  1378.                 so that NEF touches the creation date, not the
  1379.                 modification one, in order to make the files recognized
  1380.                 as new by Maximus and FLM (my File List Manager) without
  1381.                 changing the date that is normally shown and
  1382.                 transferred: you "see" and transfer to your downlinks
  1383.                 the original date of the file while Maximus and FLM are
  1384.                 able to realize that the file is new.
  1385.         
  1386.                 WARNING: if you use some other utility that is not smart
  1387.                 enough to recognize new files from the creation date,
  1388.                 you might need to specify both the "Write" and
  1389.                 "Creation" options.
  1390.         
  1391.             (NT, DOS & OS/2 FAT)
  1392.                 Warning: The original file timestamp is lost and the
  1393.                 downlinks will receive the forwarded files with the new
  1394.                 timestamps.
  1395.         
  1396.         
  1397.             Examples:
  1398.         
  1399.                Touch       ; default: touch the Creation (upload) date
  1400.                Touch Creation              ; same as default
  1401.                Touch Write                 ; touch the Last Write date
  1402.                Touch Creation Write        ; touch both dates
  1403.         
  1404.         
  1405.         
  1406.         KillDate Write|Creation
  1407.         
  1408.             (OS/2)
  1409.                 When the -0<days> switch is used in a FileArea
  1410.                 definition, this statement specifies which date must be
  1411.                 used to evaluate the file age.
  1412.         
  1413.                 This setting is useful for HPFS (which has separate
  1414.                 Write and Creation dates) and ignored for FAT.
  1415.         
  1416.                 If not specified, "Creation" is assumed.
  1417.         
  1418.                 Attention: if you want to delete the files when they
  1419.                 have been on your system for <days> days then you should
  1420.                 choose a date that has been touched on toss (as per
  1421.                 Touch statement).
  1422.         
  1423.             Examples:
  1424.         
  1425.                KillDate Write       ; Use the Write date
  1426.                KillDate Creation    ; same as default
  1427.         
  1428.         
  1429.         
  1430.         MultiLineDesc <nnn> [<c>]
  1431.         
  1432.                 By default, files.bbs description must be on a single
  1433.                 line; this statement enables Multi-Line support.
  1434.         
  1435.                 <nnn> is the number of spaces that must precede the
  1436.                 continuation lines.
  1437.         
  1438.                 <c> is the continuation character.
  1439.         
  1440.                 If <c> is NOT specified, it is assumed that the
  1441.                 continuation lines must be preceded by <nnn> spaces.
  1442.         
  1443.                 If <c> IS specified, it is assumed that the continuation
  1444.                 lines must be preceded by <nnn> spaces, the <c>
  1445.                 character and one more space.
  1446.         
  1447.                 For example, to have the 2nd and following description
  1448.                 lines in files.bbs start at the 32nd column, use:
  1449.         
  1450.                 MultiLineDesc 31
  1451.         
  1452.                 A description in files.bbs would be like:
  1453.         
  1454.                 Test.Zip This is the first description line
  1455.                                                this is the 2nd line
  1456.                                                this is the 3rd line
  1457.                 ^                             ^^
  1458.                 1                           31  32
  1459.         
  1460.                 To have the continuation lines preceded by a '|'
  1461.                 character, use:
  1462.         
  1463.                 MultiLineDesc 29 |
  1464.         
  1465.                 A description in files.bbs would be like:
  1466.         
  1467.                 Test.Zip This is the first description line
  1468.                                              | this is the 2nd line
  1469.                                              | this is the 3rd line
  1470.                 ^                           ^  ^
  1471.                 1                          29  32
  1472.         
  1473.         
  1474.         
  1475.         
  1476.         NewAreasPath <path>
  1477.         NewAreasFrom <address> [<flags>] [<path>]
  1478.         
  1479.                 <path> is the base directory for new file areas
  1480.                 automatically created by NEF on reception of .TICs with
  1481.                 unknown area TAGs.
  1482.         
  1483.                 <address> is a 4D address that must be enabled to
  1484.                 automatically create new areas.
  1485.         
  1486.                 <flags> represent the <flags> that will be
  1487.                 used for the newly created areas (see FileArea).
  1488.         
  1489.                     I|O|* Default creation direction.
  1490.                         If not used, O is assumed.
  1491.                         If the tag is referenced in a FileBone file, the
  1492.                         direction specified there overrides this one.
  1493.         
  1494.                     -0[<days>]
  1495.                     -p<acc>
  1496.                     -P<acc>
  1497.                     #<aka>
  1498.                     @<aka>
  1499.                         The specified flags will be used for the new
  1500.                         FileArea statement.
  1501.         
  1502.                 The <path> in "NewAreasFrom" is an override for the
  1503.                 default specified in "NewAreasPath".
  1504.         
  1505.                 Any number of NewAreasFrom statements can be used.
  1506.         
  1507.                 While adding new areas, NEF will NOT re-order the
  1508.                 existing ones, anyway it will respect an existing
  1509.                 alphabetical order.
  1510.         
  1511.             Example:
  1512.         
  1513.                 NewAreasPath c:\file
  1514.                 NewAreasFrom 2:331/110
  1515.                 NewAreasFrom 9:1/1 #9:999/999.9
  1516.                 NewAreasFrom 9:2/2 -0 -P100 d:\fido\passthru\
  1517.         
  1518.                 Let's suppose we have received a .TIC for area NEWAREA,
  1519.                 which is not currently defined:
  1520.                 - if it is coming from an address different from
  1521.                   2:331/110, 9:1/1 and 9:2/2 -> an error is reported.
  1522.                 - if it is coming from 2:331/110 -> a new area is
  1523.                   created with path c:\file\NEWAREA.
  1524.                 - if it is coming from 9:1/1 -> a new area is created
  1525.                   with path c:\file\NEWAREA and it is configured so that
  1526.                   NEF will use 9:999/999.9 (which must be an aka
  1527.                   previously defined in an Address statement) as the
  1528.                   from-address for outgoing .TICs.
  1529.                 - if it is coming from 9:2/2 -> a passthru area is
  1530.                   created with path d:\fido\passthru\NEWAREA and
  1531.                   protected with privilege 100.
  1532.         
  1533.         
  1534.         
  1535.         DescStart "<string>" <WSEL> ...
  1536.         
  1537.                 This allows to add <string> at the head of files.bbs
  1538.                 descriptions while tossing files from area TAGs that
  1539.                 match one of the <WSEL> specifications.
  1540.         
  1541.                 This statement is useful for people using download
  1542.                 counters and/or maximus flags for free download.
  1543.         
  1544.             Example:
  1545.         
  1546.                 DescStart "/bt [00] " 1* 2*
  1547.         
  1548.                 This adds "/bt [00] " at the head of files.bbs
  1549.                 descriptions while tossing files from areas whose TAG
  1550.                 begins with '1' or '2'.
  1551.         
  1552.         
  1553.         
  1554.         TagFwd <OrgTag> <FwdTag> <FileSpec> [<FileSpec> ...]
  1555.         
  1556.                 This allows to forward files from an area to another.
  1557.         
  1558.                 <OrgTag> and <FwdTag> are area TAGs.
  1559.                 <FileSpec> is a file specification that accepts the OS/2
  1560.                 style wildcards (?,*).
  1561.         
  1562.                 All ingoing files of area <OrgTag> which match one of
  1563.                 the <FileSpec>s are forwarded to area <FwdTag>.
  1564.                 This way you can split or merge areas.
  1565.         
  1566.             Example:
  1567.         
  1568.                 TagFwd 1-Comm Bbs AC*n prova.*
  1569.                 TagFwd 1-Data bbs *
  1570.                 TagFwd 1-DITO BBS *
  1571.                 TagFwd 1-Comm BBO *
  1572.                 TagFwd ISNMAIN POINTLST ptlist.* ptdoc.*
  1573.         
  1574.                 Files AC*n and prova.* coming from area 1-Comm and all
  1575.                 the files coming from 1-Data and 1-DITO are forwarded to
  1576.                 area BBS.
  1577.         
  1578.                 All the files from 1-COMM are also forwarded to area
  1579.                 BBO.
  1580.         
  1581.                 Files ptlist.* and ptdoc.* from area ISNMAIN are
  1582.                 forwarded to area POINTLST.
  1583.         
  1584.         
  1585.         
  1586.         FeatureLoad <DllName>
  1587.         
  1588.                 (OS/2) Loads a "Feature" DLL, to allow third party
  1589.                 extensions to NEF.
  1590.         
  1591.                 <DllName> can be a simple filename without extension
  1592.                 (".DLL" implied) if the DLL is in the LibPath, otherwise
  1593.                 a fully qualified filename (extension included) can be
  1594.                 specified.
  1595.         
  1596.         Feature <cfgline>
  1597.         
  1598.                 (OS/2) Allows to specify configuration statements that
  1599.                 are to be parsed by the DLL loaded with the previous
  1600.                 FeatureLoad.
  1601.         
  1602.             Note:
  1603.                 Multiple FeatureLoad statements are allowed, in which
  1604.                 case the Feature statements refer to the last loaded
  1605.                 DLL.
  1606.         
  1607.             Example:
  1608.         
  1609.                 FeatureLoad MyDll
  1610.                 Feature CfgItem1 "This is Item 1"
  1611.                 Feature CfgItem2 "This is Item 2"
  1612.         
  1613.         
  1614.         
  1615.                                TIC Announcements
  1616.         
  1617.         
  1618.         Each announcement area is defined by a dedicated group of
  1619.         statements. Many of these statements can be used before the
  1620.         first announcement area definition to establish defaults to be
  1621.         used in all subsequent area definitions, thus avoiding the need
  1622.         to unnecessarily repeat common statements.
  1623.         
  1624.         
  1625.                                 Global Keywords
  1626.         
  1627.             Statements that can be used before area definitions to set
  1628.             defaults (please note that all these statements can be
  1629.             overridden in each area definition).
  1630.         
  1631.         
  1632.         FromNode <address>
  1633.         
  1634.                 This specifies the 4D address to be used as the
  1635.                 from-address in the announcement messages: it is used in
  1636.                 the header, in the Origin and in the MSGID. Usually, it
  1637.                 should be your primary address.
  1638.         
  1639.             Example:
  1640.         
  1641.                 FromNode     2:332/504.0
  1642.         
  1643.         
  1644.         
  1645.         ToNode <address>
  1646.         
  1647.                 This specifies the 4D address to be used as the
  1648.                 to-address in the announcement messages: it is used in
  1649.                 the header. Usually, for echo area announcements, it
  1650.                 should be the same as in FromNode.
  1651.         
  1652.             Example:
  1653.         
  1654.                 ToNode       2:332/504.0
  1655.         
  1656.         
  1657.         
  1658.         From <name>
  1659.         
  1660.                 This specifies the name to be used as the from-name in
  1661.                 the announcement messages. Usually it should be the
  1662.                 SysOp name.
  1663.         
  1664.             Example:
  1665.         
  1666.                 From         Alberto Pasquale
  1667.         
  1668.         
  1669.         
  1670.         To <name>
  1671.         
  1672.                 This specifies the name to be used as the to-name in the
  1673.                 announcement messages. Usually it should be "All".
  1674.         
  1675.             Example:
  1676.         
  1677.                 To           All
  1678.         
  1679.         
  1680.         
  1681.         Subj <subject>
  1682.         
  1683.                 This specifies the string to be used as the subject in
  1684.                 the announcement messages.
  1685.         
  1686.             Note:
  1687.         
  1688.                 If the Subj text contains the ';' character, it MUST
  1689.                 be enclosed in quotes '"', otherwise it will be taken as
  1690.                 the start of a comment.
  1691.         
  1692.             Examples:
  1693.         
  1694.                 Subj    New Echo Files
  1695.                 Subj    "New files; OS/2 BBS"
  1696.         
  1697.         
  1698.         
  1699.         Attr [P][K][C|H|D|N|O]
  1700.         
  1701.                 This specifies the attributes to be used in the
  1702.                 announcement messages. Usually no special attribute is
  1703.                 necessary, except for private announcements in the
  1704.                 netmail area.
  1705.         
  1706.                 The available attributes are:
  1707.                 P -> Private
  1708.                 K -> Kill/Sent
  1709.                 C -> Crash
  1710.                 H -> Hold
  1711.                 D -> Direct (equivalent to "CH")
  1712.                 N -> Normal (default)
  1713.                 O -> Normal (default)
  1714.         
  1715.                 The required attributes can be listed in any order and
  1716.                 are not case sensitive.
  1717.         
  1718.             Examples:
  1719.         
  1720.                 Attr            ; no attributes
  1721.                 Attr N          ; no attributes (Normal flavour)
  1722.                 Attr PK         ; Private and Kill/Sent
  1723.                 Attr PC         ; Private and Crash
  1724.                 Attr PDK        ; Private, Direct, and Kill/Sent
  1725.         
  1726.         
  1727.         
  1728.         HighAsciiOk
  1729.         
  1730.                 Grants permission for High Ascii codes (> 127) in file
  1731.                 descriptions.
  1732.         
  1733.         
  1734.         
  1735.         Prefix <filename>
  1736.         
  1737.                 This specifies the file containing the prefix text for
  1738.                 announcement messages: it is put at the head of the
  1739.                 message body, just before the real announcement lines.
  1740.                 It should usually contain something like "New Echo Files
  1741.                 Received:".
  1742.         
  1743.             Example:
  1744.         
  1745.                 Prefix       d:\bbs\NEF\PREFIX.NEF
  1746.         
  1747.         
  1748.         
  1749.         Suffix <filename>
  1750.         
  1751.                 This specifies the file containing the suffix text for
  1752.                 announcement messages: it is put at the end of the
  1753.                 message body, just before the tear-line and the Origin.
  1754.                 It should usually contain something like "File Request
  1755.                 open to everybody between 06:00 and 23:00 GMT".
  1756.         
  1757.             Example:
  1758.         
  1759.                 Suffix       d:\bbs\NEF\SUFFIX.NEF
  1760.         
  1761.         
  1762.         
  1763.         Origin <origin>
  1764.         
  1765.                 This specifies the text to be used as the Origin in
  1766.                 announcement messages. The required " * " will
  1767.                 automatically be added at the head and the address at
  1768.                 the end, truncating <origin> if necessary to fit the 79
  1769.                 character maximum length.
  1770.                 To disable the Origin (e.g. in netmail area) use an
  1771.                 empty origin string.
  1772.         
  1773.             Note:
  1774.         
  1775.                 If the Origin text contains the ';' character, it MUST
  1776.                 be enclosed in quotes '"', otherwise it will be taken as
  1777.                 the start of a comment.
  1778.         
  1779.             Examples:
  1780.         
  1781.                 Origin       <ApWorks Modena I><Tel.+39-59-246112/3>
  1782.                 Origin       "ApWorks Modena I; +39-59-246112/3"
  1783.                 Origin       ; empty origin to disable origin generation
  1784.         
  1785.         
  1786.         
  1787.         AnnExclude <filespec> ...
  1788.         
  1789.                 The specified files are excluded from announcements.
  1790.         
  1791.                 When this statement is used inside an announcement-area
  1792.                 definition block, it specifies _additional_ exclusions
  1793.                 (besides those of a global statement, if present).
  1794.         
  1795.         
  1796.                                 Area Definition
  1797.         
  1798.             All the preceding statements can be used both before
  1799.             announcement area definitions (to set defaults) and inside
  1800.             each definition to override the defaults.
  1801.         
  1802.         
  1803.         AreaTag <Tag> [<path> [-$]]
  1804.         AreaPath <path> [-$]
  1805.         
  1806.                 One of these statements starts the definition of an
  1807.                 announcement area.
  1808.         
  1809.                 <Tag> is the area TAG, to be logged to EchoTossLog
  1810.                 provided this is not a NetMail area.
  1811.         
  1812.                 <path> is the directory for the *.MSG format or the full
  1813.                 filename (no extension) for the Squish base.
  1814.         
  1815.                 -$ specifies the use of the Squish format.
  1816.         
  1817.         
  1818.             AreaTag <Tag>
  1819.         
  1820.                 This is the form to be generally used when SquishCfg is
  1821.                 defined.
  1822.         
  1823.                 <Tag> will be looked up in SquishCfg to find the
  1824.                 corresponding path, message-base type and primary
  1825.                 address.
  1826.         
  1827.                 A local "FromNode" statement can be used to override the
  1828.                 primary address for the area (including -p<address>
  1829.                 specifications) found in SquishCfg.
  1830.         
  1831.                 If this is an EchoArea, its <Tag> will be output to the
  1832.                 EchoTossLog whenever a message is written to this area.
  1833.         
  1834.                 If this is a NetArea, as a default, the Origin will not
  1835.                 be used and the Private attribute will be set; you can
  1836.                 override this with local "Origin" and "Attr" statements.
  1837.         
  1838.         
  1839.             AreaTag <Tag> <path> [-$]
  1840.         
  1841.                 This is the form to be used for EchoMail areas when
  1842.                 SquishCfg is not defined or you want to override its
  1843.                 information AND you want <Tag> to be logged to
  1844.                 EchoTossLog.
  1845.         
  1846.         
  1847.             AreaPath <path> [-$]
  1848.         
  1849.                 This is the form to be used when SquishCfg is not
  1850.                 defined AND you do not need to log a <Tag> to
  1851.                 EchoTossLog (NetMail areas or no EchoTossLog defined).
  1852.         
  1853.             Notes:
  1854.         
  1855.                 Any of the statements described above in this
  1856.                 "Announcements" section can be used after the
  1857.                 AreaTag/AreaPath statement to override the defaults for
  1858.                 this announcement area only.
  1859.         
  1860.                 Please note that you can use different AreaTag/AreaPath
  1861.                 definitions with the same message area Tag/Path, in
  1862.                 order to announce different file areas in different
  1863.                 messages but in the same message area.
  1864.         
  1865.             Examples:
  1866.         
  1867.                 AreaTag OS2BBS
  1868.                 AreaTag OS2BBS d:\bbs\mail\os2bbs -$
  1869.                 AreaPath d:\bbs\mail\net
  1870.         
  1871.         
  1872.         
  1873.         Announce <WSEL> ...
  1874.         NoAnnounce <WSEL> ...
  1875.         
  1876.                 This defines the list of file areas to be announced in
  1877.                 the current announcement message area (the one defined
  1878.                 by the previous AreaTag/AreaPath statement).
  1879.         
  1880.                 Multiple statements are allowed.
  1881.         
  1882.                 All the areas that match one of the <WSEL>s in "Announce"
  1883.                 and do not match any of the <WSEL>s in "NoAnnounce" are
  1884.                 announced in the current area.
  1885.         
  1886.                 Obviously you can omit the "NoAnnounce" statement if you
  1887.                 do not need to exclude areas that have been included via
  1888.                 the "Announce" statement.
  1889.         
  1890.                 "Announce *" makes all the file areas announced.
  1891.         
  1892.             Special tags:
  1893.         
  1894.                 The following "special tags" can be used in "Announce"
  1895.                 or "NoAnnounce" statements as if they were normal area
  1896.                 TAGs, but are not included in the "*" wildcard (i.e.
  1897.                 "Announce *" does not make them announced).
  1898.         
  1899.                 "<BAD>" is used to announce all the TICs that have been
  1900.                 processed with some error.
  1901.         
  1902.                 "<DEF>" is used to announce all the files that have not
  1903.                 been announced elsewhere. A separate announcement is
  1904.                 generated after all other announcements have been
  1905.                 completed, even if "<DEF>" is listed together with other
  1906.                 TAGs.
  1907.         
  1908.                 "<OUT>" is used to make a concise outbound report when
  1909.                 the OUT or OUTVIEW command line option is used.
  1910.                 Subj, Prefix and Suffix are ignored.
  1911.         
  1912.                 "<OUTVIEW>" is used to make a detailed outbound report
  1913.                 when the OUT or OUTVIEW command line option is used.
  1914.                 Subj, Prefix and Suffix are ignored.
  1915.         
  1916.                 "<THRU>" represents all passthru areas. If you want to
  1917.                 keep NEF from announcing files received in PassThru
  1918.                 areas, just use "NoAnnounce <THRU>".
  1919.         
  1920.             Examples:
  1921.         
  1922.                 Announce UTILNET SOFTDIST SDS*
  1923.                 NoAnnounce SDSOTH <THRU>
  1924.         
  1925.                 This announces the file areas with tag "UTILNET",
  1926.                 "SOFTDIST" and all those whose TAG starts with "SDS" but
  1927.                 not "SDSOTH" or passthru areas.
  1928.         
  1929.                 Announce PRIVFILE <BAD> <DEF>
  1930.         
  1931.                 This announces area "PRIVFILE" and all the TICs that
  1932.                 have been processed with errors; at the end, in a
  1933.                 separate message, it announces the files that have not
  1934.                 been announced elsewhere.
  1935.         
  1936.                 Announce SPECIAL <OUT>
  1937.         
  1938.                 This announces the file area with tag "SPECIAL"; at the
  1939.                 end, in a separate message, it creates a concise report
  1940.                 of the outbound.
  1941.         
  1942.                 Announce SPECIAL <OUTVIEW>
  1943.         
  1944.                 This announces the file area with tag "SPECIAL"; at the
  1945.                 end, in a separate message, it creates a verbose report
  1946.                 of the outbound.
  1947.         
  1948.         
  1949.         
  1950.         
  1951.             Complete example of the announcement definition section,
  1952.             SquishCfg defined:
  1953.         
  1954.         ----------------------------------------------------------------
  1955.         
  1956.           ; Defaults definition
  1957.         
  1958.             FromNode     2:332/504.0
  1959.             ToNode       2:332/504.0
  1960.             From         Alberto Pasquale
  1961.             To           All
  1962.             Subj         New Echo Files
  1963.             Attr
  1964.             Prefix       PREFIX.NEF
  1965.             Origin       ApWorks Modena I (+39-59-246112/3)
  1966.             Suffix       SUFFIX.NEF
  1967.         
  1968.           ; Announcement areas: each statement is local to the preceding
  1969.           ; AreaTag and overrides the default one.
  1970.         
  1971.             AreaTag      APWORKS
  1972.             Announce     APBBS*
  1973.             Prefix       RelPre.NEF
  1974.             Subj         New ApWorks files
  1975.         
  1976.             AreaTag      OS2BBS
  1977.             Announce     APBBS*
  1978.             NoAnnounce   *DOS*
  1979.             Prefix       RelPre.NEF
  1980.             Subj         New APBBS files
  1981.         
  1982.             AreaTag      LOCAL_332.504
  1983.             Announce     *:100/f
  1984.             AnnExclude   NODE*
  1985.             Subj         New Files on ApWorks
  1986.         
  1987.             AreaTag      NETMAIL
  1988.             Announce     <OUTVIEW> <DEF>
  1989.             From         NEF
  1990.             To           Alberto Pasquale
  1991.             Subj         Not Announced Elsewhere
  1992.             HighAsciiOk
  1993.         
  1994.             AreaTag      NETMAIL
  1995.             Announce     <BAD>
  1996.             From         NEF
  1997.             To           Alberto Pasquale
  1998.             ToNode       2:332/504.1
  1999.             Subj         Processed with Errors
  2000.         
  2001.         ----------------------------------------------------------------
  2002.         
  2003.             Complete example of the announcement definition section,
  2004.             SquishCfg NOT defined:
  2005.         
  2006.         ----------------------------------------------------------------
  2007.         
  2008.           ; Defaults definition
  2009.         
  2010.             FromNode     2:332/504.0
  2011.             ToNode       2:332/504.0
  2012.             From         Alberto Pasquale
  2013.             To           All
  2014.             Subj         New Echo Files
  2015.             Attr
  2016.             Prefix       PREFIX.NEF
  2017.             Origin       <ApWorks Modena I><Tel.+39-59-246112/3>
  2018.             Suffix       SUFFIX.NEF
  2019.         
  2020.           ; Announcement areas: each statement is local to the preceding
  2021.           ; AreaPath and overrides the default one.
  2022.         
  2023.             AreaTag      SWN_332.500 d:\msg\swn -$
  2024.             Announce     UTILNET
  2025.             Subj         UTILNET file news
  2026.         
  2027.             AreaTag      SWN_332.500 d:\msg\swn -$
  2028.             Announce     *:100/f SDS* ECHO-* FTSC NEWSLETR
  2029.             NoAnnounce   ECHO-R*
  2030.             Subj         SDS/NEWS file news
  2031.         
  2032.             AreaPath     d:\msg\net -$    ; Netmail to the SysOp
  2033.             Announce     NODE* POINTLST <BAD> <DEF> <OUTVIEW>
  2034.             From         NEF
  2035.             To           Alberto Pasquale
  2036.             ToNode       2:332/504.1
  2037.             Subj         Reserved file news
  2038.             Attr         PK      ; This must be private and kill/sent
  2039.             Origin               ; No Origin for netmail !
  2040.         
  2041.         ----------------------------------------------------------------
  2042.         
  2043.         
  2044.         
  2045.         
  2046.                                FileFix Link Robot
  2047.         
  2048.         
  2049.         It's the traditional "Raid" or "TicFix" function: it allows
  2050.         downlinks (but also special uplinks) to link/unlink file areas
  2051.         via a netmail message.
  2052.         
  2053.         The message should have the agreed password as the subject,
  2054.         possibly followed by some switch.
  2055.         The required password is that defined in the "FileLink"
  2056.         statement described below.
  2057.         
  2058.         The body of the message contains the commands.
  2059.         There can be several commands on a single line provided they are
  2060.         separated by blanks.
  2061.         
  2062.         Password, switches and commands are case insensitive.
  2063.         
  2064.         Switches that can be used in the subject, after the password,
  2065.         only the _first_ letter is required (and checked):
  2066.         
  2067.             -Help           Help.
  2068.             -Query          List all areas (linked and available).
  2069.             -Linked         List linked areas.
  2070.             -Unlinked       List unlinked areas.
  2071.         
  2072.         
  2073.         The commands available for the message body are:
  2074.         
  2075.             [+]<WTAG>
  2076.                 Links all the areas whose TAG matches <WTAG>.
  2077.                 The '+' character is optional (useful in the case <WTAG>
  2078.                 starts with the '-' character).
  2079.         
  2080.             -<WTAG>
  2081.                 Unlinks all the areas whose TAG matches <WTAG>.
  2082.         
  2083.             %Help        same as -h
  2084.             %Query       same as -q
  2085.             %List        same as -q
  2086.             %Linked      same as -l
  2087.             %Unlinked    same as -u
  2088.         
  2089.             Note: you can use the '?' character in the place of '%'.
  2090.             This is useful when using the FileFix command line option,
  2091.             to avoid that the command line interpreter takes the '%'
  2092.             as the start of an environment variable name.
  2093.         
  2094.         Example:
  2095.         
  2096.                 From: John Doe of 2:332/580.0
  2097.                 To:   Nef      of 2:332/504.0
  2098.                 Subj: Secret -H
  2099.                 -----------------------------
  2100.                 %Query
  2101.                 1* -1-COMM
  2102.                 +2*
  2103.                 -2-WINDOW
  2104.                 ---
  2105.         
  2106.                 The Help and Query commands are invoked, all areas whose
  2107.                 tag begins with '1' are linked, area "1-COMM" is
  2108.                 unlinked, all areas whose tag begins with '2' are linked
  2109.                 and area "2-WINDOW" is unlinked.
  2110.         
  2111.         Notes:
  2112.                 The actual order of command execution is based on the
  2113.                 area definition order. NEF scans the defined areas from
  2114.                 the first to the last one only once, applying for each
  2115.                 area all the pertinent commands.
  2116.         
  2117.                 If a link in a FileArea statement is not properly
  2118.                 defined in a FileLink one, it is removed when the
  2119.                 Link Robot re-writes that FileArea statement in
  2120.                 execution of an Add or Delete command.
  2121.         
  2122.                 While re-writing areas, the Link Robot will NOT re-order
  2123.                 the links. However it will respect an existing order
  2124.                 while adding new links.
  2125.         
  2126.                 If Area aka overrides are used, they are reported by
  2127.                 Area-List commands.
  2128.         
  2129.         
  2130.         
  2131.         AutoLink <name>
  2132.         
  2133.                 The robot will answer to the messages addressed to one
  2134.                 of the addresses defined in the "system" section and to
  2135.                 one of the names defined in the AutoLink statements.
  2136.                 You can use as many AutoLink statements as you need to
  2137.                 define all the akas you like.
  2138.                 If no AutoLink statement is used, then the Link Robot is
  2139.                 disabled.
  2140.         
  2141.             Example:
  2142.         
  2143.                 AutoLink NEF
  2144.                 AutoLink Raid
  2145.                 AutoLink TicFix
  2146.         
  2147.         
  2148.         NetMail <path> [-$] [-p<adr>]
  2149.         
  2150.                 This defines a netmail area to be searched for messages
  2151.                 addressed to the robot. You can use as many NetMail
  2152.                 statements as you need.
  2153.         
  2154.                 The optional -$ indicates a Squish format area.
  2155.         
  2156.                 The optional "-p<adr>" specifies the primary (default)
  2157.                 address for the area.
  2158.         
  2159.                 When multiple NetMails are defined, NEF needs <adr> to
  2160.                 choose (via zone matching) the right area where to write
  2161.                 the messages addressed to the FileBone's "FileFix" robot.
  2162.         
  2163.                 Usually all but the first netmail statements should
  2164.                 contain a primary address specification.
  2165.         
  2166.                 Note: when a Squish base is used, a pointer to the last
  2167.                 scanned message is stored in <path>.NEF, so that next
  2168.                 scan will consider new messages only.
  2169.         
  2170.             Example:
  2171.         
  2172.                 NetMail d:\msg\fidonet -$              ; default
  2173.                 NetMail d:\msg\os2net  -$ -p89:456/789 ; OS2Net
  2174.         
  2175.         
  2176.         
  2177.         KillReceived
  2178.         
  2179.                 This keyword instructs NEF to kill messages addressed to
  2180.                 the Link Robot after the execution of the contained
  2181.                 commands. When commented out, the messages are marked as
  2182.                 received instead of being erased.
  2183.         
  2184.         
  2185.         AreaDescWrap <indent> <right>
  2186.         
  2187.                 The descriptions returned by the "FileFix" functions
  2188.                 will be word-wrapped so that continuation lines start
  2189.                 with <indent> spaces and do not exceed column <right>.
  2190.         
  2191.             Example:
  2192.         
  2193.                 AreaDescWrap 25 79
  2194.         
  2195.         
  2196.         
  2197.         HelpFile <filename>
  2198.         
  2199.                 This keyword defines the file to be put into the Link
  2200.                 Robot's answer in reply to a Help request.
  2201.         
  2202.                 Usually this file contains instructions for using the
  2203.                 Link Robot.
  2204.         
  2205.             Example:
  2206.         
  2207.                 HelpFile d:\bbs\nef\NefHelp.Txt
  2208.         
  2209.         
  2210.         
  2211.         ProtArea <WTAG> <ACS>
  2212.         
  2213.                 This keyword allows to selectively protect areas from
  2214.                 automatic linking. Unlinking is always possible.
  2215.         
  2216.                 The protection scheme is based on the traditional
  2217.                 combination of level and keys.
  2218.         
  2219.                 <WTAG>  specifies the TAG or group of TAGs to be
  2220.                         protected.
  2221.                 <ACS>   is the access privilege required for access.
  2222.         
  2223.                 When processing an area TAG, NEF scans the ProtArea
  2224.                 statements from the first one to the last one: the first
  2225.                 matching <WTAG> determines the protection level and
  2226.                 keys. If no match is found then the area gains maximum
  2227.                 protection.
  2228.         
  2229.                 Usually it's convenient to override the default maximum
  2230.                 protection so that you can list only a few special areas
  2231.                 with their protection level and keys while letting all
  2232.                 the others get a default NULL protection (automatic
  2233.                 linking for everybody). To accomplish this result, you
  2234.                 can use a "ProtArea * 0" as the last ProtArea statement.
  2235.         
  2236.                 Please, note that the order of the ProtArea statements is
  2237.                 _essential_, since they area scanned from the first one
  2238.                 to the last one in search for a match between the TAG in
  2239.                 examination and the <WTAG> of the ProtArea statements.
  2240.         
  2241.             Example:
  2242.         
  2243.                 ProtArea PRIVATE  1000/12ABC  ; Protected private area
  2244.         
  2245.                 ProtArea 1*       100/P       ; Areas starting with '1'
  2246.                                               ; are not for everybody.
  2247.         
  2248.                 ProtArea *        0           ; The remaining areas are
  2249.                                               ; for everybody.
  2250.         
  2251.         
  2252.         
  2253.                                 FileBone Support
  2254.         
  2255.         
  2256.         NEF is able to use information distributed via the FileBone.Na
  2257.         and FileBone.No files.
  2258.         
  2259.         Many useful functions are allowed by the use of these files, so,
  2260.         even if you do not receive them from your uplink, you could
  2261.         evaluate the possibility of creating "FileBone-style" files on
  2262.         your own, just to store some information that can be retrieved
  2263.         by NEF.
  2264.         
  2265.         When FileBone-style files are used:
  2266.         
  2267.         - The Query command reports the areas available on the FileBone,
  2268.           in addition to those that are not linked to the downlink but
  2269.           already available on the local system.
  2270.         
  2271.         - Area descriptions can be returned by FileFix commands.
  2272.         
  2273.         - Level and Keys protect areas from "FileFix" linking.
  2274.           A node is entitled to add an area only if it has level and
  2275.           keys that match the requirements from BOTH the "ProtArea"
  2276.           statements in Nef.Cfg and the <lev>[/<keys>] specification
  2277.           in a FileBone format file (if available).
  2278.         
  2279.         - Requests for unlinked areas can be forwarded to the FileBone.
  2280.         
  2281.           The requests that have been forwarded to some uplink are
  2282.           stored in a file named after the configuration one, changing
  2283.           the extension to ".Fwd". Usually the configuration file is
  2284.           "Nef.Cfg", so the forwarded requests will be stored in
  2285.           "Nef.Fwd".
  2286.         
  2287.           The format is: <Tag> <Addr>, i.e. every line contains a Tag
  2288.           followed by the 4D Address of the downlink that made the
  2289.           request.
  2290.         
  2291.           When a new area is created, NEF looks into this file in order
  2292.           to find nodes to be added to the new "FileArea" definition.
  2293.         
  2294.           If a requested (and not yet defined) Tag is found in two or
  2295.           more FileBone files, the request is forwarded to the uplink
  2296.           defined in the first FileBone statement only.
  2297.         
  2298.           Don't mind if the Nef.Fwd file contains multiple entries for
  2299.           the same Tag. This can happen when multiple requests for the
  2300.           same area have been received. When the first file comes in
  2301.           and the area is created, all entries will be deleted while
  2302.           the link will be added once.
  2303.           
  2304.         
  2305.         
  2306.         FileBone <file> [<acc>] [<fm> <to> <toadr> <fwdacc> [<pre>]]
  2307.         
  2308.                 Multiple FileBone statements are allowed; in the case of
  2309.                 duplicate TAGs, the first encountered entry is used.
  2310.         
  2311.                 <file> is the filename of the FileBone-style file.
  2312.         
  2313.                 <acc> is a <ACS> specification that protects the areas
  2314.                       listed in <file>.
  2315.         
  2316.                 If you want to enable the forward of requests for new
  2317.                 areas from your downlinks to your uplink(s), you must
  2318.                 specify the following fields (to be enclosed between
  2319.                 quotes when containing space) so that they can be used
  2320.                 to write netmail messages to your uplink's FileFix:
  2321.         
  2322.                 <fm> is the "from" name.
  2323.         
  2324.                 <to> is the "to" name.
  2325.         
  2326.                 <toadr> is the "to" 4D address.
  2327.         
  2328.                 <fwdacc> is a <ACS> specification, to limit the access
  2329.                       of downlinks to request forwards addressed to
  2330.                       <toadr> for the areas described in <file>.
  2331.         
  2332.                 <pre> is an optional string to be prefixed to the area
  2333.                       Tags that are being requested.
  2334.         
  2335.             Examples:
  2336.         
  2337.                 FileBone \bbs\FileBone.Na "John Doe" SysOp 2:332/1 0
  2338.         
  2339.                 The "\bbs\FileBone.Na" file is used by NEF, also for
  2340.                 request forwards.
  2341.         
  2342.                 When a downlink requests an area that is not currently
  2343.                 defined in the NEF configuration (usually TicArea.Cfg)
  2344.                 but is described in FileBone.Na, a netmail message is
  2345.                 written by NEF from "John Doe" to "SysOp" of 2:332/1
  2346.                 using the appropriate "from address" aka and "subject"
  2347.                 (password) as per the "FileLink" definition of 2:332/1.
  2348.                 The body contains a list of the requested area Tags, one
  2349.                 per line.
  2350.         
  2351.                 No (<acc> = "0") protection is specified (any downlink
  2352.                 has access to request forwards).
  2353.         
  2354.         
  2355.                 FileBone \bbs\FB.SP 10/f "John Doe" SysOp 2:332/1 30/a +
  2356.         
  2357.                 The visibility of FB.SP information is limited to
  2358.                 filelinks having level equal or above 10 and the 'f'
  2359.                 key.
  2360.         
  2361.                 The access to request forwards is limited to filelinks
  2362.                 having level equal or above 30 and the 'a' key.
  2363.         
  2364.                 The requested tags will be preceded by "+".
  2365.         
  2366.                 If you need a space between the '+' and the tag, then you
  2367.                 must specify a <pre> that contains a space, so you have
  2368.                 to enclose it in quotes:
  2369.         
  2370.                 FileBone \bbs\FB.SP "John Doe" SysOp 2:332/1 0 "+ "
  2371.         
  2372.         
  2373.                                 FileBone Format
  2374.         
  2375.         The format for the filebone style is:
  2376.         
  2377.           Area <Tag> <lev>[/<keys>] <flags> <desc>
  2378.         
  2379.           <Tag>
  2380.                   is the TIC area Tag.
  2381.                   The original filebone format allows 8 character
  2382.                   maximum but NEF is not that limited.
  2383.         
  2384.           <lev>
  2385.                   is the protection level of the area, for "FileFix"
  2386.                   functions.
  2387.                   The original format allows the range 0-4095 while NEF
  2388.                   allows 0-65535.
  2389.         
  2390.           <keys>
  2391.                   are a set of protection keys (1..8, A..X).
  2392.                   Not available in the original FileBone format.
  2393.         
  2394.           <flags>
  2395.                 is a combinaton of !.*& and possibly other characters.
  2396.         
  2397.                 By default (no flags) the area is uni-directional, from
  2398.                 the uplink to the defined downlinks.
  2399.         
  2400.                 ! : Can be found at any Filebone Hub.
  2401.                 . : Only on some Filebone Hubs.
  2402.                 * : Any node can hatch into.
  2403.                 & : Do not send to downlinks.
  2404.         
  2405.            Others : Private distribution.
  2406.         
  2407.            Examples:
  2408.         
  2409.                 !
  2410.                     normal area from the uplink to its downlinks,
  2411.                     available on all Filebone Hubs.
  2412.         
  2413.               !*&
  2414.                     return channel from the downlinks to the
  2415.                     uplink, available on all Filebone Hubs.
  2416.         
  2417.                .*
  2418.                     bidirectional area (any node can hatch into),
  2419.                     available on some Filebone hubs only.
  2420.         
  2421.         
  2422.           <desc>
  2423.                 is the description for the area.
  2424.         
  2425.         
  2426.           Example:
  2427.         
  2428.           Area APBBS    0   P ApWorks OS/2 BBS programs
  2429.           Area NODEDIFF 0/f ! FidoNet: Weekly NodeList Updates
  2430.         
  2431.         
  2432.         
  2433.         ForwardWildReq
  2434.         
  2435.                 When a FileFix "Add" request contains wildcards, by
  2436.                 default it is NOT forwarded to the filebone.
  2437.                 This verb enables even this type of request forward.
  2438.         
  2439.         
  2440.         
  2441.                                 Link Definitions
  2442.         
  2443.         
  2444.         The FileLink statement is used to define a link, specifying its
  2445.         password, attributes and privileges.
  2446.         
  2447.         The FileArea statement is used to define a file area, specifying
  2448.         its type and the list of connected systems (that must be defined
  2449.         via FileLink statements).
  2450.         
  2451.         
  2452.         FileLink <address> <password> [#<address>] <flags>
  2453.                  [<attr> [<ACS> [<WSEL> ...]]]
  2454.         
  2455.                 The parameters of this keyword have been represented on
  2456.                 two lines because of space, but they MUST be listed on a
  2457.                 unique line in the .cfg file.
  2458.         
  2459.                 This keyword defines a file link; you must use a
  2460.                 FileLink statement for each of your links (both
  2461.                 downlinks and uplinks).
  2462.         
  2463.         
  2464.                 <address>
  2465.                            is the 4D address of the link.
  2466.         
  2467.                 <password>
  2468.                            is the case insensitive password to be used
  2469.                            for all TIC exchanges and for the Link Robot
  2470.                            function. NEF has no limit for the password
  2471.                            length, anyway you should be aware that other
  2472.                            similar programs might have limits, so check
  2473.                            with your downlink/uplink before choosing a
  2474.                            long password (8 characters should be OK for
  2475.                            everyone).
  2476.         
  2477.                 #<address>
  2478.                            This optional field indicates a "from" 4D
  2479.                            address to be used for the .TICs sent to this
  2480.                            link (overrides the zone-match and is in turn
  2481.                            overriden by the area override (see
  2482.                            "FileArea")).
  2483.         
  2484.                 <flags>
  2485.                            This field is a (case insensitive) set of
  2486.                            characters:
  2487.         
  2488.                            <H|C|D|N|F>[<S|T>][<I|O|*>][Y].
  2489.         
  2490.                            It can be 1 to 4 characters long:
  2491.         
  2492.                          - The first flag is mandatory; it defines the
  2493.                            flavour of the file-attaches that NEF will
  2494.                            create for .TIC and associated files.
  2495.         
  2496.                            Please note that this flag can be overridden
  2497.                            on a per-area basis by prefixing the link
  2498.                            address with a new flavour-flag in the
  2499.                            FileArea statement.
  2500.         
  2501.                            The available choices for this flag and the
  2502.                            consequent file-attach extension follow:
  2503.         
  2504.                            H -> .HLO (Hold)
  2505.                            C -> .CLO (Crash)
  2506.                            D -> .DLO (Direct)
  2507.                            F -> .FLO (Normal)
  2508.                            N -> .FLO (Normal)
  2509.         
  2510.                            The 'N' flag is provided for "compatibility",
  2511.                            but it's the same as 'F'.
  2512.         
  2513.                          - The second flag is optional: it defines
  2514.                            whether NEF must send a .TIC together with
  2515.                            the file or not.
  2516.         
  2517.                            S -> .TIC sent (default).
  2518.                            T -> .TIC not sent.
  2519.         
  2520.                            Usually the default is used (this flag can be
  2521.                            omitted), but sometimes points like not
  2522.                            receiving the .TIC file.
  2523.         
  2524.                            Please note that this flag can be overridden
  2525.                            on a per-area basis by prefixing the link
  2526.                            address with a new flag in the FileArea
  2527.                            statement.
  2528.         
  2529.                          - The third flag is optional. It is provided
  2530.                            for completeness and it is sometimes very
  2531.                            handy, but it is recommended not to use it
  2532.                            too often since its use might unnecessarily
  2533.                            complicate the interpretation of the
  2534.                            configuration.
  2535.         
  2536.                            It defines whether this link has
  2537.                            bidirectional access to file areas or not.
  2538.         
  2539.                            This is an override to the "area direction"
  2540.                            field of each FileArea definition.
  2541.         
  2542.                            Please note that this flag can be overridden
  2543.                            on a per-area basis by prefixing the link
  2544.                            address with a new flag in the FileArea
  2545.                            statement.
  2546.         
  2547.                            I -> Only Input is allowed from this link.
  2548.                                 NEF will not send files.
  2549.                            O -> Only output is allowed to this link.
  2550.                                 NEF will not accept files.
  2551.                            * -> Bidirectional link.
  2552.         
  2553.                          - The fourth flag ('Y') is optional.
  2554.                            It defines the systems that will be notified
  2555.                            when a "Nef Notify" command is issued, with
  2556.                            no address list.
  2557.         
  2558.                 <attr>
  2559.                            These are the (case insensitive) attributes
  2560.                            for the Link Robot's netmail replies:
  2561.         
  2562.                            K -> Kill/Sent
  2563.                            C -> Crash
  2564.                            H -> Hold
  2565.                            D -> Direct (equivalent to "CH")
  2566.                            N -> Normal (default)
  2567.                            O -> Normal (default)
  2568.         
  2569.                            The Private attribute is always implied.
  2570.         
  2571.                            ATTENTION: you should usually use the 'H'
  2572.                            attribute for file links that are not netmail
  2573.                            links too. Otherwise the "Normal" flavoured
  2574.                            netmail replies will be routed as per your
  2575.                            routing configuration instead of being held
  2576.                            for the file link.
  2577.         
  2578.                 <ACS>
  2579.                            Represents the access level to the Link Robot
  2580.                            for this node.
  2581.         
  2582.                            Defaults to 0.
  2583.         
  2584.                 <WSEL>
  2585.                            The optional list of <WSEL>s specifies the
  2586.                            areas that must be automatically linked to
  2587.                            this node when they are automatically created
  2588.                            by NEF.
  2589.         
  2590.                            New areas can be automatically created when
  2591.                            unknown TAGs are found in ingoing .TICs (see
  2592.                            "NewAreasFrom" above in this reference).
  2593.                            You can make NEF automatically link the
  2594.                            downlink to the areas that match the <WSEL>
  2595.                            specification(s).
  2596.         
  2597.         
  2598.             Examples:
  2599.         
  2600.         
  2601.               - FileLink 2:332/593 pwd593 INY
  2602.         
  2603.                 Node 2:332/593 has password "pwd593", is enabled to send
  2604.                 .TICs to us ('I'), the file attaches addressed to it
  2605.                 (if any) will be normal flavoured ('N') and a
  2606.                 notification message will be issued when "Nef Notify" is
  2607.                 executed ('Y').
  2608.         
  2609.                 Note that file attaches to this node will only be
  2610.                 possible if a local area override will be used, since
  2611.                 the 'I' flag instructs NEF to accept files from the node
  2612.                 but not to send to it.
  2613.         
  2614.                 Nothing is specified about the Link Robot's reply flags
  2615.                 and access level and keys, so this node will be able to
  2616.                 link only areas with protection level 0 and no keys; the
  2617.                 Robot's reply will be normal flavoured.
  2618.         
  2619.               - FileLink 2:331/196.1 pwd1961 H NK 300/ab
  2620.         
  2621.                 Node 2:331/196.1 has password "pwd1961", nothing is
  2622.                 specified about link direction (it will depend on the
  2623.                 "area direction" and local overrides), the file attaches
  2624.                 will be Hold flavoured ('H'), the reply netmails will be
  2625.                 normal flavoured ('N') and kill/sent ('K'), the access
  2626.                 level is 300 and the access keys are a,b.
  2627.         
  2628.               - FileLink 2:332/1 pwd1 #2:332/500 H N 900/ab :/f *OS2*
  2629.         
  2630.                 Node 2:332/1 has password "pwd1", all the TICs sent to
  2631.                 this node will use the from-address 2:332/500 (provided
  2632.                 there is no aka override at the "FileArea" level), the
  2633.                 file attaches will be Hold flavoured ('H'), the netmail
  2634.                 replies will be normal flavoured ('N'), the access level
  2635.                 is 900 and the access keys a,b.
  2636.         
  2637.                 New areas accessible with the f key or whose TAG
  2638.                 contains "OS2" will be automatically linked when they
  2639.                 are created by NEF.
  2640.         
  2641.         
  2642.         FileArea <TAG> <path> I|O|* [<areaflags>] [[<flags>]<link> ...]
  2643.         
  2644.                 This keyword defines an echo file area.
  2645.         
  2646.                 If you have a small system, you can put the area
  2647.                 definitions in the main configuration file (e.g.
  2648.                 NEF.CFG). For systems with a large number of areas and
  2649.                 links, it is recommended to use a separate file for the
  2650.                 area definitions: see the "TicAreaCfg" keyword, formerly
  2651.                 discussed in this documentation.
  2652.         
  2653.                 ATTENTION: when using the "TicAreaCfg" separate file,
  2654.                 you must put ALL the FileArea statements in that file.
  2655.                 You are not allowed to put area definitions both in the
  2656.                 main .cfg file and in the dedicated TicAreaCfg file at
  2657.                 the same time !
  2658.         
  2659.                 Please note that all the FileArea statements, if
  2660.                 included in the main .cfg file, MUST be defined _after_
  2661.                 the FileLink statements.
  2662.         
  2663.                 <TAG> is the area TAG.
  2664.         
  2665.                 <path> is the directory for the file area.
  2666.         
  2667.                 I|O|*  is the (case insensitive) "area direction" and
  2668.                        defines the default direction for the area:
  2669.         
  2670.                     'I'
  2671.                          we accept files from the listed nodes but do
  2672.                          not send to them, unless an override flag is
  2673.                          present before the <link> or in the pertinent
  2674.                          "FileLink" definition.
  2675.         
  2676.                          This should usually be used for "pre" areas, in
  2677.                          which files must be collected from downlinks
  2678.                          and sent to the area coordinator via the
  2679.                          uplink, which will probably need a local 'O'
  2680.                          override.
  2681.         
  2682.                     'O'
  2683.                          we send files to the listed nodes but do not
  2684.                          accept from them, unless an override flag is
  2685.                          present before the <link> or in the pertinent
  2686.                          "FileLink" definition.
  2687.         
  2688.                          This should usually be used for areas that must
  2689.                          be distributed to downlinks. The uplink will
  2690.                          need a local 'I' override before its <link>
  2691.                          field or a global one in its FileLink
  2692.                          definition.
  2693.         
  2694.                     '*'
  2695.                          the area is bidirectional, so we both send and
  2696.                          accept files to/from the listed nodes, unless
  2697.                          an override flag is present before the <link>
  2698.                          or in the pertinent "FileLink" definition.
  2699.         
  2700.                          This should be used for bidirectional areas, in
  2701.                          which everybody is allowed to "hatch" files.
  2702.         
  2703.         
  2704.                 <areaflags> is one or more of:
  2705.         
  2706.                     -0[<days>]
  2707.                          When the "-0" (zero) is specified, the area is
  2708.                          "Passthru", that is its files will be deleted
  2709.                          when already sent to all the downlinks. Please
  2710.                          note that ANY file (apart from FILES.*) present
  2711.                          in the <path> and not attached to any system
  2712.                          will be deleted.
  2713.         
  2714.                          If the optional <days> parameter is used, the
  2715.                          files will not be deleted until they become
  2716.                          older than <days> _AND_ not referenced by any
  2717.                          file attach.
  2718.         
  2719.                          <days> is an integer <= 65535.
  2720.         
  2721.                          Please note that you can use the Touch and
  2722.                          KillDate statements to control the date used to
  2723.                          evalutate the file age.
  2724.         
  2725.                          NEF must be explicitly instructed to delete the
  2726.                          old files in passthru areas, usually in some
  2727.                          maintenance event.
  2728.         
  2729.                          See also the "-p" and "CLEAN" command line
  2730.                          options.
  2731.         
  2732.         
  2733.                     #<address>
  2734.                          Primary address override for this area (highest
  2735.                          priority aka).
  2736.         
  2737.                          This address will be used as "from" address
  2738.                          regardless of the other aka specifications.
  2739.         
  2740.                     @<address>
  2741.                          Primary address default for this area (lowest
  2742.                          priority aka).
  2743.         
  2744.                          If no aka specification is applicable, this
  2745.                          address will be used.
  2746.                          Essentially useful to control the "Origin"
  2747.                          address of Hatched files without losing the
  2748.                          multi-aka features.
  2749.         
  2750.                          The akas specified in "FileLink" definitions
  2751.                          and the automatic zone-match will operate
  2752.                          normally.
  2753.         
  2754.         
  2755.                     -P<ACS>
  2756.                          Protection level for the area (Override).
  2757.         
  2758.                          The specified access level and keys will be
  2759.                          used, regardless of other protection
  2760.                          specifications.
  2761.         
  2762.                     -p<ACS>
  2763.                          Protection level for the area (additional).
  2764.         
  2765.                          The specified access level and keys will
  2766.                          protect the area, in addition to possible
  2767.                          restrictions specified in ProtArea and FileBone
  2768.                          statements.
  2769.         
  2770.         
  2771.                 The list of linked nodes follows; each node can have
  2772.                 some <flags> attached before the node address. The
  2773.                 available flags are the same as for the <flags> field in
  2774.                 the "FileLink" statement.
  2775.         
  2776.                 <flags>
  2777.                            This is an optional (case insensitive) field
  2778.                            made up of 1 to 3 characters:
  2779.                            [H|C|D|N|F][S|T][I|O|*].
  2780.         
  2781.                          - The first flag defines the flavour of the
  2782.                            file-attaches that NEF will create for .TIC
  2783.                            and associated files.
  2784.         
  2785.                            Please note that this flag overrides that in
  2786.                            the pertinent "FileLink" statement.
  2787.         
  2788.                            The available choices for this flag and the
  2789.                            consequent file-attach extension follow:
  2790.         
  2791.                            H -> .HLO (Hold)
  2792.                            C -> .CLO (Crash)
  2793.                            D -> .DLO (Direct)
  2794.                            F -> .FLO (Normal)
  2795.                            N -> .FLO (Normal)
  2796.         
  2797.                            The 'N' flag is provided for "compatibility",
  2798.                            but it's the same as 'F'.
  2799.         
  2800.                          - The second flag defines whether NEF must send
  2801.                            a .TIC together with the file or not.
  2802.         
  2803.                            S -> .TIC sent.
  2804.                            T -> .TIC not sent.
  2805.         
  2806.                            Please note that this flag overrides that in
  2807.                            the pertinent "FileLink" statement.
  2808.         
  2809.                          - The third flag defines the direction of the
  2810.                            link.
  2811.         
  2812.                            Please note that this flag overrides that in
  2813.                            the pertinent "FileLink" statement, which in
  2814.                            turn overrides the "area direction".
  2815.         
  2816.                            I -> Only Input is allowed from this link.
  2817.                                 NEF will not send files.
  2818.                            O -> Only output is allowed to this link.
  2819.                                 NEF will not accept files.
  2820.                            * -> Bidirectional link.
  2821.         
  2822.                 <link>
  2823.                            This is a 4D address, that can be abbreviated
  2824.                            whenever the preceding address has the same
  2825.                            zone, zone:net or zone:net/node.
  2826.         
  2827.                            For the first <link>, if incomplete, the
  2828.                            primary address for the area is used; anyway
  2829.                            NEF always writes the first address in
  2830.                            complete form when rewriting the area due to
  2831.                            a Link Robot command.
  2832.         
  2833.             Examples:
  2834.         
  2835.             Please note that the situation might be a little different
  2836.             from what explained below, since the FileLink definitions
  2837.             could have some overriding flags.
  2838.         
  2839.         
  2840.             FileArea AREA1 d:\file\area1 O I2:332/1 504.1 .2 1:2/3
  2841.         
  2842.             Typical area definition, where we receive from the
  2843.             uplink (marked with 'I') and forward to the listed downlinks
  2844.             (area direction 'O').
  2845.         
  2846.         
  2847.             FileArea AREA2 d:\file\area2 O -0 I2:332/1 504.1 .2 1:2/3
  2848.         
  2849.             Same as above, but passthru.
  2850.         
  2851.         
  2852.             FileArea AREA3 d:\file\area3 O -030 I2:332/1 504.1 .2 1:2/3
  2853.         
  2854.             Same as above, but the files will not be deleted until they
  2855.             are 30 day old.
  2856.         
  2857.         
  2858.             FileArea AREA4 d:\file\area4 I O2:5/1 3/1 332/504.2 .3
  2859.         
  2860.             This is a "reverse" area, where we receive from the listed
  2861.             nodes (area direction 'I') and send to the one marked with
  2862.             'O'.
  2863.         
  2864.         
  2865.             FileArea AREA5 d:\file\area5 * 2:5/1 3/1 332/504.2 .3
  2866.         
  2867.             This is a bidirectional area (direction '*'), where we
  2868.             receive from any of the listed nodes and forward to all the
  2869.             others.
  2870.         
  2871.         
  2872.             FileArea AREA6 d:\file\area6 O #2:332/500 I2:332/596 C555
  2873.         
  2874.             A normal "up-link to down-links" area ('O'); we use
  2875.             2:332/500 as the primary address, accept files from
  2876.             2:332/596 and forward to 2:332/555 with a crash flavoured
  2877.             file attach.
  2878.         
  2879.         
  2880.             FileArea AREA7 d:\file\area7 O S2:332/504.1 10:10/0 *100/1
  2881.         
  2882.             Normal "up-link to down-links" area ('O'); 10:100/1 is the
  2883.             only node enabled to send to us (bidirectional override
  2884.             '*'); we forward to 2:332/504.1 and 10:10/0. If we hatch
  2885.             files, we send to 10:100/1 too, since it is bidirectional.
  2886.             We send the .TIC accompanying files to 2:332/504.1 ('S')
  2887.             even if it had a 'T' flag in its FileLink definition.
  2888.         
  2889.         
  2890.             FileArea AREA8 d:\file\area8 O -p100/f @2:332/500 504.1
  2891.             This area is protected with level 100 and key f; the default
  2892.             primary address is 2:332/500.
  2893.         
  2894.         
  2895.  
  2896.         
  2897.                             COMPRESS DEFINITION FILE
  2898.         
  2899.         
  2900.         The file specified in the CompressCfg statement is a sequence of
  2901.         Archive definition blocks, each one starting with "Archiver" and
  2902.         ending with "End Archiver". You can find an example in the
  2903.         Compress.Cfg file included in the distribution pack.
  2904.         
  2905.         The order of the archive definition blocks within this file may
  2906.         be important: when trying to unpack a compressed file, the list
  2907.         of archivers is scanned in a reverse order.
  2908.         
  2909.         In the case of two archivers that use the same identification
  2910.         string (e.g. ARC and PAK), you must specify the archiver that
  2911.         can unpack both (PAK) after the other one (ARC).
  2912.         
  2913.         The compress.cfg file can be shared between DOS/NT and OS/2
  2914.         applications: the "DOS" and "OS2" keywords are available to
  2915.         distinguish between the commands to be used under DOS/NT and
  2916.         OS/2.
  2917.         
  2918.         O.S. specific archivers or commands must be prefixed with the
  2919.         relevant keyword.
  2920.         
  2921.         IMPORTANT NOTE: The lines that begin with "DOS" or "OS2" are
  2922.         parsed by the DOS/NT and OS/2 versions respectively. If you need
  2923.         the OS/2 version to execute a DOS command, you MUST NOT use the
  2924.         DOS keyword: if you do, it will never parse that line; if you do
  2925.         not, it will execute the DOS command "normally", provided you
  2926.         have installed OS/2's Dos support.
  2927.         
  2928.         See the examples below.
  2929.         
  2930.         
  2931.         Archiver <ARCname>
  2932.         
  2933.                 Starts the Archive definition block.
  2934.         
  2935.                 <ARCname> is the name used to identify this archiver.
  2936.         
  2937.             Example:
  2938.         
  2939.                 Archiver ZIP
  2940.         
  2941.         
  2942.         
  2943.         Extension  <ext>
  2944.         
  2945.                 Specifies the default extension for the compressed
  2946.                 files.
  2947.         
  2948.             Example:
  2949.         
  2950.                 Extension ZIP
  2951.         
  2952.         
  2953.         
  2954.         Ident <ofs>,<ID>
  2955.         
  2956.                 <ofs> is a decimal integer number representing the
  2957.                 offset at which an archive identity marker <ID> must be
  2958.                 present.
  2959.         
  2960.                 Negative values can be used to indicate offsets from the
  2961.                 END of a compressed file. -1 means "the last byte", -2
  2962.                 "the second last byte" and so on.
  2963.         
  2964.                 <ID> is a series of hexadecimal figures which represent
  2965.                 the bytes of the marker string that must be present at
  2966.                 the specified offset of the archive file.
  2967.         
  2968.             Example:
  2969.         
  2970.                 Ident 0,504b0304  ; "PK^c^d"
  2971.         
  2972.         
  2973.         
  2974.         Add <command>
  2975.         
  2976.                 Specifies the command to add files to an archive.
  2977.                 %a and %f are translated to the name of the archive and
  2978.                 file to add.
  2979.         
  2980.             Example:
  2981.         
  2982.                 Add zip -jk %a %f
  2983.         
  2984.         
  2985.         
  2986.         Extract <command>
  2987.         
  2988.                 Specifies the command to extract files from an archive.
  2989.                 %a and %f are translated to the name of the archive and
  2990.                 file to extract.
  2991.         
  2992.             Example:
  2993.         
  2994.                 Extract unzip -qqnjC %a %f
  2995.         
  2996.         
  2997.         
  2998.         View <command>
  2999.         
  3000.                 This line is recognized and accepted for compatibility,
  3001.                 but not used.
  3002.         
  3003.         
  3004.         
  3005.         End Archiver
  3006.         
  3007.                 This statement is used to close a Archive definition.
  3008.         
  3009.         
  3010.                                     Examples
  3011.         
  3012.         
  3013.             Complete example 1 (you need OS/2 only):
  3014.         
  3015.         Archiver ZIP
  3016.              Extension     ZIP
  3017.              Ident         0,504b0304
  3018.              Add           zip -jk %a %f
  3019.              Extract       unzip -qqnjC %a %f
  3020.              View          unzip -v %a
  3021.         End Archiver
  3022.         
  3023.         
  3024.             Complete example 2 (you need DOS only):
  3025.         
  3026.         Archiver ZIP
  3027.              Extension     ZIP
  3028.              Ident         0,504b0304
  3029.              Add           pkzip -a %a %f
  3030.              Extract       pkunzip -n %a %f
  3031.              View          pkzip -v %a
  3032.         End Archiver
  3033.         
  3034.         
  3035.             Complete example 3 (you need both OS/2 and DOS):
  3036.         
  3037.         Archiver ZIP
  3038.              Extension     ZIP
  3039.              Ident         0,504b0304
  3040.         OS2  Add           zip -jk %a %f
  3041.         DOS  Add           pkzip -a %a %f
  3042.         OS2  Extract       unzip -qqnjC %a %f
  3043.         DOS  Extract       pkunzip -n %a %f
  3044.         OS2  View          unzip -v %a
  3045.         DOS  View          pkzip -v %a
  3046.         End Archiver
  3047.         
  3048.         
  3049.             Complete example 4 (archiver to be used under DOS only):
  3050.         
  3051.         DOS Archiver ZOO
  3052.         DOS     Extension       ZOO
  3053.         DOS     Ident           0,5a4f4f                        ; "ZOO"
  3054.         DOS     Add             zoo a: %a %f
  3055.         DOS     Extract         zoo e:O %a %f
  3056.         DOS     View            zoo v %a
  3057.         DOS End Archiver
  3058.         
  3059.         
  3060.             Complete example 5 (it's a DOS executable, to be used under
  3061.                                 DOS or OS/2 indifferently):
  3062.         
  3063.         Archiver ZOO
  3064.              Extension       ZOO
  3065.              Ident           0,5a4f4f                        ; "ZOO"
  3066.              Add             zoo a: %a %f
  3067.              Extract         zoo e:O %a %f
  3068.              View            zoo v %a
  3069.         End Archiver
  3070.  
  3071.         
  3072.                                 TroubleShooting
  3073.         
  3074.         
  3075.         Problem:
  3076.                   NEF does not append to Echotoss.log.
  3077.         
  3078.         Solution:
  3079.                   Make sure that the announcement area is defined with
  3080.                   AreaTag (not AreaPath).
  3081.                   You might also need the SquishCfg keyword, if you want
  3082.                   NEF to automatically retrieve the area Path and type.
  3083.         
  3084.         
  3085.         
  3086.                                S H A R E W A R E
  3087.         
  3088.         
  3089.         If you like this program and continue using it, you should pay
  3090.         the author for his work, as per the ShareWare concept of
  3091.         distribution.
  3092.         
  3093.         Please see LICENSE.DOC and REGISTER.DOC for information.
  3094.         
  3095.         Thank you for your interest in ApWorks programs.
  3096.         
  3097.