home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
BBS_UTIL
/
LUPS150B.ZIP
/
LOOPUPS.DOC
< prev
next >
Wrap
Text File
|
1994-01-29
|
19KB
|
383 lines
╔════════════════════════════════════════════════════════════════╗
║ LOOPUPS - Complete Upload Processing for RBBS/STUNY. ║
╟────────────────────────────────────────────────────────────────╢
║ Support board: THE LOOP BBS ║
║ Node 1: (314) 862-1253 (Zoom 2400-14.4 V.32/V.42bis) ║
║ Node 2: (314) 862-1261 (Zoom 2400-14.4 V.32/V.42bis) ║
╚════════════════════════════════════════════════════════════════╝
LOOPUPS copyright (C) 1993 by Chris Quinn. All rights reserved.
---------------------------------------------------------------------------
DISCLAIMER OF WARRANTIES AND FAIR WARNING
---------------------------------------------------------------------------
THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The entire risk of
all damages resulting from use of this software, including the cost of all
necessary remedies, lies with the user of this software and not the author
of LOOPUPS.
During normal operation, LOOPUPS mass deletes all files in the work
directory specified by the sysop and may alter the ZIP, ARJ and LZH files it
processes. Every precaution has been taken to assure that LOOPUPS does not
inadvertently harm other files. However, for safety's sake you are urged to
verify that LOOPUPS functions properly with your particular configuration
before permanently installing the program.
---------------------------------------------------------------------------
WHAT LOOPUPS DOES (ER, IS SUPPOSED TO DO)
---------------------------------------------------------------------------
LOOPUPS is a comprehensive upload processor for RBBS/STUNY which is
executed from the RBBS/STUNY TEST.BAT and TESTC.BAT files. LOOPUPS was
written in Microsoft BASIC PDS 7.1 with help from Jeff Sumberg's QBSerial
v. 3.0 communication routines. The idea behind LOOPUPS comes largely from
Jeffrey Morley's excellent program, ZIPLAB Plus Generic, which the author
used for several weeks before setting out to create a more fully-featured
upload processor designed specifically for RBBS/STUNY.
LOOPUPS has the following features:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
o Support for ZIP, ARJ and LZH archive types.
o Detection and testing of unlimited ZIP, ARJ and LZH embedded archives.
o Archive integrity testing, including embedded archives.
o Rejection of sysop-defined file types, even within embedded archives.
o Virus scan of uploads and embedded archives with SCAN.EXE.
o FILE_ID.DIZ and DESC.SDI description file handling.
o Restriction of uploads by file date.
o Optional restriction of uploads to sysop-defined types.
o Removal of sysop-defined BBS comment files from archives.
o Insertion of BBS logo to ZIP and ARJ archives with external programs.
o Great, sysop-configurable ANSI interface.
o Text-only mode for non-ANSI terminals.
o Extensive status reporting to local monitor.
o Optional obnoxious audible status indicators.
o Extensive reporting and logging of all actions taken on uploads.
o Extensive error trapping, reporting and logging.
o Support for high-speed modems, non-standard COM ports & FOSSIL drivers.
o Complete sysop configuability.
o Optional failed test bypass for sysops.
---------------------------------------------------------------------------
WHAT LOOPUPS DOES NOT DO
---------------------------------------------------------------------------
LOOPUPS provides no support for processing of GIF files. Unless the
sysop configures LOOPUPS to reject GIFs, it simply ignores them. The
reasons for this are twofold: First, LOOPUPS was initially written for
use on THE LOOP BBS, where GIFs are not accepted for upload. Second, the
concerns underlying examination of GIF uploads are radically different from
those pertaining to archived uploads. In any event, GIFs can be easily
handled separately in the TESTx.BAT file (outside LOOPUPS), as illustrated
below.
This version of LOOPUPS does NOT operate with DOS v. 6.02.
---------------------------------------------------------------------------
WHAT IS NEEDED TO RUN LOOPUPS
---------------------------------------------------------------------------
The LOOPUPS distribution archive contains the following files:
o LOOPUPS.DOC This file (obviously).
o LOOPUPS.EXE LOOPUPS executable program file.
o LOOPUPS.ANS LOOPUPS ANSI screen output file.
o LOOP1.CFG Sample LOOPUPS configuration file for node 1.
o LOOP2.CFG Sample LOOPUPS configuration file for node 2.
o TEST.BAT Sample text-only RBBS/STUNY upload test batch file.
o TESTC.BAT Sample ANSI RBBS/STUNY upload test batch file.
o HISTORY.TXT LOOPUPS revision history (for the truly bored).
o REGISTER.TXT LOOPUPS registration form and instructions.
o FILE_ID.DIZ LOOPUPS upload description file.
The following files may be created by LOOPUPS:
o LOOPUPS.ERR LOOPUPS error log file.
o LOOPUPS.DAT LOOPUPS error and rejected file data file.
o ????????.??? Sysop defined upload log file.
LOOPUPS can be used only with RBBS v. 17.4 modified with the STUNY mods
package, release 0411 or later. In addition, LOOPUPS requires current
versions of the following programs, all of which are available on most BBS
systems, including THE LOOP BBS:
o SCAN.EXE (distributed as SCANVxxx.ZIP).
o PKZIP.EXE (distributed as PKZ2xxx.ZIP).
o PKUNZIP.EXE (distributed as PKZ2xxx.ZIP).
o ARJ.EXE (distributed as ARJ2xxx.ZIP).
o LHA.EXE (distributed as LHA2xx.ZIP).
o ZIPLOGO.EXE (optional ZIP comment program distributed as ZIPLOGO6.ZIP).
o ARJCMNT4.EXE (optional ARJ comment program distributed as ARJCMNT4.ZIP).
These programs were written by other authors and are not distributed with
LOOPUPS. You are strongly encouraged to register these excellent utilities
with their respective authors.
---------------------------------------------------------------------------
LOOPUPS INSTALLATION
---------------------------------------------------------------------------
The LOOPUPS Command Line:
~~~~~~~~~~~~~~~~~~~~~~~~~
LOOPUPS is designed to be executed from RBBS/STUNY's TEST.BAT and
TESTC.BAT files. The LOOPUPS command line syntax is as follows:
LOOPUPS [File] [Port] [Firstname] [Lastname] [Graphics] [Configfile]
[File] represents the path and filename of the file to test.
RBBS/STUNY passes this to TESTx.BAT as %1.
[Port] is the RBBS-style COM port (e.g. COM2), which RBBS/STUNY passes
to TESTx.BAT as %3.
[Firstname] denotes the users's first name, which RBBS/STUNY passes to
TESTx.BAT as %4.
[Lastname] represents the user's last name, which RBBS/STUNY passes to
TESTx.BAT as %5.
[Graphics] denotes the type of output LOOPUPS is to use. This should be
"ANSI" in TESTC.BAT and "TEXT" in TEST.BAT.
[Configfile] represents the name of the LOOPUPS configuration file to use.
This should be something like LOOP%node%.CFG, assuming the
%node% environment variable is used in your setup.
Examples:
~~~~~~~~~
In TEST.BAT: LOOPUPS %1 %3 %4 %5 TEXT LOOP%node%.CFG
In TESTC.BAT: LOOPUPS %1 %3 %4 %5 ANSI LOOP%node%.CFG
EXAMPLE TEST.BAT
~~~~~~~~~~~~~~~~
@echo off
REM RBBS/STUNY PASSES THE TEST FILE EXTENSION AS %6.
REM IF YOU WANT TO PROCESS GIFS SEPARATELY, UNREMARK THE NEXT LINE.
REM IF %6 == GIF GOTO GIFS
cd c:\loopups
C:\loopups\loopups.exe %1 %3 %4 %5 text loop%node%.cfg
cd c:\rbbs
GOTO LATER
:GIFS
REM Do your GIF file processing here, if applicable.
:LATER
seterror 0
EXAMPLE TESTC.BAT
~~~~~~~~~~~~~~~~~
@echo off
REM RBBS/STUNY PASSES THE TEST FILE EXTENSION AS %6.
REM IF YOU WANT TO PROCESS GIFS SEPARATELY, UNREMARK THE NEXT LINE.
REM IF %6 == GIF GOTO GIFS
cd c:\loopups
C:\loopups\loopups.exe %1 %3 %4 %5 ansi loop%node%.cfg
cd c:\rbbs
GOTO LATER
:GIFS
REM Do your GIF file processing here, if applicable.
:LATER
seterror 0
The LOOPUPS Configuration File:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LOOPUPS requires a separate configuration file for each node. The
format for this file is as follows:
LINE 1 - Node number for this CFG file.
LINE 2 - Registration number (or 00000 if not registered).
LINE 3 - Case-sensitive BBS name.
LINE 4 - Full log file path (e.g. D:\UPLOADS\UPLOAD.DAT).
LINE 5 - List of unwanted file extensions separated by commas.
LOOPUPS will reject an upload if either the upload or any
of the files contained in an uploaded archive have an
extension contained on this list (e.g. GIF,PCX,PIC).
10 maximum.
LINE 6 - List of acceptable file extensions for uploaded files
separated by commas (e.g. ZIP,LZH,ARJ). 10 maximum.
LINE 7 - Should LOOPUPS reject all files having extensions other
than those listed in line 6 (YES/NO)?
LINE 8 - Full path to logo file for ZIPLOGO and ARJCMNT4 to add to
archives (e.g. C:\LOGO\MYLOGO.DOC).
LINE 9 - List of BBS comment files, separated by commas, which
LOOPUPS should remove from archives (e.g. OBNXIOUS.AD,
COMMENT.BBS). 10 maximum.
LINE 10 - Year restriction. LOOPUPS will reject any upload if more
than 50% of its files are older than this date (e.g. 1990).
LINE 11 - Full path to which rejected files are moved (e.g. C:\BAD).
LINE 12 - Full LOOPUPS work directory path. NOTE: LOOPUPS will
destroy all files in this directory!!! Multinode sysops
should create a separate directory for each .CFG file.
LINE 13 - Type of modem handshaking to use (XON/CTS/BOTH).
LINE 14 - Is a FOSSIL driver in use (YES/NO)?
LINE 15 - Should LOOPUPS play obnoxious theme tunes (YES/NO)?
NOTE: The status tones may not function properly under
DESQview.
LINE 16 - Full path to ALL utilities. LOOPUPS must be able to find
each of the following programs in this directory:
SCAN.EXE
PKZIP.EXE
PKUNZIP.EXE
ARJ.EXE
LHA.EXE
ZIPLOGO.EXE
ARJCMNT4.EXE
LINE 17 - Should LOOPUPS use the standard IRQ for this COM port?
(YES -OR- IRQ#, e.g. 3).
LINE 18 - Full path to node directory for .SDI & .DIZ files
(e.g. C:\RBBS\NODE1). NOTE: For proper RBBS/STUNY
description file processing, this must be different for
each node.
LINE 19 - Seconds to pause after each test (or 0 for no pause).
LINE 20 - List of user names to be given option of bypassing
failed test, separated by commas. 10 maximum.
Sample LOOPUPS Configuration File:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1
00000
THE LOOP BBS
D:\UPLOADS\UPLOAD.DAT
GIF,BMP,PCX,PIC
ZIP,ARJ,LZH
YES
C:\LOGO\MYLOGO.DOC
OBNXIOUS.AD,COMMENT.AEI
1990
C:\RBBS\FILES\BAD
D:\UPLOADS\TEST1
BOTH
YES
NO
C:\DOS
YES
C:\RBBS\NODE1
0
SYSOP, Joe Sysop, Sue Cosysop
The LOOPUPS.ANS File:
~~~~~~~~~~~~~~~~~~~~~
When the LOOPUPS command line switch [Graphics] is set to ANSI, LOOPUPS
uses the included file LOOPUPS.ANS as the background for its ANSI interface.
This file may be customized with any suitable ANSI drawing program. Please
note, however, that neither the background color nor the position of any of
the ANSI character fields (filename, user name and status indicators) should
be altered. Also note that for proper ANSI cursor positioning, blank lines
should not be added to the end of the file.
---------------------------------------------------------------------------
LOOPUPS MEMORY CONSIDERATIONS
---------------------------------------------------------------------------
Although LOOPUPS itself requires a relatively small amount of RAM, some
of the external programs it executes -- most notably SCAN.EXE -- are RAM
hogs. LOOPUPS attempts to detect memory deficiencies in two ways: First, it
shuts itself down if free RAM is less than 330K - the minimum amount required
to execute SCAN.EXE. Second, LOOPUPS monitors the exit codes returned by
most of the external programs to which it shells. If SCAN returns an
errorlevel of 2 (abnormal program termination), LOOPUPS shuts down and logs
the error.
Several strategies may be employed in order to recover additional free
RAM. First, using the EMS overlay version of the STUNY mods may free up
enough RAM to run LOOPUPS on your system. Second, diligent QEMM/DESQview
users may be able to scrounge up enough RAM using QEMM's OPTIMIZE program,
the INCLUDE command line switch and/or Quarterdeck's VIDRAM.COM utility.
Consult the QEMM documentation for additional information.
If after taking the above steps and removing all unnecessary TSRs from
memory LOOPUPS still reports inadequate RAM to execute SCAN, the problem can
usually be solved via Davis Augustine's fantastic SHROOM (shell room)
utility. SHROOM, distributed as SHROMxxx.ZIP, is available for download on
many boards, including THE LOOP BBS. Please register SHROOM if you use it!
A lengthy explanation of SHROOM and its use is beyond the scope of this
document. However, detailed instructions can be found in the documentation
accompanying the SHROOM program itself. For present purposes, please note
that if SHROOM is used, RBBS-PC.EXE, _NOT_ LOOPUPS.EXE should be executed
from the SHROOM command line. In other words, your RBBS.BAT file should
contain a line such as:
SHROOM -Q RBBS-PC.EXE %node% RBBS%node%PC.DEF %1
Loading LOOPUPS.EXE from SHROOM in the TESTx.BAT file typically will not free
up sufficient RAM to execute LOOPUPS and SCAN.
Although this configuration has not been extensively tested, SHROOM may
not work properly with the EMS overlay version of RBBS/STUNY. If you
experience problems using SHROOM with STUNY's overlay version, try using the
non-overlay version. Note that this should not create a memory problem for
your BBS doors or other programs, since they are run either as a door (in
which case RBBS is removed from memory to make room for the door) or as a
shell (in which case SHROOM will swap out RBBS out as needed). Consult the
RBBS manual and the STUNY documentation for additional information.
Finally, multinode RBBS sysops should play it safe by setting the
attribute of SHROOM.EXE (and, for that matter, ALL programs used by LOOPUPS!)
to "read only" using the DOS ATTRIB +R command. Additional information may
be found under the "Miscellaneous Tricks" heading in Chapter 21 (Going Multi-
Node) of the RBBS-PC v. 17.4 manual.
---------------------------------------------------------------------------
LOOPUPS SUPPORT
---------------------------------------------------------------------------
LOOPUPS provides detailed reporting and logging of all command line and
configuration errors it discovers. If additional installation help is
required, please feel free to contact the author, Chris Quinn, at THE LOOP
BBS. Node 1, (314) 862-1253, and node 2, (314) 862-1261, operate at 2400 -
14,400 baud (V.32/V.42bis).
---------------------------------------------------------------------------
THANKS, GUYS!
---------------------------------------------------------------------------
The author would like to thank the following beta testers whose
thoughtful comments and suggestions made the development of LOOPUPS
possible:
Seth Phelps
Richie Molinelli
Gary Glueckert
Jim Loos
Alan Bratteson
... and (undoubtably) others whose names I've forgotten. Sorry!
---------------------------------------------------------------------------
LOOPUPS REGISTRATION
---------------------------------------------------------------------------
As a fellow sysop, I recognize the amount of time and money required to
operate a BBS. Therefore, I'll not bore you with ridiculous "shareware
license agreements" or pathetic pleas for money. LOOPUPS is not crippled in
any way. If you wish to rid yourself of the annoying "UNREGISTERED EVALUATION
COPY" screen prints and log entries, you must register LOOPUPS. Registration
not only permits continued support and development of LOOPUPS (and other
programs), but also helps me register programs that I use at THE LOOP.
Complete registration instructions are contained in the REGISTER.TXT
file. Registration costs only $10 US and I will gladly waive the fee for
any shareware author whose free software I currently use. To obtain your
personal LOOPUPS registration code, complete and print the registration form
contained in the REGISTER.TXT file and send it to the address noted on the
form. Your code will either be placed in a personal message at THE LOOP BBS
or sent to you by return mail, at your option.
Chris Quinn
06/09/93