home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-07-03 | 66.9 KB | 1,748 lines |
-
-
-
-
-
-
-
-
-
-
-
-
-
- The MainMail System
- Version 2.0
- By: Anthony Summy
-
-
- Copyright (c) 1992, The Main Shop
- Portions Copyright 1984-1989, FairCom Corporation
- Portions Copyright 1992, Gap Development Co.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Documentation
- By: Anthony Summy
-
- TABLE OF CONTENTS
-
- LICENSE AGREEMENT. . . . . . . . . . . . . . . . . . . . . . . Page 1
-
- SATISFACTION GUARANTEE . . . . . . . . . . . . . . . . . . . . Page 2
-
- INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . Page 3
- Thank You . . . . . . . . . . . . . . . . . . . . . . . . Page 3
- What is MainMail? . . . . . . . . . . . . . . . . . . . . Page 3
- Why Use MainMail? . . . . . . . . . . . . . . . . . . . . Page 3
- Support . . . . . . . . . . . . . . . . . . . . . . . . . Page 4
- What You Get. . . . . . . . . . . . . . . . . . . . . . . Page 4
-
- GETTING STARTED. . . . . . . . . . . . . . . . . . . . . . . . Page 5
- Your MainMail Package . . . . . . . . . . . . . . . . . . Page 5
- Files Created By MainMail . . . . . . . . . . . . . . . . Page 6
- Additional Files Needed . . . . . . . . . . . . . . . . . Page 6
-
- INSTALLATION . . . . . . . . . . . . . . . . . . . . . . . . . Page 7
- Installing MainMail . . . . . . . . . . . . . . . . . . . Page 7
- Method 1 - From Your Gap Directory. . . . . . . . . . . . Page 8
- Method 2 - From Its Own Directory . . . . . . . . . . . . Page 9
- VERY IMPORTANT. . . . . . . . . . . . . . . . . . . . . Page 10
-
- REGISTERING MAINMAIL . . . . . . . . . . . . . . . . . . . . Page 11
-
- DOOR OPERATION . . . . . . . . . . . . . . . . . . . . . . . Page 12
- How MainMail Works. . . . . . . . . . . . . . . . . . . Page 12
- Multi-Node Operation. . . . . . . . . . . . . . . . . . Page 12
- Local Operation . . . . . . . . . . . . . . . . . . . . Page 13
- Net Operations. . . . . . . . . . . . . . . . . . . . . Page 14
- Desqview And Memory . . . . . . . . . . . . . . . . . . Page 14
-
- CONFIGURING MAINMAIL . . . . . . . . . . . . . . . . . . . . Page 15
- The MMSETUP Program . . . . . . . . . . . . . . . . . . Page 15
- Running MMSETUP . . . . . . . . . . . . . . . . . . . . Page 15
- The General Configuration Screen. . . . . . . . . . . . Page 16
- Special Notes On The Work Directory . . . . . . . . . . Page 18
- Setting Message Limits By Baud Rate . . . . . . . . . . Page 19
- Configuring Compression Methods . . . . . . . . . . . . Page 19
- Configuring File Transfer Protocols . . . . . . . . . . Page 20
- The User File Editor. . . . . . . . . . . . . . . . . . Page 21
-
- IN SUMMARY . . . . . . . . . . . . . . . . . . . . . . . . . Page 23
-
- QUESTIONS AND ANSWERS. . . . . . . . . . . . . . . . . . . . Page 24
-
- APPENDIXES . . . . . . . . . . . . . . . . . . . . . . . . . Page 25
-
- LICENSE AGREEMENT
- -----------------
- This is a legal agreement between the purchaser of The MainMail System license
- (herein referred to as YOU) and The Main Shop (herein referred to as US or
- WE). By paying the registration fee for The MainMail System (herein referred
- to as SOFTWARE) you hereby agree to the terms set forth by this agreement, and
- agree to be bound to this contract. If you find the terms of this contract
- to be unacceptable, return the SOFTWARE to us for a refund within 30 days of
- payment of the license fee, and we will consider this contract null and void.
- At that time, you are legally required to discontinue to use the SOFTWARE and
- remove ALL copies of the SOFTWARE from ALL sources of media you possess, and
- retain NO copies whatsoever.
-
- You are hereby granted the right to operate the SOFTWARE on one computer
- system at one site for the term of this contract. One computer system is
- defined as a single computer, or several computers connected via a single
- local-area-network, provided that all computers operating the SOFTWARE share
- the same single user file.
-
- Multiple bulletin board systems operating with separate data files are
- considered separate and individual systems and are specifically excluded from
- the terms of this contract, even if they operate using identical or similar
- names, and/or are located at the same physical site. Such multiple systems
- each require a license of their own.
-
- You are permitted to make a reasonable number of copies of the SOFTWARE for
- archival purposes, or for purposes of performance. Permitted copies would be,
- for example, a copy of the SOFTWARE residing on each work station of a local-
- area-network providing that the terms described above in regards to multiple
- bulletin boards are met. A reasonable number of copies would be one copy for
- each operating node of your bulletin board, plus 2 copies for archival
- purposes.
-
- You may NOT under ANY circumstances, provide a copy of your registered
- SOFTWARE to a bulletin board operator who has not paid the registration of the
- SOFTWARE to us even for archival purposes.
-
- You may operate as many copies of the SOFTWARE as you operate nodes on your
- bulletin board system, plus one. The one additional copy can be operated as
- a local (non-publicly available) copy for your own use off-line. This method
- of use is considered normal, and does not violate the terms of this contract.
-
- You may not rent, lease or share the SOFTWARE with any other party. However,
- the software is transferable to another party providing that these conditions
- are met:
-
- 1) The receiving party registers his/her bulletin board with us.
- 2) You eliminate all copies and retain NO copies of the SOFTWARE.
-
- Should any part or section of this contract be determined to be unenforceable
- or unconstitutional, that section shall be declared void. Such declaration
- shall have no effect on the remaining sections of this contract.
-
- Information in this manual is subject to change without notice. The Main Shop
- may make improvements and/or changes to The SOFTWARE at anytime.
-
-
-
- Page 1
- SATISFACTION GUARANTEE
- ----------------------
- The SOFTWARE is sold with an unconditional 30-day money-back guarantee. If
- for any reason you are not completely satisfied with the SOFTWARE, return it
- within 30 days of purchase, and your full purchase price will be refunded.
- The Main Shop makes no warranties of any kind, expressed or implied, with
- respect to the quality, performance, accuracy, or fitness of SOFTWARE for any
- particular purpose. The Main Shop assumes no responsibility for any decisions
- made or actions taken on the part of Purchaser because of the use of the
- SOFTWARE. In no event shall The Main Shop be liable for any loss of profit
- or any other damages, including but not limited to special, incidental,
- consequential or other damages, arising out of the use of or inability to use
- the product, even if The Main Shop has been advised of the possibility of such
- damages.
-
- The Main Shop, Markmail For Gap, and The MainMail System are trademarks of The
- Main Shop. No right or interest to such trademarks is granted herein. You
- agree that no right or claim shall be asserted by you, and you shall not use
- these trademarks except as provided by the terms of this contract.
-
- The following companies and products are referred to throughout this manual.
- These products are the trademarks of their respective authors/companies and
- are described in detail here.
-
- GAP is the trademark of Gap Development Co.
- PXZIP/PKUNZIP are trademarks of PKWARE inc.
- DSZ is a trademark of Omen Technologies, Inc.
- PCRELAY is a trademark of Kip Compton.
- NOVELL is a trademark of Novell, Inc.
- WORDPERFECT is a trademark of the Wordperfect Corporation.
- C-TREE is a trademark of FairCom corporation.
- RELAYNET is a trademark of the Relaynet International Message Exchange.
- INTELEC is a trademark of The Intelec Network.
-
- The SOFTWARE and this documentation are copyrighted material. No copies of
- this documentation may be made without the expressed written consent of The
- Main Shop.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 2
- INTRODUCTION
- ------------
- Thank You
- ---------
- Thank you for your purchase of The MainMail System. The MainMail System was
- designed as an improvement on other mail doors. The MainMail System is fast
- and easy to use, and new versions continue to make it better. Again, thanks
- for supporting The MainMail System!
-
-
-
- What is MainMail?
- -----------------
- The MainMail System Ver 2.0 is an off-line message reader door for GAP 6.x
- systems. The MainMail System allows your users to log onto your Gap BBS
- system, collect all new messages from their selected forums, all new
- bulletins, and a list of new files into a packet to download. Then off-line,
- users can use any one of dozens of "QWK" compatible readers to read and reply
- to their messages. Logging on to your system again, they use The MainMail
- System to upload their replies.
-
- Why Use MainMail?
- -----------------
- 1. The MainMail System is fast! The MainMail System will collect and
- compress a mail packet five to ten times faster than UTI driven mail
- doors.
-
- 2. The MainMail System has BIG capabilities in a small package. The
- MainMail System is written totally in C, with communications routines
- in Assembly language, so it is less than half the size of other mail
- systems.
-
- 3. The MainMail System reads DIRECTLY from, and writes DIRECTLY to the Gap
- ISAM data files instead of requiring a UTI driver or other interface
- utility. This is what gives The MainMail System its speed.
-
- 4. The MainMail System reads DIRECTLY from your Gap configuration, so forum
- setup is not necessary. In addition, you can run The MainMail System
- right from your Gap default directory. MainMail does NOT require its
- own directory.
-
- 5. The MainMail System's com routines support up to 115,200 bps!
-
- 6. The MainMail System gives your users valuable features:
-
- - Auto logoff after downloading or uploading.
- - Quick forum selection and pointer update from the same menu.
- - Item configuration off-line using messages to MAINMAIL.
- - Pointer backdating to recover previous messages.
-
-
-
-
-
-
-
-
-
- Page 3
- Support
- -------
- Support is foremost in my mind! That is why the support numbers are here in
- the front of the manual. I will strive to correct any problems as soon as
- possible, usually within 24 hours.
-
- Anthony Summy
- PO Box 4284
- Orange, CA 92613
- (714) 783-6786 (voice)
-
- The Main Shop BBS
- Home of The MainMail System
- Sysop, Tony Summy
- (714) 783-6613
-
-
- The voice number above is my home, so if you don't reach me during the day,
- please understand. I will return all support calls that evening or the first
- opportunity I get.
-
- In addition, we host a support forum on the Relaynet International Message
- Exchange (RIME) network, national conference number 131. The author monitors
- and moderates this conference from the home of MainMail, The Main Shop and is
- always available there. Support issues and questions can be addressed to Tony
- Summy and routed to ->THEMAIN if desired. The Relaynet conference is
- available from hundreds of bulletin boards around the world. If your bulletin
- board is not a member of Relaynet, contact a local Relaynet bbs for
- information on becoming a member. If your bulletin board IS a member of
- Relaynet, you are encouraged to carry The MainMail Support forum on your bbs.
-
-
- What You Get
- ------------
- Purchasers of The MainMail System are entitled to one (1) year of unlimited
- support from The Main Shop, either by voice or from our BBS in the MainMail
- Support forum #1. After the first year, support can be renewed in one year
- increments for a nominal charge. See the bulletin area on The Main Shop BBS
- for details.
-
- In addition to the support described above, purchasers of The MainMail System
- are entitled to free and unlimited upgrades of the software for the first
- year, or as long as your support is current. Updates can be obtained from The
- Main Shop BBS in the MainMail Support forum, forum #1. Your support must be
- current in order to obtain updates.
-
- At present, we do not charge any additional fees for upgrades, either minor
- or major. We do, however, reserve the right to change this policy at any
- time.
-
-
-
-
-
-
-
-
-
- Page 4
- GETTING STARTED
- ---------------
- There are a few thing you must know prior to installing The MainMail System.
- First and foremost, there are two versions of The MainMail System, and you
- MUST have the correct version of the door or you will permanently and
- irreparably damage your Gap data files. If you are running the single node
- version of Gap, you MUST use the single node version of The Main Mail System.
- If you are running the multi-node version of Gap, you MUST use the multi-node
- version of The MainMail System. DO NOT RUN THE INCORRECT VERSION OR PERMENANT
- AND IRREPAIRABLE DAMAGE TO YOUR GAP ISAM DATA FILES WILL RESULT!!
-
-
- Your MainMail Package
- ---------------------
- 1) MM-MULT.ZIP contains the multi-user executable files.
- 2) MM-SING.ZIP contains the single-user executable files.
- 3) MMPACK.ZIP contains the user file pack utility. (Not in DEMO)
- 4) HELP.ZIP contains the HELP files.
- 5) GEN.ZIP contains the sample menu and news files.
- 6) MMSYSOP.DOC - This documentation.
- 7) MAINMAIL.BAT - Sample door batch file.
- 8) UPGRADE.DOC - For upgrading previous versions. (Not in DEMO)
- 9) REGISTER.FRM - Registration form. (DEMO only)
-
- MM-MULT.ZIP or MM-SING.ZIP each contain:
- ----------------------------------------
- 1. MM-GAP.EXE - The program itself.
- 2. MMSETUP.EXE - The MainMail Setup Program.
-
- MMPACK.ZIP contains:
- --------------------
- 1. MMPACK.EXE - The MainMail user file packing and rebuilding utility.
- (Not contained in the DEMO version)
-
- GEN.ZIP contains:
- -----------------
- 1. MM-NEWS - This news file will be displayed to all users as they enter
- the door.
-
- 2. MM-NUSER - This new user file will be displayed the first time a user
- opens the door. Use this file to instruct new users how to select
- forums, compression methods, and file transfer protocols.
-
- 3. MM-MENU - This main menu is displayed at all times unless the user has
- chosen "expert" mode.
-
- HELP.ZIP
- --------
- All MainMail help files.
-
-
-
-
-
-
-
-
-
- Page 5
- Files Created By MainMail
- -------------------------
- 1. MMUSER.DAT and MMUSER.IDX - MainMail maintains these files to keep track
- of your user's various accumulators, last QWK dates, selected protocol,
- and compression methods. MainMail creates these files in your Gap MAIN
- directory the first time the door is opened.
-
- 2. MMDAT.CNF - The MainMail System configuration is kept in this file.
- Information such as the protocols and compression formats you have set
- up, paths and names of your MainMail menu and news files, etc. On
- multi-node systems, only one MMDAT.CNF file is needed for all nodes if
- all nodes are configured with identical paths. The MainMail Setup
- program creates this file in your Gap MAIN directory.
-
- 2. MMSYS.DAT - An encrypted key file for your specific BBS. This file is
- normally kept in your Gap MAIN directory. Only one copy is required
- for all nodes. NOTE: The MainMail System does not ship with this file.
- You create this file using the REGISTER command line option. See the
- section entitled REGISTERING MAINMAIL later in this manual.
-
-
- Additional Files Needed
- -----------------------
- In addition to the files included in your MainMail package, you will need some
- external programs for The MainMail System to work properly. You will need at
- least one archiving program, and at least one file transfer protocol. You can
- use any one you like, but we have found PKZIP from PKware to be the most
- reliable archiving program, and DSZ from Omen Technologies, Inc. to be about
- the most common and most reliable file transfer protocol.
-
- 1. DSZ.COM - A transfer protocol program. Must be in the path. You must
- have a registered copy of DSZ if you decide to use it for your file
- transfer protocol. Unregistered versions of DSZ will not work properly
- because they will not accept a path to the file to be transfered.
-
- 2. PKZIP/PKPAK and PKUNZIP/PKUNPAK - Compression programs. Must be in the
- path.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 6
- INSTALLATION
- ------------
-
- Installing MainMail
- -------------------
- You have never installed a door so easily. There are two ways to install The
- MainMail System. One way is to run MainMail from your Gap default directory,
- and the other is to install MainMail in its own directory. The MainMail
- System is designed to run from your Gap directory as an integral part of Gap.
- This is the preferred method. We will cover both methods in this section.
-
- Using method 1, MainMail runs from your Gap default directory. You will read
- several times throughout this manual that this is the preferred method. Using
- this method, you will simply copy your MainMail menus, news files, and new
- user information screens into your Gap GEN directory, and your MainMail help
- files into your Gap HELP directory. MainMail will then locate its data files
- in your Gap MAIN directory along with your Gap data files. This method allows
- maximum versatility and ease of installation because there is really no setup
- besides running MMSETUP once from any node's default directory. In addition,
- all nodes will share the same files. If you change the configuration on one
- node, since all nodes use that configuration, all nodes would automatically
- inherit that change.
-
- Using method 2, MainMail can run in its own directory. Using this method, you
- would copy all MainMail related files except the MMUSER files into a separate
- directory. This directory could be a common directory accessible to all
- nodes, or it could be a separate directory for each node. MainMail runs
- virtually identically this way, but if you DO have a different configuration
- file (MMDAT.CNF) for each node, you would then have to maintain the
- configuration for each node separately. This method requires that you pass
- the path to your Gap default directory for the current node on the MainMail
- command line.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 7
- Method 1 - From Your Gap Directory
- ----------------------------------
- 1. Copy MM-GAP.EXE, MMSETUP.EXE, and MMPACK.EXE into the same directory as
- your Gap executable files. This can be any directory in your path.
-
- 2. If you have any of these files: MMSYS.DAT, MMDAT.CNF, MMUSER.DAT or
- MMUSER.IDX, copy them into your Gap MAIN directory.
-
- NOTE: If this is a first-time installation, you do not yet have any of these
- files.
-
- 3. Unzip GEN.ZIP into your Gap GEN directory.
-
- 3. Unzip HELP.ZIP into your Gap HELP directory.
-
- 4. See the CONFIGURATION section (page 15) of this manual for detailed
- instructions on configuring The MainMail System.
-
- NOTE: The MainMail System door will not run until it is configured!
-
- 5. If necessary, edit your MAINMAIL.BAT file. When running The MainMail
- System from your Gap default directory, all your batch file needs to do
- is run the door.
-
- Example MAINMAIL.BAT file
- -------------------------
- @ECHO OFF
- MM-GAP
-
- 6. Edit your DOORS.DAT file and your DOORM(g) menus to reflect the addition
- of The MainMail System to your board.
-
- Example DOORS.DAT File
- ----------------------
- MAINMAIL 50 C:\GAP\DOORS\MAINMAIL.BAT
-
- That's all there is to it......
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 8
- Method 2 - From Its Own Directory
- ---------------------------------
- All configuration is identical to above, except that you must run MM-GAP.EXE
- and MMSETUP.EXE from the MainMail directory, and include the path to the Gap
- default directory on the command line.
-
- 1. Create a directory for The MainMail System.
-
- Example: C:\GAP\DOORS\MAINMAIL
-
- NOTE: On multi-node systems, this can be either a network or local drive.
- If a network drive is used, all nodes can run from the same directory
- as long as the batch file that invokes MainMail "points" to the correct
- Gap default directory for this node. See step 6 for more detail.
-
- 2. Copy all MainMail files into your MainMail directory.
-
- 3. Copy MMUSER.DAT and MMUSER.IDX (if you have them) into your Gap MAIN
- directory.
-
- NOTE: If this is a first time installation, you do not yet have these files.
-
- 4. Unzip HELP.ZIP and GEN.ZIP into the MainMail directory.
-
- 5. See the CONFIGURATION section (page 15) of this manual for detailed
- instructions on configuring MainMail.
-
- NOTE: The MainMail System door will not run until it is configured!
-
- 6. If necessary, edit your MAINMAIL.BAT file(s). When running MainMail
- from its own directory, you must include the path to your Gap default
- directory for this node on the command line in the batch file.
-
- Example MAINMAIL.BAT file
- -------------------------
- @ECHO OFF
- CD\GAP\DOORS\MAINMAIL
- MM-GAP C:\GAP (Substitute your drive:\dir if necessary)
-
- 7. Edit your DOORS.DAT file and your DOORM(g) menus to reflect the addition
- of The MainMail System to your board.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 9
- VERY IMPORTANT
- --------------
- Since it is possible to configure The MainMail System to run in a directory
- on a local drive, and also possible that the MainMail directory can be
- different for each node, MainMail WILL locate MMUSER.DAT and MMUSER.IDX in
- your Gap MAIN directory. This is because The MainMail System MUST have a
- common location to all nodes for its user file. This is NOT an option! All
- other files can reside in the MainMail directory.
-
- Optionally, you may locate MMDAT.CNF and MMSYS.DAT in your Gap MAIN and
- MainMail will find them there. If you do, and you find the need to change
- MainMail's configuration, (IE: add a protocol) you would need to do so only
- once, from any node, and all nodes would be affected. If you locate MMDAT.CNF
- and MMSYS.DAT in the MainMail directory, and have separate MainMail
- directories for each node, you would have to update each node separately.
-
- By nature, MMDAT.CNF is very node dependent. In other words, MMDAT.CNF might
- be different for each node. In this case, you would have to create a node
- specific MMDAT.CNF for each node, and locate the file in the MainMail
- directory for that node.
-
- MMSYS.DAT on the other hand, is a static file (it never changes). For this
- reason, there is really no reason to have a copy in each node's MainMail
- directory. Place MMSYS.DAT in your Gap MAIN directory and The MainMail System
- will find it there.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 10
- REGISTERING MAINMAIL
- --------------------
- If you have registered The MainMail System you were issued a passcode which
- consisted of a large number. You must have this number now to register your
- MainMail System door.
-
- If you have not registered The MainMail System, (IE: if you are running the
- DEMO), simply skip this section. See REGISTER.DOC for information on
- registering the DEMO.
-
-
- 1. From any node's DEFAULT directory, type:
-
- MM-GAP REGISTER <enter>
-
- 2. Answer the questions as they come up, entering EXACTLY what is on your
- registration form, or what you provided to The Main Shop when obtaining
- your passcode. CASE AND PUNCTUATION ARE IMPORTANT! All entries must
- match the information provided EXACTLY!
-
- 3. Once your passcode is entered, MainMail will create a file in the
- CURRENT directory named MMSYS.DAT. This is your encrypted key file.
- Copy it to your Gap MAIN directory and your MainMail System is
- registered.
-
- If you ever loose this file, simply start step one over and create
- another encrypted key file. Keep this passcode in a safe place. It
- will be used on future revisions of The MainMail System.
-
-
- NOTE: The demo version of The MainMail System will operate without any
- restrictions except one. There is a limit of 20 on the number of users
- allowed in the MainMail user file. Once you register The MainMail
- System and obtain your passcode, the 20 user limit will no longer apply.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 11
- DOOR OPERATION
- --------------
-
- How MainMail Works
- ------------------
- The MainMail System is specifically designed to run from your Gap default
- directory once correctly configured. To invoke MainMail, your door batch file
- needs only to run the program. Once invoked, MainMail reads DOOR.SYS, and
- GAPBBS.CNF to find your MAIN directory. It then reads MMSYS.DAT to find your
- registration info, then MMDAT.CNF for its own configuration, and begins to
- run. MainMail will look for MMSYS.DAT and MMDAT.CNF in the current directory
- first, and if not found, MainMail will check your Gap MAIN directory. At that
- time, all Gap files are read, including USERS.DAT, FILES.DAT, MEMBERS.DAT and
- FORUMS.DAT. As you can see, since The MainMail System works directly with
- your Gap files, a minimum of overhead is introduced. All operation is
- automatic.
-
- If you are running The MainMail System from its own directory, there is one
- addition step. You must pass to MainMail, the path to your Gap default
- directory on the MainMail command line. (See below) Once MainMail finds your
- Gap default directory, it reads DOOR.SYS and GAPBBS.CNF and the operation is
- identical to above.
-
-
- Multi-Node Operation
- --------------------
- There are two versions of The MainMail System, a multi-node version, and a
- single-node version. It is VERY IMPORTANT that you have obtained the correct
- version of The MainMail System. If you have the wrong version, MainMail will
- corrupt your Gap ISAM files. DO NOT use the wrong version.
-
- If you are running The MainMail System from your Gap default directory, you
- need only one batch file for all nodes. All operation is automatic. This
- method would require that all nodes share the same path to your Gap MAIN
- directory.
-
- If you are running The MainMail System from its own directory, a minor change
- is needed. You will need to have a MAINMAIL.BAT file for each node, and pass
- the correct path to that node's Gap default directory within that node's batch
- file. Example:
-
-
- Example Node 1 batch file Example Node 2 batch file
- ------------------------- -------------------------
- @echo off @echo off
- cd\gap\doors\mainmail cd\gap\doors\mainmail
- mm-gap c:\gap1 mm-gap c:\gap2
-
-
-
-
-
-
-
-
-
-
-
- Page 12
- Local Operation
- ---------------
- The MainMail System is fully functional in local mode. If a user logs onto
- the BBS at the console, MainMail will treat him just as if he were logged on
- from remote. MainMail will create a packet and ask for the directory to place
- the packet. The default will be the path pointed to in the MainMail
- configuration for that node. (See the CONFIGURATION section (page 15) of this
- manual).
-
-
- Unattended Operation
- --------------------
- In addition, the sysop may run MainMail as a batch process, totally
- unattended. To do so, you must create a copy of DOOR.SYS from your own logon.
- This is most easily done by logging onto your bbs locally, opening any door,
- and after returning from the door, press F5 to shell to dos. Then copy
- DOOR.SYS to a directory set aside for your storage of your local DOOR.SYS.
- (I use a directory under my Gap default directory called MMLOCAL).
-
- When run unattended, MainMail will place an auto-downloaded QWK packet in the
- local download directory configured in MMSETUP. Similarly, MainMail will
- look for an auto-uploaded REP in the local upload directory configured in
- MMSETUP. (See page 15 for configuration details).
-
- To invoke MainMail to run unattended, change to your Gap default directory (if
- you are not already there), copy the DOOR.SYS from your storage directory
- mentioned above, and then run MM-GAP with either the '-D' or '-U' command line
- parameter. '-D' for auto-[D]ownload, and '-U' for auto-[U]pload. Below are
- some example batch files for unattended operation.
-
- Unattended Upload
- -----------------
- @ECHO OFF
- C:
- CD\GAP
- COPY C:\GAP\MMLOCAL\DOOR.SYS
- MM-GAP -U
-
- Unattended Download
-
- @ECHO OFF
- C:
- CD\GAP
- COPY C:\GAP\MMLOCAL\DOOR.SYS
- MM-GAP -D
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 13
- Net Operations
- --------------
- All messages uploaded into a forum configured as a network mail forum in
- GAPSETUP will be exported through network software such as PCRELAY. The QWK
- packet does not support the 'echo' flag found in some readers. Any mail
- imported through MainMail (or any other QWK mail door) will automatically be
- exported through network software such as PCRELAY. MainMail does not yet
- support networking directly. Future versions will support QWK net operations
- through the MainMail door.
-
- When these features are integrated into MainMail, you will be able to 'tie'
- two or more MainMail equipped board together through The MainMail System.
- Basically, this system will process a QWK file downloaded from another board
- through The MainMail door, and import this QWK into your board. Similarly a
- REP exported through your MainMail door could be uploaded into the other
- board's MainMail door, and thus imported into that board. This can be
- compared to a peer-to-peer network of MainMail doors.
-
- As mentioned in the last paragraph, Ver. 2.00 of The MainMail System does not
- yet provide for these features. Rest assured though, these features WILL be
- available in the next version.
-
-
- Desqview And Memory
- -------------------
- MainMail automatically detects the presence of Desqview and routes all screen
- writes directly through it. "Writes directly to screen" can be set to "NO"
- and MainMail will not bleed through from the background.
-
- Memory requirements will vary depending on the number of forums you have
- configured in Gap. The MainMail System dynamically allocates memory at
- runtime by reading your GapBBS.CNF to see how many forums you have, and
- allocating only the memory needed to accomodate that number of forums. The
- door itself requires approximately 200k, plus about 30 bytes per forum. Then
- add approximately 190k for PKZIP or 64k for DSZ. Markmail releases memory
- from one shell before allocating for another, thus should never require memory
- for both shells simultaneously. In other words, you will never need BOTH the
- 190k for PKZIP and the 64k for DSZ simultaneously.
-
- On The Main Shop, we have 300 forums configured, and MainMail takes up about
- 209k at run-time. While shelled out to PKZIP, that jumps to about 390k.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 14
- CONFIGURING MAINMAIL
- --------------------
-
- The MMSETUP Program
- -------------------
- When you run MMSETUP for the first time, it will create MMDAT.CNF, the
- MainMail Configuration file for you, and create some default entries. MMSETUP
- will configure most common compression methods and file transfer protocols for
- you. We have found these to be the most common methods, so we simply included
- them automatically in a new installation.
-
- In addition, MMSETUP reads your GAPBBS.CNF, finds the path to your Gap GEN,
- MAIN and HELP directories and configures MainMail to those paths, assuming
- that you are going to run MainMail from your default directory as described
- in method 1 earlier in this manual.
-
- MMSETUP creates MMDAT.CNF in your Gap MAIN directory the first time it is run,
- so in most cases you can simply leave it there. From that point forward,
- MMSETUP will find MMDAT.CNF in your MAIN directory.
-
-
- Running MMSETUP
- ---------------
- From any node's Gap default directory, type MMSETUP <enter>, or if you have
- MainMail in its own directory, change to that directory and type MMSETUP
- C:\GAP <enter>. (Substitute your drive:\dir if necessary) After the MainMail
- copyright notice clears, you will see this menu:
-
- ┌───────────────────────────────────────────────────────────────────────┐
- │ About Config Compression Protocols Users Quit │
- └───────────────────────────────────────────────────────────────────────┘
-
- Here is a description of each selection
-
- About: Gives you a short description of MMSETUP.
-
- Config: This is where you configure the paths and filenames used in
- MainMail.
-
- Compression: This is where you add or edit your compression methods.
-
- Protocols: This is where you add or edit your file transfer protocols.
-
- Users: This selection gives you the ability to edit your MainMail
- users file.
-
- Quit: Exits MMSETUP, saves your changes automatically and returns
- you to DOS.
-
-
-
-
-
-
-
-
-
-
- Page 15
- The General Configuration Screen
- --------------------------------
-
- ┌──────────────────────────────────────────────────────────────────────┐
- │ Location of Help Files : C:\GAP\HELP\ │
- │ Location of Local Uploads : C:\SLMR\UL\ │
- │ Location of Local Downloads : C:\SLMR\DL\ │
- │ Location of Offline Packet Storage: C:\GAP\LOOSE\ │
- │ Name/Location of NEWUSER File : C:\GAP\GEN\MM-NUSER │
- │ Name/Location of NEWS File : C:\GAP\GEN\MM-NEWS │
- │ Name/Location of MENU File : C:\GAP\GEN\MM-MENU │
- │ Name/Location of TCAN File : C:\GAP\GEN\MM-TCAN │
- │ │
- │ Drive to use for Work Directory : │
- │ Number of Rep's for Upload Credit : 0 (0 = No Credit Given) │
- │ │
- │ Baud : 300 1200 2400 9600+ │
- │ Default Messages per Forum : 100 200 200 200 │
- │ Default Messages per Packet : 300 400 800 1200 │
- │ Maximum Messages per Forum : 100 200 200 200 │
- │ Maximum Messages per Packet : 300 400 800 1200 │
- └──────────────────────────────────────────────────────────────────────┘
-
- A description of each entry shown above appears on the next page.
-
- Most of the entries shown above will be created automatically for you as
- defaults when you run MMSETUP for the first time. You can then simply
- overwrite the ones you need to change, and when you exit MMSETUP, the changes
- are automatically saved to MMDAT.CNF.
-
- One huge advantage in MainMail is its ability to run as an integral part of
- Gap. If you are running MainMail from your Gap default dir, you can simply
- place your MainMail menus etc in your Gap GEN directory, and your MainMail
- HELP files in your Gap HELP directory. See the section on Installing MainMail
- for more details.
-
- If you are running MainMail in its own directory, simply change the paths
- shown above to your MainMail directory, and place all MainMail menus and help
- files there.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 16
- Description of each entry in the GENERAL config screen
- ------------------------------------------------------
-
- Location of Help Files: The PATH ONLY to your MainMail "help" files.
- Default is your Gap HELP directory.
-
- Location of Local Uploads: The path to where your reader places "REP"
- packets to upload. This should be your com
- program's UPLOAD directory. Default is blank.
-
- Location of Local Downloads: The path to where your reader expects to find
- downloaded "QWK" files. This should be your
- COM program's download directory. Default is
- blank.
-
- Loc of Offline Pack Storage: A future expansion feature will allow you to
- assign pre-prepared packets at pre-determined
- times for your users. This will be the
- directory where MainMail stores these packets.
- (Not operational) Default is your Gap LOOSE
- FILES directory.
-
- Name/Loc of NEWUSER File: The path and file name of your MainMail
- "NEWUSER" file. This screen will be shown to
- each user the first time he(she) opens the
- MainMail door. Default is MM-NUSER in your Gap
- GEN directory.
-
- Name/Location of NEWS File: The path and file name of your MainMail "NEWS"
- file. This screen will be shown to each user
- EVERY time he(she) opens the door. Default is
- MM-NEWS in your Gap GEN directory.
-
- Name/Location of MENU File: The path and file name of your MainMail "MAIN
- MENU". Default is MM-MENU in your Gap GEN
- directory.
-
- Name/Location of TCAN File: The path and file name of your MainMail
- "TRASHCAN" file. This is a single column text
- file with only a list of names, similar to your
- Gap "TCAN" file. This feature is part of the
- network access system and is not yet
- operational. Any messages to or from a user
- who's name appears in this file will not be
- passed to or from the network. Default is MM-
- TCAN in your Gap MAIN directory.
-
-
-
-
-
-
-
-
-
-
-
-
- Page 17
- Drive to use for Work Dir: MainMail creates a temporary WORK directory the
- first time it is run. This entry tells
- MainMail which drive to create this directory
- on. This can be a network drive, a local
- drive, a ram-drive, or it can be left blank.
- If left blank, MainMail will create its work
- directory off of the current directory. The
- directory will be 'MWORK' for single-node
- systems, or 'MWORKxx' for multi-node systems,
- where 'xx' is the node number. Default is
- blank.
-
- NOTE: MainMail leaves this directory in place when it
- exits. This allows Novell Network Systems to
- flag the directory 'PURGE'.
-
- Number Rep's/Upload Credit: This is the number of "REP" packets a user must
- upload to receive upload credit. A value of
- zero (0) disables this option. Default is 0.
-
-
-
-
-
-
-
-
- Special Notes On The Work Directory
- -----------------------------------
- MainMail creates its WORK directory off of the ROOT of the drive entered
- above. If this is a Novell network drive, you MUST grant read, write, create,
- and delete rights to the ROOT of this drive for the user name or group being
- used for the board. Alternatively, you may use the MAP ROOT feature of Novell
- to assign a drive letter to a directory so that MainMail THINKS it is working
- with the root of the drive. For example:
-
- MAP ROOT M:=SYS:GAP\ (Substitute your volume name if necessary)
-
- The above configuration would create an 'M' drive who's root would actually
- be the F:\GAP directory. You could then grant rights to the bbs's login name
- or group to SYS:GAP\ and use drive 'M' in the MainMail configuration above.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 18
- Setting Message Limits By Baud Rate
- -----------------------------------
-
- Baud :300 1200 2400 9600+
- Default Messages per Forum :100 200 200 200
- Default Messages per Packet :300 400 800 1200
- Maximum Messages per Forum :100 200 200 200
- Maximum Messages per Packet :300 400 800 1200
-
- These parameters determine the number of message any one user can extract
- during a download session. The defaults (lines one and two) are how many
- messages MainMail will default to for each baudrate listed. In the example
- above, a caller at 1200 baud would be allowed 200 messages per forum, with a
- maximum of 400 messages in any one download session. By the same token, a
- user calling at 9600 or higher would be allowed 200 messages per forum with
- a session maximum of 1200 messages. These parameters are configured by
- baudrate since it takes longer to download at slower baudrates. It makes
- sense to allow callers at higher baudrates to download more messages in any
- one session. A little bit of experimentation and you will arrive at the best
- settings for your system.
-
- The second two lines are the maximums that a user can set his own profile to.
- Since MainMail allows the user to set his(her) own defaults, you can limit
- his(her) choices to reasonable amounts. The values shown above are the
- defaults as MMSETUP creates them.
-
-
- Configuring Compression Methods
- -------------------------------
-
- ┌─────────────────────────────────────────────────────────────────┐
- │ Method # 1 Name : ZIP Implode (Small) (Default) │
- │ Compress Cmd Line : PKzip │
- │ Un-Compress Cmd Line : PKunzip │
- │ │
- │ Method # 2 Name : ZIP Shrunk (Fast) │
- │ Compress Cmd Line : PKzip -es │
- │ Un-Compress Cmd Line : PKunzip │
- │ │
- │ Method # 3 Name : ARC │
- │ Compress Cmd Line : PKpak │
- │ Un-Compress Cmd Line : PKunpak │
- │ │
- │ Method # 4 Name : │
- │ Compress Cmd Line : │
- │ Un-Compress Cmd Line : │
- └─────────────────────────────────────────────────────────────────┘
-
- The above examples of compression methods should be self-explanatory. Once
- you decide which methods you wish to offer, you simply enter the name of the
- compression method, then the compress and un-compress command lines. The
- above examples are the defaults created by MMSETUP when run for the first
- time.
-
-
-
-
-
- Page 19
- Configuring File Transfer Protocols
- -----------------------------------
-
- ┌─────────────────────────────────────────────────────────────────────────┐
- │ Macros: #F# - Filename of Packet #P# - Com Port Page 1 of 5 │
- │ #S# - Computer/Modem Speed #N# - Node Number │
- │ #C# - Modem/User 'Connect' Speed │
- │ │
- │ 1 Letter: C Name : Xmodem CRC ARQ Req?: N │
- │ Send Command Line : DSZ port #P# sx #F# │
- │ Recv Command Line : DSZ port #P# rc #F# │
- │ │
- │ 2 Letter: G Name : Ymodem-G ARQ Req?: Y │
- │ Send Command Line : DSZ port #P# ha cts sb #F# │
- │ Recv Command Line : DSZ port #P# ha cts rb -g #F# │
- │ │
- │ 3 Letter: K Name : Xmodem 1K ARQ Req?: N │
- │ Send Command Line : DSZ port #P# sx -k #F# │
- │ Recv Command Line : DSZ port #P# rx -k #F# │
- │ │
- │ 4 Letter: X Name : Xmodem Checksum ARQ Req?: N │
- │ Send Command Line : DSZ port #P# sx #F# │
- │ Recv Command Line : DSZ port #P# rx #F# │
- └─────────────────────────────────────────────────────────────────────────┘
-
- The above protocol examples are as they are created by default when MMSETUP
- is run for the first time. You may use these as configured, or change them
- any way you wish. MMSETUP configures 7 transfer protocols by default for you.
- In the interest of space, only the first 4 are illustrated here.
-
- Please note that in the examples above, the transfer protocols are sorted
- alphabetically. MainMail does this automatically. It is NOT necessary for
- you to configure these protocols in any particular order. The above examples
- all use DSZ, but you may use any protocol you wish. All you need to do is
- substitute the proper variables for the parameters required by your protocol
- driver. These are the variables supported by MainMail:
-
- #F# = The file name of the QWK or REP file
- #P# = The com port number
- #S# = The com port baudrate
- #N# = The current node number
- #C# = The callers connect baudrate
-
- MainMail will substitute the proper values for these macros at runtime. All
- macros must be UPPER CASE for MainMail to recognize them as macros, and
- replace them with the proper values. If you enter these in lower case,
- MainMail will think that they are part of the string that the protocol needs,
- and will send them as entered.
-
-
-
-
-
-
-
-
-
-
- Page 20
- The User File Editor
- --------------------
-
- ┌────────────────────────────────────────────────────────────────────┐
- │ │
- │ First Name : TONY QWKs D/L : 111 │
- │ Last Name : SUMMY REPs U/L : 59 │
- │ Date of Last QWK : 06/16/92 Time of Last QWK : 09:36 │
- │ ────────────────────────────────────────────────────────────────── │
- │ │
- │ Max Msgs Per Forum : 500 Max Msgs Total : 5000 │
- │ Max QWK Size K : 0 Selected Protocol : Z │
- │ <CGHKXYZ> │
- │ Includes Own Mail : N Expert Mode : N │
- │ Scan Bulletins : Y Scan Files : Y │
- │ Color Bulletins : N Off-Line Packets : N │
- │ │
- │ Network Status : N Net Number : 0 │
- │ │
- │ ────────────────────────────────────────────────────────────────── │
- │ [PgUp] = Prev Record [F2] = Find Record [F9] = Save Record │
- │ [PgDn] = Next Record [ESC] = Exit To Menu [F8] = Del Record │
- └────────────────────────────────────────────────────────────────────┘
-
- A description of each entry shown above appears on the next page.
-
- While in the User Editor, the following keystrokes are active:
-
- PgUp - Previous Record
- PgDn - Next Record
- F2 - Find Record By Last Name
- F8 - Delete Record (Editor will prompt for confirmation of delete)
- F9 - Save Record
- ESC - Exit User Editor (If record has been changed, will prompt to save
- before exit)
-
- You can not edit some of the fields in the above screen. The uneditable
- fields are:
-
- First Name
- Last Name
- Last QWK Date
- Last QWK Time
- Number of QWKs Downloaded
- Number of REPs Uploaded
-
- Most fields are self explainatory, but here are the details of each one.
-
- First Name: Displays the user's first name. You cannot edit this
- field. MainMail gets this data from Gap. Editing
- this field would destroy the 'link' between MainMail
- and Gap.
-
- Last Name: Displays the user's last name. You cannot edit this
- field. MainMail gets this data from Gap. Editing
- this field would destroy the 'link' between MainMail
- and Gap.
-
- Page 21
- Date Of Last QWK: The last date this user downloaded a QWK packet. You
- cannot edit this field. Display only.
-
- Number Of QWKs D/L: The total number of QWK packets this user has
- downloaded.
-
- Number Of REPs U/L: The total number of REP packets this user has uploaded.
-
- Time Of Last QWK: The last time this user downloaded a QWK packet. You
- cannot edit this field. Display only
-
- Max Msgs Per Forum: The most messages this user is allowed to extract from
- each forum.
-
- Max QWK Size in K: The largest QWK file this user is allowed to download.
-
- Max Msgs Total: The most messages this user is allowed to extract in
- a packet.
-
- Selected Protocol: The protocol this user has selected. Valid protocols
- will display below this field in braces '<>'.
-
- Includes Own Mail: Does this user extract message FROM himself.
-
- Scan Bulletins: Does this user scan for new bulletins during download.
-
- Color Bulletins: Does this user require 'color' (g) versions of new
- bulletins.
-
- Expert Mode: Does this user require the main menu. 'Expert Yes' =
- Do not diaplay the menu.
-
- Scan Files: Does this user scan for new files during download.
-
- Off-Line Packets: A Future version will allow you to pre-prepair packets
- for users off-line on a user by user basis.
- (THIS FEATURE IS NOT YET OPERATIVE)
-
- Network Status: In a future version, this will indicate that this user
- is allowed 'network' type packets. This has nothing
- to do with access to mail network forums, IE: RelayNet
- or Intelec.
- (THIS FEATURE IS NOT YET OPERATIVE)
-
- Net Number: A Future version will assign a network to this user.
- (THIS FEATURE IS NOT YET OPERATIVE)
-
-
-
-
-
-
-
-
-
-
-
-
- Page 22
- IN SUMMARY
- ----------
- This concludes The MainMail System documentation. Your MainMail door should
- now be ready to go. We at The Main Shop sincerely hope that you find The
- MainMail System satisfactory for your needs. Please feel free to give us a
- call if there are any questions or suggestions you may have. We are very open
- to suggestions as to how we can make our products better.
-
-
- THANKS
- ------
- I want to express a special thanks to the following persons, or companies for
- their help in the creation of The MainMail System. Without them, The MainMail
- System would still be only a glimmer in my eye. I could not have done it
- without any one of them.
-
- Kenny Gardner: First and foremost! Kenny has been more help than I can
- put in words. Gap BBS software is the finest and most
- advanced BBS software available, and it is this man who
- is responsible for making it that. Naturally, without
- Gap, there would be no MainMail System, and without
- Kenny's help, I never would have been able to finish this
- project. Thank you for your help and guidance.
-
- Mark Turner: Mark wrote the original version of this code, Markmail For
- Gap back in 1990. It was Mark who inspired me to learn
- C, and help me to get started. Several times through the
- development of this product, he was a lifesaver with his
- advise and wisdom. Thank you very much!
-
- The Beta Testers: David Del Prince, John Miller, Carl Curling, Mike May,
- Michael Brunk, Eric Eckes, Rob Brun, Darin May, Mike
- Kruss, Michael Part, Rick Kingslan, David Jones, Herb
- Mellinger.
-
- It's these guy's hard drives and MAIN directories that I
- tortured for several weeks during the beta cycle. Thanks
- guys! You have no idea how much help you were to me.
-
- The MainMail System is compiled with Microsoft C 6.0, using the following
- libraries:
-
- C-TREE Ver 4.3c, Copyright (c) 1984-1989, by: FairCom Corporation.
- CXL Ver 5.1, Copyright (c) 1987-1989, by: Mike Smedley.
- MCOMM Ver 5.4 Async Library, Copyright (c) 1989,1990, by: Mike Dumdei.
- BUFIO Ver 1.0 Buffered File I/O, Copyright (c) 1989, by: Mark Turner.
-
- Plus portions of:
- GAPCDOOR Ver 6.0, Copyright (c) 1988-1992, by: Gap Development Co.
-
-
-
-
-
-
-
-
-
- Page 23
- QUESTIONS AND ANSWERS
- ---------------------
-
- Q: When my users download a packet, their last read pointers do not get
- updated even though the download was successfull. MainMail says
- 'Updating Pointers...Done' but they don't get updated.
-
- A: You probably have your compression method configured to MOVE files
- into the archive instead of ADD files. With PKZIP, that parameter is
- '-M'. Confirm that the '-M' is not in your compression method
- configuration, if it is, remove it. MainMail writes a temporary file
- called idcode.PTR to the work directory before the download starts,
- and uses this file to update the user's last read pointers after the
- download is successfull. If this file is not present after the
- download, MainMail has no idea what to update the user's last read
- pointer to, thus it does not get updated.
-
-
- Q: DSZ fails. The download goes successfully, but DSZ still returns with
- an errorlevel of 1, causing MainMail to think that the download
- failed.
-
- A: Several things can cause DSZ to fail, but the most common is the DOS
- environment variable 'DSZLOG' being set to a non-existent directory.
- DSZ finishes the download, but cannot create its log, therefore it
- exits with an errorlevel, and MainMail thinks that the download
- failed.
-
- A2: Another common problem is when you are using DSZ.COM (not DSZ.EXE) and
- your DOS environment is set too high. DSZ.COM's tiny code compilation
- causes DOS's environment to subtract from the heap space available to
- DSZ.COM. Since DSZ.COM is so close to the maximum 64k heap space
- available to .COM programs, often times if your environment is even as
- much as 300 bytes, DSZ.COM won't have enough heap space to operate.
- The solution is either to reduce your DOS environment to under about
- 300 bytes, or to use DSZ.EXE.
-
-
- Q: MainMail can't find GAPBBS.CNF.
-
- A: This error is most common when you are running MainMail from it's own
- directory. Confirm that the MainMail batch file passes the corrent
- path to the node's default directory. IE: 'MM-GAP C:\GAP'
-
-
- Q: In MMSETUP, when in the user editor, if I PgUp or PgDn through the
- users, occasionally, the 'SAVE RECORD' window pops up when I haven't
- changed anything on the screen.
-
- A: Somehow, the protocol letter in the user file was filled with a NULL.
- The user editor expects a letter or a space in that field, and places
- a space there if a NULL existed before displaying that user's record.
- Therefore, the editor thinks that the record has been edited. Run
- MMPACK and that problem won't reappear. MMPACK checks the protocol
- field for a NULL, and replaces it with a space if a NULL exists.
-
-
-
- Page 24
- APPENDIXES
- ----------
-
- Appendix A - File Formats
- -------------------------
- MainMail produces and includes the following files in a downloaded QWK packet:
-
- DOOR.ID: A text file which informs the mail reader about the door.
- DOOR.ID will always have these contents:
-
- DOOR = MainMail
- VERSION = <door version number>
- SYSTEM = Gap Ver 6.0
- CONTROLNAME = MAINMAIL
- CONTROLTYPE = ADD
- CONTROLTYPE = DROP
- CONTROLTYPE = YOURS
- CONTROLTYPE = OWN
-
- idcode.PTR: A binary file containing a single 8 byte record for each forum
- that the current user (the user in the door) is registered in.
- idcode.PTR is a standard C structure of the format described
- below. If mail reader authors wish to manipulate this file and
- include it in the upload, they are welcome to. The MainMail
- System will look for this file in an upload, and if it is found,
- MainMail will do the following:
-
- For each record contained in idcode.PTR, MainMail will:
-
- 1) Check to see if the current user is registered in the forum and
- if not, MainMail will register the user in the forum.
-
- 2) Reset the user's last message read to the message number
- contained in the idcode.PTR record.
-
- The format of idcode.PTR is:
-
- struct POINTER
- {
- unsigned int forumnumber; // forum number for this record
- unsigned int extrafield; // for future use
- long messagenumber; // high message number
- }pointer;
-
- In addition, the following 'standard' QWK files are included:
- -------------------------------------------------------------
- MESSAGES.DAT: Contains the accual messages
- xxx.NDX: Index of messages in messages.dat ('xxx' = forum number)
- PERSONAL.NDX: Index of messages TO: the current user.
- NEWFILES.DAT: Text file containing a list of new files.
- BLT-xxx.yyy: New bulletins ('xxx' = forum number, 'yyy' = bulletin number)
-
- Plus the NEWS and ENEWS files from the BBS.
-
- The following file is in the 'standard' REP packet:
- ---------------------------------------------------
- idcode.MSG: Replys uploaded into MainMail. (Similar to MESSAGES.DAT above)
-
- Page 25
- Appendix B - Caller Log Entries
- -------------------------------
- The MainMail System writes a log of its activities to the Gap BBS caller logs.
- A Gap BBS caller log entry consists of a date (A), time (B), log code (D) and
- a description (F), and in some cases, an additional field (E) which may
- contain information such as forum number, error number or a descriptor such
- as 'Open' or 'Local'.
-
- The caller log codes used by The MainMail System will be between 751 and 799.
- Codes between the numbers of 751 and 779 are normal activities, while codes
- 780 and above indicate errors. Here is an example of a caller log entry:
-
- A B C D E F
- 06/20/92 20:55 OP 773 127 Extracted Messages: 32
-
- A and B are self-explainatory, C through F are explained here.
-
- C = 'OP' for normal operation, 'ERR' if an error has occured.
- D = The Log code (see list immediately following this section).
- E = Forum number, or other number describing the operation or error.
- F = Description of entry.
-
- Sometimes (as in the example above) there is an additional number after the
- text. In our example above, the extra entry is the number of messages
- extracted.
-
- Where an extra number or field is included after the text field (F) , it will
- be described below in braces '<>'.
-
- Where there is an entry in 'E', the item written will be described below in
- square brackets '[]'.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 26
- Caller log codes and their descriptions
- ---------------------------------------
- The following are normal log entries, and will write the 'OP' code (C).
-
- 751 = Entered Select Area
- 752 = Selected Forum [forum number]
- 753 = DeSelected Forum [forum number]
- 754 = Entered Protocol Select Area
- 755 = Selected Protocol [protocol letter]
- 756 = Selected Files Scan
- 757 = DeSelected Files Scan
- 758 = Selected Bulletins Scan
- 759 = DeSelected Bulletins Scan
- 760 = Selected Expert Mode
- 761 = DeSelected Expert Mode
- 762 = Other Configuration Area
- 763 = Entered Select Compression Area
- 764 = Selected Compression [compression method number]
- 765 = New Bulletins Found: [forum number] <number of new bulletins>
- 766 = New Files Found: [forum number] <number of new files>
- 767 = Total Messages Extracted: <number of messages>
- 768 = Not Used
- 769 = Not Used
- 770 = New MainMail User
- 771 = Downloaded Packet [protocol letter]
- 772 = Uploaded Packet [protocol letter]
- 773 = Extracted Messages: <number of messages>
- 774 = Inserted Messages: <number of messages>
- 775 = Entered Message [forum number] <message number>
- 776 = Sysop Shell To DOS
- 777 = Return From DOS
- 778 = Not Used
- 779 = Not Used
- 780 = Not Used
-
- Error Codes
- -----------
- The following are error messages and will write the 'ERR' code (C).
-
- 781 = ISAM error [isam error number] <forum number>
- 782 = Open Error <filename> (This is a file not found error)
- 783 = Out Of Memory
- 784 = Error Creating Archive
- 785 = Error Uploading Packet
- 786 = Error Downloading Packet
- 787 = Not Enough Time For Download
- 788 = Error UnArchiving Packet
- 789 = Wrong BBSID In Packet
- 790 = Not Used
- 791 = Not Used
- 792 = Not Used
- 793 = Work Directory Error
- 794 = Demo version Limitation Exceeded
- 795 = Carrier Lost
- 796 = Keyboard Timeout
- 797 = Expired Time
- 798 = Invalid Key File
- 799 = Abnormal Exit
- Page 27
- ISAM ERRORS (781)
- -----------------
- When an ISAM error (log code 781) occurs, field (E) will be the accual error
- code returned form the ISAM routines. This section describes the possible
- ISAM errors.
-
- 12 = File Not Found, Could Not Open ISAM File.
- 14 = File Appears Corrupted. Run MMPACK.
- 16 = Could Not Create Index. Probably Out Of Disk Space.
- 17 = Could Not Create Data File. Probably Out Of Disk Space.
- 24 = Could Not Close File. Probably A Memory Error. Reboot.
- 25 = Bad Link In Index. Run MMPACK.
- 30 = Write Past End Of File. Run MMPACK.
- 34 = Could Not Find Previous Index Node. Run MMPACK.
- 35 = Seek Error. Probably Out Of Disk Space.
- 36 = Read Error. Run MMPACK.
- 37 = Write Error. See error 35.
- 39 = Too Many Records. (It'll never happen. We allow 4,294,836,225 records.)
- 42 = Could Not Obtain Record Lock. Load SHARE.
- 46 = File Number Already In Use. Trying Rebuild Again. (Normal in MMPACK)
- 101 = Could Not Find Record. Run MMPACK.
-
- 782 - Open errors: These usually indicate a file not found or incorrect
- path. Check your Gap or MainMail configuration for
- incorrect paths.
-
- 783 - Out Of Memory: This is a serious problem. MainMail creates buffers
- of various sizes throughout the running of the
- program. (See section of Desqview and memory earlier
- in this manual). The memory requirements of MainMail
- are such that if you have an 'out of memory'
- condition, there is usually a deaper problem. Check
- your autoexec.bat and config.sys files for TSRs that
- might be fragmenting memory, and leaving it split into
- two small sections. Reboot at the very least!
-
- 784 thru 789: These are user errors.
-
- 793 - Work Dir: Work directory errors are also serious. This means
- that MainMail could not make, or switch to the work
- directory. Probable cause is out of disk space, or
- 512 files in the root of the drive.
-
- 794 - Demo Version Limitation Exceeded: BUY MAINMAIL!
-
- 795 thru 797: These are user errors.
-
- 798 - Invalid Key File: Your MMSYS.DAT encrypted key file has been
- altered. See the section on 'Registering
- MainMail' earlier in this manual.
-
- 799 - Abnormal Exit: Anytime a fatal error has occured, it will be followed
- by this error as MainMail aborts.
-
- Not all of these codes acually indicate a problem, but the are errors
- nontheless. For example, if you were to encounter an error 1 for log code 786
- 'Error Downloading Packet', that is simply a dos errorlevel 1 from DSZ and is
- probably the user's problem.
- Page 28
-