home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / MNUM416D.PZH / MSGNUM.DOC next >
Text File  |  1991-03-24  |  10KB  |  204 lines

  1.  
  2.  
  3.  
  4.                                         MSGNUM
  5.                                   Revision: 4.16d
  6.                         by Bill Andrus, FidoNet Node 1:109/301
  7.  
  8.              Documentation by Dot Hage, FidoNet Node 1:109/530
  9.  
  10.              Based on copyrighted source by Bob Hartman, contained in
  11.              ConfMail 3.31 and Renum 4.10, and modifications by David
  12.              Hart.  The basic work upon which most of MSGNUM is based is
  13.              Copyright 1985-88 Spark Software, Inc.  All rights reserved.
  14.              Also contains components of the Opus Toolkit 0.37
  15.  
  16.  
  17.         MSGNUM, like an earlier utility called RENUM, is a utility for deleting
  18.         excess BBS messages when too many accumulate and renumbering the
  19.         remaining ones.  How it operates depends upon the command line
  20.         parameters you use, but in general it will delete X number of messages,
  21.         starting with the lowest-numbered, and then renumber the rest.  For
  22.         example, if you have 453 messages and would like to end up with 200, it
  23.         will delete the first 253 messages, and then start renumbering from 254
  24.         (which will become number 1) on up.
  25.  
  26.         This utility is now released in two separate packages, like MSGLINK and
  27.         VPurge.  The OS/2 version is tested on IBM OS/2 EE 1.3 FAT and HPFS
  28.         volumes, as well as across IBM Token Ring LAN segments.
  29.  
  30.         *********************************************************************
  31.         *    NOTE:  This version is being released in two highly optimized  *
  32.         *    forms.  Unlike Renum 4.10, upon which its algorithms are       *
  33.         *    based, MSGNUM is NOT using sector-level disk I/O, and thus     *
  34.         *    should operate fine in all normal DOS and OS/2 environments,   *
  35.         *    including LAN and high performance cached disk systems.  It    *
  36.         *    runs much quicker than ConfMail 3.31, with enhanced logic,     *
  37.         *    and should be viewed as a significant improvement over it.     *
  38.         *    Since this a major change in source code over both ConfMail    *
  39.         *    3.31 and Renum 4.10, Bob Hartman and Spark Software have no    *
  40.         *    responsibility if this program does anything nasty, but get    *
  41.         *    all the credit for having released the source in the first     *
  42.         *    place.  It has been tested successfully on many systems, but   *
  43.         *    that in no way means it will run on your system.               *
  44.         *********************************************************************
  45.  
  46.         This version of MSGNUM is able to handle messages numbered up to 2048
  47.         in any directory.  Beyond that, the program will give unpredictable
  48.         (and usually undesired) results.
  49.  
  50.         This version of MSGNUM will renumber up to 16 entries in LASTREA?, for
  51.         Sirius and FrontDoor users (and some utilities which keep their High
  52.         Water Mark in there).  It will also scan up to 10 user lastread entries
  53.         in the older Opus 1.0-style USER.BBS and all 256 in Opus 1.1-style
  54.         USER.DAT files.  It will also attempt to maintain the 1.MSG High Water
  55.         Mark pointer.
  56.  
  57.         MSGNUM is using higher level I/O calls like Remapper, rather than
  58.         FAT-specific lower level I/O routines.  It runs best with areas that
  59.         are more or less contiguous before it is run.  It will always be as
  60.         fast as old versions of RENUM when just doing message base renumbering,
  61.         but it is much faster when killing messages as well as renumbering them
  62.         with one command.
  63.  
  64.  
  65.  
  66.  
  67.         The command line is as follows.  Note that it is similar to the
  68.         current RENUM, but quite different from ConfMail:
  69.  
  70.  
  71.           MSGNUM [-D days] [-K] [-M] [-N save1 save2]
  72.                  [-O|O120] [-P prm] [-Q] [-S] [-R] <dir>
  73.  
  74.  
  75.  
  76.         -D Kill by number of days old:
  77.              Days is the number of days of messages to save.  If you choose 2,
  78.              for instance, only messages two days old or less will be saved.
  79.              RENUM and MSGNUM have always tried to use arrival date instead of
  80.              message creation date, but QMail doesn't correctly set arrival
  81.              date within message headers, so if you use QMail you may find it
  82.              results in incorrect dates being used here.
  83.  
  84.         -K Kill received messages
  85.  
  86.         -M Use Maximus 1.0x structures:
  87.                 search via MAX.PRM (default) and AREAS.DAT
  88.                 update the user pointers in LASTREAD.BBS if one exists.
  89.  
  90.         -N Kill by number:
  91.                 save1 is the number of messages to skip before killing.
  92.                        You will usually want to save at least the first
  93.                        message, which is where utilities like Confmail store
  94.                        various information they need.  You might also want to
  95.                        save message number two, and use that message to give
  96.                        users introductory information about the message area.
  97.                 save2 is the number of messages that should exist after save1
  98.                        messages are saved.  In other words, if you want to end
  99.                        up with 200 messages total, saving the first message,
  100.                        you would use:  -N 1 199
  101.  
  102.         -O Use Opus 1.1x file structures for USER.DAT, SYSTEMxx.BBS
  103.         -O120 Use Opus 1.2x file structures for updating lastread
  104.  
  105.         -P Override default Maximus MAX.PRM file name
  106.  
  107.         -Q Do it all quietly (don't write anything to the screen).
  108.  
  109.         -S Kill sent messages
  110.  
  111.         -R Renumber messages
  112.  
  113.         <dir> directory
  114.                 Name of directory to renumber.  If specified as a number, the
  115.                 SYSTEMxx.BBS (or SYSTEMxx.DAT for Opus 1.1+) in the current
  116.                 directory is used to get the message area path.  If Maximus,
  117.                 the MAX.PRM is required, used to access the AREAS.DAT/IDX
  118.                 files to get to the message area path.  Using a number will
  119.                 also trigger renumbering the USER.BBS (or USER.DAT), should it
  120.                 exist in the current directory.  If only a directory path is
  121.                 given, no attempt to access any user list file is made.  If
  122.                 any LASTREA? files are found in the message subdirectory, they
  123.                 are assumed to conform to the standard Opus format (an array
  124.                 of unsigned integers) which are message numbers, and updated.
  125.  
  126.         The directory (number or path) must be the last argument on the command
  127.         line.
  128.  
  129.         Both -O and -M can be safely specified for those running both Opus 1.1+
  130.         and Maximus systems.  All the -M flag does is enable a check for
  131.         LASTREAD.BBS.
  132.  
  133.  
  134.  
  135.  
  136.         Either "-" or "/" can be used interchangeably to identify a switch.
  137.  
  138.         Some examples:
  139.  
  140.                 MSGNUM -D 10 -N 1 100 -R C:\Msgs\Tech
  141.                 This will first kill messages older than 10 days in area
  142.                 C:\Msgs\Tech, then save 1.MSG and kill messages until there are
  143.                 100 left after 1.MSG.  Finally, the message base will be
  144.                 renumbered.
  145.  
  146.                 MSGNUM /K -D 10 /N 0 50 -R 2
  147.                 In area 2, kill received messages, kill messages more than 10
  148.                 days old, only save 50 after that, and then renumber the
  149.                 messages (and because an area number was specified, update
  150.                 the USER.BBS file).
  151.  
  152.  
  153.         =====================================================================
  154.                                    REVISION HISTORY
  155.  
  156.         ====>MSGNUM - Revision: 4.16d                          March 25, 1991
  157.  
  158.         Now that 4.16c is working, added in the Opus 1.20 mods from Graham
  159.         Stair, and started working in the Maximus PRM and 2.0 stuff.
  160.  
  161.         ====>MSGNUM - Revision: 4.16c                          March 23, 1991
  162.  
  163.         Well, the best laid plans...  Fixing up the Maximus area number search
  164.         AND getting back to the correct drive/directory after its run.
  165.  
  166.         ====>MSGNUM - Revision: 4.16b                          March 18, 1991
  167.  
  168.         Identified both places where an exit could be made without resetting
  169.         the current drive and directory back to the originals, and fixed them.
  170.  
  171.         ====>MSGNUM - Revision: 4.16                         February 6, 1991
  172.  
  173.         Found and fixed source of another rare Segment Violation, where the
  174.         message link pointers are bad, and MSGLINK has NOT been run yet.  This
  175.         one was found with archived QMail messages.
  176.  
  177.         ====>MSGNUM - Revision: 4.15ma                      December 12, 1990
  178.  
  179.         Started building the OPUS 1.2X-compatible version.  Switched over to
  180.         MS C 6.0a, but still getting code generation-related problems.
  181.  
  182.         ====>MSGNUM - Revision: 4.14ml                      September 5, 1990
  183.  
  184.         Turns out that there's a message mangler floating about that totally
  185.         trashes the message header month field, so badly that MSGNUM would
  186.         overlay its stack and code attempting to extract it.  And made the -A
  187.         switch inoperative since it was causing more problems than it fixed.
  188.  
  189.         ====>MSGNUM - Revision: 4.13ml.l                      June 11, 1990
  190.  
  191.         Kill by date had two problems:  arrival date was being ignored on QMail
  192.         imported messages, and it usually didn't work at all.  Added the -A
  193.         switch to force arrival date use, and fixed the fix to the date routine
  194.         which was originally preventing Segment Violations, but broke the date
  195.         processing.
  196.  
  197.         ====>MSGNUM - Revision: 4.13ml.k                           June 6, 1990
  198.  
  199.         Hopefully, this will be the last Beta.  I believe that this program is
  200.         now about as immune to grunged messages as its design permits.  While
  201.         fixing the exposures (all in the Date routine), also added Mei/May
  202.         recognition.  Oh, and this one could be even faster than .j was, too.
  203.  
  204.