home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
bbs
/
labtest2.zip
/
LABTEST.DOC
< prev
next >
Wrap
Text File
|
1993-07-10
|
24KB
|
468 lines
┌───────────────────────────────────────────────┐
│ Labtest 2.0 - The Definitive Upload Processor │█
└───────────────────────────────────────────────┘█
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Copyright (c) 1993
Mark Williamson
Software Solutions
PO Box 1233
Lemoore, CA 93245-1233
Introduction
─────────────────────────────────────────────────────────────────────────────
┌───────────────────────┐
│ What does Labtest do? │█
└───────────────────────┘█
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
■ Scan the user's uploads (unarchiving as necessary)
■ Rearchive the file to the Sysop's preferred format
■ Add a .ZIP or .ARJ file comment
■ Detect FILE_ID.DIZ file (if one exists) and reserve it for
use by the user-defined batch file. Inserts the contents
of FILE_ID.DIZ into FILES.BBS
■ Update the FILES.BBS file to reflect the new file name
■ Provide the user with a graphical depiction of the progress
■ Optionally drop to dos after each file is successfully processed to run
a custom batch file.
■ Create SCANFILE.BAD for Wildcat 3.x systems in the event of a bad
archive.
■ Process entire directories, unpacking/scanning/repacking each file.
■ Ignore previously processed files, so you can run Labtest as a
maintenance item. User the /O override command to process
previously processed files.
■ Detect GIF resolution and insert into FILES.BBS comments
■ Auto-magically update Remote Access 2.00 file database entries
with new filename (if converted), description from FILE_ID.DIZ
(if one exists) and file size.
■ Multi node configurable, use the /N node switch.
Shareware Notice
──────────────────────────────────────────────────────────────────────────────
Labtest 2.0 is a shareware product. We at Software Solutions believe every
computer user should be able to try a program for a limited time before they
make a decision to purchase it. Under this concept, you, the user, agrees to
register or discontinue use of Labtest after the 30 day trial period. Labtest
will not stop working and is not 'crippled' in any way. The unregistered,
shareware version of Labtest is fully functional. Upon registering Labtest,
the registration message will disappear and you will have your name and BBS
name prominently displayed for all of your user's to read.
How to Register Labtest
──────────────────────────────────────────────────────────────────────────────
You are encouraged to register Labtest 2.0 for the simple fact that it costs
only $20 to do so and will keep the author happily pounding away at the
keyboard improving and upgrading it's capabilities. With your registration
you will receive a registration key which will turn off the bothersome Please
Register Me message and enable the usage log feature of Labtest.
Additionally, you will be entitled to free upgrades until the end of time. At
the end of this document is the registration form. Fill it out and mail it
with your $20 to the address listed on the form. You can get your
registration key by return mail or a call to your BBS, whichever you specify.
Installation
──────────────────────────────────────────────────────────────────────────────
System Requirements
Labtest will run on any IBM compatible 286/386/486 computer with
at least 640k ram.
Additional support programs required to run Labtest are:
A Virus Scan program (user definable)
Upto six Archive utilities (user definable)
EXITINFO.EXE (For Remote Access 2.00 only - included in this
archive)
BNU or X00 Fossil driver.
Additionally, Labtest requires the use of Ansi graphics on both
the host computer and the remote terminal.
Note, when using McAfee's VirusScan, you will need 330k of memory
(plus that used by Labtest) to scan the files.
Labtest is designed primarily as a utility for System Operators (Sysops) to
protect their BBS's from user's who, knowingly or unknowingly, upload an
archived file that is either corrupted or one of the files contained in the
archive is infected by a computer virus.
When running Labtest on your BBS, you must ensure that a fossil driver is
already loaded. Labtest uses the fossil driver to communicate with the modem.
To install Labtest in your BBS, there are several steps to take to ensure a
smooth installation. Some of these steps depend entirely on the BBS software
you are using.
Labtest recognizes door information files produced by almost all major BBS
software.
The door information files recognized are:
DOOR.SYS
DORINFO?.DEF
CALLINFO.BBS
EXITINFO.BBS (Remote Access version 1.11!)
Use supplied EXITINFO conversion utility for RA 2.00
CHAIN.TXT
SFDOORS.DAT
The first step to installing Labtest is to decide where to put the Labtest
files. This is entirely up to you. You may place them into the BBS
software's base directory, or into a directory of it's own. In order
for Labtest to locate it's configuration files, it is suggested that
Labtest be placed in the DOS path. This will allow you to run Labtest
from any directory on your system.
The next step is to run LABSETUP. Labsetup will write the configuration file
which Labtest will read each time it is run (Local and BBS modes).
[ Files and Paths ]
Main BBS Dir: Enter the full path name to your BBS home Directory. Note
that this is NOT necessarily the node directory. For
Wildcat users, this is where Labtest writes SCANFILE.BAD
for bad archives. For Remote Access users, this is where
your CONFIG.RA and FILES.RA is located.
Work dir: This is the directory where files will be unpacked to.
This directory will be wiped clean after each use of
Labtest so it is best not to use this directory for
anything else other than Labtest.
Badfiles Dir: This directory will be used to store archive files that
failed the test. These files will not be converted.
For Wildcat users, Labtest will not move bad files.
Wildcat will detect the presence of SCANFILE.BAD in the
home directory and will flag the file as bad in the
database, preventing it from being listed or
downloaded.
Logfile name: Specify the complete path and filename (with extension)
of the file that Labtest should write the activity to.
Labtest supports a Front Door style logfile. You may
specify the same log file that your BBS uses if you
wish.
Comment file: This is an ascii text file that Labtest will use as an
ARJ or ZIP archive comment. This is useful especially
for advertising your BBS.
Batch File: This is the full path\file name of a batch file you want to
run after each archive file is processed. Three parameters
will be passed to this file: Old_File_Name, New_File_Name,
and the path\filename to the FILE_ID.DIZ if one was found.
This batch file can be used to run a file database update
utility that will import the file description and name to
your database (for Wildcat, Telegard, Remote Access, and
others that don't use FILES.BBS).
[ BBS Info ]
System name: Enter the name of your favorite bbs - yours!
Sysop name: Enter your name as it will appear on your registration.
This information is used to calculate your personal
registration number, so it is vital that you enter it
precisely as you will on your registration form. This
is case sensitive, so pay particular attention to
upper/lower case.
Labtest key #: This is your personal registration number. If you
haven't registered Labtest, this should be a zero. No
number will work except the one you get by registering
Labtest.
Node Setup: Entering this field will bring up a window where you
must enter information concerning your BBS nodes. If
you are running a single line system, don't worry about
this. However, if you are running a single line system
and your BBS stores the door information files
somewhere other than the main bbs directory, enter a 1
in the node # column and the path to the door
information files in the next column. Use this same
method for entering up to ten nodes for your multinode
system.
BBS Software: Entering this field will pop up a menu of supported BBS
systems. Move the highlight bar with the arrow keys
and hit enter on your BBS type. If your system is not
on the menu, we suggest you select FILES.BBS so that
Labtest will be sure to update the description file.
If you would like to see Labtest directly support your
type of BBS, send us as much information on your system
and we will be glad to update Labtest.
[ RA 2.00 Info ]
If you selected RA 2.00 as your BBS software, Labsetup will ask you
where your RA 2.00 file databases are stored. This is the path to
your file database as you entered it into RACONFIG. Usually this is
C:\RA\FDB. Note that RA 2.00 divides the file database into three
files per area, the header file, the index file and the text file.
Labtest will update each of these files to reflect the conversion (if
the file was converted) and the FILE_ID.DIZ description. Labtest
will use the directory where the archive being check resides to
search for the file area number. From there, it will search the file
database for the file name to be updated.
[ Wildcat Info ]
If you selected Wildcat 3.x as your BBS software, Labsetup will
display a help screen detailing information you need to update your
Wildcat ALLFILES.DAT file. You will need the program WCFILES to
update your database with the FILE_ID.DIZ contents. This may be ran
from the custom batch file which Labtest will execute after each file
is processed. Consult your Wildcat documentation for details on how
to run WCFILES from the command line. See the included batch file
WCUPDATE.BAT to import the long file descriptions into Wildcat.
Please note that you will have to manually rename the file in the
file database since WCFiles does not do this from the command line.
[ Archivers ]
In this menu you will define up to 6 pack/unpack programs. Three
things are required for each archive type:
File Extension: Enter the three digit file extension of files that the
archive utility creates, ie. ZIP for Pkzip, ARJ for
Arj.
Pack command: Enter the Dos command line to create an archive of
this type. Use the @ symbol to indicate the
filename. Labtest will replace the @ with the
filename.
Unpack command: Enter the Dos command line to unpack an archive of
this type. Use the @ symbol to indicate the
filename. Labtest will replace the @ with the
filename.
Scan utility: Enter the Dos command line to initiate the virus
scanner. Place the @ symbol where Labtest should
substitute the filename.
Convert archives to: Enter the three letter file extension of your
preferred archive type. Labtest will use the
appropriate packing command to convert your
uploads to this type.
Note that Labtest comes preconfigured for 6 of the most popular
archive utilities and for McAfee & Associate's VirusScan program.
If you make a mistake entering any information, you may back up using the
UpArrow key or ShiftTab. You can also use your mouse to move around the
prompts. Press ESC if you wish to cancel the changes. Note: If you press
ESC, your changes will be ignored and the program will exit. When you are all
finished, press F10 or enter at the last prompt to save your setup.
Running Labtest
──────────────────────────────────────────────────────────────────────────────
Command line options:
/L Local mode. Labtest will not look for a door information
file. This is useful for performing maintenance when the BBS is
offline. If you were to run Labtest in an event, use this
switch.
/O Override. Labtest will ignore files that were previously
processed unless you use this switch. It is recommended that
this switch be used on your command line when Labtest is
running under the BBS. Some industrious user may try to use
this feature to bypass Labtest's functions.
/NOSCAN Causes Labtest to disable virus scanning. Useful only in
Local mode when you only want to convert archives
/N<#> Node ID. Tells Labtest which node it is being run on. Labtest
will look for the /N<#> in the LABTEST.NOD file and attempt to
locate the door information files in the corresponding
directory. Note: Even though the /N seems to only deal with
multi node systems, it is very important that you set up at
least 1 node for your single line system. Just specify the
path to the door information files in Labtest Node Manager.
To run Labtest, you must have a fossil driver installed. If you want to run
Labtest in local mode, you will still need a fossil driver, but you should use
the /L switch to override the reading of the door information file.
Labtest will read the commandline to fetch the file names to be processed.
Valid filenames include:
Wildcards (*.*, *.ZIP, etc..)
One or more filenames (ie C:\BBS\UPLOADS\NEWFILE.ZIP)
You can mix and match any of the above. You can even have multiple wildcards,
like C:\BBS\*.* C:\BBS\UPLOADS\*.* C:\MODEM\DOWNLOAD\*.ARJ, etc..
Note: When using wildcards Labtest will only process those files that were
not previously processed by Labtest. Labtest keeps track of which files have
been already processed. You may force Labtest to process all files by using
the /O (Override) command line switch. Using the /O switch is not
recommended in conjunction with a wildcard. When Labtest detects a
wildcard, like *.*, it tells Labtest to process ALL files in the
specified directory. When Labtest processes a file and rearchiving is
enabled, the newly created file will appear at the end of the DOS
directory. So, when Labtest reaches this new file (which had just been
processed), it will process it again because of the Override command.
Override is useful when rearchiving is not enabled or on single files.
To run Labtest as a nightly event in your BBS, install Labtest in your
system's event handler:
\/==Local Mode!
C:\LABTEST\LABTEST.EXE C:\BBS\UPLOADS\*.* /L
The above line would cause Labtest to process any 'new' files in the
upload directory.
Many BBS software packages have the option for an external upload scanner.
For example, in Remote Access v. 2.00, use the option External Scan Program,
and use the following command line:
*C /C C:\LABTEST\LABTEST.BAT @ /O *M
(When using with Remote Access 2.00, you must run Labtest from a batch
file in order to convert the new Exitinfo.bbs format to the RA 1.11
format. Use the included EXITINFO.BBS conversion utilty.)
For Wildcat systems, see the enclosed SCANFILE.BAT to run Labtest from
Wildcat. The correct command line for a Wildcat system is:
C:\WC30\LABTEST.EXE /N%WCNODEID% /O %1
For most other BBS programs, simply substitute the @ with the full path and
file name of the user's upload. The *M is a Remote Access specific command
that forces Remote Access to swap out of memory.
The important thing to remember is to ensure that your BBS software will swap
itself out of memory to give room for the unarchiving utilities.
Or, if you need to use a batch file, (for Remote Access version 2.00 users,
you must use an EXITINFO.BBS conversion utility. One such program is included
with Labtest. You would run the EXITINFO.BBS conversion program in the batch
file just before running Labtest.) You may substitute the appropriate command
to run a batch file. Then, in your batch file, you would run Labtest as
follows:
C:\LABTEST\LABTEST.EXE %1
Wildcat automatically detects the file called SCANFILE.BAT and will run
this batch file after each upload. An example SCANFILE.BAT is included
in this archive. Note: The Wildcat user's manual warns against moving
an uploaded file or changing the name of the file during the scan
process. It has not been determined exactly what happens when the file
Wildcat expects to see is not there anymore because it was converted or
moved to the badfiles directory. The options to convert and/or move
files out of the Wildcat upload directory are completely up to you.
Each time Labtest processes a file, it will attempt to detect the archive
type. Once the archive type has been determined, the file will then be
unpacked completely. Then, McAfee's VirusScan will be scan each of the
executable files. If the scan was successful and no problems were reported,
the archive will (optionally) be converted to the type specified in Labsetup.
Last but not least, if the new archive is a ZIP or ARJ format file, a file
comment will be added to the archive, provided one is specified in Labsetup.
If a problem is detected by Labtest, the user will be notified that the file
did not pass and Labtest will then move the file to the directory specified
for Bad Files in Labsetup. No other action will be taken on bad archives.
A note on file descriptions
──────────────────────────────────────────────────────────────────────────────
Labtest was designed to be flexible but not 'all things to all people.'
Labtest will attempt to locate a FILE_ID.DIZ file in the user's upload. If
one exists, it will be copied out of the temporary directory. Then, when
Labtest is finished with the file, it will exit to dos and run the batch file
named in Labsetup. Here, you may run a utility which will update your file
database or do whatever. Labtest will pass the old archive name, the new
archive name, and the full path and file name of the FILE_ID.DIZ file if one
was found. This way, you can run a utility which will add the file to your
file database using the description in FILE_ID.DIZ. For systems that
use FILES.BBS, Labtest will always replace the user's comments with the
contents of a FILE_ID.DIZ file if one was found. Also, Labtest will
insert the picture resolution of a GIF file. The resolution is made up
of the screen size in pixels and the number of colors. Otherwise, you
will have to go into your file system and change the name to the new
archive name. Labtest is intended to be more of a generic upload
processor, giving it appeal to a variety of BBS software. Therefore,
routines were left out that would automate the process of updating
various system files. This chore is left up to the Sysop. If you don't
like that idea, the I suggest you leave the Preferred Archive field
blank in Labsetup, thus turning off archive conversion.
Suggestions and Comments
──────────────────────────────────────────────────────────────────────────────
Software Solutions would like very much to here from you! Please send your
suggestions and comments to:
Software Solutions
PO Box 1233
Lemoore, CA 93245-1233
Fido Address: 1:214/54
We a particularly interested in knowing what type of BBS software you are
using and how you think we could improve on Labtest. Additionally, if you
have thorough descriptions of you BBS's data file formats, we would like very
much to include them into Labtest so the program would update your file
database to indicate the new file name.
Why so cheap?
──────────────────────────────────────────────────────────────────────────────
Software Solutions is a private enterprise owned solely by one person with a
goal: To write quality software that anyone can afford. Too many times has
there been a need for a utility and the one program that seemed to be 'the
one' cost way too much money. The price of software these days seems to have
gone crazy. While keeping the price at $20, we hope to get a good response
from Sysops everywhere. And at the same time, we are contributing to the
proliferation of quality shareware for a very reasonable price.
Technical notes
──────────────────────────────────────────────────────────────────────────────
Labtest 2.0 was written entirely in Turbo C++ version 3.0. Door
interface routines provided by OpenDoors 4.1 by Brian Pirie (all rights
reserved).
Labtest operates by shelling to the user defined archive and scanning
programs. If the archive programs return an errorlevel of 0, Labtest
assumes the operation was successful. If any other errorlevel is
returned by the software, then the archive is tagged as 'bad'. Note
however that utilities like PKZIP will return an errorlevel of non-zero
if you did not have enough memory or disk space to unpack the archive.
Labtest will always log the errorlevel reported by an archive utility
and the scan utility. Consult the documentation on the utilities you
decide to use with Labtest for specifics on errorlevels. Labtest will
run the virus scanning utility once for each executable file extracted
from the archive. This method was chosen over the shelling once and
scanning a whole directory method so we could inform the user of which
file failed the scan. Also, Labtest will log the specific filename of
the file which failed the scan.
After a file is successfully unpacked, scanned and repacked, Labtest
will throw in your ZIP/ARJ comment (if defined in Labsetup). Last but
not at all least, Labtest will shell to the batch file defined in
Labsetup. Labtest will pass this batch file three file names. First is
the OLD_FILE_NAME. This is the name of the original file uploaded by
the user (or in local mode, found in the directory). The second file
name is the NEW_FILE_NAME after the conversion process. And lastly, the
full path and filename of the FILE_ID.DIZ file if one existed in the
archive. These things given, one could possibly update their file
database:
Consult the documentation on your BBS software to see how you can use
these three filenames to update your file database.