home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / bbs / labtest2.zip / LABTEST.DOC < prev    next >
Text File  |  1993-07-10  |  24KB  |  468 lines

  1.  
  2.                ┌───────────────────────────────────────────────┐
  3.                │ Labtest 2.0 - The Definitive Upload Processor │█
  4.                └───────────────────────────────────────────────┘█
  5.                  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  6.                               Copyright (c) 1993
  7.  
  8.                                 Mark Williamson
  9.                               Software Solutions
  10.                                   PO Box 1233
  11.                             Lemoore, CA 93245-1233
  12.  
  13. Introduction
  14. ─────────────────────────────────────────────────────────────────────────────
  15.                        ┌───────────────────────┐
  16.                        │ What does Labtest do? │█
  17.                        └───────────────────────┘█
  18.                          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  19.  
  20.      ■ Scan the user's uploads (unarchiving as necessary)
  21.      ■ Rearchive the file to the Sysop's preferred format
  22.      ■ Add a .ZIP or .ARJ file comment
  23.      ■ Detect FILE_ID.DIZ file (if one exists) and reserve it for
  24.        use by the user-defined batch file.  Inserts the contents
  25.        of FILE_ID.DIZ into FILES.BBS
  26.      ■ Update the FILES.BBS file to reflect the new file name
  27.      ■ Provide the user with a graphical depiction of the progress
  28.      ■ Optionally drop to dos after each file is successfully processed to run
  29.        a custom batch file.
  30.      ■ Create SCANFILE.BAD for Wildcat 3.x systems in the event of a bad
  31.        archive.
  32.      ■ Process entire directories, unpacking/scanning/repacking each file.
  33.      ■ Ignore previously processed files, so you can run Labtest as a
  34.        maintenance item.  User the /O override command to process
  35.        previously processed files.
  36.      ■ Detect GIF resolution and insert into FILES.BBS comments
  37.      ■ Auto-magically update Remote Access 2.00 file database entries
  38.        with new filename (if converted), description from FILE_ID.DIZ
  39.        (if one exists) and file size.
  40.      ■ Multi node configurable, use the /N node switch.
  41.  
  42.  
  43. Shareware Notice
  44. ──────────────────────────────────────────────────────────────────────────────
  45.  
  46. Labtest 2.0 is a shareware product.  We at Software Solutions believe every
  47. computer user should be able to try a program for a limited time before they
  48. make a decision to purchase it.  Under this concept, you, the user, agrees to
  49. register or discontinue use of Labtest after the 30 day trial period.  Labtest
  50. will not stop working and is not 'crippled' in any way.  The unregistered,
  51. shareware version of Labtest is fully functional.  Upon registering Labtest,
  52. the registration message will disappear and you will have your name and BBS
  53. name prominently displayed for all of your user's to read.  
  54.  
  55. How to Register Labtest
  56. ──────────────────────────────────────────────────────────────────────────────
  57.  
  58. You are encouraged to register Labtest 2.0 for the simple fact that it costs
  59. only $20 to do so and will keep the author happily pounding away at the
  60. keyboard improving and upgrading it's capabilities.  With your registration
  61. you will receive a registration key which will turn off the bothersome Please
  62. Register Me message and enable the usage log feature of Labtest. 
  63. Additionally, you will be entitled to free upgrades until the end of time.  At
  64. the end of this document is the registration form.  Fill it out and mail it
  65. with your $20 to the address listed on the form.  You can get your
  66. registration key by return mail or a call to your BBS, whichever you specify. 
  67.  
  68.  
  69. Installation
  70. ──────────────────────────────────────────────────────────────────────────────
  71.  
  72.    System Requirements
  73.  
  74.       Labtest will run on any IBM compatible 286/386/486 computer with
  75.       at least 640k ram.
  76.  
  77.       Additional support programs required to run Labtest are:
  78.  
  79.       A Virus Scan program (user definable)
  80.       Upto six Archive utilities (user definable)
  81.       EXITINFO.EXE (For Remote Access 2.00 only - included in this
  82.       archive)
  83.       BNU or X00 Fossil driver.
  84.  
  85.       Additionally, Labtest requires the use of Ansi graphics on both
  86.       the host computer and the remote terminal.
  87.  
  88.       Note, when using McAfee's VirusScan, you will need 330k of memory
  89.       (plus that used by Labtest) to scan the files.
  90.  
  91. Labtest is designed primarily as a utility for System Operators (Sysops) to
  92. protect their BBS's from user's who, knowingly or unknowingly, upload an
  93. archived file that is either corrupted or one of the files contained in the
  94. archive is infected by a computer virus.
  95.  
  96. When running Labtest on your BBS, you must ensure that a fossil driver is
  97. already loaded.  Labtest uses the fossil driver to communicate with the modem.
  98.  
  99. To install Labtest in your BBS, there are several steps to take to ensure a
  100. smooth installation.  Some of these steps depend entirely on the BBS software
  101. you are using.
  102.  
  103. Labtest recognizes door information files produced by almost all major BBS
  104. software.  
  105.  
  106. The door information files recognized are:
  107.  
  108.      DOOR.SYS
  109.      DORINFO?.DEF
  110.      CALLINFO.BBS
  111.      EXITINFO.BBS (Remote Access version 1.11!)
  112.                    Use supplied EXITINFO conversion utility for RA 2.00
  113.      CHAIN.TXT
  114.      SFDOORS.DAT
  115.  
  116. The first step to installing Labtest is to decide where to put the Labtest
  117. files.  This is entirely up to you.  You may place them into the BBS
  118. software's base directory, or into a directory of it's own.  In order
  119. for Labtest to locate it's configuration files, it is suggested that
  120. Labtest be placed in the DOS path.  This will allow you to run Labtest
  121. from any directory on your system.
  122.  
  123. The next step is to run LABSETUP.  Labsetup will write the configuration file
  124. which Labtest will read each time it is run (Local and BBS modes).
  125.  
  126.   [ Files and Paths ]
  127.  
  128.   Main BBS Dir:  Enter the full path name to your BBS home Directory.  Note
  129.                  that this is NOT necessarily the node directory.  For
  130.                  Wildcat users, this is where Labtest writes SCANFILE.BAD
  131.                  for bad archives.  For Remote Access users, this is where
  132.                  your CONFIG.RA and FILES.RA is located.
  133.  
  134.       Work dir:  This is the directory where files will be unpacked to.
  135.                  This directory will be wiped clean after each use of
  136.                  Labtest so it is best not to use this directory for
  137.                  anything else other than Labtest.
  138.  
  139.   Badfiles Dir:  This directory will be used to store archive files that
  140.                  failed the test.  These files will not be converted.
  141.                  For Wildcat users, Labtest will not move bad files.
  142.                  Wildcat will detect the presence of SCANFILE.BAD in the
  143.                  home directory and will flag the file as bad in the
  144.                  database, preventing it from being listed or
  145.                  downloaded.
  146.  
  147.   Logfile name:  Specify the complete path and filename (with extension)
  148.                  of the file that Labtest should write the activity to.
  149.                  Labtest supports a Front Door style logfile.  You may
  150.                  specify the same log file that your BBS uses if you
  151.                  wish.
  152.  
  153.   Comment file:  This is an ascii text file that Labtest will use as an
  154.                  ARJ or ZIP archive comment.  This is useful especially
  155.                  for advertising your BBS.
  156.  
  157.     Batch File:  This is the full path\file name of a batch file you want to
  158.                  run after each archive file is processed.  Three parameters   
  159.                  will be passed to this file:  Old_File_Name, New_File_Name,   
  160.                  and the path\filename to the FILE_ID.DIZ if one was found.    
  161.                  This batch file can be used to run a file database update     
  162.                  utility that will import the file description and name to     
  163.                  your database (for Wildcat, Telegard, Remote Access, and      
  164.                  others that don't use FILES.BBS).
  165.  
  166.   [ BBS Info ]
  167.  
  168.    System name:  Enter the name of your favorite bbs - yours!
  169.  
  170.     Sysop name:  Enter your name as it will appear on your registration.
  171.                  This information is used to calculate your personal
  172.                  registration number, so it is vital that you enter it
  173.                  precisely as you will on your registration form.  This
  174.                  is case sensitive, so pay particular attention to
  175.                  upper/lower case.
  176.  
  177.  Labtest key #:  This is your personal registration number.  If you
  178.                  haven't registered Labtest, this should be a zero.  No
  179.                  number will work except the one you get by registering
  180.                  Labtest.
  181.  
  182.     Node Setup:  Entering this field will bring up a window where you
  183.                  must enter information concerning your BBS nodes.  If
  184.                  you are running a single line system, don't worry about
  185.                  this.  However, if you are running a single line system
  186.                  and your BBS stores the door information files
  187.                  somewhere other than the main bbs directory, enter a 1
  188.                  in the node # column and the path to the door
  189.                  information files in the next column.  Use this same
  190.                  method for entering up to ten nodes for your multinode
  191.                  system.
  192.  
  193.   BBS Software:  Entering this field will pop up a menu of supported BBS
  194.                  systems.  Move the highlight bar with the arrow keys
  195.                  and hit enter on your BBS type.  If your system is not
  196.                  on the menu, we suggest you select FILES.BBS so that
  197.                  Labtest will be sure to update the description file.
  198.                  If you would like to see Labtest directly support your
  199.                  type of BBS, send us as much information on your system
  200.                  and we will be glad to update Labtest.
  201.  
  202.   [ RA 2.00 Info ]
  203.  
  204.    If you selected RA 2.00 as your BBS software, Labsetup will ask you
  205.    where your RA 2.00 file databases are stored.  This is the path to
  206.    your file database as you entered it into RACONFIG.  Usually this is
  207.    C:\RA\FDB.  Note that RA 2.00 divides the file database into three
  208.    files per area, the header file, the index file and the text file.
  209.    Labtest will update each of these files to reflect the conversion (if
  210.    the file was converted) and the FILE_ID.DIZ description.  Labtest
  211.    will use the directory where the archive being check resides to
  212.    search for the file area number.  From there, it will search the file
  213.    database for the file name to be updated.
  214.  
  215.   [ Wildcat Info ]
  216.  
  217.    If you selected Wildcat 3.x as your BBS software, Labsetup will
  218.    display a help screen detailing information you need to update your
  219.    Wildcat ALLFILES.DAT file.  You will need the program WCFILES to
  220.    update your database with the FILE_ID.DIZ contents.  This may be ran
  221.    from the custom batch file which Labtest will execute after each file
  222.    is processed.  Consult your Wildcat documentation for details on how
  223.    to run WCFILES from the command line.  See the included batch file
  224.    WCUPDATE.BAT to import the long file descriptions into Wildcat.
  225.    Please note that you will have to manually rename the file in the
  226.    file database since WCFiles does not do this from the command line.
  227.  
  228.   [ Archivers ]
  229.  
  230.    In this menu you will define up to 6 pack/unpack programs.  Three
  231.    things are required for each archive type:
  232.  
  233.    File Extension:  Enter the three digit file extension of files that the
  234.                     archive utility creates, ie.  ZIP for Pkzip, ARJ for
  235.                     Arj.
  236.  
  237.      Pack command:  Enter the Dos command line to create an archive of
  238.                     this type.  Use the @ symbol to indicate the
  239.                     filename.  Labtest will replace the @ with the
  240.                     filename.
  241.  
  242.    Unpack command:  Enter the Dos command line to unpack an archive of
  243.                     this type.  Use the @ symbol to indicate the
  244.                     filename.  Labtest will replace the @ with the
  245.                     filename.
  246.  
  247.      Scan utility:  Enter the Dos command line to initiate the virus
  248.                     scanner.  Place the @ symbol where Labtest should
  249.                     substitute the filename.
  250.  
  251. Convert archives to:  Enter the three letter file extension of your
  252.                       preferred archive type.  Labtest will use the
  253.                       appropriate packing command to convert your
  254.                       uploads to this type.
  255.  
  256.     Note that Labtest comes preconfigured for 6 of the most popular
  257.     archive utilities and for McAfee & Associate's VirusScan program.
  258.  
  259.  
  260. If you make a mistake entering any information, you may back up using the
  261. UpArrow key or ShiftTab.  You can also use your mouse to move around the
  262. prompts.  Press ESC if you wish to cancel the changes.  Note:  If you press
  263. ESC, your changes will be ignored and the program will exit.  When you are all
  264. finished, press F10 or enter at the last prompt to save your setup.
  265.  
  266. Running Labtest
  267. ──────────────────────────────────────────────────────────────────────────────
  268.  
  269. Command line options:
  270.  
  271.     /L    Local mode.  Labtest will not look for a door information
  272.           file.  This is useful for performing maintenance when the BBS is
  273.           offline.  If you were to run Labtest in an event, use this
  274.           switch.
  275.  
  276.     /O    Override.  Labtest will ignore files that were previously
  277.           processed unless you use this switch.  It is recommended that
  278.           this switch be used on your command line when Labtest is
  279.           running under the BBS.  Some industrious user may try to use
  280.           this feature to bypass Labtest's functions.
  281.  
  282.  /NOSCAN  Causes Labtest to disable virus scanning.  Useful only in
  283.           Local mode when you only want to convert archives
  284.  
  285.     /N<#> Node ID.  Tells Labtest which node it is being run on. Labtest
  286.           will look for the /N<#> in the LABTEST.NOD file and attempt to
  287.           locate the door information files in the corresponding
  288.           directory. Note:  Even though the /N seems to only deal with
  289.           multi node systems, it is very important that you set up at
  290.           least 1 node for your single line system.  Just specify the
  291.           path to the door information files in Labtest Node Manager.
  292.  
  293. To run Labtest, you must have a fossil driver installed.  If you want to run
  294. Labtest in local mode, you will still need a fossil driver, but you should use
  295. the /L switch to override the reading of the door information file.
  296.  
  297. Labtest will read the commandline to fetch the file names to be processed. 
  298. Valid filenames include:
  299.  
  300.   Wildcards (*.*, *.ZIP, etc..)
  301.   One or more filenames (ie C:\BBS\UPLOADS\NEWFILE.ZIP)
  302.  
  303. You can mix and match any of the above.  You can even have multiple wildcards,
  304. like C:\BBS\*.* C:\BBS\UPLOADS\*.* C:\MODEM\DOWNLOAD\*.ARJ, etc..
  305.  
  306. Note:  When using wildcards Labtest will only process those files that were
  307. not previously processed by Labtest.  Labtest keeps track of which files have
  308. been already processed.  You may force Labtest to process all files by using
  309. the /O (Override) command line switch.  Using the /O switch is not
  310. recommended in conjunction with a wildcard.  When Labtest detects a
  311. wildcard, like *.*, it tells Labtest to process ALL files in the
  312. specified directory.  When Labtest processes a file and rearchiving is
  313. enabled, the newly created file will appear at the end of the DOS
  314. directory.  So, when Labtest reaches this new file (which had just been
  315. processed), it will process it again because of the Override command.
  316. Override is useful when rearchiving is not enabled or on single files.
  317.  
  318. To run Labtest as a nightly event in your BBS, install Labtest in your
  319. system's event handler:
  320.  
  321.                                           \/==Local Mode!
  322. C:\LABTEST\LABTEST.EXE C:\BBS\UPLOADS\*.* /L
  323.  
  324. The above line would cause Labtest to process any 'new' files in the
  325. upload directory.
  326.  
  327. Many BBS software packages have the option for an external upload scanner. 
  328. For example, in Remote Access v. 2.00, use the option External Scan Program,
  329. and use the following command line:
  330.  
  331.      *C /C C:\LABTEST\LABTEST.BAT @ /O *M
  332.  
  333.  (When using with Remote Access 2.00, you must run Labtest from a batch
  334.   file in order to convert the new Exitinfo.bbs format to the RA 1.11
  335.   format.  Use the included EXITINFO.BBS conversion utilty.)
  336.  
  337. For Wildcat systems, see the enclosed SCANFILE.BAT to run Labtest from
  338. Wildcat.  The correct command line for a Wildcat system is:
  339.  
  340.     C:\WC30\LABTEST.EXE /N%WCNODEID% /O %1
  341.  
  342. For most other BBS programs, simply substitute the @ with the full path and
  343. file name of the user's upload.  The *M is a Remote Access specific command
  344. that forces Remote Access to swap out of memory.
  345.  
  346. The important thing to remember is to ensure that your BBS software will swap
  347. itself out of memory to give room for the unarchiving utilities.
  348.  
  349. Or, if you need to use a batch file, (for Remote Access version 2.00 users,
  350. you must use an EXITINFO.BBS conversion utility.  One such program is included
  351. with Labtest.  You would run the EXITINFO.BBS conversion program in the batch
  352. file just before running Labtest.)  You may substitute the appropriate command
  353. to run a batch file.  Then, in your batch file, you would run Labtest as
  354. follows:
  355.  
  356.     C:\LABTEST\LABTEST.EXE %1
  357.  
  358. Wildcat automatically detects the file called SCANFILE.BAT and will run
  359. this batch file after each upload.  An example SCANFILE.BAT is included
  360. in this archive.  Note:  The Wildcat user's manual warns against moving
  361. an uploaded file or changing the name of the file during the scan
  362. process.  It has not been determined exactly what happens when the file
  363. Wildcat expects to see is not there anymore because it was converted or
  364. moved to the badfiles directory.  The options to convert and/or move
  365. files out of the Wildcat upload directory are completely up to you.
  366.  
  367. Each time Labtest processes a file, it will attempt to detect the archive
  368. type.  Once the archive type has been determined, the file will then be
  369. unpacked completely. Then, McAfee's VirusScan will be scan each of the
  370. executable files.  If the scan was successful and no problems were reported,
  371. the archive will (optionally) be converted to the type specified in Labsetup. 
  372. Last but not least, if the new archive is a ZIP or ARJ format file, a file
  373. comment will be added to the archive, provided one is specified in Labsetup. 
  374.  
  375. If a problem is detected by Labtest, the user will be notified that the file
  376. did not pass and Labtest will then move the file to the directory specified
  377. for Bad Files in Labsetup.  No other action will be taken on bad archives.
  378.  
  379. A note on file descriptions
  380. ──────────────────────────────────────────────────────────────────────────────
  381.  
  382. Labtest was designed to be flexible but not 'all things to all people.' 
  383. Labtest will attempt to locate a FILE_ID.DIZ file in the user's upload.  If
  384. one exists, it will be copied out of the temporary directory.  Then, when
  385. Labtest is finished with the file, it will exit to dos and run the batch file
  386. named in Labsetup.  Here, you may run a utility which will update your file
  387. database or do whatever.  Labtest will pass the old archive name, the new
  388. archive name, and the full path and file name of the FILE_ID.DIZ file if one
  389. was found.  This way, you can run a utility which will add the file to your
  390. file database using the description in FILE_ID.DIZ.  For systems that
  391. use FILES.BBS, Labtest will always replace the user's comments with the
  392. contents of a FILE_ID.DIZ file if one was found.  Also, Labtest will
  393. insert the picture resolution of a GIF file.  The resolution is made up
  394. of the screen size in pixels and the number of colors.  Otherwise, you
  395. will have to go into your file system and change the name to the new
  396. archive name.  Labtest is intended to be more of a generic upload
  397. processor, giving it appeal to a variety of BBS software.  Therefore,
  398. routines were left out that would automate the process of updating
  399. various system files.  This chore is left up to the Sysop.  If you don't
  400. like that idea, the I suggest you leave the Preferred Archive field
  401. blank in Labsetup, thus turning off archive conversion.
  402.  
  403. Suggestions and Comments
  404. ──────────────────────────────────────────────────────────────────────────────
  405.  
  406. Software Solutions would like very much to here from you!  Please send your
  407. suggestions and comments to:
  408.  
  409. Software Solutions
  410. PO Box 1233
  411. Lemoore, CA 93245-1233
  412. Fido Address: 1:214/54
  413.  
  414. We a particularly interested in knowing what type of BBS software you are
  415. using and how you think we could improve on Labtest.  Additionally, if you
  416. have thorough descriptions of you BBS's data file formats, we would like very
  417. much to include them into Labtest so the program would update your file
  418. database to indicate the new file name.  
  419.  
  420. Why so cheap?
  421. ──────────────────────────────────────────────────────────────────────────────
  422.  
  423. Software Solutions is a private enterprise owned solely by one person with a
  424. goal:  To write quality software that anyone can afford.  Too many times has
  425. there been a need for a utility and the one program that seemed to be 'the
  426. one' cost way too much money.  The price of software these days seems to have
  427. gone crazy.  While keeping the price at $20, we hope to get a good response
  428. from Sysops everywhere.  And at the same time, we are contributing to the
  429. proliferation of quality shareware for a very reasonable price.  
  430.  
  431. Technical notes
  432. ──────────────────────────────────────────────────────────────────────────────
  433.  
  434. Labtest 2.0 was written entirely in Turbo C++ version 3.0.  Door
  435. interface routines provided by OpenDoors 4.1 by Brian Pirie (all rights
  436. reserved).
  437.  
  438. Labtest operates by shelling to the user defined archive and scanning
  439. programs.  If the archive programs return an errorlevel of 0, Labtest
  440. assumes the operation was successful.  If any other errorlevel is
  441. returned by the software, then the archive is tagged as 'bad'.  Note
  442. however that utilities like PKZIP will return an errorlevel of non-zero
  443. if you did not have enough memory or disk space to unpack the archive.
  444. Labtest will always log the errorlevel reported by an archive utility
  445. and the scan utility.  Consult the documentation on the utilities you
  446. decide to use with Labtest for specifics on errorlevels.  Labtest will
  447. run the virus scanning utility once for each executable file extracted
  448. from the archive.  This method was chosen over the shelling once and
  449. scanning a whole directory method so we could inform the user of which
  450. file failed the scan.  Also, Labtest will log the specific filename of
  451. the file which failed the scan.
  452.  
  453. After a file is successfully unpacked, scanned and repacked, Labtest
  454. will throw in your ZIP/ARJ comment (if defined in Labsetup).  Last but
  455. not at all least, Labtest will shell to the batch file defined in
  456. Labsetup.  Labtest will pass this batch file three file names.  First is
  457. the OLD_FILE_NAME.  This is the name of the original file uploaded by
  458. the user (or in local mode, found in the directory).  The second file
  459. name is the NEW_FILE_NAME after the conversion process.  And lastly, the
  460. full path and filename of the FILE_ID.DIZ file if one existed in the
  461. archive.  These things given, one could possibly update their file
  462. database:
  463.  
  464. Consult the documentation on your BBS software to see how you can use
  465. these three filenames to update your file database.
  466.  
  467.  
  468.