home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 8
/
CDASC08.ISO
/
VRAC
/
LABTEST.ZIP
/
LABTEST.DOC
< prev
next >
Wrap
Text File
|
1993-08-15
|
28KB
|
577 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
■ Optionally drop to dos after each file is successfully processed to run
a custom batch file.
■ 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
■ 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), size, description from FILE_ID.DIZ
(if one exists) and/or GIF resolution.
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 $10 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 $10 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)
Up to six Archive utilities (user definable)
EXITINFO.EXE (For Remote Access 2.00 only - included in this
archive)
BNU or X00 Fossil driver. Required even when run in local mode.
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 the supplied Exitinfo.bbs converter 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 (usually the \WC30 directory). For Remote
Access users, this is where your CONFIG.RA and FILES.RA are
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.
BBS Software: Entering this field will pop up a menu of supported BBS
systems. Move the highlight bar with the arrow keys
to this field and a menu will pop up. 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
for the path of your file database. 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.
Each of these files will be located in a separate directory. The
default for Remote Access 2.00 looks something like this:
C:\RA\FDB\HDR <- Where the header files are kept
C:\RA\FDB\IDX <- Where the index files are kept
C:\RA\FDB\TXT <- Where the description files are kept
Note that you will only enter the BASE directory. Labtest will look
for the HDR, IDX, and TXT directories in the BASE directory.
Labtest will update each of these files to reflect the conversion (if
the file was converted), the FILE_ID.DIZ description, the GIF
resolution if applicable and the new file size (if converted).
[ Wildcat Info ]
If you selected Wildcat 3.x as your BBS software, Labsetup will
display a help screen detailing information you need to update the
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.
A sample of the WCFILE syntax for WC3+ sysops follows.
CD \WC30
WCFILE /D:C:\FILES\UPDN\FILES.BBS /P:1,12,14,80 /A:29 /T /E
^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^
| |
Upload directory Upload File Area in Makewild
Please note: Since Wildcat doesn't normally utilize the FILES.BBS
description file, there are some things to consider. Labtest will
only write a description to this file if there is a FILE_ID.DIZ.
Labtest will always attempt to rename the file to reflect the
conversion process. If the file is not found in the FILES.BBS and
there was no FILE_ID.DIZ, nothing will be written to the FILES.BBS.
[ 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. Labtest will append the filename to
the end of the command line.
Unpack command: Enter the Dos command line to unpack an archive of
this type. Labtest will append the filename to
the end of the command line.
Scan utility: Enter the Dos command line to initiate the virus
scanner. Labtest will append the filename to
the end of the command line.
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
──────────────────────────────────────────────────────────────────────────────
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.
This method is recommended if your BBS software does not directly
support an external upload scanner. (ie Remote Access 1.11).
Many BBS software packages have the option for an external upload scanner.
Also, many 'File Transfer Door' programs provide this ability. Consult
the docs for the particular system you are using. 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 @ *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)
Sample LABTEST.BAT:
EXITINFO
LABTEST %1 /O <- Always use the /O when running Labtest online!
EXITINFO /NEW
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.
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.
Sample SCANFILE.BAT for Multiline WildCat BBS. Please add a fossil
driver command to this batch file if it is not already loaded by your
system settings.
ECHO OFF
LABTEST %1
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.
For Wildcat systems, Labtest will not move the file, but will create the
file SCANFILE.BAD which is used by Wildcat to flag the file as bad.
Running Labtest in a Multi-Node Environment
──────────────────────────────────────────────────────────────────────────────
Labtest will search for the door information file (ie DOOR.SYS,
DORINFOx.DEF) in the current directory. For Multi-Node systems, it is
important to run Labtest from your system's Node Directory. As an
alternative, you may pass Labtest the path the appropriate door
information file. Use the /C switch to tell Labtest where to look.
Note that this should include the drive and path but not a filename! For
example:
(Remote Access 2.00)
In RACONFIG, use the following commandline:
C:\RA\LABTEST.BAT @ /CC:\BBS\NODE*N
^^^ no space between /C and the path!
The *N will append the node number to the path. The above command
line would expand to /CC:\BBS\NODE1 for node 1.
Or, instead of using the *N, you could just specify the whole path to
the DORINFOx.DEF/EXITINFO.BBS files.
Optionally, you could simply copy the DOOR.SYS file that Remote Access
creates, over to the LABTEST directory and run Labtest from it's own
directory. Placement of the door information files may required some
trial and error until the new EXITINFO.BBS structures are incorporated
into Labtest.
(Wildcat 3.x)
In SCANFILE.BAT, run Labtest as follows:
C:\WC30\LABTEST %1 /CC:\WC30\WORK\NODE%WCNODEID% /O
Of course, replace the drive/path statements with your system's setup!
Command Line Options
──────────────────────────────────────────────────────────────────────────────
The follow is a description of valid command line options which you can
better control Labtest's performance:
/L Causes Labtest to run in 'local' mode. Keep in mind
however, that a fossil driver is still required. In Local
Mode, Labtest will not attempt to read a door information file.
/NOSCAN When this command is given, Labtest will not run the virus
scanner on any file during the current session. Note this
is only useful when you just want to convert your files to
one format. Otherwise, this is not recommended.
/O This is the Override command. Labtest will normally
process only those files not previously proceseed. Using
this command, you will force Labtest to ignore it's own
time stamp feature. This is highly recommended while
running under the BBS system. An industrious person may
determine the special file stamping and attempt to trick
Labtest. This will ensure that this will never happen.
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, size and description.
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 $10, 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 shelling once and
scanning a whole directory so we could inform the user and the sysop of
which file failed the scan. Also, Labtest will log the specific
filename 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.
The Beta Team Players
──────────────────────────────────────────────────────────────────────────────
Now for some recognition! Before Labtest was released, I posted a
message asking for volunteers to act as beta testers. I received an
overwhelming response. The following people have my utmost
appreciation for all the hours they put into testing this program and
helping make it as solid as possible.
Ronnie Albernathy Wildcat 3.9M
(1:151/601)
Ronnie's Private BBS
Many thanks to Ronnie for his help in writing the documentation for
where Wildcat specifics were needed. He smoothed up a lot of rough
areas and his help was greatly appreciated!
Thanks to all of these guys who kept me busy at the keyboard fixing
things and improving things!
Steve Joselson Remote Access 2.00g1, 3 lines
(1:3630/40) DesqView 2.41
Qemm 6.03
Dos 3.3.
Phillip Taylor IBM 386 Sx 20 Mhz
(1:109/200) 1.2 Gig Hard Drive
VA Suburb Lcl Hub Line 1 (703)-573-2246 14.4 modem
with V32b and V42b.
Line 2 (703)-573-5606 9600 baud.
Qemm 6.0
Desqview 2.45
Remote Access 1.11
John Shepard Remote Access 2.00g1
(1:388/40)
Livewire BBS
Support and Future Versions
──────────────────────────────────────────────────────────────────────────────
Software Solutions BBS is the official support site for Labtest. All
future versions of Labtest will be available on Software Solutions BBS.
Labtest may be freq'd by using the magic name LABTEST or you may log
onto the BBS and download the latest version.
Additionally, if you are running Fido Net mail, you may set up your
system for the Labtest echo, originating from 1:214/54. Tag name is
LABTEST. Send a netmail message to 1:214/54, indicate your password and
archive preference. Your system will then be placed on the export list.
From there, just poll us and you'll get the latest tips, user comments
and suggestions. It's also an excellent way to keep in touch with us
and Labtest users.
Software Solutions
1:214/54
BBS: (209)997-0224
PO Box 1233
Lemoore, CA 93245-1233