home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-11-04 | 254.6 KB | 6,396 lines |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish Version 1.0 Reference Manual
- Copyright 1990, 1991 by Scott J. Dudley. All rights reserved.
- Created November 3, 1991.
-
-
- Documentation produced by Scott Dudley.
-
-
-
- TABLE OF CONTENTS
-
-
- LICENCE . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
-
- INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 6
- About Squish . . . . . . . . . . . . . . . . . . . . . . 6
- Features . . . . . . . . . . . . . . . . . . . . . . . . 6
- System requirements . . . . . . . . . . . . . . . . . . 8
- Squish, Money and You . . . . . . . . . . . . . . . . . 9
-
- NETWORK PRIMER . . . . . . . . . . . . . . . . . . . . . . . 10
- The Basics . . . . . . . . . . . . . . . . . . . . . . . 10
- The Outside World . . . . . . . . . . . . . . . . . . . 11
- Is There an Echo In Here? . . . . . . . . . . . . . . . 13
-
- INSTALLATION . . . . . . . . . . . . . . . . . . . . . . . . 15
- Assumptions . . . . . . . . . . . . . . . . . . . . . . 15
- Quick Installation . . . . . . . . . . . . . . . . . . . 16
- Modifying CONFIG.SYS . . . . . . . . . . . . . . . 18
- Customizing SQUISH.CFG . . . . . . . . . . . . . . 19
- Configuring NETMAIL and BAD_MSGS . . . . . . . 22
- Configuring EchoMail areas . . . . . . . . . . . . 24
- Declaring Areas in SQUISH.CFG . . . . . . . . 24
- Declaring Areas in AREAS.BBS . . . . . . . . . 25
- EchoMail Areas . . . . . . . . . . . . . . . . . . 26
- Elementary Routing . . . . . . . . . . . . . . . . . . . 27
- The Send Command . . . . . . . . . . . . . . . . . 28
- The Route Command . . . . . . . . . . . . . . . . . 29
- Wildcards . . . . . . . . . . . . . . . . . . . . . 30
- The All and World Wildcards . . . . . . . . . 30
- Address Abbreviations . . . . . . . . . . . . 32
- Examples . . . . . . . . . . . . . . . . . . . . . 33
- Batch Files . . . . . . . . . . . . . . . . . . . . . . 36
- Configuring your Mailer . . . . . . . . . . . . . . 36
- Configuring your BBS . . . . . . . . . . . . . . . 38
-
- OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . 40
- Squish Command Line Parameters and Syntax . . . . . . . 40
- Command Line Switches . . . . . . . . . . . . . . . . . 43
- Running Squish in Multipass Mode . . . . . . . . . . . . 46
-
- AREAS.BBS REFERENCE . . . . . . . . . . . . . . . . . . . . . 47
-
- SQUISH.CFG REFERENCE . . . . . . . . . . . . . . . . . . . . 48
- Configuration Options . . . . . . . . . . . . . . . . . 48
- Area Definitions . . . . . . . . . . . . . . . . . . . . 67
- Area Types . . . . . . . . . . . . . . . . . . . . 67
- Area Tags and Paths . . . . . . . . . . . . . . . . 67
- Flags . . . . . . . . . . . . . . . . . . . . . . . 68
- Split Area Definitions . . . . . . . . . . . . . . 71
-
-
-
- ARCHIVERS AND MESSAGE COMPRESSION . . . . . . . . . . . . . . 72
-
- ROUTING . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
- Generic Routing Commands . . . . . . . . . . . . . . . . 74
- Schedules . . . . . . . . . . . . . . . . . . . . . . . 77
- BinkleyTerm Routing Commands . . . . . . . . . . . . . . 80
- Dynamic Routing (FrontDoor) . . . . . . . . . . . . . . 82
-
- SECURITY . . . . . . . . . . . . . . . . . . . . . . . . . . 83
-
- MULTIZONE OPERATION . . . . . . . . . . . . . . . . . . . . . 85
-
- POINTS (4D, FAKENETS AND BOSSNODES) . . . . . . . . . . . . . 87
- Fakenet Points . . . . . . . . . . . . . . . . . . . . . 87
- 4D Points . . . . . . . . . . . . . . . . . . . . . . . 87
- Remapping . . . . . . . . . . . . . . . . . . . . . . . 88
-
- USING SQUISH-FORMAT MESSAGE AREAS . . . . . . . . . . . . . . 89
-
- SQUISH-FORMAT MESSAGE UTILITIES . . . . . . . . . . . . . . . 93
- SQPACK: Weekly maintenance . . . . . . . . . . . . . . 93
- SQCONVER: Conversion between *.MSG and *.SQ? . . . . . 94
- SQSET: Control for message deletion . . . . . . . . . . 96
- SQINFO: Diagnostics . . . . . . . . . . . . . . . . . . 97
- SQREIDX: Repair (minor) . . . . . . . . . . . . . . . . 98
- SQFIX: Repair (major) . . . . . . . . . . . . . . . . . 99
- SSTAT: Statistics generation . . . . . . . . . . . . . 100
-
- APPENDICES . . . . . . . . . . . . . . . . . . . . . . . . . 102
- Appendix A. Errorlevels . . . . . . . . . . . . . . . . 102
- Appendix B. Problem Reporting . . . . . . . . . . . . . 102
-
- GLOSSARY . . . . . . . . . . . . . . . . . . . . . . . . . . 103
-
- INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
-
-
-
- LICENCE
-
- Copyright 1991 by Scott J. Dudley. All rights reserved.
- COMMERCIAL DISTRIBUTION AND/OR USE PROHIBITED WITHOUT WRITTEN
- CONSENT FROM THE AUTHOR.
-
- Noncommercial distribution and/or use is permitted under the
- following terms:
-
- 1) You may copy and distribute verbatim copies of the Squish
- source, documentation, and executable code as you receive
- it, in any medium, provided that you conspicuously and
- appropriately publish on each copy a valid copyright notice
- "Copyright 1991 by Scott J. Dudley"; keep intact the notices
- on all files that refer to this Licence Agreement and to the
- absence of any warranty; PROVIDE UNMODIFIED COPIES OF THE
- DOCUMENTATION AS PROVIDED WITH THE PROGRAM; and give any
- other recipients of the Squish program a copy of this
- Licence Agreement along with the program. You may charge a
- distribution fee for the physical act of transferring a
- copy, but no more than is necessary to recover your actual
- costs incurred in the transfer. Under no circumstances is
- Squish to be distributed in such a way as to be construed as
- "value added" in a sales transaction, such as, but not
- limited to, software bundled with a modem or CD-ROM software
- collections, without the prior written consent of the
- author.
-
- 2) You may modify your copy or copies of Squish or any portion
- of it, and copy and distribute such modifications under the
- terms of Paragraph 1 above, provided that you also do the
- following:
-
- a) cause the modified files to carry prominent notices
- stating that you changed the files and the date of any
- change;
-
- b) cause the executable code of such modified version to
- clearly identify itself as such in the course of its normal
- operation;
-
- c) if the modified version is not a "port", but operates in
- the same hardware and/or software environment as the
- original distribution, make the original version equally
- available, clearly identifying same as the original,
- unmodified version;
-
- d) cause the whole of any work that you distribute or
- publish, that in whole or in part contains or is a
- derivative of Squish or any part thereof, to be licensed at
-
-
- Squish v1.00 Reference Manual - Page 1
-
-
-
- no charge to all third parties on terms identical to those
- contained in this Licence Agreement (except that you may
- choose to grant more extensive warranty protection to some
- or all third parties, at your option); and:
-
- e) send the complete source code modifications to Scott
- Dudley at the addresses listed below, for the purpose of
- evaluation for inclusion in future releases of Squish.
- Should your source code be included in Squish, Scott Dudley
- retains all rights for redistribution of the code as part of
- Squish and all derivative works, with appropriate credit
- given to the author of the modification;
-
- f) You may charge a distribution fee for the physical act of
- transferring a copy, but no more than is necessary to
- recover your actual costs incurred in the transfer, and you
- may at your option offer warranty protection in exchange for
- a fee;
-
- g) when distributing modified versions of Squish, you must
- not change the name of the program or the official version
- number, except to append an identifier which indicates that
- modifications have been made. For ports to other operating
- systems, the following convention must be followed:
-
- Squish v<v>.<os>.R<r>
-
- ...where <v> is the official Squish version number, <os> is
- the name of the operating system which the port runs under,
- and <r> (optional) is the OS-specific revision number. For
- example, the second OS/2 revision of Squish 1.02 must have a
- version string in this format: `Squish v1.02.OS/2.R2'
-
- Similarly, modifications to Squish which are designed to run
- under MS-DOS must also follow a naming convention. The
- version string must read:
-
- Squish v<v>.<i>.<r>
-
- where <v> is the official Squish version number, <i> is
- three initials (indicating your first, middle and last
- names), and <r> (optional) is the revision number of your
- modifications.
-
- For example, a version of Squish 2.00 modified by Joe T.
- SysOp must have a version string in this format: `Squish
- v2.00.jts.1'
-
- 3) Mere aggregation of another unrelated program with this
- program and documentation (or derivative works) on a volume
-
-
- Squish v1.00 Reference Manual - Page 2
-
-
-
- of a storage or distribution medium does not bring the other
- program under the scope of these terms.
-
- 4) You may copy and distribute Squish and its associated
- documentation (or a portion or derivative of it, under
- Paragraph 2) in object code or executable form under the
- terms of Paragraphs 1 and 2 above provided that you also do
- one of the following:
-
- a) accompany it with the complete corresponding
- machine-readable source code, which must be distributed
- under the terms of Paragraphs 1 and 2 above; or,
-
- b) accompany it with a written offer, valid for at least
- three years, to give any third party free (except for a
- nominal shipping charge) a complete machine-readable copy of
- the corresponding source code, to be distributed under the
- terms of Paragraphs 1 and 2 above; or,
-
- c) accompany it with the information you received as to
- where the corresponding source code may be obtained. (This
- alternative is allowed only for noncommercial distribution
- and only if you received the program in object code or
- executable form alone.)
-
- For an executable file, complete source code means all the
- source code for all modules it contains; but, as a special
- exception, it need not include source code for modules which
- are standard libraries that accompany the operating system
- on which the executable file runs.
-
- 5) You may not copy, sublicense, distribute or transfer Squish
- and its associated documentation except as expressly
- provided under this Licence Agreement. Any attempt
- otherwise to copy, sublicense, distribute or transfer Squish
- is void and your rights to use the program under this
- Licence agreement shall be automatically terminated.
-
- However, parties who have received computer software
- programs from you with this Licence Agreement will not have
- their licences terminated so long as such parties remain in
- full compliance, and notify Scott Dudley of their intention
- to comply with this Agreement.
-
- 6) You may not incorporate parts of Squish into a program which
- is NOT completely free for ALL users. If you wish to use
- Squish in such a way, you must obtain written permission
- from Scott Dudley before using any of the Squish code.
-
-
-
-
- Squish v1.00 Reference Manual - Page 3
-
-
-
- 7) You may not incorporate parts of Squish into a FUNCTIONALLY
- SIMILAR program, including other bulletin board packages or
- tossers/scanners. If you are writing another BBS or remote
- host package, you must contact Scott Dudley before using any
- of the Squish code.
-
- 8) The privileges granted above apply only to noncommercial
- users of the Squish software. You are a NONCOMMERCIAL user
- only if you are running Squish a private individual with no
- "sponsors", "backers", and only if your BBS is not making
- (or helping to make) a profit. You are a COMMERCIAL user if
- you make a profit from running your BBS. You are also a
- COMMERCIAL user if your BBS is being run by (or for) any
- corporation, government, company, foundation, church,
- school, or any other organization You are also a COMMERCIAL
- user if your system is used to advertise such a commercial
- organization for the purposes of making a profit.
-
- This licence only governs NONCOMMERCIAL users. If you are a
- COMMERCIAL user, you are not licensed to use or distribute
- this software without the prior written consent of Scott
- Dudley. If you wish to run Squish as a commercial user,
- please see the section below on site licences.
-
- 9) This licence may be revoked by Scott Dudley without prior
- notice.
-
- NO WARRANTY
-
- BECAUSE SQUISH IS LICENSED FREE OF CHARGE, WE PROVIDE ABSOLUTELY
- NO WARRANTY. EXCEPT WHEN OTHERWISE STATED IN WRITING, SCOTT
- DUDLEY AND/OR OTHER PARTIES PROVIDE SQUISH "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 AS TO THE
- QUALITY AND PERFORMANCE OF SQUISH, AND THE ACCURACY OF ITS
- ASSOCIATED DOCUMENTATION, IS WITH YOU. SHOULD SQUISH OR ITS
- ASSOCIATED DOCUMENTATION PROVE DEFECTIVE, YOU ASSUME THE COST OF
- ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- IN NO EVENT WILL SCOTT DUDLEY BE RESPONSIBLE IN ANY WAY FOR THE
- BEHAVIOUR OF MODIFIED VERSIONS OF SQUISH. IN NO EVENT WILL SCOTT
- DUDLEY AND/OR ANY OTHER PARTY WHO MAY MODIFY AND REDISTRIBUTE
- SQUISH AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
- INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL,
- INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
- INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR
- DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD
- PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-
-
-
- Squish v1.00 Reference Manual - Page 4
-
-
-
- PROGRAMS) SQUISH, EVEN IF SCOTT DUDLEY HAS BEEN ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
-
- You can contact the author at any of the addresses listed below:
-
- FidoNet: 1:249/106
- IMEXnet: 89:487/106
- Internet: sjd@f106.n249.z1.fidonet.org
- CServe: >INTERNET:sjd@f106.n249.z1.fidonet.org
- BBS: (613) 389-8315, 14.4K/HST
-
- Surface mail:
-
- 777 Downing St.
- Kingston, Ont.
- Canada K7M 5N3
-
- The author can also be reached through the EchoMail conferences
- called MUFFIN (Max support) and TUB (Squish support).
-
- Sending correspondence via electronic mail is strongly preferred.
- However, if you expect to receive a reply via surface mail,
- please enclose a self-addressed, stamped envelope. Maximus users
- outside of Canada should include an international postal reply
- coupon instead of a stamp.
-
- DO NOT ATTEMPT TO CONTACT THE AUTHOR BY TELEPHONE! VOICE SUPPORT
- WILL NOT BE PROVIDED FOR NONCOMMERCIAL USERS!
-
- Please feel free to contact the author at any time to share your
- comments about this software and/or licensing policies.
-
- Our thanks to Richard Stallman at the Free Software Foundation,
- Inc. and BBS Co. for most of the wording of this licence.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 5
-
-
-
- INTRODUCTION
-
-
- About Squish
-
- Squish is a multi-featured, FidoNet-compatible EchoMail
- processor. Squish incorporates most of the common EchoMail
- functions into one integrated package, including tossing,
- scanning, packing, point remapping and topic linking.
-
- Although Squish was designed to be used with Maximus-CBCS 2.0 or
- above, Squish is compatible with other software which supports
- either the Squish or the *.MSG message base standards. Squish is
- not merely a "giveaway" utility; rather, Squish is a full-
- featured conference manager, making it highly competitive with
- most stand-alone packages on the market today.
-
-
- Features
-
- Some of the features in Squish version 1.0 include:
-
- * One-pass tossing and scanning, with full support for
- "passthru" areas. Outbound messages can be built directly
- from the inbound *.PKT files, without needing to stop over
- in the message areas.
-
- * Internal support for both BinkleyTerm and FrontDoor-style
- routing.
-
- * Squish supports both the standard *.MSG format and the
- proprietary, flat-file *.SQ? format on an area-by-area
- basis.
-
- * Superior multi-zone operation. Primary addresses can be
- selected on an area-by-area basis, as can SEEN-BYs and
- numerous other features. It's now easily possible (and
- practical!) to use a single configuration file for multiple,
- unrelated FidoNet-technology networks.
-
- * True support for the BinkleyTerm "busy flags". Instead of
- remaining blocked while Binkley is sending mail to another
- node (and therefore holding up processing), packets are
- simply queued for later use. All processing is performed in
- a separate working directory, and packets are only
- transferred to the Binkley outbound area as necessary.
- Since Squish stays out of the way of other mail-handling
- tasks, Squish offers a significant performance advantage
- over other mail processors.
-
-
-
- Squish v1.00 Reference Manual - Page 6
-
-
-
- * Areas can be defined in AREAS.BBS for compatibility with
- other programs, but areas can also be defined in the main
- Squish configuration file.
-
- * Support for all archiving and dearchiving programs, past and
- future, through the use of a flexible archiver control file.
-
- * Verbose binary statistical information (optional). Squish
- provides enough information for external utilities to
- provide a 100% accurate billing report for NECs or hubs,
- based on mail volume.
-
- * Point support, running as either a bossnode or a point, for
- both 4D and "fakenet" points.
-
- * Support for the "2+" 4D packet header proposal, including
- zone and point numbers.
-
- * "Point directory" support for BinkleyTerm 2.50 and above.
- Squish is the first publicly-available program to support
- the Binkley point directories both conveniently and
- efficiently.
-
- * Squish also features a built-in node remapper and topic
- linker. The remapper is not limited to points; it also
- supports wildcards and soundex name matching. The topic
- linker supports both *.MSG and *.SQ? areas, so no external
- reply linker is required.
-
- * Squish can optionally swap to XMS, EMS or disk when running
- external programs. Squish can therefore be used in many
- tight-memory situations, since Squish will only occupy 3K of
- memory when swapped out. (DOS only.)
-
- * Squish runs under OS/2 in protected mode, in addition to
- running under DOS in real mode. The OS/2 version of Squish
- includes a special serialization feature to allow Squish to
- be run conveniently in a multi-line environment.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 7
-
-
-
-
- System requirements
-
- Although Squish was designed to be as generic as possible, the
- following system configuration is required as a minimum:
-
- * An IBM PC, XT, AT or PS/2, or a 100% compatible.
-
- * A hard drive, with at least two megabytes of free space for
- the installation, plus space to hold the inbound packet
- files, local message areas, and generated packets.
-
- * Software supporting either the *.MSG or *.SQ? message
- formats.
-
- * A front-end which is compatible with either BinkleyTerm or
- FrontDoor.
-
- In addition, Squish-DOS requires MS/PC-DOS 3.0 or above, and
- Squish-OS/2 requires OS/2 (IBM or MS) 1.2 or above. If you wish
- to handle compressed mail, Squish will also require an external
- archiving program.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 8
-
-
-
-
- Squish, Money and You
-
- In general, Squish is a freeware program. If you are a
- noncommercial user and you abide by the terms given in the
- licence, there is NO CHARGE for running Squish. NONCOMMERCIAL
- USERS ARE STILL WELCOME TO RUN SQUISH WITHOUT PAYING A CENT.
-
- Unlike other software, this program has no crippled features,
- extra bells'n'whistles or "registration incentives". There is
- one simple difference between the commercial and noncommercial
- versions of Squish: the commercial version entitles you to
- legally use Squish in a commercial environment.
-
- If you are a COMMERCIAL USER as defined in point 8) of the
- licence above, you must obtain a licence before using Squish.
- Please see ORDER.FRM for more information. If you did not
- receive a copy of the order form with this document, contact the
- author at one of the addresses listed in the licence for more
- information.
-
- If you are a NONCOMMERCIAL user as defined in the licence above,
- you are welcome to use Squish for free. However, Squish is an
- extremely large and complex program, and simply maintaining the
- existing code is consuming a large percentage of my time.
- Donations of any value (or even just a postcard) will be gladly
- accepted. However, noncommercial donations are on a VOLUNTARY
- basis and are NOT REQUIRED.
-
- However, BOTH commercial and noncommercial users must abide by
- several restrictions before using Squish. The main points in the
- licence are:
-
- * You may not distribute Squish on a CD-ROM, WORM, or as any
- other form of a "value added" good in a sales transaction.
- You may not bundle Squish with other software without prior
- written permission of the author.
-
- * You may modify Squish, but only under the conditions given
- in the licence.
-
- * You may not incorporate parts of Squish into another BBS
- package.
-
- * You may not incorporate parts of Squish into another program
- which is not completely free for all users.
-
- Other than the above, there are few restrictions on the use of
- Squish. Please read the licence agreement carefully, since
- additional restrictions or qualifications may apply to you.
-
-
- Squish v1.00 Reference Manual - Page 9
-
-
-
- NETWORK PRIMER
-
- This section is intended as a primer for SysOps who are new to
- FidoNet or a FidoNet Technology Network (FTN). This section
- covers many of the terms and concepts which are required for
- everyday FidoNet operations. Those who are familiar with
- EchoMail and mail routing should feel free to skip on to the next
- section, entitled "Installation".
-
-
- The Basics
-
- The term "FidoNet" refers to an amateur electronic mail network,
- run collectively by a group of system operators. In the
- beginning, FidoNet started out as a simple system for exchanging
- private messages between different bulletin boards. Since then,
- FidoNet has grown into a full-fledged electronic mail and
- conferencing network which has members in most countries of the
- world.
-
- FidoNet itself is organized into a numerical hierarchy of
- "zones", "regions", "nets", "nodes" and "points". Each member of
- FidoNet, individually known as a "node", can be uniquely
- identified by that system's zone, net, node and point numbers.
- To define each term:
-
- Zones are wide geographical areas, usually covering one or more
- continents. At the time of writing, FidoNet currently has six
- zones: zone 1 (North America), zone 2 (Europe), zone 3
- (Oceania), zone 4 (South America), zone 5 (Africa) and zone 6
- (Asia).
-
- Nets cover a much smaller area than zones; a net usually
- encompasses a large city and the surrounding area. There are
- usually many nets within each zone, each of which represents a
- small geographical area within that zone.
-
- Nodes are individual systems. Most nodes consist of bulletin
- board systems, although a few nodes are devoted exclusively to
- handling mail. If you wish to become a member of FidoNet and you
- are running a BBS, this is probably where you will start.
-
- Points are users on an individual system. Normally, points do
- not run full-time systems, since they simply send and receive
- mail through their "bossnodes" (the nodes where the points pick
- up their mail). As the size of the network grows, points are
- becoming increasingly popular. If you don't wish to run a full-
- time system, this is probably where you'll start.
-
-
-
-
- Squish v1.00 Reference Manual - Page 10
-
-
-
- These four terms can be combined to give a "network address"
- which identifies any one node in the network. The format of a
- FidoNet address is as follows:
-
- zone:net/node[.point]
-
- For example, given a user in zone 1, in net 249, with a node
- number of 106, and a point number of 2, that user's full address
- would be '1:249/106.2'. The point number is optional, so both
- 1:249/106 and 1:249/106.0 refer to the bossnode of 1:249/106.2.
-
- This mode of addressing is sometimes referred to as "4D" or four-
- dimensional, since it includes the four basic elements of a
- network address.
-
-
- The Outside World
-
- Like other electronic mail systems, it's possible to enter a
- private message on a FidoNet system and have that message be
- delivered to its final destination in a short period of time.
- FidoNet systems "talk" with each other over telephone lines,
- using one or more sophisticated handshaking protocols. To get a
- message (known in this context as "NetMail") from point "A" to
- point "B", the following sequence of events has to occur:
-
- * The message is created. Most Fido-compatible software
- packages can be used to generate a private message to a user
- on another node. The destination address is entered, using
- the standard 4D addressing scheme.
-
- * The on-disk message is then converted to packet (or *.PKT)
- form. If you are running BinkleyTerm, this will be
- performed by Squish after a user logs off. If you are
- running FrontDoor or a similar mailer type, this will be
- performed by the mailer itself on startup, or while your
- mailer is connected to other systems.
-
- There are four reasons for converting a message into a
- packet:
-
- 1) The packet structure is much more flexible than the
- local message structure. All of the fields (such as
- the To:, From: and Subject: fields) in a packet are
- variable length, whereas the fields in stored messages
- are fixed-length.
-
- 2) Packets are the "compatibility layer". Since all
- systems convert messages to the *.PKT format before
- sending them to another system, there are few
-
-
- Squish v1.00 Reference Manual - Page 11
-
-
-
- compatibility problems. This means that systems can
- store their local message bases in different formats,
- but still be able to exchange messages easily. In
- addition, more than one message can be stored in a
- single packet. Sometimes hundreds (or even thousands)
- of messages can be stored in a single packet.
-
- 3) Messages in a packet can have a different address from
- the packet itself. The packet itself has a destination
- (the system where you'll be sending that packet
- directly to), but each message has an individual
- destination address. This is useful, for example, when
- a long-distance call is required to connect with
- certain parts of the network. The message's final
- destination always stays the same, but by sending the
- packet to someone who is local to you (and then having
- that someone send it to another local system, and so
- on), costs can be controlled quite effectively. Since
- the interim destination of packet doesn't need to be
- the same as the final destination of the message,
- routing of messages via the lowest-cost route can be
- performed.
-
- 4) Packets can be given a "flavour". A "flavour" (or a
- behaviour characteristic) helps your system decide what
- to do with an individual message. For example, the
- "hold" flavour instructs your system to hold the
- message and wait for the destination system to call and
- pick it up. Other flavours include "crash" (send a
- message directly to the destination), "direct" (same as
- crash), and "normal" (wait for later routing commands).
-
- Packets always have an extension of *.PKT. (Qualifier: if
- you are running a BinkleyTerm system, they may have an
- extension of *.HUT, *.OUT, *.CUT, or *.DUT on your local
- system, but Binkley always changes them to *.PKT files
- before they are sent to another system.)
-
- * After the packet is created, it can be optionally archived
- using a file compression utility. Compression is useful
- when transferring large volumes of mail or sending to long-
- distance sites, since compressing mail saves both time and
- money.
-
- * The system which created the message then tries to call the
- destination system. Obviously, if both systems are fairly
- busy, this may take a while. Messages are sent back and
- forth between systems through the use of mailers, also known
- as "front ends". Mailers call out to deliver waiting mail,
-
-
-
- Squish v1.00 Reference Manual - Page 12
-
-
-
- handle incoming messages and files, and in general,
- supervise the entire file transfer.
-
- * After the two mailers connect (using one of several FidoNet
- protocols), waiting mail and files are transferred between
- the two systems.
-
- * After the transfer completes, the receiving system then
- tries to import the message. If the packet was compressed
- by the sender, it will be decompressed. The *.PKT files
- will then be imported (otherwise known as "tossed") into the
- local message base, ready for the recipient to read.
-
- Although transferring NetMail can involve much more than just
- what is given above, this should give you a grasp on NetMail
- fundamentals.
-
-
- Is There an Echo In Here?
-
- In the beginning, FidoNet consisted solely of nodes exchanging
- NetMail. The only way to get a message from "here" to "there"
- was to send a private NetMail message. However, a technology
- called "EchoMail" was developed in late 1985; EchoMail is
- analogous to a public message area or conference, but EchoMail
- areas (sometimes known as "echoes") are shared among several
- other systems.
-
- EchoMail is organized into different groups of echoes, each with
- a different topic. For example, the topics of FidoNet echoes
- range from Maximus Support to deep-sea fishing and many more
- special-interest groups. To facilitate topic-oriented EchoMail,
- each echo must given a tag (or area name). This tag is used to
- uniquely identify that EchoMail area when transferring messages
- with other systems. (It doesn't matter what you call the echo on
- YOUR system, as long as you are using the same tag as everyone
- else.) Area tags are one word only, although they can include
- periods and underscores. To start receiving an echo area, you
- need to know the tag of that area. For example, the area tag for
- the echo dealing with hardware and other technical issues is
- "TECH".
-
- EchoMail messages are normally public, and they are entered in a
- message area just like a normal message. EchoMail messages also
- look like normal, locally-entered messages, but with some special
- control information at the bottom of each message.
-
- After an EchoMail message is saved, an EchoMail utility (such as
- Squish) is invoked to "scan" that message out to the rest of the
- network. Unlike NetMail, EchoMail areas have an electronic
-
-
- Squish v1.00 Reference Manual - Page 13
-
-
-
- topology. Some echoes are very large, and as such, the cost to
- directly send a message to each system which carried that echo
- would be prohibitive. Instead, each system carrying that echo
- only transfers EchoMail messages to neighbouring systems. (The
- neighbour you receive an echo from is also known as your "feed".)
- EchoMail messages get sent from the originating system to its
- neighbours, and from those systems to their neighbours, and so
- on. Despite this "hoppity-hop" method of transferring messages,
- EchoMail is fairly quick; it can often take less than three days
- for a message to travel from the USA to Australia and back.
-
- Just like NetMail, echoes are sent to other systems in packets.
- EchoMail messages are almost always compressed, since most of the
- popular echoes have a daily throughput anywhere from 20 to 200
- messages per day.
-
- Squish handles EchoMail automatically, just like NetMail.
- However, you have to tell Squish the names of the areas that you
- wish to carry, in addition to who your "neighbours" are for each
- echo. (Information on doing this is covered in greater detail in
- the installation section.)
-
- There is much more to both NetMail and EchoMail than mentioned
- above; however, you should now be comfortable enough with FidoNet
- terminology to start installing Squish itself.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 14
-
-
-
- INSTALLATION
-
- Assumptions
-
- Before proceeding any further, you should already have a FidoNet-
- compatible front end installed, in addition to a software package
- which reads either *.MSG or *.SQ? format message areas. In
- addition, you should have a set of working batch files for your
- system.
-
- This installation guide only covers the bare essentials, and it
- glosses over what is required to run Squish as an EchoMail "leaf
- node" (a system which only transfers mail with one other system).
-
- Before reading this section, you should be at least somewhat
- familiar with network terminology and operations; if not, read
- over the prior section entitled "NETWORK PRIMER". A minimal
- knowledge of batch files is helpful but not completely necessary.
-
- The quick installation also assumes that you will be using the
- *.MSG format for storing messages. If you wish to use the Squish
- format, please see the section entitled "USING SQUISH-FORMAT
- MESSAGE AREAS".
-
- This installation procedure doesn't deal with any advanced
- topics, so most of the command examples have been simplified to
- make the installation process easier. For full descriptions of
- each command, please consult the reference material contained
- later in this manual.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 15
-
-
-
-
- Quick Installation
-
- To install Squish, your first task is to PRINT OUT AND READ THIS
- DOCUMENT. At the very least, you should print the section on
- installation.
-
- After reading the installation section at least once, you should
- decompress all of the Squish files from the distribution archive
- into a separate directory. You can place Squish anywhere you
- desire, although all of the examples in this manual use C:\Squish
- as the base directory.
-
- After everything has been decompressed, you will need to load an
- ASCII text editor to modify the Squish configuration files. Any
- plain text editor will do, including QEdit, DOS 5.0's EDIT, any
- word processor in "non-document" mode, or even EDLIN.
-
- The four main Squish configuration files are:
-
- SQUISH.CFG
-
- This is the main configuration file. Information about your
- system is kept in here, including your system addresses,
- passwords, run-time options, and (optionally) EchoMail area
- definitions.
-
- ROUTE.CFG
-
- This is the control file used for mail routing and
- schedules. This file is used for both FrontDoor and
- BinkleyTerm-style systems, although it plays only a minimal
- role when used with FD.
-
- COMPRESS.CFG
-
- This holds information about all of the archiving programs
- on your system. Squish uses this information to
- automatically identify the type of incoming archives, and it
- uses the commands within to add to and extract from
- archives. This file is compatible with the compression
- configuration file used by Maximus-CBCS 2.0 or above.
-
- AREAS.BBS (optional)
-
- AREAS.BBS has historically been used to define EchoMail
- conference information, including the name of the
- conference, where to store the local message base, where to
- send the messages to, and so on. Squish fully supports the
- AREAS.BBS format; however, Squish also supports message area
-
-
- Squish v1.00 Reference Manual - Page 16
-
-
-
- definition in SQUISH.CFG. For flexibility, areas can be
- declared in both AREAS.BBS and SQUISH.CFG, which provides
- for complete compatibility with all existing software.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 17
-
-
-
-
- Modifying CONFIG.SYS
-
- Before modifying the Squish configuration files, you must first
- make sure that your system has been configured properly. Squish
- is a disk-intensive program, and it keeps a number of files open
- at the same time. To make sure that your system is set up to
- allow this, use an ASCII text editor to edit C:\CONFIG.SYS.
-
- Inside CONFIG.SYS, there should be a line which reads 'FILES=n',
- where 'n' is a number from 8 through 255. If this line doesn't
- exist, it should be added. For Squish, you must make sure that
- 'n' is no less than 30. If you are running a multitasking
- system, even more file handles (50 or 60) may be necessary.
- Having more than 30 file handles is allowable, but having less
- than 30 will certainly cause problems.
-
- After you have changed your FILES statement, save CONFIG.SYS.
- Since CONFIG.SYS is only read once when the computer starts up,
- you must reboot to make sure that your changes are recognized by
- the operating system.
-
- WARNING! IF YOU INTEND TO USE SQUISH-FORMAT MESSAGE AREAS IN A
- MULTITASKING OR NETWORK ENVIRONMENT, YOU *MUST* INSTALL
- SHARE.EXE! Squish uses SHARE for file and record locking, and if
- two programs are accessing the flat-file Squish format without
- SHARE loaded, message base corruption will occur.
-
- To install SHARE.EXE, either add this line:
-
- INSTALL=C:\DOS\SHARE.EXE
-
- to your CONFIG.SYS, or add the following line:
-
- SHARE
-
- to the end of your AUTOEXEC.BAT. Both methods have the same
- effect. (Note: DOS 5.0 users must install SHARE by the
- CONFIG.SYS method.)
-
- Novell users: Squish doesn't directly support Novell record
- locking. However, if you load INT2F.COM (which maps Squish's
- file locking calls to a Novell-compatible format), you won't need
- to install SHARE.EXE.
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 18
-
-
-
-
- Customizing SQUISH.CFG
-
- After modifying CONFIG.SYS, you can now start configuring Squish
- itself. For starters, SQUISH.CFG needs to be modified to suit
- your system. Although you will see many options in the
- configuration file, only a few need to be modified to get a
- minimal Squish system up and running. When performing a new
- installation, most of the options in SQUISH.CFG should be left
- alone, since the defaults are acceptable in most cases. However,
- you will need to modify the following keywords:
-
- Address
-
- This keyword must be modified to match your system's actual
- network address. If you are already a member of FidoNet or
- some other network, include your full 4D address here,
- including your zone, net and node number. If you do not
- have a node number, set your address to "1:-1/-1" until you
- receive an official address.
-
- If you are running a point system, please see the SQUISH.CFG
- reference for more information on configuring Squish for use
- in a point environment.
-
- NetFile
-
- This keyword tells Squish where to find inbound files. This
- is commonly referred to as a "NetFile path" or an "inbound
- directory", since this is where your front end places
- inbound *.PKT files and compressed archives.
-
- AreasBBS
-
- This keyword points Squish to the location of an AREAS.BBS
- file. This file is optional, so if you do NOT have any
- software which uses an AREAS.BBS, this statement can be
- commented out. If you are new to FidoNet, please see the
- section entitled "Configuring EchoMail Areas" to decide
- which format is best for you.
-
- ArcmailAttach
-
- If you are running FrontDoor, InterMail, D'Bridge, or any
- other front-end which requires a "NetMail attach message" to
- send files, then this keyword should be enabled.
-
- Otherwise, if you are running BinkleyTerm or any other
- program that uses the "outbound area" concept, this
- statement should be commented out (disabled).
-
-
- Squish v1.00 Reference Manual - Page 19
-
-
-
- Compress
-
- The "Compress" keyword specifies the location of the
- archiver configuration file. If you wish to put
- COMPRESS.CFG somewhere else (or if you wish to use a
- compatible COMPRESS.CFG, as used by Maximus-CBCS), you can
- specify an alternate path and filename here. Otherwise,
- this option should be left alone.
-
- Routing
-
- The "Routing" keyword gives the location of your routing
- control file. If you are using the default configuration,
- you can leave this as is.
-
- Outbound
-
- This keyword specifies a directory to use for building
- packets and file attaches. This keyword is required for
- both FrontDoor and Binkley-style systems.
-
- In a Binkley environment, this should be the "root name" of
- the BinkleyTerm outbound area.
-
- In a FrontDoor environment, this will be the base directory
- used for building packets and compressed mail archives.
-
- No directory extensions should be given for this keyword.
- For multi-zone systems, Binkley adds an extension to the
- base directory (to separate the mail for each zone).
- However, Squish will add the OUTBOUND.### zone extensions
- AUTOMATICALLY, you should just specify the path (without an
- extension). Squish will also create a private work area
- (with a .SQ extension) for both Binkley and FrontDoor-style
- systems.
-
- LogFile
-
- The LogFile keyword specifies the path and filename of the
- Squish log file. This log file uses a Binkley and Maximus-
- compatible format, so the logs can all be stored in one file
- if you so desire.
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 20
-
-
-
- Origin
-
- The Origin keyword is only required if you are not using
- AREAS.BBS. (AREAS.BBS includes a default origin line, so
- you can skip this keyword if you are using AREAS.BBS.)
- Squish needs a default origin line to place at the end of
- messages, just in case a message being scanned didn't
- already contain one. Generally, this line should contain
- the name of your system, your location, and your phone
- number. The text in your origin line text should be no more
- than 60 characters (letters/numbers) long.
-
- For a normal system, the above changes should be enough to get
- your system up and running. Later, once your system is running
- reliably, the control files can be modified to suit your personal
- preferences.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 21
-
-
-
-
- Configuring NETMAIL and BAD_MSGS
-
- After customizing the main configuration file, you need to
- declare at least three messages areas. For starters, a NetMail
- area is required; this is where messages to and from other
- systems are stored. Squish requires at least one netmail area.
- Secondly, a bad messages area is also required, since Squish
- needs a place to store invalid messages.
-
- Netmail areas are declared by placing a 'NetArea' line in
- SQUISH.CFG. A sample NetArea declaration might look like this:
-
- NetArea NETMAIL C:\Max\Msg\Net
-
- 'NetArea' is the area type. This tells Squish that the area
- contains netmail.
-
- The next part of the line is a one-word 'area tag', which is
- simply a short form for the area name. In the case above,
- 'NETMAIL' is the area tag. All areas must be given a unique area
- tag, but aside from that, the area tag you give to a NetMail area
- (whether it be 'NETMAIL' or 'WOMBAT') is of little importance.
-
- Finally, the last item in the line is the path to the area
- itself. For *.MSG format areas, this should be a separate
- directory on your hard drive. Squish will create nonexistent
- directories when importing messages, so you don't have to create
- the directory right away.
-
- * Tip for advanced users: A Squish-format netmail area can be
- used instead of *.MSG. For more information, see the
- documentation for 'NetArea' in the SQUISH.CFG reference.
-
- Next, an area to hold bad messages must be created. This area
- will be used to store insecure messages, messages destined for
- unknown areas, and other messages that Squish can't process. The
- format for a 'BadArea' line is very similar to that of netmail
- areas:
-
- BadArea BAD_MSGS C:\Max\Msg\Bad
-
- 'BadArea' is the area type, and it tells Squish that the area
- will be used to hold bad messages. WARNING! If you are using
- MsgTrack or some other message-bouncing utility, ensure that each
- program has its own "bad messages" area. Otherwise, Squish will
- erroneously attempt to toss bounced messages.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 22
-
-
-
- The next part of the line is the area tag, which has the same
- restrictions as the tag for netmail areas. 'BAD_MSGS" is
- suggested for the area tag, but any other single word will do.
-
- As with netmail areas, the last part of the line contains the
- path to your bad messages directory. Again, the bad messages
- area defaults to the *.MSG format, so this should be the name of
- a separate directory on your hard drive.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 23
-
-
-
-
- Configuring EchoMail areas
-
- After creating the definitions for both NETMAIL and BAD_MSGS, the
- next task is to define one or more EchoMail areas. Squish
- supports two different methods of declaring echoes; the best
- method for you depends on your system configuration.
-
- First of all, EchoMail areas can be declared in SQUISH.CFG. The
- format for defining echoes is almost identical to the formats for
- NETMAIL and BAD_MSGS, so it's easy to remember. In addition,
- several Squish-specific flags can only be used in SQUISH.CFG.
-
- Secondly, areas can also be declared in AREAS.BBS. This file is
- the "standard" for EchoMail area definitions, and many other
- programs support AREAS.BBS. The format of AREAS.BBS is less
- flexible than the format of SQUISH.CFG, so several Squish-
- specific options are not available when using AREAS.BBS.
- However, if you are converting from another program and already
- have an AREAS.BBS, this is probably the wisest option.
-
- * Tip for advanced users: Squish can handle areas defined in
- both SQUISH.CFG and AREAS.BBS. You can even declare one
- area in both places, if you need compatibility with other
- programs and also Squish-specific features. For more
- details, please see the EchoArea portion of the SQUISH.CFG
- reference.
-
-
- Declaring Areas in SQUISH.CFG
-
- If you have decided to declare your EchoMail areas in SQUISH.CFG,
- then read on. Otherwise, skip ahead to "Elementary Routing".
- Remember, if you are not using AREAS.BBS to define your echoes,
- you must enable the 'Origin' statement in SQUISH.CFG. (See the
- "Customizing SQUISH.CFG" section for more details.)
-
- Defining an EchoMail area in SQUISH.CFG is similar to defining
- netmail and bad message areas. A sample echo definition might
- look like this:
-
- EchoArea MUFFIN E:\Msg\Muffin 1:123/456
-
- 'EchoArea' tells Squish that the area we are defining is an
- EchoMail area.
-
- 'MUFFIN' is the tag for this area. Unlike the tags defined for
- NetMail and bad message areas, the tag that you specify for
- EchoMail areas is important, since the tag is used as the area
- name when sending EchoMail to other systems. Area tags are
-
-
- Squish v1.00 Reference Manual - Page 24
-
-
-
- usually short, and spaces are not allowed. You must ensure that
- your system is using the same echo tag as your feed, so it's best
- to call your feed and get the required tag information in
- advance.
-
- 'E:\Msg\Muffin' is the path to the EchoMail area. By default,
- echoes use the *.MSG format, so a separate directory is required
- for each echo. If this directory does not exist, Squish will
- create it automatically.
-
- Finally, '1:123/456' is the address of the system from which you
- receive the echo. This tells Squish that it's okay to accept
- mail from that address, and it also tells Squish to send locally-
- entered messages to that system. As many addresses can be listed
- as desired, with a space between each address. If you are a leaf
- node, you'll only need to list the address of your feed. Full 4-
- dimensional addresses (zone, net, node and point) are acceptable.
-
- In addition, a number of special flags can follow the addresses.
- These flags can be used for many purposes, including declaring
- the area to be Squish format, defining a primary address, or
- declaring an area as 'passthru'. For more information, please
- see the EchoArea portion of the SQUISH.CFG reference.
-
- Any number of EchoMail areas can be defined, limited by available
- memory. However, each area must be defined on a separate line in
- the configuration file.
-
-
- Declaring Areas in AREAS.BBS
-
- If you have already defined your EchoMail areas in SQUISH.CFG,
- then skip ahead to "Elementary Routing". Otherwise, read on.
-
- AREAS.BBS is the de facto standard for defining EchoMail areas,
- so you'll have the highest degree of compatibility if you declare
- your areas using this method. AREAS.BBS contains two separate
- components: a default origin line, and also a number of echo
- definitions.
-
-
-
- Default Origin Line
-
- The very first line of AREAS.BBS is interpreted in a special
- manner. The line should have the following format:
-
- <default_origin>! <sysop_name>
-
-
-
-
- Squish v1.00 Reference Manual - Page 25
-
-
-
- <default_origin> is the default origin line to use for all of
- your echoes. Normally, this should include your system name,
- location, and phone number, or anything else that will fit in
- under 60 characters.
-
- <sysop_name> should be your name. For historic purposes, this
- should be separated from the default origin line by an
- exclamation point. Squish doesn't use the name you specify here,
- but it should be included for compatibility with other programs.
-
- For example, the first line in AREAS.BBS might look like this:
-
- MyBBS * Anytown, Anystate * (123) 456-7890! Joe SysOp
-
- In this example, the default origin line would be "MyBBS *
- Anytown, Anystate * (123) 456-7890", and the SysOp name would be
- "Scott Dudley".
-
-
- EchoMail Areas
-
- Following the default origin line can be any number of EchoMail
- areas. All echoes must each be defined on a separate line, using
- the following format:
-
- <path> <tag> <nodes>
-
- <path> is the name of the directory in which the *.MSG files are
- to be kept. As with other *.MSG-type areas, each echo should
- have its own separate directory. If the directory does not
- exist, it will be automatically created.
-
- <tag> specifies the area tag for this area.
-
- <nodes> is a list of zero or more nodes to which will be sending
- the specified echo to you. Normally, for a leaf node, you will
- only be sending the echo to one place: to your feed. All of the
- addresses go after the area tag, with at least one space between
- each address.
-
- For example, the following line could be used as an entry for the
- MUFFIN echo:
-
- C:\MAX\MSG\MUFFIN MUFFIN 1:123/999 888 777
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 26
-
-
-
-
- Elementary Routing
-
- After you have configured the EchoMail areas available on your
- system, your attention should be turned to mail routing. In
- Squish, routing is based on the idea of schedules and control
- files. A schedule is simply a set of routing commands which can
- be performed as a single unit. Schedules can be run either all
- day, during certain times of the day only, or on manual request.
- Most nodes will only need one schedule, since the majority of
- systems use the same set of routing commands 24 hours a day.
-
- Commands in ROUTE.CFG have three purposes:
-
- * Firstly, routing can direct NetMail from one system to
- another. (Normally, EchoMail is not routed.) For example,
- routing commands could redirect all NetMail destined for
- 1:123/456 to 1:987/654. If 1:987/654 is a local call, but
- 1:123/456 is not, then it's obviously useful to send mail
- via the system which is local to you. For ArcmailAttach
- systems, this feature is usually handled by your mailer.
-
- * Secondly, routing can control whether or not mail is
- compressed. When sending large volumes of EchoMail,
- external programs such as ARC and ZIP can be used to
- compress mail packets. This reduces the amount of time it
- takes to transmit mail, which in turn reduces long-distance
- phone charges.
-
- * Finally, routing also controls the 'flavour' of outbound
- mail. All outbound mail has a flavour (or priority) which
- controls when the mail gets sent. By default, Squish
- creates all outbound packets with a "normal" flavour.
- However, the routing commands can be used to change this
- flavour to "crash" (send this mail immediately), "direct" (a
- synonym for crash), or "hold" (do not call out; hold mail
- for pick-up). The flavour of messages can also be changed
- by your mailer (depending on when phone rates are the
- cheapest, for example), but ROUTE.CFG is used to assign a
- default flavour to each outbound packet.
-
- In general, ROUTE.CFG starts off with a section of global routing
- commands (which are run every time Squish scans the netmail
- area), followed by a set of zero or more schedules. The commands
- within the global section and each schedule all use the same
- format; the only difference is when the commands are executed.
-
- No matter what, commands in the global section of the routing
- control file are ALWAYS executed. Even when explicitly running a
- different schedule, the global commands are still run first.
-
-
- Squish v1.00 Reference Manual - Page 27
-
-
-
- Therefore, the global section should contain commands that you
- want to run every time that Squish is executed. Everything
- between the first line of ROUTE.CFG and the first 'Sched'
- statement is considered to be a global command and is treated
- accordingly.
-
- Since most nodes will not require schedules, only basic routing
- information is described here. Most nodes will have all of their
- routing commands in the global section of the routing file, which
- is what this quick installation describes.
-
- Routing commands in ROUTE.CFG are executed from top to bottom in
- sequence. In other words, if you place a certain routing command
- before another, you can be assured that Squish will process each
- command in the order you specified.
-
- By default, unless routing commands are used for a given node,
- mail will be sent directly to that node, uncompressed, using the
- normal message flavour. However, various routing commands can be
- used to modify this behaviour.
-
-
- The Send Command
-
- The most basic form of routing is the 'Send' command. This
- command instructs Squish to compress mail for the specified
- nodes, and to give the resulting mail a flavour. The Send
- command does NOT perform any readdressing; it simply modifies the
- flavour and compression of the mail, without changing that mail's
- destination.
-
- The format for the Send command is as follows:
-
- Send <flavour> <node> [<nodes>...]
-
- <flavour> specifies the flavour to use for the resulting
- compressed mail archive. Valid flavours are normal, crash, hold
- and direct.
-
- Following the flavour comes a list of one or more nodes. Squish
- will search for normal-flavoured, uncompressed mail destined to
- any of the specified nodes, and compress and flavour that mail
- accordingly. For example, given the following command:
-
- Send Crash 1:123/456
-
- Squish would take all normal-flavoured packets for 123/456,
- compress them using the default archiver. and send the compressed
- mail archive to 123/456 using the crash flavour.
-
-
-
- Squish v1.00 Reference Manual - Page 28
-
-
-
- You can specify more than one node for a Send command, but Squish
- behaves exactly as if each node were in a separate Send command
- of its own. If you wish to route mail for one system through
- another, then the Route command must be used instead.
-
- In other words, the following command:
-
- Send Crash 123/456 234/567 345/678
-
- is completely identical to this:
-
- Send Crash 123/456
- Send Crash 234/567
- Send Crash 345/678
-
- Both of these commands would compress normal-flavoured packets
- for 123/456, 234/567 and 345/678, give the compressed mail the
- crash flavour, and send the resulting archives to 123/456,
- 234/567 and 345/678 (respectively).
-
- If you are using an ArcmailAttach mailer, then the 'Send' command
- is probably the only one you'll need. Dynamic routing is
- performed by your mailer, so the only reason for using ROUTE.CFG
- is to compress and flavour mail, which is exactly what the Send
- keyword does.
-
-
- The Route Command
-
- The Route command is similar to the Send command; however, Route
- can be used to change the destination address of mail (otherwise
- known as routing that mail), whereas Send only sends mail
- directly to its destination. The Route command is normally NOT
- required for systems using the ArcmailAttach keyword. If you are
- running an ArcmailAttach mailer, most messages will be routed on-
- the-fly, so you can safely skip this section.
-
- The format of the Route command is as follows:
-
- Route <flavour> <target> [<nodes>...]
-
- As with the Send command, <flavour> specifies the message flavour
- to give the resulting archive. Valid flavours are normal, crash,
- direct, and hold.
-
- <target> specifies the address of the routing target. Mail for
- all of the other nodes will be packaged up, given the specified
- flavour, and sent to this address. In other words, this is where
- all of the routed mail will be sent. In addition, mail addressed
- to the target itself will also be flavoured and sent accordingly.
-
-
- Squish v1.00 Reference Manual - Page 29
-
-
-
- Make sure that you have the permission of the target node before
- routing mail through his/her system.
-
- <nodes> is the optional list of network addresses for which
- Squish should readdress mail. Squish will look for normal-
- flavoured, uncompressed packets for these nodes, and then route
- them through the specified target.
-
- For example, the following route command:
-
- Route Crash 123/456 234/567 345/678
-
- would take mail for 123/456, 234/567 and 345/678, compress it
- using the default archiver, and send it all to 123/456 using the
- crash flavour. Note the difference between Route and Send:
- whereas Send will send the mail to each node individually, Route
- will send all of the mail to the first node specified. The
- difference between Route and Send is a fundamental concept in
- Squish routing.
-
-
- Wildcards
-
- The Route and the Send commands provide the framework for a very
- flexible routing system. However, the Route and Send commands
- are often not enough to accomplish a particular task. For
- example, to route mail for all nodes in net 123 through another
- node, is it necessary to explicitly give the node number for each
- system? Fortunately, the answer is no.
-
-
- The All and World Wildcards
-
- In both SQUISH.CFG and ROUTE.CFG, Squish supports a form of
- wildcards. These wildcards can be used to specify a particular
- node or range of nodes for a particular routing command. The
- most basic form of wildcard is 'All'. 'All' can be used in place
- of a zone, net, node or point number, and it instructs Squish to
- process mail for all nodes which match the rest of the address.
-
- For example, given the following command:
-
- Send Crash 106/All
-
- Squish would then scan for normal packets destined to any node in
- net 106, compress the packet, give it the crash flavour, and send
- the resulting archive directly to its destination.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 30
-
-
-
- Wildcards can also be used with the 'Route' command. To use the
- same example, but to have all of net 106's mail routed through
- one node, the following could be used:
-
- Route Crash 106/123 106/All
-
- As above, this would compress normal-flavoured packets for nodes
- in net 106, and give the resulting archives the crash flavour.
- However, all of the archives would be sent to 106/123, where they
- could be handled by routing commands on 106/123's system.
-
- Squish also supports zone wildcards. For example, the following
- command:
-
- Route Crash 2:123/456 2:All
-
- would take mail for all addresses in zone 2, compress it, and
- sent it all through 2:123/456.
-
- Finally, the 'World' wildcard can be used to specify all
- uncompressed and normal-flavoured packets, no matter where they
- are addressed. This is typically useful for "clean-up"
- situations and for taking care of mail that has no applicable
- routing commands. 'World' is equivalent to 'All:All'. For
- example, the following command:
-
- Route Crash 1:987/654 World
-
- would cause all remaining, normal-flavoured mail to be compressed
- and sent to 987/654.
-
- As before, all of these wildcards can be used for both the Send
- and Route commands, in addition to most of the other commands in
- ROUTE.CFG and SQUISH.CFG.
-
- IMPORTANT NOTE FOR ARCMAILATTACH SYSTEMS:
-
- By default, Squish leaves outbound packets in an uncompressed
- form. However, ArcmailAttach mailers only recognize compressed
- archives, so you MUST ensure that all packets that Squish creates
- are compressed. To do this, you must add the following statement
- to the end of your ROUTE.CFG:
-
- Send Normal World
-
- This instructs Squish to archive all remaining packets, and to
- give the resulting archives a normal flavour. This makes sure
- that your mailer can see all of the packets that Squish
- generates, even if you have not added specific routing commands
- for an individual node.
-
-
- Squish v1.00 Reference Manual - Page 31
-
-
-
-
- Address Abbreviations
-
- Although full 4D addresses can be specified almost everywhere,
- Squish also permits several shortcuts to save on typing. When
- Squish encounters a node number, it will save a copy of that
- address. Later, if Squish comes across an incomplete address, it
- will use that saved copy to fill in missing information. Squish
- can use short forms to handle zone and net numbers; however, a
- node number must always be specified.
-
- For example, the following Route command:
-
- Route Crash 1:12/34 1:12/45 1:23/45 2:23/56 2:23/67 2:34/67
-
- could be rewritten as follows:
-
- Route Crash 1:12/34 45 23/45 2:23/56 67 34/67
-
- which has the same effect. In this case, Squish assumes zone 1
- and net 12 when it comes to the lone "45", based on the previous
- address. The "23/45" address is also assumed to be in zone 1,
- again because of the earlier zone 1 address. The "2:23/56" is
- used to start a new set of zone and net defaults, so the full
- address is required. As with "45, the "67" assumes the zone and
- net numbers of the last address. Finally, a zone number of 2 is
- assumed for the last address because of the earlier "2:".
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 32
-
-
-
-
- Examples
-
- This section contains several simple routing files, including
- comments, which should demonstrate the uses of the various
- routing commands. In ROUTE.CFG, comment lines start with either
- a semi-colon (;) or a percent sign (%). (Everything on the line
- following either of those characters will be ignored.)
-
-
- Example 1: Simple ArcmailAttach routing
-
- % Sample routing file #1. This example demonstrates a minimal
- % system configuration. This type of routing file is the most
- % useful when using the ArcmailAttach keyword: since all
- % routing is performed by your mailer, the only purpose for
- % ROUTE.CFG is to tell Squish which messages to compress.
- %
- % This routing file simply compresses all mail and sends it
- % to the mail's final destination. (However, these messages
- % can be routed by your mailer using dynamic routing.)
-
- Send Normal World
-
- % The above statement tells Squish to take mail for everyone
- % (ie. 'World'), place it into an archive, and give it the normal
- % flavour. Unless you have a special configuration, this is all
- % of the routing that you have to do for ArcmailAttach systems.
-
-
-
-
- Example 2: Simple BinkleyTerm Routing
-
- % Sample routing file #2. This example demonstrates a minimal
- % system configuration for a BinkleyTerm mailer. This example
- % assumes several things:
- %
- % 1) You will be connecting with another node on a fairly
- % frequent basis, and you'll be routing most of your
- % long-distance netmail through this system. (Most
- % Net Echo Coordinators are willing to route netmail
- % for little or no charge, but you should ask before
- % doing so.)
- %
- % 2) You want to send mail directly to nodes in your own
- % net. Since those nodes are local to your system, sending
- % netmail directly is usually much faster.
- %
- % 3) You may also be sending netmail to selected long-distance
-
-
- Squish v1.00 Reference Manual - Page 33
-
-
-
- % nodes, and you want EchoMail for those systems to be sent
- % directly, as opposed to being sent through your local
- % coordinator.
- %
- % This example also uses a fictitious network address of
- % 123/456. Obviously, your own net and node number should
- % be substituted for this address, or -1/-1 if you have no
- % network address.
-
- % The first command instructs Squish to send netmail directly
- % to all systems in net 123. Mail will be archived, given
- % the "crash" flavour, and sent directly to its destination.
- %
- % Most of your mail will probably be to and from local systems,
- % so sending it directly is usually the best route.
-
- Send Crash 1:123/All
-
- % The next command also tells Squish to send mail directly
- % to nodes 111/222, 222/333 and 333/444. These addresses
- % are presumably long-distance nodes with which you talk
- % frequently, and you therefore want to send your
- % NetMail directly, as opposed to routing it. If you
- % don't communicate with any long-distance nodes, this
- % command can be commented out.
- %
- % However, if you are running any EchoMail conferences of
- % your own, and you are feeding the conference to other nodes
- % from your system, you should include the addresses of those
- % nodes here. It is considered to be impolite and against
- % FidoNet policy to route unsolicited EchoMail through
- % other systems, so you should usually send EchoMail
- % directly. All of the routing commands apply to both
- % NetMail and EchoMail, so you should make sure that you have
- % added the appropriate commands to deal with systems that
- % receive EchoMail from you.
-
- Send Crash 1:111/222 333/444 555/666
-
- % The third and last command tells Squish to send mail for
- % everywhere else to 1:123/3, which is presumably your area
- % coordinator.
- %
- % Notice how this statement is positioned below all of the
- % other routing commands. Since Route and Send only operate
- % on uncompressed packets with a normal flavour, this command
- % ignores mail which has been processed by the two other
- % commands; it will only route mail which has not been already
- % processed.
- %
-
-
- Squish v1.00 Reference Manual - Page 34
-
-
-
- % However, if this command was mistakenly placed above the
- % other two commands, you would find that ALL of your mail
- % was being sent to 123/3 regardless. Since the mail
- % is archived and changed to a crash flavour by this
- % command, the following Send commands would not find any
- % mail to process, which was probably not your original
- % intent.
-
- Route Crash 1:123/3 World
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 35
-
-
-
-
- Batch Files
-
- After adding the appropriate routing commands, the final step in
- the installation is to modify the batch files for your mailer and
- your BBS. At a bare minimum, Squish must be run in two different
- situations:
-
- 1) After receiving mail. When your mailer receives mail from
- another system, Squish needs to be executed to decompress
- the mail and import it into your local message base.
- Optionally, Squish can also scan out or export mail at the
- same time, if you are sending an echo to someone else.
-
- 2) After entering messages locally. When a message is entered,
- either through a BBS or an external editor, Squish must be
- called to export the locally-entered messages. There are
- several variations on this theme (after entering EchoMail,
- after entering NetMail, or both), but the same general
- process is followed for each variation.
-
-
- Configuring your Mailer
-
- First of all, your mailer must be configured to either run an
- external program when mail has been received, or else to drop
- back to the calling batch file with an errorlevel. If you don't
- know how errorlevels work, you should refer to the Maximus-CBCS
- Operations Manual for a hand-holding tutorial. Section eight of
- the Maximus installation covers errorlevels and batch files.
- This gives a general overview of concepts and terminology, which
- will be helpful when setting up Squish.
-
- Assuming that you have batch file basics covered, the first step
- is to find out which errorlevel your mailer uses when mail is
- received. For BinkleyTerm, this errorlevel is specified by the
- 'E2' and 'E3' flags in your BINKLEY.EVT configuration file. For
- FrontDoor, this errorlevel is specified in the Mailer /
- Errorlevels / ReceivedMail option in SETUP.EXE. For other
- systems, please consult your mailer's documentation.
-
- The next step is to invoke Squish when the specified errorlevel
- is found. Assuming that your mailer exits with an errorlevel of
- 100 after receiving mail, the following should be placed in your
- batch file, immediately after running your mailer:
-
- :Loop
- bt unattended ; Other commands here
- if errorlevel 100 goto SquishIn ; Toss messages
- if errorlevel 96 goto BBS ; Call a BBS program
-
-
- Squish v1.00 Reference Manual - Page 36
-
-
-
- if errorlevel 48 goto BBS ; Call a BBS program
- ... and so on ...
-
- Only the lines labelled ':Loop' and 'SquishIn' are required by
- Squish itself. The other lines should have be added so that your
- BBS is run for human callers; they are not mandatory for Squish's
- operation, and the errorlevels may be different (depending on
- which BBS package you run). The errorlevel procedure is the same
- for FrontDoor, except that 'fd' should be substituted for 'bt
- unattended'. Please consult your mailer's documentation to learn
- how to start up a different type of mailer.
-
- The ':Loop' label should be placed just before your mailer's
- command-line. After tossing and scanning mail, Squish will jump
- back up to this label and restart your mailer.
-
- The 'if errorlevel 100' statement checks for the "received mail"
- errorlevel, and if found, it jumps to the part of the batch file
- which starts up Squish.
-
- Keep in mind that all errorlevels must be in DESCENDING ORDER.
- When interpreting each 'if errorlevel' statement, DOS performs a
- check to see if the current errorlevel is GREATER THAN OR EQUAL
- TO the specified errorlevel. To ensure that each line is
- executed only when you want it to, all of the errorlevels have to
- be in descending order.
-
- After adding the check for receiving mail, you should now create
- the portion of the batch file which actually invokes Squish.
- Near the end of your batch file, but before any final 'exit' or
- ':end' statements, add the following:
-
- :SquishIn
- cd\Squish
- squish in out squash link
- cd\Bink
- goto Loop
-
- This does five things:
-
- 1) The ':SquishIn' label is referenced by the earlier 'if
- errorlevel' statement. This is where your batch file will
- jump to if mail is received.
-
- 2) The 'cd\Squish' changes the current directory to \Squish,
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 37
-
-
-
- which is presumably where SQUISH.EXE and its associated
- configuration files are kept.
-
- 3) The 'squish in out squash link' command starts Squish in
- one-pass mode. This command will cause Squish to check for
- incoming mail, decompress it, toss it to the local message
- bases, scan it out to other nodes (if necessary), pack
- messages and create ARCmail attaches in your netmail area,
- and finally, to link reply chains. For more information on
- Squish's command-line parameters, please see the section
- entitled "Squish Command Line Parameters and Syntax".
-
- 4) The 'cd\Bink' command tells DOS to change back to your
- mailer's directory. (If you are running FrontDoor, this
- will probably be 'cd\FD' or something similar.) Unless this
- line is included, your mailer may not operate properly after
- Squish runs.
-
- 5) The 'goto Loop' command causes your batch file to loop back
- to the top again, and to restart your mailer. Unless this
- command is included, Squish would simply drop back to the
- operating system, or possibly execute other unwanted
- commands in your batch file. To make sure that this looping
- works, ensure that there's a ':Loop' label right above the
- line that calls your mailer. (See above for more details.)
-
-
- Configuring your BBS
-
- After making the above modifications, Squish should be fully
- operational when receiving mail. The only other modification you
- need to make are to your BBS's or off-line reader's batch files.
- The procedure is similar: determine which errorlevel is used
- when mail is entered, and jump to the appropriate portion of the
- batch file.
-
- For example, Maximus-CBCS uses the following errorlevels:
-
- Errorlevel 12: Caller entered EchoMail (and maybe NetMail)
- Errorlevel 11: Caller entered NetMail (but not EchoMail)
- Others: Caller entered neither NetMail nor EchoMail
-
- The two separate cases -- NetMail/EchoMail, and NetMail only --
- must be treated differently. When EchoMail is entered (and
- possibly NetMail as well), the echoes must be scanned for
- messages to export, and the netmail area must be packed (or
- scanned for ARCmail attaches). However, when only NetMail is
- entered, only the packing/scanning needs to be performed. What
- follows is a simple batch file which demonstrates how to
- implement Squish on a Maximus system. This assumes that you have
-
-
- Squish v1.00 Reference Manual - Page 38
-
-
-
- configured Max's "Log EchoMail" feature and that it points to the
- file C:\MAX\ECHOTOSS.LOG.
-
- max -p%1 -b%2 -t%3 ; Other parameters here
- if errorlevel 12 goto SquishOut
- if errorlevel 11 goto SquishSquash
- if errorlevel 5 goto Recycle
- ... and so forth ...
-
- As before, only the 'SquishOut' and 'SquishSquash' lines are
- required by Squish.
-
- After taking care of the other errorlevels, you should insert the
- following two sections in your BBS's batch file:
-
- :SquishOut
- cd\Squish ; Chg to Squish dir.
- squish out squash -fc:\max\echotoss.log ; Export messages
- del c:\max\echotoss.log
- goto End
-
- :SquishSquash
- cd\Squish
- squish squash ; Pack msgs and do ArcAttaches
- goto End
-
- The section marked ':SquishOut' invokes Squish and instructs it
- to scan the EchoMail areas listed in ECHOTOSS.LOG. If your BBS
- program or off-line reader is not capable of generating an
- ECHOTOSS.LOG, then simply omit the '-fc:\max\echotoss.log'.
- Omitting that command-line option will cause Squish to scan all
- EchoMail areas every time it is run, which is usually much slower
- than using ECHOTOSS.LOG for scanning. (Please see the section
- entitled "Squish Command Line Parameters and Syntax" for
- information on the format of ECHOTOSS.LOG.)
-
- After exporting messages, the 'squash' portion of the command
- line tells Squish to pack netmail messages, create ARCmail
- attaches, and execute the commands in ROUTE.CFG.
-
- The ':SquishSquash' portion of the batch file does the same
- thing, except that it skips scanning the EchoMail areas, and
- simply runs Squish in a mode which packs netmail messages and
- executes ROUTE.CFG.
-
- This concludes the Squish installation procedure. If you have
- followed all of these steps, you should have a working version of
- Squish that tosses, scans, packs, links, slices and dices. For
- advanced tricks and tips on operating Squish, please read through
- the rest of this manual at your leisure.
-
-
- Squish v1.00 Reference Manual - Page 39
-
-
-
- OPERATION
-
-
- Squish Command Line Parameters and Syntax
-
- Squish operates in several modes, all of which are controllable
- from the command line. The command line itself is broken down
- into a series of "actions" and "switches". Actions are single
- words which control Squish's processing modes, such as tossing
- and scanning messages. Switches are used to modify the behaviour
- of those modes, such as only scanning certain areas, not
- displaying any output, and so on. The format of the command line
- is as follows:
-
- SQUISH <mode> <switches>
-
- Modes
-
- <mode> consists of one or more of the following keywords:
-
- IN Toss (import) messages. This option causes Squish to
- check for packets and compressed mail archives in all
- of the NetFile directories, and to import any messages
- that it finds.
-
- OUT Scan (export) messages. This option causes Squish to
- scan all EchoMail areas for new messages. If Squish
- finds a new message, that message will be exported to
- all of the nodes listed in that area's definition.
- Squish uses the SEEN-BYs to keep track of which nodes
- the message has already been sent to, so the message
- may not be exported to all of the nodes listed.
-
- If both the IN and OUT actions are specified on the
- same command line, Squish will function in "single
- pass" mode. "Single pass" means that Squish will both
- toss and scan messages at the same time (which yields
- higher performance). Single pass mode is especially
- useful for systems running many "passthru" areas, since
- messages will be written directly to the output *.PKT
- files, as opposed to making a temporary stop in a
- message area. Consequently, using passthru message
- areas in multipass mode is MUCH slower than using
- passthru areas in single-pass mode.
-
- However, you should ONLY use the "IN" parameter when
- there are messages to be tossed. When running with
- "IN" and "OUT", Squish will only scan those areas to
- which messages are being tossed. Therefore, when you
-
-
-
- Squish v1.00 Reference Manual - Page 40
-
-
-
- wish to only scan messages, the `IN' parameter should
- NOT be specified.
-
- When the OUT command is specified alone, Squish will
- scan all EchoMail areas on the system. When used in
- conjunction with the IN command, Squish will scan
- messages as it tosses. In addition, if Squish detects
- that unsent messages exist in an EchoMail area, Squish
- will invoke a full scan of that area before tossing to
- it.
-
- SQUASH For a BinkleyTerm system, the SQUASH command packs
- messages from the NetMail areas, scans the outbound
- areas, performs mail routing, and compresses packets.
-
- For a FrontDoor-style system, the SQUASH command
- compresses packets, scans the NetMail area, creates
- ARCmail attach messages, and optionally kills any
- orphaned archives.
-
- If the SQUASH command is specified on the same command
- line as IN and OUT, the single pass MaxMsgs mode can
- also be used to limit outbound packet sizes.
-
- LINK Relink reply chains. The LINK command will read all
- messages in an EchoMail area and create reply links for
- each message (based on the subject fields). Relinking
- allows other software to perform "threaded reading" on
- message bases, which is an easy and convenient way of
- viewing messages.
-
- When combined with the IN and OUT commands, only those
- areas which received messages will be linked.
-
- RESCAN Rescan one or more EchoMail areas. The RESCAN command
- provides a convenient way to rescan EchoMail areas from
- the command line, instead of fiddling with 1.MSG and
- other system files.
-
- Unlike the other modes, RESCAN cannot be combined with
- other switches or actions. The format for the RESCAN
- command is:
-
- SQUISH RESCAN <echo_or_tosslog> <node>
-
- <echo_or_tosslog> is either the tag of an EchoMail
- area, or the name of an ECHOTOSS.LOG-format file
- (containing a list of area tags).
-
-
-
-
- Squish v1.00 Reference Manual - Page 41
-
-
-
- <node> specifies the node number for which the
- specified EchoMail areas should be rescanned.
-
- After processing the command line, Squish will
- immediately rescan ALL of the messages in the specified
- areas. The SEEN-BYs will not be updated in the on-disk
- message base, the high water mark will be left
- untouched, and the messages will not be sent to anyone
- except the listed node.
-
- This command was designed for NECs and other EchoMail
- hubs who wish to rescan entire message bases for nodes
- who have just connected to a particular echo.
-
- Warning! If you wish to specify command line switches
- in conjunction with the RESCAN command, those switches
- must precede the rescan command on the command line.
- In other words, to leave all packets in the OUTBOUND.SQ
- area, use `SQUISH -L RESCAN AREANAME NET/NODE'.
-
- With the exception of RESCAN, all of these modes can be specified
- at the same time for optimum performance. The command "SQUISH IN
- OUT SQUASH LINK" instructs Squish to toss and scan messages in
- single pass mode, to pack messages from the NetMail area, to
- route and compress packets, and to relink reply chains.
-
-
- Certain combinations of the Squish command line parameters are
- useful only in certain situations. Namely, the "IN" command must
- only be used when there are packets to be tossed, so care must be
- taken to use "IN" only when necessary.
-
- The following command lines are recommended for various
- situations:
-
- After receiving EchoMail or NetMail from another system:
-
- SQUISH IN OUT SQUASH LINK (with an optional -fECHOTOSS.LOG)
-
- After EchoMail and/or NetMail has been entered locally:
-
- SQUISH OUT SQUASH LINK (with an optional -fECHOTOSS.LOG)
-
- After NetMail has been entered locally:
-
- SQUISH SQUASH
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 42
-
-
-
- Command Line Switches
-
- In addition to <mode>, Squish accepts any of the following
- command line switches:
-
- -a<file> The -a switch instructs Squish to use the specified
- AREAS.BBS-like file, overriding the filename specified
- in SQUISH.CFG.
-
- -c<file> The -c switch instructs Squish to use a configuration
- file with the specified path and filename, as opposed
- to looking for SQUISH.CFG in the current directory.
-
- -f<file> The -f switch specifies the name of an ECHOTOSS.LOG-
- type file which contains a list of echo tags to
- process. When used in conjunction with the IN command,
- Squish will create a log of all non-passthru echoes
- that received messages during the current session.
- When used in conjunction with the OUT or LINK commands,
- Squish will only process echoes listed in the
- ECHOTOSS.LOG file.
-
- Although the -f switch was designed to be used with a
- tosslog filename, it can also specify the name of a
- single EchoMail area to be processed. For example,
- "SQUISH OUT -fMUFFIN" would instruct Squish to scan the
- MUFFIN echo for new messages.
-
- WARNING! Squish will never delete ECHOTOSS.LOG. When
- tossing, Squish will simply append to the log you
- specify (to fully supporting multi-line systems). It
- is assumed that your batch files will delete
- ECHOTOSS.LOG after performing all necessary processing;
- this must always be done, or else ECHOTOSS.LOG will
- grow and grow after each successive invocation of
- Squish.
-
- -l The -l switch (BinkleyTerm systems only) instructs
- Squish to leave *.OUT packets in the OUTBOUND.SQ
- holding area. Before Squish terminates, it normally
- moves all unrouted packets from OUTBOUND.SQ to the
- proper zoned outbound area. However, if you are
- running Squish in a multipass environment, you may wish
- to leave the packets in the OUTBOUND.SQ area between
- passes to shield the packets from other programs on
- multitasking or multi-line systems.
-
- -o The -o switch (BinkleyTerm systems only) instructs
-
-
-
-
- Squish v1.00 Reference Manual - Page 43
-
-
-
- Squish NOT to pack messages in the NetMail area when
- performing a SQUASH command. Squish will still scan
- the outbound area and archive packets, but no NetMail
- messages will be processed.
-
- If you need to run an external utility over your
- NetMail area (such as a message tracker or
- readdresser), this option will allow you to use MaxMsgs
- with a one-pass IN OUT SQUASH command line. Squish can
- be run with IN OUT SQUASH and the -o switch, and then
- your external utility can be run, followed by a
- separate SQUISH SQUASH without the -o switch.
-
- -q The -q switch enables "quiet mode". Quiet mode
- suppresses most of the information displayed while a
- packet is tossing, although Squish will still display
- the name and origination addresses for each packet.
- Although this option makes the Squish screen display
- less informative, the -q makes Squish run slightly
- faster.
-
- -s<sched> The -s switch instructs Squish to process the specified
- schedule when performing the SQUASH command. If no
- schedule is specified, Squish will execute the global
- commands, plus any schedule which is within the current
- time period. If an explicit schedule is specified on
- the command line, only that schedule and the global
- commands will be executed.
-
- -t The -t switch toggles the status of Squish's secure
- mode. In other words, if you have `Secure' turned ON
- in SQUISH.CFG, using -t will temporarily turn OFF
- Secure more. Likewise, if you have Secure turned OFF
- in SQUISH.CFG, using -t will temporarily turn ON secure
- mode.
-
- -v The -v switch toggles the use of "Statistics Mode". If
- "Statistics" is turned ON in the configuration file,
- this switch will temporarily disable statistics mode.
- Similarly, if "Statistics" is turned OFF in the
- configuration file, -v will temporarily turn it back
- on. This switch can be used to create statistics
- information only when mail is received from a certain
- node.
-
- -z The -z switch instructs Squish to scan non-passthru
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 44
-
-
-
- areas only. Normally, when Squish is invoked with the
- OUT command, it will scan all of the areas defined in
- SQUISH.CFG and/or AREAS.BBS. However, if you normally
- do not keep any messages in your passthru areas, this
- switch will cause Squish to skip those areas and
- marginally speed up processing.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 45
-
-
-
-
- Running Squish in Multipass Mode
-
- The easiest and most efficient way to run Squish is in "single
- pass" mode, meaning that Squish will toss, scan, and pack
- messages all at the same time. However, Squish can also be run
- in multipass mode, meaning that tossing, scanning and packing can
- be separated into two or three different passes. Some of the
- reasons for using multipass mode are:
-
- * Decreased memory requirements. When running in single pass
- mode, Squish needs enough memory to buffer the packet being
- tossed, to hold the incoming messages, and buffers for
- outbound messages. When running in multipass mode, Squish
- only needs to keep one part of the message in memory at a
- time, thereby reducing memory requirements of the DOS
- version by 60K or more.
-
- * Some preprocessing utilities may need to be run between
- passes. For example, several utilities may need to be run
- over the message bases after a message has been tossed, but
- before that message is scanned out to other systems.
- Multipass mode allows for this type of external utility.
-
- The key to multipass mode is the use of ECHOTOSS.LOG. The -f
- switch should be used to keep a log of tossed messages, such that
- Squish scans and links only those areas which received messages.
-
- Invoking Squish in multipass mode is usually done in the
- following manner:
-
- SQUISH IN -fECHOTOSS.LOG
- rem * Other external utilities here
- SQUISH OUT -fECHOTOSS.LOG
- rem * Other external utilities here
- SQUISH SQUASH
- rem * Other external utilities here
- SQUISH LINK -fECHOTOSS.LOG
- del ECHOTOSS.LOG
-
- Depending on your processing requirements, you may wish to run
- two passes at the same time (such as SQUASH and LINK, or IN and
- OUT), but the general format remains the same. Squish will be
- somewhat slower when running in multipass mode, especially when
- the IN and OUT passes are separated. However, this method of
- operation allows for flexibility and allows other external
- utilities to be inserted into the tossing/scanning process.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 46
-
-
-
- AREAS.BBS REFERENCE
-
- Squish supports the definition of EchoMail areas in the standard
- AREAS.BBS file. However, this format was designed for use with
- older systems, and as such, it doesn't support many of the new
- features that Squish offers. Regardless, some users may find it
- advantageous to declare areas in AREAS.BBS for compatibility
- reasons.
-
- The first line of AREAS.BBS is always your default origin line;
- this text will be added to messages which do not already have an
- origin line. After the text of the origin line, you should place
- an exclamation mark, followed by your name. Squish doesn't use
- the SysOp name, but other programs may require it.
-
- For example, the first line in AREAS.BBS might look like this:
-
- Fowl Weather Post * Kingston, Ont., Canada !Scott Dudley
-
- Following the default origin line should be one or more EchoMail
- area definitions. An EchoMail area definition has the following
- format:
-
- [#][$]<path> <tag> [nodes...]
-
- Both the '#' and '$' characters are optional. If a '#' is placed
- before the path, that area will be treated as a passthru area.
- (For more information on passthru areas, please see the section
- entitled "Area Definitions" in the SQUISH.CFG reference.)
-
- If a '$' is placed before the path, that area will be treated as
- a Squish (*.SQ?) format message area. (For more information,
- please see the section entitled "USING SQUISH-FORMAT MESSAGE
- AREAS".)
-
- Both the '#' and '$' characters should come immediately before
- the first character of the area's path. No spaces are permitted.
-
- <path> should specify the path of the EchoMail area. For a *.MSG
- area, this should be the name of directory in which the *.MSG
- files are kept. For a Squish (*.SQ?) area, this should specify
- the path and root filename of the message area.
-
- <tag> should be the one-word area tag to be used for that area.
-
- [nodes] is the optional list of nodes to whom you send that echo.
-
- For examples, please see the distribution copy of AREAS.BBS.
-
-
-
-
- Squish v1.00 Reference Manual - Page 47
-
-
-
- SQUISH.CFG REFERENCE
-
- SQUISH.CFG is the main Squish configuration file. SQUISH.CFG
- controls most aspects of Squish's operation, including the
- message areas it uses, the directories where it places files, and
- even how to remap messages addressed to certain users.
-
- SQUISH.CFG is divided into two logical sections: firstly, there
- is the main configuration section. This section contains
- information about your system and everything else that Squish
- needs to know. Secondly, there is an optional area configuration
- section. This part of the configuration file allows you to
- define NetMail, EchoMail, dupe storage and bad message areas for
- your system.
-
- SQUISH.CFG is an ASCII file, so it can be edited using a text
- editor (or a word processor in non-document mode). Lines which
- begin with a semicolon (;) are treated as comments and are
- ignored.
-
-
- Configuration Options
-
- This section describes all of the commands and options available
- in the system information section of SQUISH.CFG. For information
- on defining EchoMail, NetMail, bad message or dupe storage areas,
- please see the next section.
-
- The following is an alphabetical listing of keywords in
- SQUISH.CFG. Descriptions are given for all keywords, and
- examples are given where appropriate.
-
- AddMode (BinkleyTerm systems only)
-
- The AddMode keyword enables the "add mode" functionality of
- the outbound directory manager. Add mode causes new file
- attaches to be merged into existing attaches of different
- flavours. When add mode is turned on, Squish will perform
- some special processing before creating a file attach.
- Instead of simply creating an attach with the specified
- flavour, it will first scan the outbound directory to see if
- any other attaches exist for the same node. If a non-
- normal-flavoured attach is found, add mode will cause Squish
- to add the current file to that attach, regardless of the
- flavour specified for the "Route" or "Send" commands.
-
- This verb is useful in many situations, such as when a node
- goes down for a short period of time. With add mode turned
- on, simply change the flavour of the existing attaches in
- the outbound area to "hold". When Squish scans out more
-
-
- Squish v1.00 Reference Manual - Page 48
-
-
-
- mail for that node, it will notice the hold attach and it
- will hold all new mail as well. This means that no
- modifications to your routing control files are necessary,
- even if you are using "Route Crash" or "Send Crash" for that
- particular node.
-
- By default, with add mode disabled, Squish will simply use
- the given flavour, without attempting to check for other
- existing attaches.
-
- Address <node> [<node>...]
-
- The Address keyword defines one or more network addresses
- used by your system. The first address specified in
- SQUISH.CFG is considered to be your "primary address", and
- this address will be used for all outbound mail (unless told
- otherwise -- see the documentation on the EchoArea keyword
- in the "Area Definitions" section of the SQUISH.CFG
- reference).
-
- Squish handles full 4D addresses and is capable of running
- as either a bossnode or a point.
-
- For a normal network node, only one address statement is
- required. Your primary address should be declared in this
- format:
-
- Address 1:123/456
-
- where "1:123/456" is your full network address, including
- zone number.
-
- For fakenet points, two addresses are required. The first
- address declared in SQUISH.CFG should be your fakenet
- address, and the second address should be your full 4D point
- address. Both addresses must include the proper zone
- number. For example, a fakenet point at 1:123/456.1 (using
- a fakenet of 12345) might use the following set of address
- statements:
-
- Address 1:12345/1
- Address 1:123/456.1
-
- In addition, fakenet points must also use the "PointNet"
- verb, below.
-
- For 4D points, only one address is required. This address
- should be your full 4D point address, and it should be
- declared as the first address in your configuration file.
-
-
-
- Squish v1.00 Reference Manual - Page 49
-
-
-
- For example, a 4D point of 1:123/456 might use the following
- address statement:
-
- Address 1:123/456.1
-
- However, to use 4D points, all of your software must be able
- to handle 4D addresses, and your mailer and EchoMail
- processors must compliant with the proposed "2+" packet
- type.
-
- After you have defined your primary address, any number of
- AKA (Also-Known-As) addresses may be listed. These
- addresses won't be used for outgoing mail, but Squish will
- use these AKAs to determine whether or not a packet is
- destined for your system.
-
- Any number of AKAs may be specified, up to the limit of
- available memory.
-
- AddToSeen <node> [<node>...]
-
- The AddToSeen keyword globally adds a node number to the
- SEEN-BYs of all EchoMail areas which are processed by your
- system. The AddToSeen keyword specifies one or more two-
- dimensional address (net/node only) which are to be added.
- This keyword adds these addresses to ALL echoes, so it
- should be only used in special situations. By default, your
- primary address is added to the SEEN-BYs for all areas. For
- information on changing your primary address, or for adding
- to the SEEN-BYs on an area-by-area basis, please see the
- "Flags" section of the SQUISH.CFG reference.
-
- ArcmailAttach
-
- The ArcmailAttach keyword informs Squish that your mailer
- requires "ARCmail file attaches" to transmit EchoMail to
- other systems. Mailers such as FrontDoor, D'Bridge, and
- InterMail require this keyword, whereas others (such as
- BinkleyTerm) do not. If you are not running any of the
- above pieces of software, please consult your mailer's
- documentation to determine whether or not it requires
- ARCmail attaches.
-
- When this keyword is enabled, Squish operates differently in
- several ways:
-
- * Packing of the NetMail area is disabled. Mailers which
- require ARCmail attaches perform dynamic packing on
- their own, so this portion of the Squish code is
- automatically disabled.
-
-
- Squish v1.00 Reference Manual - Page 50
-
-
-
- * ARCmail attach messages will be generated for outbound
- EchoMail. This support is internal to Squish, so no
- external utilities are required.
-
- * Most of the routing code for the SQUISH SQUASH command
- is disabled. Again, since ARCmail attach mailers
- perform dynamic routing, these features are not
- required.
-
- * Squish will only write packets to the OUTBOUND.SQ area,
- and it will disable the use of BinkleyTerm-style "zoned
- outbound directories".
-
- * Squish will enable 4D point support, since most ARCmail
- attach mailers are capable of handling 4D points.
-
- By default, ARCmail attach support is disabled. This means
- that:
-
- * Squish will perform packing of the NetMail area.
- Squish will gateroute messages, handle file attaches,
- file requests and update requests, in addition to the
- optional deletion and truncation of attached files.
- Messages will be packed from all areas declared using
- the 'NetArea' keyword.
-
- * Squish will perform static routing and packing in the
- outbound areas. If the BinkPoint verb is implemented,
- Squish will enable support for 4D points on a
- BinkleyTerm-style system.
-
- * Squish will directly process BinkleyTerm-style zoned
- outbound directories and enable full support for all
- commands in ROUTE.CFG.
-
- Unless the ArcmailAttach verb is set correctly, Squish may
- produce unpredictable and unreliable results on your system.
- Make sure that this verb is set appropriately before running
- Squish.
-
- AreasBBS <filespec>
-
- The AreasBBS keyword specifies the path and name of a
- ConfMail-compatible AREAS.BBS file, which is one way of
- defining EchoMail areas. Please see the section entitled
- "AREAS.BBS REFERENCE" for more information on using this
- command. Note: the '-a' command-line switch can also be
- used to override the filename given for this command.
-
-
-
-
- Squish v1.00 Reference Manual - Page 51
-
-
-
- BatchUnarc
-
- The BatchUnarc keyword instructs Squish to decompress all
- compressed mail bundles at the same time. By default,
- Squish will decompress one mail bundle, toss all of the
- packets in it, decompress the next bundle, toss those
- packets, and so on. Although this method makes efficient
- use of disk space, there is a slight chance that messages
- may get out-of-order, depending on the order in which the
- compressed mail archives arrived on your system.
-
- The BatchUnarc keyword instructs Squish to decompress all of
- the compressed mail archives at once, and to then toss the
- *.PKT files. Squish always sorts packets by date before
- tossing, so this ensures that messages will not get out of
- order.
-
- BinkPoint (BinkleyTerm systems only)
-
- The BinkPoint keyword enables the BinkleyTerm 2.50+ point
- directory support. When this keyword is enabled, Squish
- will turn on full 4D address support, and Squish can then
- communicate freely with 4D points running BinkleyTerm.
-
- If you are using 4D points with Binkley 2.50 or above, BOTH
- the boss and the point must have this keyword enabled.
-
- Buffers <size>
-
- The Buffers keyword can be used to limit Squish's memory
- usage. <size> can be either "Large", "Medium" or "Small".
- Small buffers are typically useful on an end node which does
- NOT forward mail to anyone else.
-
- Using small buffers will save approximately 64K of memory
- over large buffers, but doing so will make scanning
- relatively slow.
-
- Medium buffers are a compromise, and they will use about 30K
- less memory than large buffers.
-
- A buffer setting of "Large" is the default (and is also the
- fastest).
-
- Keep in mind that reducing the level of buffering will have
- an impact on speed. If you want Squish to run as fast as
- possible, use large buffers. If you want Squish to run in
- as little memory as possible, use small buffers. If you
- want a compromise, try using medium buffers.
-
-
-
- Squish v1.00 Reference Manual - Page 52
-
-
-
- Other tips for reducing memory usage:
-
- * Reduce the "MaxAttach" and "MaxPkt" settings. A value
- of 64 for each setting works for most systems.
-
- * Reduce the "Duplicates" setting. However, since this
- impairs Squish's ability to identify duplicate
- messages, doing so is not recommended.
-
- * Run SQUISH SQUASH in a separate pass from SQUISH IN
- OUT. If memory is really tight, run everything in its
- own separate pass. (See the section entitled "Running
- Squish in Multipass Mode" in the OPERATION section for
- more information.)
-
- BusyFlags (BinkleyTerm systems only)
-
- The BusyFlags keyword enables "busy flag" support for
- BinkleyTerm systems. This option is required when using
- more than one copy of BinkleyTerm with the same outbound
- area; the busy flags provide for file locking, which prevent
- collisions when two different nodes attempt to send mail at
- the same time.
-
- Squish has full support for the busy flag mechanism. To
- further help throughput, Squish also performs most of its
- operations in a separate holding directory, outside of the
- main zoned outbound directories. Files are only transferred
- to the outbound directories as necessary, which minimizes
- the "down time" for any given node. In addition, if Squish
- attempts to send mail to a node which is busy due to mailer
- activity on another line, the packet will be simply queued
- for later use, as opposed to waiting for that node to become
- free again. Unlike other mail processors, this means that
- Squish never has to wait because of mail activity occurring
- on other lines of a multi-line system, which makes Squish
- the ideal choice for a multi-line BinkleyTerm installation.
-
- CheckZones
-
- The CheckZones keyword instructs Squish to check the zone
- numbers on all incoming packets. This option is enabled in
- the default configuration file; however, it may cause
- problems in secure mode with older, non-zone-aware systems.
- Commenting out this option tells Squish not to check the
- zone number when performing security checks on inbound
- packets, which may help if you have to deal with such older
- software.
-
-
-
-
- Squish v1.00 Reference Manual - Page 53
-
-
-
- Compress <filespec>
-
- The Compress keyword gives the path and filename of the
- compression configuration file. Squish can use almost any
- external program to compress mail, including ARC, PKArc,
- PKZip, LHarc (both 1.xx and 2.xx), ZOO, PAK, ARJ, and more.
- Squish's compression support is completely user-definable,
- so new archivers can be added to the configuration file with
- ease. For more information, please see the documentation on
- the "Pack" and "DefaultPacker" keywords, and also the
- section entitled "ARCHIVES AND MESSAGE COMPRESSION".
-
- DefaultPacker <packer>
-
- The DefaultPacker keyword instructs Squish to use <packer>
- as the default packer for compressed mail. <packer> must be
- the name of a packer defined in the compression
- configuration file.
-
- NOTE! The official standard for compressed mail in FidoNet
- is the version 5 ARC format. Unless you have a good reason
- for changing the default, ARC should be left as the default
- packer. Packer types can be changed on a node-by-node basis
- through the "Pack" verb, so DefaultPacker should only be
- used when necessary.
-
- Duplicates <number>
-
- The Duplicates keyword instructs Squish to keep up to
- <number> duplicate message IDs for each message area. By
- default, Squish stores the IDs of the past 1000 messages.
- Unlike other mail processors, Squish uses a highly-accurate
- 64-bit duplicate identifier, so increasing <number> will NOT
- significantly increase the chances of a duplicate message
- being falsely detected.
-
- ForwardFrom [FILE] <node> [<nodes>...]
-
- The ForwardFrom keyword tells Squish that the forwarding of
- in-transit NetMail messages is allowed, as long as the
- messages originated FROM any of the specified nodes. If the
- "FILE" keyword is added before the first node number, Squish
- will also properly forward in-transit files. Any number of
- nodes may be listed, and wildcards may be used.
-
- NOTE! The ForwardFrom verb allows the specified nodes to
- forward messages ANYWHERE. If you have your routing set up
- to crash all messages to their destinations, this should
- only be enabled for systems that you trust. For a more
- conservative approach, see the ForwardTo keyword.
-
-
- Squish v1.00 Reference Manual - Page 54
-
-
-
- ForwardTo [FILE] <node> [<nodes>...]
-
- The ForwardTo keyword tells Squish that the forwarding of
- in-transit NetMail messages is allowed, as long as the
- messages are destined TO any of the specified nodes. If the
- "FILE" keyword is added before the first node number, Squish
- will also properly forward in-transit files. Any number of
- nodes may be listed, and wildcards may be used.
-
- This option is appropriate for most systems, since it allows
- anyone to forward mail to the specified systems, but to
- those systems only. Unlike ForwardFrom, this means that you
- have control over where the messages end up, as opposed to
- the person who sent the message.
-
- GateRoute <flavour> <gate> <node> [<nodes>...] [EXCEPT <node>
- [<nodes>...]]
-
- The GateRoute keyword causes Squish to perform gaterouting
- on NetMail messages addressed to the specified gate or any
- of the following nodes. Squish follows the FTS-0001
- standard for gaterouting, so the messages produced by this
- command should be acceptable to SEAdog and other non-zone-
- aware mailers.
-
- Gaterouting will only be performed on NetMail messages with
- a flavour of normal. Messages marked as crash or hold will
- never be gaterouted; instead, they will be classified as
- direct interzone messages and will be treated accordingly.
-
- <flavour> specifies the flavour to which messages will be
- converted after gaterouting has taken place. The gaterouted
- flavour should usually be normal (so that other commands in
- ROUTE.CFG can compress and route the mail normally), but you
- can specify an alternate flavour if you so desire.
-
- <gate> specifies the address of the system to which messages
- should be gaterouted. This should be the address of an
- official network zonegate.
-
- <node> and <nodes> specify the list of nodes for which
- gaterouting is to be performed, including wildcards. All
- NetMail messages which are addressed to these nodes will be
- gaterouted through the specified gate system. (EchoMail
- should NEVER be gaterouted.)
-
- Optionally, a list of exceptions can be given for each
- zonegate. Simply add the 'EXCEPT' keyword to the GateRoute
- line, and for the current GateRoute keyword, Squish will
-
-
-
- Squish v1.00 Reference Manual - Page 55
-
-
-
- ignore all messages addressed to those nodes. Wildcards are
- also supported for gaterouting exceptions.
-
- For example, to gateroute all messages going from zone 1 to
- zone 2, with the exception of messages destined for
- 2:123/456, the following gateroute statement could be used:
-
- GateRoute 1:1/2 2:All Except 2:123/456
-
- In zone 1 of FidoNet, the standard set of gaterouting
- statements for other zones looks like this:
-
- GateRoute 1:1/2 2:All
- GateRoute 1:1/3 3:All
- GateRoute 1:1/4 4:All
- GateRoute 1:1/5 5:All
- GateRoute 1:1/6 6:All
-
- KillBlank
-
- The KillBlank verb instructs Squish to delete blank NetMail
- messages. Blank netmail messages are commonly generated by
- ARCmail attach systems, manual file requests, file attaches,
- and update requests. By definition, a "blank message" is a
- message which consists only of a message header, kludge
- lines and blank lines.
-
- KillDupes
-
- The KillDupes verb instructs Squish to delete duplicate
- messages as they are received, as opposed to placing the
- dupes in the DUPES message area. If you are encountering a
- large number of dupes and you already know where the problem
- is, this keyword can then be enabled to delete the dupes as
- they are tossed. However, having a copy of the dupes tossed
- into the DUPES area is instrumental to determining which
- system originated the duplicate messages, so this keyword
- should not be used for normal operation.
-
- KillIntransit
-
- The KillIntransit verb instructs Squish to delete in-transit
- NetMail messages. Normally, Squish leaves in-transit
- messages in the NetMail area for review by the SysOp, but
- this keyword will cause Squish to delete in-transit messages
- as soon as they have been packed up and sent to their
- destination.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 56
-
-
-
- LogFile <filespec>
-
- The LogFile keyword instructs Squish to keep a log of
- message information in the specified file. The log file is
- Maximus and Binkley-compatible, so it's safe to keep all
- three logs inside one file.
-
- The Squish log file includes information on archives, packet
- headers, areas which received mail, the amount of mail that
- was sent from your system, and to whom. The log file
- provides one way of obtaining EchoMail statistics; the other
- way is through analysis of the binary statistics file. For
- more information on binary statistics, please see the
- "Statistics" keyword.
-
- MaxAttach <number> (ArcmailAttach systems only)
-
- The MaxAttach keyword specifies the maximum number of
- ARCmail attach messages which can be in your NetMail
- directory at any given time. For internal reasons, Squish
- needs to know how many attaches you'll have concurrently.
- The default, 256, is more than enough for most systems.
- However, if you transfer an extremely large volume of mail
- with an ArcmailAttach mailer, you may need to increase this
- to 512 attaches or more.
-
- MaxMsgs <msgs>
-
- The MaxMsgs keyword instructs Squish to create a new set of
- outbound packets after processing every <msg> messages. The
- MaxMsgs keyword is useful in NEC situations, especially when
- a large volume of mail is processed at the same time. This
- verb helps to limit the size of packets that Squish
- generates, by making it taking a break from tossing and
- scanning after sending every <msgs> messages, and to then go
- and archive the packets generated so far.
-
- This keyword is completely automatic when running in single
- pass mode; as long as IN, OUT and SQUASH are specified on
- the command line, Squish will interleave the tossing,
- scanning and packing automatically. However, when running
- Squish in multipass mode, some batch file modifications are
- required.
-
- For multipass mode, after Squish finishes scanning every
- <msgs> messages, it will stop execution and exit with an
- errorlevel of 5. This errorlevel should be trapped by your
- batch file, and SQUISH SQUASH should be called at that
- point. After packing the NetMail area, your batch file
- should call SQUISH IN OUT again. For example, the following
-
-
- Squish v1.00 Reference Manual - Page 57
-
-
-
- batch file segment could be used to run Squish in multipass
- mode:
-
- :TossIt
- rem * Perform the main toss/scan cycle
-
- SQUISH IN OUT -fECHOTOSS.LOG
- if errorlevel 5 goto PackIt
- goto DoneToss
-
- :PackIt
- rem * If we got here, it's because we exceeded MaxMsgs.
- rem * We use -o, since we don't want to pack the netmail
- rem * area right now.
-
- SQUISH SQUASH -o
- goto TossIt
-
- :DoneToss
- rem * Now, perform a full pack to take care of remaining
- rem * archives, and also to handle any in-transit NetMail.
- SQUISH SQUASH
-
-
- When using the MaxMsgs keyword, Squish will create a file
- called MAX_MSGS.DAT in the current directory. This file is
- used to maintain information that is required between
- passes, such as the current location in the packet file and
- information about the packet itself.
-
- MaxPkt <num>
-
- The MaxPkt keyword informs Squish that there may be up to
- <num> packets queued in the OUTBOUND.SQ directory. For
- internal reasons, Squish needs to know the maximum number of
- packets that you'll be keeping in OUTBOUND.SQ. MaxPkt
- defaults to 256 packets, which should be more than enough
- for most systems. Unless you run a very busy system, you
- won't need to use this keyword.
-
- NetFile [NoPkt] [NoArc] <path>
-
- The NetFile keyword specifies the path to one of your
- inbound directories. When tossing mail, Squish will look in
- all of the NetFile directories you specify in the
- configuration file, and it will attempt to toss from each
- one. If the 'NoPkt' modifier is added before the directory
- name, Squish will never toss plain *.PKT files from that
- directory. If the 'NoArc' modifier is added before the
- directory name, Squish will never toss compressed mail files
-
-
- Squish v1.00 Reference Manual - Page 58
-
-
-
- from that directory. These modifiers can be used in
- conjunction with BinkleyTerm's three-tiered inbound areas to
- make your system slightly more secure.
-
- Nuke (ArcmailAttach systems only)
-
- The Nuke keyword instructs Squish to delete any orphaned
- compressed mail files in the OUTBOUND.SQ directory. Before
- performing a SQUISH SQUASH, Squish will scan the NetMail
- area for ARCmail attach messages. It will then scan
- OUTBOUND.SQ and delete any compressed mail file for which
- there is no attach.
-
- WARNING! This keyword is dangerous, since accidentally
- deleting an ARCmail attach message will cause the compressed
- mail file to be deleted too. Most systems do NOT require
- this keyword. If your mailer supports the ^aFLAGS kludge
- for truncating files, this is not necessary. As of this
- writing, the only mailer which is known to require the Nuke
- keyword is D'Bridge.
-
- OldArcmailExts
-
- This keyword instructs Squish to use the old file extension
- format when creating compressed mail archives. Normally,
- Squish creates files with extensions of .MO?, .TU?, .WE?,
- and so on. If OldArcmailExts is enabled, Squish will use
- the .MO? extension only, for compatibility with older
- systems such as Opus 1.03.
-
- Origin <text>
-
- The Origin keyword specifies a default origin line to use
- for EchoMail messages. If no origin can be found in the
- body of a message which was originated locally, Squish will
- use this text as the default origin line.b
-
- If you are using AREAS.BBS, this keyword is not required.
- The AREAS.BBS format includes a default origin line, and
- that origin will override the one given in SQUISH.CFG.
-
- Outbound <path>
-
- This keyword is required for both ArcmailAttach and
- BinkleyTerm systems.
-
- When running Binkley, this keyword gives the path to the
- base outbound directory. Specify only the base path of your
- outbound directory, such as "D:\Bt\Outbound". If you are
- using a BinkleyTerm system, Squish will add the zoned
-
-
- Squish v1.00 Reference Manual - Page 59
-
-
-
- directory extensions automatically, so only one outbound
- path needs to be declared. If a particular outbound
- directory does not exist, Squish will create it on-the-fly.
-
- Squish also creates a directory with an extension of .SQ for
- both BinkleyTerm and ArcmailAttach systems. This is used by
- Squish as a temporary work directory for packets.
-
- Pack <packer> <node> [<nodes>...]
-
- The Pack keyword instructs Squish to use the specified mail
- compression program when compressing mail for the listed
- nodes. By default, if a node is not listed after any Pack
- keywords, Squish will use the compressor defined with the
- DefaultPacker keyword. If no default packer is declared,
- Squish will simply use the first packer listed in
- SQUISH.CFG. Since the FidoNet standard for mail compression
- is ARC, you are urged not to change the default. Instead,
- the Pack keyword can be used to change the compression
- method on a node-by-node basis.
-
- <packer> specifies the name of a packer, as specified in
- COMPRESS.CFG. Please see the section entitled "ARCHIVERS
- AND MESSAGE COMPRESSION" for information on COMPRESS.CFG.
-
- <node> and <nodes> specify the nodes for which this packer
- should be used. Any number of nodes may be listed here,
- including wildcards. When packing mail for any of the nodes
- listed after a particular packer, Squish will attempt to run
- that packer using the information given in COMPRESS.CFG.
-
- You can specify as many nodes as you like, and you can also
- use as many packers and Pack lines as desired. When
- unpacking compressed archives, Squish will determine the
- archive type automatically, again using the information
- given in COMPRESS.CFG.
-
- WARNING! Squish will not attempt to convert archives from
- one type to another. Before changing the compression type
- for a certain node, make sure that no other compressed mail
- archives are waiting to be sent to that system. If there
- was, Squish would attempt to add a packet to that archive
- using the wrong archiver, which would certainly cause
- problems.
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 60
-
-
-
- Password <node> <password>
-
- The Password keyword allows passwords to be assigned to
- individual systems. For more information on using
- passwords, please see the section entitled "SECURITY".
-
- <node> should specify a single node address. No wildcards
- are permitted.
-
- <password> is the case-insensitive password to use for the
- specified node. Passwords must be eight characters or
- fewer, with no spaces allowed.
-
- PointNet <net>
-
- PointNet specifies the "fakenet" number to use for non-4D
- points. The fakenet point scheme was designed to work with
- systems which were unable to support true points, such as
- BinkleyTerm 2.40 and lower.
-
- When this keyword is used on the bossnode system, it causes
- the specified net number to be stripped from the SEEN-BYs
- for messages being exported to non-point systems. The
- fakenet number will also be used on the bossnode for
- remapping point addresses.
-
- If used on a point system, this keyword ensures that the
- right address is used on the point's origin line, if Squish
- is actually forced to add an origin line to a message.
-
- NOTE! The point software should be responsible for placing
- the correct origin line in messages generated by that point.
- Squish will use the correct address if Squish itself inserts
- the origin, but Squish will never modify an existing origin
- line.
-
- QuietArc
-
- The QuietArc keyword instructs Squish to suppress the screen
- output of external compression utilities. This option makes
- the screen look tidier, but it doesn't make any functional
- changes.
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 61
-
-
-
- Remap <node> <name>
-
- The Remap keyword is used to readdress mail with specified
- addresses in the "To:" field. Unlike other mail processors,
- Squish's remapping facility is a full node remapper.
- Messages can be remapped anywhere, from a point across the
- street to another system across the world.
-
- <node> specifies the network address of the system for which
- mail is to be remapped. This address must be EXPLICIT; if
- you are remapping mail to a 4D point, then you must specify
- the address in a 4D format. If you are remapping mail to a
- fakenet point, you must specify the node's fakenet address.
-
-
- <name> should be the name to check for in the "To:" field of
- inbound messages. When a NetMail message arrives that is
- destined for your system, Squish will scan the "To:" field
- for all of the names listed in Remap statements. If it
- finds a match, it will readdress the mail to the appropriate
- address and write the message back to disk.
-
- The <name> field has two special features:
-
- * Name wildcards. By placing a "*" at the end of a name,
- Squish will automatically remap messages which begin
- with that text. For example, using a remap name of
- "Jes*" would remap messages which were to "Jesse
- Hollington", "Jesse", and so forth.
-
- * Soundex support. If Squish can't find an exact match,
- it will perform a soundex compare of both the "To:"
- field and the Remap names. If a misspelled match is
- found, the message will still be readdressed (and noted
- in the log).
-
- Remap statements are processed in sequential order, from top
- to bottom. Therefore, if you wish to have a "clean up"
- statement to remap messages which were not caught by other
- Remap statements, include the command "Remap <node> *" after
- all other Remap statements. This will cause Squish to remap
- all remaining messages to the specified address, even if it
- couldn't find a match using any of the other Remap
- statements.
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 62
-
-
-
- Routing <filespec>
-
- This keyword specifies the location of the routing
- configuration file. By default, Squish will look for
- ROUTE.CFG in the current directory.
-
- SaveControlInfo (Squish message areas only)
-
- When this keyword is enabled (as it is in the default
- configuration file), Squish will preserve SEEN-BY and path
- information in *.SQ?-style message areas. If this keyword
- is commented out, Squish will strip SEEN-BY information from
- *.SQ? areas (when running in single pass mode ONLY).
-
- If you are really tight on disk space, stripping the SEEN-
- BYs is one way to reduce disk requirements. As long as you
- are running in one-pass mode, the *.SQ? format is safe to
- use without having SEEN-BYs written to the local message
- base. However, Squish will always write SEEN-BY information
- for *.MSG areas, as it will for *.SQ? areas when running in
- multipass mode.
-
- Secure
-
- The Secure keyword enables Squish's packet security
- features. For more information, please see the section
- entitled "SECURITY".
-
- Statistics
-
- The Statistics keyword turns on a binary statistics file,
- SQUISH.STA, which is used to hold extremely verbose
- statistics information about inbound and outbound messages.
- The Squish statistics file includes enough information to
- create a 100% accurate billing report for NECs and other
- EchoMail hubs. A minimal program (SSTAT) is included, with
- source, to parse this statistics file and display a billing
- report. No plans have been made to revise this utility, but
- the file format of the statistics file is publicly
- available, so it's expected that a third-party utility will
- be required to fully support the statistics information that
- Squish can produce.
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 63
-
-
-
- StripAttributes
-
- The StripAttributes keyword instructs Squish to strip the
- crash, hold and direct bits from incoming messages. This
- keyword is enabled in the default configuration file, since
- it prevents other systems from overriding your routing by
- sending a crash-flavoured message through your system.
- However, some systems run "power points" which have file
- attach privileges, so this keyword may need to be disabled
- to give full control of the system to the points (and
- everyone else).
-
- Swap [filespec] (DOS version only)
-
- The Swap keyword instructs Squish to swap itself out of
- memory before calling external archiving programs. If you
- are running Squish in a restricted environment, swapping can
- save 200K of conventional memory (or more).
-
- By default, Squish will first try to swap itself to XMS and
- then EMS. If unsuccessful, Squish will try to swap itself
- to disk. When swapping to disk, Squish will use a default
- swap filename of __SQUISH.~~~ in the current directory.
- However, if you wish to specify an alternate path and
- filename (such as a file on a RAMdisk), you can do so here.
-
- THIS KEYWORD MUST SPECIFY A FILENAME, NOT JUST A PATH!
-
- TinySeenBys <node> [<nodes>...]
-
- The TinySeenBys keyword instructs Squish to strip down the
- SEEN-BYs to a bare minimum when exporting or scanning
- messages to the specified nodes. The SEEN-BYs in the
- messages sent to those nodes will contain only the addresses
- of those systems which are listed for the EchoMail area n
- question. Any number of nodes may be specified, and
- wildcards can be used.
-
- TossBadMsgs
-
- Uncommenting the TossBadMsgs keyword indicates that it's
- safe to toss messages from your BAD_MSGS area. Normally,
- when Squish finds a message with an unknown area tag, or if
- it finds an insecure message, Squish will place that message
- in the BAD_MSGS area. However, if the message later becomes
- valid (such as when the SysOp adds an EchoArea definition
- for a previously-unknown area), Squish can automatically
- toss messages from that area. This feature can save you
- from manually moving dozens of misdirected messages.
-
-
-
- Squish v1.00 Reference Manual - Page 64
-
-
-
- Track <filespec>
-
- The Track keyword specifies a filename to use as a separate
- log for in-transit NetMail. If this keyword is enabled,
- Squish will log the To:, From: and Subject: lines of all in-
- transit netmail, in addition to the messages' origination
- and destination addresses.
-
- This keyword is useful for determining exactly who is
- forwarding messages through your system, and where the final
- destinations of those messages were. In addition, Squish
- will also place a note in the log if an AREA: line was found
- in the forwarded message, which indicates that the message
- in question was a routed EchoMail message.
-
- WARNING! This keyword must point to a separate log file.
- You cannot use the same log for both Track and LogFile.
-
- ZoneGate <target> <node> [<nodes>...]
-
- The ZoneGate keyword is used to strip the SEEN-BYs on
- messages destined for other zones. According to the FidoNet
- Technical Standards Committee, SEEN-BYs should be stripped
- whenever a message crosses a zone boundary. The procedure
- of stripping the SEEN-BYs on such a message is called
- "zonegating".
-
- <target> specifies the node for which you are zonegating
- mail. All EchoMail messages destined to this node will have
- their SEEN-BYs stripped.
-
- <node> and <nodes> specify one or more nodes to add to the
- SEEN-BYs of the zonegated messages, AFTER the original SEEN-
- BYs have been stripped. These addresses should be two-
- dimensional (net and node only), since there are no
- provisions for zone or point numbers in SEEN-BYs.
-
- WARNING! Unlike other mail processors, Squish does not
- automatically add any addresses to the SEEN-BYs of zonegated
- messages. As a bare minimum, you should add your own
- address and the address of the zonegate.
-
- For example, to zonegate messages from 1:123/456 to
- 2:987/654, the following ZoneGate line might be used:
-
- ZoneGate 2:987/654 123/456 987/654
-
- Notice that both our address (123/456) and the zonegate's
- address (987/654) were included in the <nodes> section of
-
-
-
- Squish v1.00 Reference Manual - Page 65
-
-
-
- the command. Failing to add both of these nodes may cause
- dupes.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 66
-
-
-
-
- Area Definitions
-
- Squish supports a flexible method for defining message areas in
- the Squish configuration file. The same mechanism is used for
- defining EchoMail, NetMail, BAD_MSGS and duplicate message areas.
- The general format of an area declaration is:
-
- <type> <tag> <path> [flags] [nodes]
-
-
- Area Types
-
- <type> specifies the type of area to define. A type must be
- specified for all areas. This type should be one of the
- following keywords:
-
- NetArea This area is defined as a NetMail area. For
- BinkleyTerm systems, Squish will pack messages from all
- NetAreas specified. For ArcmailAttach systems, Squish
- will use the first NetArea declared for creating
- ARCmail file attaches.
-
- EchoArea This area is defined as an EchoMail area. Messages can
- be tossed to and scanned from this area using the
- standard Squish commands.
-
- BadArea This area is defined as a "bad messages" (or BAD_MSGS)
- area. This will be used to store messages with
- security violations, messages for unknown areas, and
- other messages for which Squish couldn't find a proper
- home.
-
- DupeArea This area is defined as a duplicate message area. If
- Squish receives duplicate messages from another system
- (and if KillDupes is NOT enabled), those messages will
- be placed into this area for review by the SysOp.
-
-
- Area Tags and Paths
-
- <tag> specifies a short, one-word area tag (name) to use for the
- area being defined. For EchoMail areas, this tag should be the
- name of the echo. For other area types, such as NetAreas and
- BadAreas, any unique tag can be used.
-
- <path> specifies the directory and/or filename to use for this
- message area. If using the *.MSG format, the name of a separate
- directory should be given for each area. If using the Squish
- format (*.SQ?), a path and root filename (up to eight characters
-
-
- Squish v1.00 Reference Manual - Page 67
-
-
-
- with no extension) should be given. Squish will automatically
- create areas which do not exist.
-
- WARNING! The <tag> and <path> fields in AREAS.BBS are
- "reversed", meaning that the path comes before the tag. If you
- are used to defining areas in AREAS.BBS, make sure that you use
- the proper order when defining areas in SQUISH.CFG (tag and then
- path).
-
-
- Flags
-
- [flags] specifies an optional set of flags and options. A flag
- consists of a single dash followed by a letter, plus an optional
- modifier. The flags currently supported by Squish are:
-
- -f This flag tells Squish that the area is stored in
- FTS-0001 (*.MSG) format. *.MSG is the default
- storage format, so this flag usually is not
- required. When the *.MSG format is being used,
- the name of the *.MSG directory should be given
- for <path>.
-
- -p<node> This flag specifies an alternate primary address
- for the current area. <node> should be a full 4D
- address, including zone and point numbers (if
- appropriate).
-
- Using an alternate primary address will affect
- Squish's operation in the following ways:
-
- * The alternate address will be added to the
- SEEN-BYs for the specified area, as opposed
- to adding the first address declared in
- SQUISH.CFG.
-
- * The alternate address will be added to the
- ^aPATH line instead of your normal address.
-
- * The alternate address will be used when
- creating packets with messages from the
- specified area.
-
- This flag permits "clean" multi-zone operation
- with only one configuration file, even when using
- a diverse range of addresses and message areas.
-
- -s This flag strips the private bit from all messages
-
-
-
-
- Squish v1.00 Reference Manual - Page 68
-
-
-
- which are tossed to this area. Unlike other
- EchoMail processors, handling of private messages
- can be controlled on an area-by-area basis.
-
- -x<node> This flag instructs Squish NOT to accept any
- inbound messages in this echo from the specified
- address. This flag can be used to make a certain
- node "read only" for one area, since messages
- coming from that node will trigger a security
- violation and be placed in BAD_MSGS.
-
- -0 (That's a zero, not the letter "o".) This flag
- tells Squish that the current area is a "passthru"
- area. This means that messages from this area
- don't stay on your system; they are simply scanned
- out to the other systems listed for this area and
- then deleted. If you are running Squish in single
- pass mode, messages will be scanned directly from
- the inbound *.PKT files and will never touch your
- message areas.
-
- -+<node> This flag adds a node to the SEEN-BYs for the
- current area only. <node> should be a two-
- dimensional address (net/node only).
-
- Note! If you are using an alternate primary
- address, that address will be added to the SEEN-
- BYs automatically.
-
- -$ This flag tells Squish that the area is stored in
- the Squish (*.SQ?) format. When using this flag,
- <path> should specify the full path and root
- filename of the Squish area. (A root filename is
- the path and the first eight characters of a DOS
- filename, with no extensions permitted.)
-
- -$d<num> This flag specifies that no more than <num> days
- worth of messages should be kept in a Squish-style
- area. This causes SQPACK to delete all messages
- which are more than <num> days old. NOTE! Unlike
- -$m, this flag does NOT cause Squish to purge
- messages on the fly. If you choose to delete
- message by date, you must run SQPACK once a day.
- Otherwise, if you choose to delete by message
- number, you can allow Squish to renumber and purge
- the area as it tosses.
-
- -$m<msgs> This flag specifies the maximum number of messages
-
-
-
-
- Squish v1.00 Reference Manual - Page 69
-
-
-
- to keep in a Squish-style area. Normally, Squish
- leaves the maximum message counter alone in a
- *.SQ? area. However, if Squish has to create the
- area for one reason or another, the maximum
- message counter will be set to a value of <msgs>
- messages. Using the -$m switch also implicitly
- activates the -$ switch.
-
- -$s<msgs> This flag specifies the number of messages to skip
- killing <msgs> messages at the beginning of a
- Squish-style area. This flag must be used in
- conjunction with the -$m flag. See the section
- entitled "USING SQUISH-FORMAT MESSAGE AREAS" for
- more details.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 70
-
-
-
-
- Split Area Definitions
-
- Squish allows EchoMail areas to be defined in SQUISH.CFG,
- AREAS.BBS, and it even allows area definitions to be split
- between both. Such splitting is necessary, especially if you
- want to use Squish-specific features and also wish to remain
- compatible with the AREAS.BBS file format.
-
- When declaring a split area in either SQUISH.CFG or AREAS.BBS,
- Squish will check to see if that area exists in the list of
- existing areas. If it does, Squish will simply add to that
- area's definition, as opposed to creating a new logical area.
- Nodes and flags specified in one file will be automatically
- applied to the other; in other words, the following two
- definitions:
-
- AREAS.BBS:
-
- C:\Msg\Magic XXYZY 1:123/456 789
-
- SQUISH.CFG:
-
- EchoArea XXYZY C:\Msg\Magic -$ -p1:234/567
-
- would be equivalent to the following definition in SQUISH.CFG
- only:
-
- EchoArea XXYZY C:\Msg\Magic -$ -p1:234/567 1:123/456 789
-
- Declaring areas using this method enables all of the new Squish
- features, but it also allows for compatibility with utilities
- which use AREAS.BBS for node information, including Areafix and
- many others.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 71
-
-
-
- ARCHIVERS AND MESSAGE COMPRESSION
-
- Through the use of external file archiving utilities, Squish is
- capable of compressing mail that it sends to other systems. If
- you are using the Send and Route keywords in ROUTE.CFG, Squish
- will automatically compress mail for the specified nodes.
- Instead of sending *.PKT files, Squish will then send *.MO?,
- *.TU?, *.WE?, *.TH?, *.FR?, *.SA? and *.SU? files. (The last
- part of the file extension will be a single digit; this digit is
- incremented after creating each archive, which ensures that
- compressed mail files do not get overwritten once an archive
- arrives at its destination.)
-
- In addition, Squish allows you to define a separate compression
- program for individual nodes. Some of the systems you connect
- with may wish to use ARC, while others may elect to use ZIP and
- LZH. The Pack and DefaultPacker statements in SQUISH.CFG can be
- used to select different archivers for each node.
-
- However, Squish takes a new approach to message compression.
- Instead of hardcoding support for all of the archivers currently
- available, Squish uses a "compression configuration file". Using
- such a file allows Squish to support as many archive types as
- possible. The flexibility of this file even allows Squish to use
- archiving programs which have not been invented at the time of
- this writing.
-
- In SQUISH.CFG, the Compress keyword controls the location of the
- compression configuration file. As distributed, COMPRESS.CFG
- comes configured for use with ARC, ZIP, PAK, ZOO, ARJ, LHarc 1.13
- and LHarc 2.xx. However, new programs can be added to Squish's
- repertoire on a moment's notice.
-
- COMPRESS.CFG is divided into a number of entries, one per
- archiver. (As many archivers can be defined as you like, memory
- limiting.) Each entry in COMPRESS.CFG looks like this:
-
- Archiver <name>
- Extension <ext>
- Ident <pos>,<hexstr>
- Add <cmd>
- Extract <cmd>
- View <cmd>
- End Archiver
-
- The "Archiver" keyword starts off the definition of an archiving
- program. <name> specifies the short-form name of the archiver;
- this short form should be a single word, since Squish uses it to
- select compression types with the Pack statement in SQUISH.CFG.
-
-
-
- Squish v1.00 Reference Manual - Page 72
-
-
-
- <ext> is the file extension normally used by the specified
- archiver. At present, this information is not used by Squish,
- but it may be used by other programs which share the same
- COMPRESS.CFG file.
-
- Next comes the Ident keyword: the information provided by this
- keyword allows Squish to identify archives of unknown types.
- Most archiving programs place a special signature at the
- beginning of a compressed file, so when Squish encounters such a
- file, these special signatures are used to determine how to
- unpack the archive.
-
- The <pos> number tells Squish where to look for the archiver's
- signature. If <pos> is greater than or equal to zero, it is
- interpreted as an offset from the start of the file, with the
- first byte being offset 0, the second byte being offset 1, and so
- on. If <pos> is negative, Squish will interpret it as an offset
- from the END of the file, with -2 being the last byte in the
- file, -3 being the second-last byte in the file, and so on.
-
- <hexstr> is an ASCII representation of the archiver's signature.
- Every byte in the archiver's signature should be converted to
- hexadecimal, and then entered into the compression configuration
- entered as two hexadecimal digits. Since most archivers use
- special control characters in their signatures, entering the
- signatures directly is not possible. However, by representing
- each byte as two hexadecimal digits in the range 0-9 and A-F,
- even the simplest of editors can read the compression
- configuration file.
-
- The Add keyword specifies the command which should be used to add
- files to the specified type of archive. Similarly, the Extract
- and View keywords specify the commands to use for extracting from
- and viewing archives (respectively).
-
- Before executing the archiver, Squish will make two special
- translations: all occurrences of the string "%a" will be changed
- to the name of the archive being processed. Similarly, all
- occurrences of the string "%f" will be changed to the name of the
- file(s) to be added or extracted. These tokens allow the utmost
- in flexibility when handling multiple archiving programs.
-
- The "End Archiver" keyword signifies the end of an archiver
- definition. Each "Archiver" keyword must be followed by an "End
- Archiver" keyword later in the file.
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 73
-
-
-
- ROUTING
-
- Squish includes a complete routing control system for both
- BinkleyTerm and ArcmailAttach mailers. Squish is capable of
- generating ARCmail attach messages for systems with dynamic
- routing, and it also includes a full complement of commands for
- handling static routing.
-
- All of Squish's routing is performed via the ROUTE.CFG file.
- Whether you are using dynamic (ArcmailAttach) or static (Binkley)
- packing, all of the Squish routing commands must be placed in
- this file.
-
- As distributed, all of the commands in your routing control file
- are executed every time a SQUISH SQUASH is performed. However,
- Squish's routing system can be used to implement "schedules",
- which cause certain routing commands to be performed at certain
- times. (Schedules can be run on the basis of the time of day, or
- they can be simply run on demand.)
-
- Commands which are to be always run, regardless of schedules,
- must be placed in the "global section", or before the first
- "Sched" statement in ROUTE.CFG. The only difference between
- schedules and the global section is when the commands are
- performed; otherwise, after Squish has started processing a
- section of the control file (whether it be the global section or
- a schedule), all routing commands are treated the same.
-
-
- Generic Routing Commands
-
- Several routing commands apply to both static and dynamic
- packing. Namely, all of following commands can be used equally
- well on both BinkleyTerm and ArcmailAttach systems:
-
- Send <flavour> [NoArc] <node> [<nodes>...]
-
- The Send command scans for uncompressed mail with a normal
- flavour, compresses it, and changes the mail's flavour. The
- Send command changes the attributes of the mail, but it
- never changes the mail's destination address. (If you wish
- to change the destination address, please see "Route",
- below.)
-
- <flavour> specifies the flavour to use for the resulting
- compressed mail file. Squish will assign this flavour to
- the compressed mail archive after archiving all of the
- packets for this node.
-
-
-
-
- Squish v1.00 Reference Manual - Page 74
-
-
-
- The optional NoArc modifier stops Squish from archiving the
- packet that is created for the specified system. Squish
- will simply change all normal-flavoured packets to the
- specified flavour, placing all of the original packets into
- one large packet file. The command "Send <flavour> NoArc
- <node>" has the same net effect as "Change Normal <flavour>
- <node>". This modifier apples to BinkleyTerm systems only.
-
- <node> and <nodes> are simply a list of nodes to which mail
- should be sent. Squish will expand all node number
- wildcards and process all normal-flavoured packets for those
- nodes.
-
- In the BinkleyTerm outbound area, using Send (without the
- NoArc modifier) has the following result:
-
- xxxxyyyy.OUT --> xxxxyyyy.MO? + xxxxyyyy.?LO
-
- With the NoArc modifier, the result will be as follows:
-
- xxxxyyyy.OUT --> xxxxyyyy.?UT
-
- Route <flavour> [NoArc] [File] <target> [<nodes>...]
-
- The Route command scans for uncompressed mail with a normal
- flavour, compresses it, changes the mail's flavour, and
- (unlike Send) readdresses the mail. The Route command scans
- for mail addressed to any of the specified nodes, but
- readdresses that mail to the target. In other words, Route
- scans for uncompressed mail destined to <nodes>, archives
- the mail, and finally sends it to <target>.
-
- <flavour> specifies the flavour to use for the resulting
- compressed file.
-
- The NoArc modifier (optional) stops Squish from archiving
- the resulting mail. Squish will simply combine all of the
- specified packets into one, give it the appropriate flavour,
- and send it to the target without any form of compression.
- This modifier applies to BinkleyTerm systems only. WARNING!
- The NoArc modifier causes all 4D zone and point information
- to be lost! Only net and node numbers will be maintained
- for mail routed with the NoArc keyword.
-
- The File modifier (optional) instructs Squish to route file
- attaches in addition to messages. By default, all file
- attaches are sent to the specified destination, regardless
- of flavour. However, if the File modifier is used, Squish
- will also scan for and route file attaches. This modifier
- applies to BinkleyTerm systems only.
-
-
- Squish v1.00 Reference Manual - Page 75
-
-
-
- <target> is the address of the system which will receive the
- routed packets. Make sure that you have made prior
- arrangements with the target to route your mail, since it's
- discourteous to route mail through someone else's system
- without asking permission. Wildcards should not be used
- when specifying the target address.
-
- <nodes> are the addresses for which mail will be routed.
- All of the normal-flavoured mail for these addresses will be
- packaged up and sent to the target.
-
- In the BinkleyTerm outbound area, using Route (without any
- modifiers) has the following result:
-
- xxxxyyyy.OUT --> XXXXYYYY.MO? + XXXXYYYY.?LO
-
- When using the NoArc modifier, the Route command has the
- following result:
-
- xxxxyyyy.OUT --> XXXXYYYY.?UT
-
- The File modifier causes the following changes to take
- place, in addition to the above:
-
- xxxxyyyy.FLO --> XXXXYYYY.?LO
-
- Define <token> <text>
-
- The Define token is used to provide a short-form for routing
- commands. The Define command acts as a macro facility,
- since it causes all further occurrences of <token> to be
- replaced by <text>. As an example, the Define command is
- useful if there is a common set of nodes for which different
- routing commands must be applied over and over again. Given
- the following Define statement:
-
- Define Hub300 300 301 302 303 304 305 306
-
- Squish would translate the word "Hub300" to "300 301 302 303
- 304 305 306" wherever that word occurred later in the file.
- If the following route command were given:
-
- Route Crash 1:123/300 Hub300
-
- all of the mail for nodes 300 through 306 would be routed
- through 1:123/300.
-
- However, replacements will only take place when the defined
- <token> is surrounded by whitespace or punctuation.
-
-
-
- Squish v1.00 Reference Manual - Page 76
-
-
-
- Dos <cmd>
-
- The Dos command can be used to pass the name of an external
- command to the operating system. The command will simply be
- run via the default command processor (normally COMMAND.COM
- for DOS, or CMD.EXE for OS/2).
-
- Schedules
-
- Squish supports the concept of "schedules", which are routing
- commands that can be run at different times of the day. Squish
- also supports a section of global routing commands which are
- always run.
-
- The "Sched" statement in ROUTE.CFG is used to begin a schedule.
- All routing commands which precede the first Sched statement are
- in the "global section", and they are always run when a SQUISH
- SQUASH is performed. Squish will execute statements inside a
- schedule up to the next Sched statement, or until the end of the
- file is reached.
-
- The format of the Sched statement is as follows:
-
- Sched <tag> [day] [start] [end]
-
- <tag> is a one-word identifier for this schedule. If you wish to
- explicitly execute this schedule on demand, then this tag must be
- specified on the command line through the -s command-line switch.
- Otherwise, the name given to each schedule is irrelevant.
-
- <day> instructs Squish to execute the schedule on certain days of
- the week. To always execute a schedule, use the word "All". To
- execute a schedule on weekends only, use the word "WkEnd". To
- have it executed only on weekdays, use "WkDay". To execute the
- schedule on a particular day of the week, use the words "Mon",
- "Tue", "Wed", "Thu", "Fri", "Sat" or "Sun". To execute the
- schedule on more than one day of the week, use the "|" (pipe)
- character to string together two or more of the above words. For
- example, "Tue|Wed|Fri" would cause the schedule to be run only on
- Tuesdays, Wednesdays and Fridays.
-
- <start> specifies the starting time for the schedule, specified
- in 24-hour format (hours:minutes). The schedule will only be
- executed if the current time is equal to or greater than the time
- specified.
-
- <end> specifies the ending time for the schedule, specified in
- 24-hour format. The schedule will only be executed if the
- current time is equal to or less than the time specified.
-
-
-
- Squish v1.00 Reference Manual - Page 77
-
-
-
- WARNING FOR QMAIL USERS!
-
- IF YOU WILL BE RUNNING A SCHEDULE BY THE COMMAND LINE, <tag> IS
- THE ONLY REQUIRED PARAMETER! When Squish is scanning through
- ROUTE.CFG, it will automatically execute any schedules which fall
- within the specified time frame, regardless of those schedules'
- tags. This means that ALL schedules with a date/time of "All
- 00:00 23:59" will be executed. Unless you want to run all of
- your schedules each time a SQUISH SQUASH is performed, only use
- the date and time for schedules which actually need to be run at
- different times.
-
- Example
-
- For example, the following ROUTE.CFG segment has a set of global
- routing commands which are run all the time, a set of commands
- which are run in the morning, and a set which are run in the
- afternoon/evening:
-
- ; GLOBAL COMMANDS
- ; Always route mail for net 123.
-
- Route Crash 1:123/1 123/All
-
- ; Route mail for my NC to the right place.
-
- Route Crash 1:222/0 1
-
- ; MORNING COMMANDS
-
- Sched Morning All 00:00 11:59
-
- ; Convert previously-held mail to crash for nodes in zone 2
-
- Change Hold Crash 2:All
- Send Crash 2:All
-
- ; AFTERNOON/EVENING COMMANDS
-
- Sched Afternoon All 12:00 23:59
-
- ; Convert crash zone 2 mail back to hold
-
- Change Crash Hold 2:All
-
- ; Now send all new zone 2 mail as hold
-
- Send Hold 2:All
-
- ; COMMANDS RUN ON DEMAND
-
-
- Squish v1.00 Reference Manual - Page 78
-
-
-
- Sched PollNEC
-
- Poll Crash 1:222/2
-
- When run in the morning, Squish would handle routing for nets 123
- and 222, in addition to sending crashmail to all zone 2 systems.
- When run in the afternoon, Squish would still handle routing for
- nets 123 and 222, but it would send mail to zone 2 systems as
- hold. When run with the command line switch "-sPollNEC", Squish
- would generate a crash poll to node 222/2.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 79
-
-
-
-
- BinkleyTerm Routing Commands
-
- The following commands can only be used on a BinkleyTerm-style
- system. These commands directly modify the outbound directories,
- so there are no equivalent commands for ArcmailAttach systems.
-
- Leave <node> [<nodes>...]
-
- The Leave command modifies outbound mail so that it won't be
- sent by BinkleyTerm. Squish will rename both *.?UT and
- *.?LO to an extension which is not recognized by
- BinkleyTerm, thereby preventing the mail from being sent or
- picked up.
-
- Leaving mail is useful for mail hubs and NECs, since it
- stops all mail from being sent to the specified nodes. If
- your system has a crucial polling window and you want to
- stop others from calling in to pick up mail, then the Leave
- command can be used to make that mail inaccessible.
-
- To convert mail back to its original form after using
- "Leave", see the documentation for the Unleave command.
-
- As many nodes can be specified for the Leave command as
- necessary. Wildcards are permitted.
-
- In the BinkleyTerm outbound area, using Leave has the
- following result:
-
- xxxxyyyy.?UT --> xxxxyyyy.N?T
- xxxxyyyy.?LO --> xxxxyyyy.N?O
-
- Unleave <node> [<nodes>...]
-
- The Unleave command undoes all of the changes which were
- made by the Leave command. Mail which was left for the
- specified nodes will be converted back so that it can be
- sent.
-
- As many nodes can be specified for the Unleave command as
- necessary. Wildcards are permitted.
-
- In the BinkleyTerm outbound area, using Unleave has the
- following result:
-
- xxxxyyyy.N?T --> xxxxyyyy.?UT
-
- xxxxyyyy.?LO --> xxxxyyyy.N?O
-
-
-
- Squish v1.00 Reference Manual - Page 80
-
-
-
- Change <from_flavour> <to_flavour> <node> [<nodes>...]
-
- The Change command is used to change the flavour of existing
- packets and file attaches.
-
- <from_flavour> specifies the flavour to convert FROM. Only
- mail of this flavour will be converted. Valid flavours are
- crash, hold, direct and normal.
-
- <to_flavour> specifies the flavour to convert TO. All types
- of mail with a <from_flavour> will be converted to the
- <to_flavour>. Valid flavours are crash, hold, direct and
- normal.
-
- <node> and <nodes> specify the nodes for which mail should
- be converted. Squish will process mail which are addressed
- to these nodes only, and apply the specified conversions.
-
- In the BinkleyTerm outbound area, using Change has the
- following result:
-
- xxxxyyyy.?UT --> xxxxyyyy.?UT
- xxxxyyyy.?LO --> xxxxyyyy.?UT
-
- Poll <flavour> <node> [<nodes>...]
-
- The Poll command is used to generate a poll to another
- system, even if there is no other mail waiting for that
- node.
-
- <flavour> specifies the flavour to use when creating the
- poll. Valid flavours are normal, crash, hold, and direct.
-
- <node> and <nodes> specify the node numbers which should be
- polled. Wildcards are NOT permitted.
-
- In the BinkleyTerm outbound area, using Poll has the
- following result:
-
- Create: xxxxyyyy.?LO
-
- HostRoute <flavour> [File] [NoArc] <node> [<nodes>...]
-
- HostRoute is similar to the Route and Send commands, except
- that HostRoute will route normal-flavoured mail to each
- node's net host, as opposed to routing it all through a
- central hub. (In other words, mail for 123/456 will be
- routed through 123/0, just as mail for 678/901 will be
- routed through 678/0.)
-
-
-
- Squish v1.00 Reference Manual - Page 81
-
-
-
- <flavour> specifies the flavour to use when creating the
- routed packets.
-
- The File modifier instructs Squish to route files in
- addition to messages. In general, the HostRouting of files
- is discouraged.
-
- The NoArc modifier stops Squish from archiving the resulting
- packets. Messages will be sent to the net hosts in an
- uncompressed form.
-
- <node> and <nodes> specify the nodes for which routing will
- take place. Wildcards are permitted.
-
- In the BinkleyTerm outbound area, using HostRoute has the
- following result:
-
- xxxxyyyy.OUT --> xxxx0000.?UT
-
- The File modifier causes the following changes to take
- place, in addition to the above:
-
- xxxxyyyy.FLO --> xxxx0000.?LO
-
-
- Dynamic Routing (FrontDoor)
-
- Squish has only minimal support for dynamic routing, since
- dynamic routing is always performed by your mailer. The Route
- command CAN be used to route mail, but using your mailer to
- perform all routing is recommended.
-
- All schedules for an ArcmailAttach mailer should end with the
- command "Send Normal World". This command compresses all
- remaining mail and gives it a flavour of normal. Since
- ArcmailAttach mailers only recognize compressed mail, this
- command is required to ensure that all mail is properly sent.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 82
-
-
-
- SECURITY
-
- In most environments, EchoMail security is not a problem.
- However, in some instances, other systems may attempt to inject
- unwanted mail into normal EchoMail areas. Squish provides two
- forms of protection against this:
-
- * "Secure mode". When the "Secure" keyword is added to
- SQUISH.CFG, Squish will check the origination addresses of
- all incoming packets, and it will only toss messages from
- systems which are listed in the "<nodes>" section of your
- area definitions. In other words, unless you have added the
- address 123/456 to the definition for a particular echo,
- that node will not be able to send messages in that echo to
- your system.
-
- Secure mode provides protection against unlisted systems
- "crashing" messages into an EchoMail area through your
- system. If messages cannot be tossed due to a security
- violation, they will be placed in your BAD_MSGS area.
-
- * Packet passwords. Although secure mode protects against
- most unwanted packets, other systems may try to send you
- mail using the address of another node. Squish protects
- against this by allowing packet passwords to be used; by
- using Password statements in SQUISH.CFG, you can declare a
- password for nodes that you regularly connect with.
-
- Passwords are "bidirectional", meaning that the same
- password is used for both sending and receiving mail. The
- packet password must be the same for both sides of the link.
- In other words, if node 123/456 wants to use the password
- "qwerty" for node 234/567, the configuration file on 123/456
- must look like this:
-
- Password 234/567 Qwerty
-
- and the configuration file on 234/567 must look like this:
-
- Password 123/456 Qwerty
-
- In either case, the intent is to list the password to use
- when sending mail to the other system. When creating
- packets for that system, Squish will insert the specified
- password into the packet. In addition, when tossing packets
- from that system, Squish will check to make sure that the
- password is the same as the one listed in your configuration
- file. If the two passwords do not match, the incident will
- be noted in the log, and the packet will be renamed to *.BAD
- and will not be tossed.
-
-
- Squish v1.00 Reference Manual - Page 83
-
-
-
- * Multiple NetFile paths. Squish supports multiple NetFile
- paths with varying attributes in SQUISH.CFG. When used with
- a mailer which allows different inbound directories to be
- declared for passworded and non-passworded systems, the
- modifiers for the NetFile keyword (such as NoArc and NoPkt)
- can be used to stop Squish from tossing certain types of
- mail from certain systems. This helps prevent so-called
- "ARCmail bombs" from being decompressed and filling up all
- of your disk space.
-
- * Receive-only nodes. The -x<node> flag can be used with an
- EchoArea definition to stop Squish from tossing messages
- from a certain node in a certain echo. This allows an echo
- to be sent to a system, but it stops that system from
- sending any messages back into the echo.
-
- If all of these security features are enabled, Squish becomes a
- very secure and rigid mail processor. Most of these features
- won't be necessary for day-to-day operation, but they will become
- extremely useful when trying to stop unwanted mail from entering
- your system.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 84
-
-
-
- MULTIZONE OPERATION
-
- Squish was designed especially for use on a multizone system. In
- addition to full zone and point support, Squish can use an
- alternate primary addresses for each individual message area on
- your system. Squish can control the SEEN-BYs on an area-by-area
- basis, generate packets with proper 4D addressing information,
- and more.
-
- The first key to multizone operation is the -p flag in
- SQUISH.CFG. This flag allows an alternate primary address to be
- selected for each individual message area. Squish will use the
- alternate address when adding to the ^aPATH line, SEEN-BYs and
- the message origin. In addition, the origination address in
- outbound packets will also use your alternate address for that
- area.
-
- To use the -p flag, simply place that flag and your alternate
- primary address before all the addresses of the systems that you
- feed. For example, to declare an alternate primary address of
- 89:487/106, in an area called "IMEX.R82" (which you receive from
- 89:487/0), the following line should be used in SQUISH.CFG:
-
- EchoArea IMEX.R82 C:\Msg\ImexR82 -p89:487/106 89:487/0
-
- The alternate primary address also changes your default address
- for the area definition, so the following would have the same
- effect:
-
- EchoArea IMEX.R82 C:\Msg\ImexR82 -p89:487/106 0
-
- Squish can support an unlimited number of alternate primary
- addresses, as long as you use the proper -p flag for each area.
- The -p flag is not required for areas which use your primary
- address (the first address declared in SQUISH.CFG), since Squish
- will use your first address by default.
-
- Squish is also capable of adding node numbers to the SEEN-BYs for
- one area only. In a manner similar to using alternate primary
- addresses, simply add a -+<node> flag for each area and for each
- node that you wish to add. (Your alternate primary address will
- be added automatically, so you don't need to worry about adding
- it as well.)
-
- For example, if you wanted to add the nodes 487/2 and 487/3 to
- messages passing through your system in the ABC echo, using an
- alternate address of 89:487/106, the following declaration in
- SQUISH.CFG would do the job:
-
- EchoArea ABC C:\Msg\ABC -p89:487/106 -+487/2 -+3 487/0
-
-
- Squish v1.00 Reference Manual - Page 85
-
-
-
- Finally, you should make sure that you have declared all of your
- alternate primary addresses using the Address keyword in
- SQUISH.CFG. Otherwise, Squish won't realize that messages for
- your alternate address are really for your system, and it will
- try to forward them as in-transit netmail.
-
- That's all there is to it! No secondary configuration files, and
- more importantly, no kludges are required. Squish provides
- transparent support for multizone systems, with a minimum amount
- of hassle and with no speed drawbacks.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 86
-
-
-
- POINTS (4D, FAKENETS AND BOSSNODES)
-
- Squish incorporates full support for 4D and fakenet points, both
- as a point itself and as the managing bossnode. Bossnodes can
- also transparently support both types of points, still using the
- same configuration file.
-
- Fakenet Points
-
- In the early days of FidoNet, support for true points was minimal
- or nonexistent. As a workaround, instead of giving true 4D
- addresses to a system's points, a dummy net number was created.
- In turn, the node numbers in that net would actually represent
- points of the bossnode. Since this dummy net/node combination
- was a simple net/node address (with no point numbers), adapting
- existing software was no problem. This net number would be used
- for internal communication between the bossnode and the points.
- For example, if 123/456 were using a dummy net number of 14122,
- the fakenet version of the address 123/456.1 would be 14122/1.
-
- When using the fakenet scheme, it is vitally important to ensure
- that fakenet numbers do not "escape" out into the rest of the
- net. Since many systems could theoretically be using the same
- dummy network number, the fakenet addresses are usually stripped
- or converted by the boss system before messages are sent to the
- rest of the network.
-
- Squish supports fakenet points through the use of the "PointNet"
- keyword in SQUISH.CFG. Simply specify which dummy net you are
- using, and Squish will automatically handle the details of
- stripping and adding SEEN-BYs.
-
- NOTE! As the boss of a fakenet system, you should make sure to
- use the actual fakenet number whenever you refer to one of your
- points. Since Squish supports both 4D and fakenet points in the
- same configuration, you must be careful to use the correct
- address. In other words, if you have a fakenet point at
- 123/456.1, with a fakenet address of 14122/1, you must ensure
- that your control files and AREAS.BBS always refer to this point
- as 14122/1. 4D addresses can only be used when dealing with true
- 4D points.
-
- 4D Points
-
- Squish supports true 4D points in addition to fakenet points.
- However, to use 4D points, both the bossnode and the point must
- be running 4D-capable tossers, scanners and mailers. As of this
- writing, the only 4D mailers in common use are FrontDoor,
- InterMail, D'Bridge, and BinkleyTerm 2.50+. 4D tossers and
- scanners include Squish, TosScan, Imail and others. Unless all
-
-
- Squish v1.00 Reference Manual - Page 87
-
-
-
- of your software supports 4D addressing and the "2+" packet
- header proposal, you won't be able to use 4D points.
-
- Squish supports 4D points in an extremely simple manner; just
- use the 4D point address like a normal address. Squish will
- automatically handle the tossing and scanning of messages from 4D
- points, and there is no need to remap addresses. SEEN-BYs are
- ignored when sending messages to 4D points, since SEEN-BY lines
- are only two-dimensional.
-
- As with fakenet points, make sure that you always use the 4D
- address when referring to 4D points. If you attempt to mix and
- match 4D and fakenet addresses for the same node, Squish may not
- work the way you intended it to.
-
-
- Remapping
-
- Squish includes a built-in node remapper. This remapper
- readdresses inbound netmail based on the "To:" field, and it also
- remaps outbound netmail by changing the fakenet back to a 4D
- address, if applicable.
-
- When specifying point numbers in the remapper, make sure that you
- specify either a 4D or a fakenet address, as appropriate. Again,
- since Squish supports both 4D and fakenet points in the same
- configuration, you must make sure to use ONLY fakenet addresses
- for fakenet points, and ONLY 4D addresses for 4D points.
-
- For more information on the remapper, please see the
- documentation for the Remap keyword in the SQUISH.CFG reference.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 88
-
-
-
- USING SQUISH-FORMAT MESSAGE AREAS
-
- In addition to the FidoNet standard *.MSG format, Squish also
- supports the proprietary, flat-file *.SQ? message base. This
- message base was designed from the ground up to be fast, reliable
- and small. Some of the key features of the Squish message format
- are:
-
- * Flat-file message areas. A separate message database per
- message area. Using a separate message file for each area
- still provides for quick access, but if disaster should
- happen (such as a message base crash), only one area will be
- damaged.
-
- * Maintainability. The Squish format utilizes a customized
- circular file structure. For the most part, Squish message
- areas are completely self-maintaining. If a message is
- deleted in a Squish message base, the space left by that
- message can be reused when more messages are written to the
- area. Squish attempts to fill the message base in an
- optimal manner, so "packing" is not as important as it is
- with other message base types. Depending on the volume of
- mail you process, Squish areas may only need to be packed
- once a week! Squish areas are also renumbered on the fly,
- so an external renumbering utility is not required.
- Finally, the Squish file format also allows for a "maximum
- message limit" to be set for any given area. This limit
- will be used to automatically purge old messages as new ones
- are written to the message base, which eliminates the need
- for an external message deletion utility. A separate set of
- message numbers is maintained for each message area, which
- eliminates the "messages in this area are numbered 89,216
- through 90,784" eyesore of other message formats.
-
- * Reliability. The Squish format was designed to make message
- recovery an easy task, even in the event of a total message
- base crash. The SQFIX utility can be used to fix a damaged
- Squish area with no user intervention. SQFIX has a high
- success rate; in most cases, not a single message will be
- lost! The only disadvantage to SQFIX is that the sequential
- order of messages within a base may be lost; but this is a
- small price to pay for an automated message recovery system.
-
- * Speed. Since Squish uses a flat-file message base, it is
- much faster than the FTS-0001 *.MSG format. Based on
- preliminary testing, Squish is also faster at tossing
- messages than QECHO 2.66 and several other utilities which
- use the Hudson message format.
-
-
-
-
- Squish v1.00 Reference Manual - Page 89
-
-
-
- * Size. Messages are stored in the equivalent of a random-
- access file with a record length of 1 byte, so no "blocks"
- are necessary. Unlike the Hudson format, Squish stores
- messages directly after one another with no padding. When
- the SEEN-BY information is turned off, Squish message bases
- are consistently smaller than the equivalent Hudson-format
- message base.
-
- * Multitasking and LAN awareness. Squish was designed from
- the ground up to be compatible with multitasking and network
- systems. Multiple programs, such as Squish and Maximus, can
- access the same message base at the same time with no danger
- of corruption.
-
- * Flexible structure. Squish areas have built-in support for
- full 4D origination and destination addresses, date-of-
- creation and date-of-arrival binary timestamps, and more.
- In addition, ^A kludge lines are stored in a separate
- logical record before the message body, providing a unified
- way for developers to access message control information.
-
- Even with all of these advanced features, the Squish format is
- easy to use. Squish format areas can be declared in both
- SQUISH.CFG and AREAS.BBS, although the maximum message limit can
- only be set in SQUISH.CFG for compatibility reasons.
-
- On disk, Squish message bases are stored using two files per
- message area. To name a Squish area, you must specify a path and
- a "root filename". A root filename is the base part of a
- filename, eight characters or fewer, with no extension. Squish
- will then add the appropriate extensions to access the message
- data and index files.
-
- The Squish message format itself only requires two files per
- message area:
-
- areaname.SQD This file is used to store the message data.
- Information about the area, the number of
- messages, message headers, the message body, and
- the linked lists are all stored in this file.
-
- areaname.SQI This file is used to store the message index.
- This contains a copy of the "To:" field in the
- message header, and it allows the Squish format to
- be accessed quickly in a non-linear fashion.
-
- The above are the only required files for a Squish-format area.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 90
-
-
-
- However, other programs create files with similar extensions,
- such as:
-
- areaname.SQB This file is used by the Squish tosser to store
- duplicate message information.
-
- areaname.SQL This file is used by Maximus-CBCS to store
- lastread pointer information.
-
- To declare a Squish-format area in AREAS.BBS, simply add a "$"
- character to the beginning of the path. In other words, to
- convert the following to a Squish-format area:
-
- E:\MSG\ASDF ASDF 249/99
-
- simply add a "$" at the beginning to make it look like this:
-
- $E:\MSG\ASDF ASDF 249/99
-
- For an area declared in SQUISH.CFG, simply add a "-$" flag to the
- area definition. In other words, given the following definition
- for a *.MSG area:
-
- EchoArea ASDF E:\MSG\ASDF 249/99
-
- a "-$" should be inserted to convert the area to the Squish
- format, like this:
-
- EchoArea ASDF E:\MSG\ASDF -$ 249/99
-
- To add a maximum message limit to a Squish area, the "-$m" flag
- can be used in SQUISH.CFG. For example, to limit the ASDF area
- to 100 messages, the following definition could be used:
-
- EchoArea ASDF E:\MSG\ASDF -$m100 249/99
-
- When using the above definition, Squish will automatically purge
- messages such that no more than 100 messages are in the area at
- once time. A limit on the maximum age of messages can also be
- set using the -$d flag. However, purging messages by date is
- only performed when SQPACK is run, so Squish won't delete by date
- on-the-fly. For more information on the -$, -$d and -$m flags,
- please see the SQUISH.CFG reference.
-
- Currently, up to a maximum of 5,200 messages can be stored in a
- single Squish-style message area. However, this per-area limit
- is imposed by memory segmentation and is *NOT* a limitation of
- the file structure. If there is enough demand, the MsgAPI code
- can be upgraded to accommodate as many messages as will fit into
- memory. (Under OS/2, this change could be accomplished by simply
-
-
- Squish v1.00 Reference Manual - Page 91
-
-
-
- installing a new copy of MSGAPI.DLL.) If you are interested in
- such a change, please let the author know in a NetMail message in
- the TUB EchoMail area.
-
- In terms of usage, Squish will automatically create nonexistent
- areas, so you don't have to worry about creating them manually.
- Squish treats *.SQ? areas just like *.MSG areas in all respects,
- including direct tossing and scanning. However, Squish areas can
- be accessed much faster than their *.MSG counterparts, and Squish
- areas will also use less disk space.
-
- Once you have tossed messages to a Squish-format message base,
- those messages can be accessed with any program which supports
- the Squish format. Currently, Maximus-CBCS is the only program
- which fully supports Squish message bases, but more are sure to
- follow.
-
- If you are using the -$m flag, Squish areas are mostly self-
- maintaining. However, small "holes" can creep into the message
- base over time, even with the circular file format. For this
- reason, the SQPACK program can be run at predefined intervals to
- pack and compress message bases. Also, if you are using the -$d
- option, SQPACK must be run to delete old, expired message. For
- information on installing SQPACK, please continue reading in the
- next section, entitled "SQUISH-FORMAT MESSAGE UTILITIES".
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 92
-
-
-
- SQUISH-FORMAT MESSAGE UTILITIES
-
- In addition to the main tosser/scanner/packer, the Squish package
- includes several utility programs designed to help users of
- Squish-format message bases.
-
- SQPACK: Weekly maintenance
-
- The SQPACK program is used to "pack" Squish-format message areas.
- Over the course of time, small holes can develop in Squish
- message areas, so SQPACK can be used to recover this wasted
- space. If you are using the -$m flags on your areas, you
- probably won't need to run SQPACK more than once a week.
- However, if you are killing messages by age (through the -$d
- flag), you'll need to run SQPACK whenever you wish to delete
- messages.
-
- The command-line format for SQPACK is as follows:
-
- SQPACK <filespec>
-
- <filespec> should specify the name and path of a Squish-format
- message data file. Wildcards are allowed. For example, to pack
- the message in the file D:\MSG\MUFFIN.SQD, the following command
- should be issued:
-
- SQPACK D:\MSG\MUFFIN.SQD
-
- In addition, if there are a number of message areas in the D:\MSG
- directory, the following command could be given to pack all of
- those areas:
-
- SQPACK D:\MSG\*.SQD
-
- When SQPACK finishes processing all of the selected areas, it
- will print out a short statistics report detailing how much space
- was used before, how much space is used now, and a percentage
- savings. This percentage can guide you when figuring out how
- often to run SQPACK.
-
- Note to Maximus users
-
- In addition to the name of a Squish data file, SQPACK can also
- accept the name of a Max 2.00 AREA.DAT file. If you enter
- "SQPACK D:\MAX\AREA.DAT", SQPACK will automatically pack all of
- the Squish-format areas defined in AREA.DAT.
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 93
-
-
-
-
- SQCONVER: Conversion between *.MSG and *.SQ?
-
- The SQCONVER utility is used to convert message areas between the
- *.MSG and Squish message formats. SQCONVER is normally run from
- the OS prompt, and it can only be run on one area at a time.
-
- SQCONVER uses the following command-line format:
-
- SQCONVER <from_path> <from_type> <to_path> <to_type> <zone>
-
- <from_path> specifies the directory or root filename of the area
- that you wish to convert.
-
- <from_type> specifies the type of the <from_path> area. Valid
- types are either "*.MSG" or "Squish".
-
- <to_path> specifies the directory or root filename for the area
- to be created.
-
- <to_type> specifies the type of the <to_path> area. Valid types
- are either "*.MSG" or "Squish".
-
- <zone> specifies your default zone number. Since *.MSG format
- messages don't always have zone numbers available, you must tell
- SQCONVER which default zone number is used in that area.
-
- For example, to convert a *.MSG area in C:\MAX\MSG\LOCAL to a
- Squish area called C:\MAX\MSG\PRIVATE.SQ?, the following command
- line would be used:
-
- SQCONVER C:\Max\Msg\Local *.MSG C:\Max\Msg\Private Squish 1
-
- The above assumes that you are in zone 1; for other zones, simply
- substitute your default zone number for the "1".
-
- To convert an area back from Squish format to *.MSG, the
- following could be used:
-
- SQCONVER C:\Msg\Sqarea Squish C:\Msg\Msg_Area *.MSG 1
-
- Also, please note that both Squish and *.MSG areas can have the
- same name. Since *.MSG messages are placed inside a separate
- directory, and Squish areas are placed in *.SQ? files in the
- directory above, the following command is perfectly acceptable:
-
- SQCONVER C:\Msg\Local *.MSG C:\Msg\Local Squish 1
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 94
-
-
-
- The above command would convert all of the messages in
- C:\Msg\Local\*.MSG and place those messages in the files called
- C:\Msg\Local.SQ?.
-
- WARNING! You must exercise caution when converting a Squish area
- back to the *.MSG format. Since SEEN-BYs are not updated in
- Squish EchoMail messages, converting a Squish area to *.MSG may
- cause messages in that area to be rescanned. You should make
- sure that the high water marker is properly set when converting a
- Squish area back to *.MSG. (Converting *.MSG areas to Squish is
- not a problem, since Squish will never scan a converted Squish-
- format message.)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 95
-
-
-
-
- SQSET: Control for message deletion
-
- The SQSET utility is used to manually update the "maximum message
- limit" and "protected messages" for a given message area. These
- limits can be set automatically in SQUISH.CFG using the -$m and
- -$s flags in SQUISH.CFG, but some users may prefer to set these
- limits from the OS prompt.
-
- The command-line format of SQSET is as follows:
-
- SQSET <area> [<max_msgs> [<skip_msgs>]]
-
- <area> specifies the path and root filename of a Squish-format
- message area.
-
- <max_msgs> specifies the maximum number of messages to keep in
- this area at one time. The next time a message is written to
- this area, Squish will automatically delete and renumber messages
- such that there are no more than <max_msgs> in the area. If this
- parameter is omitted, Squish will simply display the current
- settings for <max_msgs> and <skip_msgs>.
-
- <skip_msgs> specifies the number of messages to skip at the
- beginning of the area, before starting to automatically delete
- messages. When <skip_msgs> is used, <max_msgs> must also be
- specified. When Squish is deleting old messages, this command
- causes it to only start deleting after the first <skip_msgs>
- messages. This is useful for keeping "posting rules" as the
- first message in each area, or for keeping a certain number of
- messages for an indefinite length of time.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 96
-
-
-
-
- SQINFO: Diagnostics
-
- SQINFO is a diagnostics and information utility for Squish-format
- message areas. SQINFO will walk through both the chain of
- message frames and also the chain of free frames, displaying
- information about each message and reporting any errors it comes
- across. SQINFO can be used to quickly diagnose problems in a
- Squish-format message area.
-
- This program is not required for normal use, so it can be deleted
- if disk space is at a premium. SQINFO is primarily of interest
- for third-party utility authors who are writing *.SQ?-compatible
- programs.
-
- The command line format of SQINFO is as follows:
-
- SQINFO <area> [-q] [-b] [-e]
-
- <area> should be the path and root filename of a Squish-format
- message area.
-
- -q is the optional "quick" switch. Instead of displaying a
- verbose report on each message, SQINFO will simply list the
- location of each message. SQINFO will still check for and notify
- the user of errors, since this option simply disables most screen
- output.
-
- -b is the optional "bugfind" switch. When in this mode, SQINFO
- will display nothing except the area name. SQINFO will still
- check for errors, but it won't tell you where the error occurred.
- This mode is useful when checking a large number of areas for
- problems; simply run "SQINFO <area> -b" over all message areas,
- and then rerun SQINFO (without the -b) on areas which have
- problems.
-
- -e is the optional "errorlevel" switch. When in this mode,
- SQINFO will operate as in "bugfind" mode, but it is also geared
- for batch operation. SQINFO will not prompt the user to press a
- key, and it will return an errorlevel based on the condition of
- the base. If the message area is okay, SQINFO returns an
- errorlevel of 0. If the message area is damaged, SQINFO will
- return an errorlevel of 1.
-
- The -q, -b and -e options are mutually exclusive. Only one of
- the above switches can be specified on the command line.
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 97
-
-
-
-
- SQREIDX: Repair (minor)
-
- SQREIDX is an indexing utility for Squish-format message areas.
- This utility can be used to correct simple indexing problems, but
- it is not required for normal use. If more than just the index
- is damaged (as reported by SQINFO), SQFIX should be used instead.
-
- The command-line format of SQREIDX is:
-
- SQREIDX <area>
-
- <area> should be the path and root filename of the Squish-format
- message area with the grunged index.
-
- SQREIDX will recreate the index for <area> by walking through the
- message chains in the data file, and then by rewriting the
- original index. If the index is not the only problem with the
- area, the full-fledged SQFIX should be used instead.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 98
-
-
-
-
- SQFIX: Repair (major)
-
- SQFIX is a full-fledged restoration utility for Squish-format
- message areas. Even when run on a heavily-damaged area, SQFIX
- can recover all of the messages which were not individually
- damaged. SQFIX is completely automated and requires no operator
- assistance. The command-line format for SQFIX is:
-
- SQFIX <area>
-
- <area> should specify the path and root filename of the message
- area to be fixed.
-
- Squish will automatically restore a damaged fixed area. If the
- area can be fixed, the old data files will be renamed to
- <areaname>.XXD and <areaname>.XXI.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 99
-
-
-
-
- SSTAT: Statistics generation
-
- If the Statistics option is enabled in the Squish configuration
- file, Squish will create a binary statistics log. This log
- contains a great deal of information, but not in a human-readable
- format. The SSTAT utility included with Squish is very minimal;
- since the source for SSTAT is distributed in this archive, an
- easier-to-use statistics utility will probably be written by a
- third-party author.
-
- SSTAT is more of a billing report generator than an analysis
- utility; unless you are scanning mail to someone else, SSTAT
- won't produce any output. However, if your system does scan mail
- to more than one system, SSTAT is capable of producing a 100%
- accurate billing report for each system, based on the volume of
- mail sent to each node that you feed.
-
- SSTAT works from a configuration file called SSTAT.CFG. This
- file must be in the current directory when SSTAT is run, as must
- SQUISH.STA (the statistics log produced by Squish).
-
- SSTAT.CFG is a free-format configuration file, similar in nature
- to SQUISH.CFG and ROUTE.CFG. At the current time, SSTAT only
- handles the following two keywords:
-
- Track <node> [<nodes>...]
-
- This keyword causes SSTAT to track mail for the specified
- nodes. <node> can be a full-fledged address, including
- zone, net, node and point number. SSTAT will track all mail
- which is addressed to that node. Wildcards may NOT be used.
-
- Area <tag> [<tag>...]
-
- This keyword causes SSTAT to track mail for the specified
- area tags only. SSTAT will only report mail for the
- specified areas, and these areas will be the only ones
- included as part of the billing reports.
-
- A sample SSTAT.CFG is included in the distribution archive.
- After you have customized SSTAT.CFG, let Squish run for a while,
- and then run SSTAT. If all goes well, and if you are scanning
- mail to at least one other node, SSTAT should produce a highly-
- detailed report describing all of the message activity on your
- system. SSTAT performs two sets of calculations: one set is
- based on the number of messages sent to each node, while the
- other is based on the quantity of bytes sent to each node. In
- most cases, the number representing the quantity of bytes sent is
- usually more reflective of long-distance telephone charges.
-
-
- Squish v1.00 Reference Manual - Page 100
-
-
-
- At the end of the report, SSTAT will include an overall summary
- with percentage totals, suitable for use in a cost-sharing
- arrangement. SSTAT uses a sophisticated algorithm for
- determining the TRUE cost of messages, but in short, the billing
- scheme works like this:
-
- 1) For each area listed in SSTAT.CFG, SSTAT will determine the
- total quantity of mail (whether that be bytes or messages)
- that you received in the area. Squish will divide this
- number by the total quantity of mail received in ALL areas
- listed in SSTAT.CFG. The result of the division is a
- percentage for the area; this percentage represents the area
- as a portion of your total inbound mail. In other words, if
- you multiply your long-distance charges by this percentage,
- the result will represent how much it cost to bring in the
- specified area.
-
- 2) For each area listed in SSTAT.CFG, and for each node listed
- within each area, SSTAT will calculate the total quantity of
- mail sent to that node for that area. SSTAT will then
- divide this by the total quantity of mail sent to all nodes
- within that area. The result of this division represents
- the percentage of mail (within that area) which is being
- consumed by the node in question.
-
- 3) For each node in each area, the percentage determined in
- step 2) is then multiplied by the percentage determined in
- step 1) for that area. This figure now represents the
- actual percentage that this node must pay for receiving the
- mail in that area.
-
- 4) The percentages for each node are then summed up for each
- area, which represents the percentage total as shown at the
- end of the billing report. This percentage represents the
- actual amount that this node should pay for any long-
- distance charges in a cost-sharing system.
-
- Unlike the rest of Squish, the SSTAT utility and the accompanying
- sources are public domain. If SSTAT doesn't do exactly what you
- want, please feel free to revise the program to meet your needs.
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 101
-
-
-
- APPENDICES
-
-
- Appendix A. Errorlevels
-
- Squish will set one of several errorlevels after termination.
- The errorlevels currently supported by Squish are:
-
- Erl Action
-
- 0 No tossing or scanning took place.
- 1 Error. Squish encountered some sort of fatal error and had
- to abort.
- 2 Sent EchoMail. This means that Squish exported one or more
- EchoMail messages. (This errorlevel is only used when
- performing "SQUISH OUT" as part of a multipass operation.)
- 3 Tossed NetMail only. This means that Squish tossed one or
- more packets, but only NetMail was received.
- 4 Tossed EchoMail and/or NetMail. This means that Squish
- tossed one or more packets containing EchoMail (and possibly
- NetMail).
- 5 MaxMsgs was reached. This means that Squish reached the
- MaxMsgs limit when processing mail in a multipass
- environment. This means that SQUISH SQUASH should be
- invoked, followed by another round of exporting.
-
- With the exception of errorlevel 1, higher errorlevel numbers
- will take precedence. In other words, if EchoMail and/or NetMail
- was tossed, but MaxMsgs was also reached, Squish will exit with
- an errorlevel of 5.
-
-
-
- Appendix B. Problem Reporting
-
- If you discover a problem in the Squish software, you are
- encouraged to report this problem to the author. Problem reports
- can be placed in the TUB or MUFFIN echomail areas (for Squish and
- Maximus, respectively). If the problem is urgent, you can also
- send a NetMail message to the author at 1:249/106.
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 102
-
-
-
- GLOSSARY
-
- *.MSG
-
- The message format originally used by Fido, also used as the
- FidoNet standard for local message storage The *.MSG system
- requires a separate directory for each message area, and a
- separate file for each message. This makes the *.MSG format
- inefficient, in terms of both disk space and time. For
- compatibility reasons, Squish uses the *.MSG format by
- default.
-
- *.SQ?
-
- The message format originally used by Maximus. *.SQ? (or
- "Squish format") uses two files per area; a .SQI file
- contains a message index, and the other contains the message
- headers and text.
-
- *.PKT
-
- The "transport layer" for FidoNet-compatible messages.
- Packets are used when transferring messages between two
- different FidoNet systems. Since all systems use the same
- type of packet, *.PKT can be used to transfer messages
- between systems which use unlike message bases (such as
- *.MSG and the QuickBBS/Hudson format). See also "2+" and
- "StoneAge".
-
- 2+
-
- A new, backwards-compatible form of *.PKT files. The
- original packet design had no allowances for zone and point
- information; the 2+ packet format corrects this shortcoming.
- Squish creates 2+ packets by default, but it can also handle
- StoneAge packets. See also "*.PKT" and "StoneAge".
-
- 4D
-
- A term used to refer to a full FidoNet address. An address
- in the form "zone:net/node.point" is called 4D because it
- allows for four-dimensional addressing.
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 103
-
-
-
- archiver
-
- An archiver is a program used to compress files. Archivers
- are very useful in a FidoNet environment, since compressing
- mail can reduce its size by up to 80%.
-
- ARCmail
-
- ARCmail refers to both a program from System Enhancement
- Associates and to a mail compression format. Mail which is
- compressed using the ARC archiver is referred to as
- "ARCmail". Similarly, mail compressed with ZIP is called
- "ZIPmail", mail compressed with LHarc is referred to as
- "LZHmail", and so on.
-
- ArcmailAttach
-
- An ArcmailAttach system is a mailer which requires "file
- attaches" to send compress mail bundles. ArcmailAttach is
- not specific to the ARCmail compression method; it simply
- means that a different method is used for creating
- compressed mail bundles. Mailers such as FrontDoor,
- InterMail, D'Bridge and Dutchie require the "ArcmailAttach"
- keyword in SQUISH.CFG.
-
- AREAS.BBS
-
- A ConfMail-compatible file containing a list of message
- directories, addresses, and area tags. Squish can use
- AREAS.BBS, but areas must be declared in SQUISH.CFG to use
- some of Squish's advanced features.
-
- busy flag
-
- A semaphore file used in the BinkleyTerm outbound area.
- Busy flags are used to ensure that two programs don't access
- the same file at the same time, when running in a
- multitasking or a network environment.
-
- crash
-
- A message flavour. Crash means that a message should be
- sent directly to its destination, with no routing implied.
- Crash usually implies "send it NOW".
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 104
-
-
-
- direct
-
- A message flavour. Direct is identical to crash in all
- respects, except that the message will be governed by your
- mailer's event schedule.
-
- duplicate messages (dupes)
-
- A second copy of an EchoMail message. When problems crop up
- in EchoMail topology, copies of old messages occasionally
- get dumped into the system. Squish usually detects and
- stops most duplicate messages.
-
- EchoMail
-
- A message conferencing system originally devised by Jeff
- Rush. Squish fully supports the EchoMail format.
-
- errorlevel
-
- An errorlevel is a number set by a DOS or OS/2 program when
- that program terminates. This number can be later checked
- for in a batch or command file, and various actions can be
- taken based on that number.
-
- FD
-
- A synonym for FrontDoor.
-
- feed
-
- A "feed" is the system which sends you mail for a particular
- EchoMail area.
-
- flavour
-
- A 'flavour' is also known as a priority. Flavours can be
- used to override other routing commands and to explicitly
- send mail directly to a given node.
-
- FroDo
-
- A synonym for FrontDoor.
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 105
-
-
-
- FrontDoor
-
- A mailer written by Joaquim Homrighausen and Advanced
- Engineering.
-
- front end
-
- A synonym for "mailer".
-
- FTS-0001
-
- A document describing the base level of FidoNet
- compatibility. "FTS" is an acronym for "FidoNet Technical
- Standard". Squish is compliant with FTS-0001.
-
- hold
-
- A message flavour indicating that the message in question
- should be placed on hold for pick-up.
-
- host-routed
-
- Host-routed means that the messages in question will be sent
- to the network host (net/0), as opposed to being sent
- directly to the destination. Squish can optionally perform
- host routing.
-
- mailer
-
- A FidoNet-compatible program which answers the phone and
- interacts with other systems, which includes transferring
- files, messages, and system information. Common mailers
- include BinkleyTerm, FrontDoor and D'Bridge.
-
- maximum message limit
-
- In Squish-format message areas, a limit can be set on the
- maximum number of messages to allow in a given area. Once
- this limit is exceeded, messages will be purged from the
- beginning of the message area until the message count falls
- below the maximum.
-
- net
-
- As part of a 4D network address, a "net" is a small
- geographical area, usually encompassing a large city and the
- surrounding area.
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 106
-
-
-
- NetMail
-
- NetMail is a direct, point-to-point transfer of private
- messages. NetMail is analogous to "Email".
-
- node
-
- As part of a 4D network address, a "node" is a single system
- or computer within a net.
-
- normal
-
- A message priority. Normal-flavoured messages can be
- routed, but if no routing is applied, a normal message will
- be sent directly to its destination.
-
- origin line
-
- A control line near the bottom of an EchoMail message. The
- origin line identifies the origination point of a message.
- Most origin lines have the following form:
-
- * Origin: name (address)
-
- where "name" is a brief description of the system, and
- "address" is a full 4D network address.
-
- outbound areas (outbound directories)
-
- A set of directories used for storing outbound mail.
- BinkleyTerm and Opus are the only common mailers which use
- outbound areas.
-
- point
-
- As part of a 4D network address, a "point" is a single user
- on an individual node.
-
- remap
-
- Remapping is the process of readdressing inbound messages
- based on the name in the "To:" field. For example, messages
- are commonly remapped for points, since the point number may
- be occasionally omitted when specifying a system address.
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 107
-
-
-
- SEEN-BY
-
- A control line at the bottom of an EchoMail message. SEEN-
- BYs are used to determine which systems have already been
- sent a particular message.
-
- SHARE.EXE
-
- A DOS program used to enable file locking. SHARE must be
- loaded if you wish to use Squish-format message areas in a
- multitasking environment.
-
- StoneAge
-
- A term applied to the original *.PKT design. StoneAge
- packets do not support zone or point information. See also
- "2+" and "*.PKT".
-
- tear line
-
- A control line at the bottom of an EchoMail message. A tear
- line is used to end the message body, and it usually
- contains a short, product-specific banner. A tear line
- begins with three dashes, such as "--- Squish v1.00".
-
- wildcards
-
- Squish uses wildcards to specify multiple nodes for routing
- commands. For more information, please see the section
- entitled "Wildcards".
-
- zone
-
- In a 4D network address, a "zone" is a wide geographical
- area, usually covering one continent or more.
-
- zonegate
-
- A zonegate is a system which sends EchoMail to more than one
- zone. Squish is capable of acting as a zonegate.
-
-
-
-
-
-
-
-
-
-
-
-
- Squish v1.00 Reference Manual - Page 108
-
-
-
- INDEX
-
- .MO? . . . . . . . . . 59, 72 107, 108
- -$ . . . . . . . . 69-71, 91 Address . . . . . . . . . . 19
- -$m . . . . 69, 70, 91-93, 96 alternate primary
- -$s . . . . . . . . . . 70, 96 address . 68, 69, 85
- -+ . . . . . . . . . . 69, 85 ARC . . . 27, 54, 60, 72, 104
- -0 . . . . . . . . . . . . 69 archive . . 16, 28-31, 33, 44,
- -a . . . . . . . . . . 43, 51 57, 60, 72, 73, 74,
- -c . . . . . . . . . . . . 43 100
- -f . . . . . . . . 43, 46, 68 archiver . 7, 20, 28, 30, 60,
- -l . . . . . . . . . . 42, 43 72, 73, 104
- -o . . . . . . . . 43, 44, 58 ARCmail . 38, 39, 41, 50, 51,
- -p . . . . . . . . 39, 68, 85 56, 57, 59, 67, 74,
- -q . . . . . . . . . . 44, 97 84, 104
- -s . . . . . . . . 44, 68, 77 ARCmail bombs . . . . . . . 84
- -x . . . . . . . . . . 69, 84 area tag 13, 22, 23, 26, 47,
- -z . . . . . . . . . . . . 44 64, 67
- *.?LO . . . . . . . . . . . 80 Areafix . . . . . . . . . . 71
- *.?UT . . . . . . . . . . . 80 AREAS.BBS . 7, 16, 17, 19, 21,
- *.BAD . . . . . . . . . . . 83 24-26, 43, 45, 47,
- *.FR? . . . . . . . . . . . 72 51, 59, 68, 71, 87,
- *.MO? . . . . . . . . . . . 72 90, 91, 104
- *.MSG . . 6-8, 15, 22, 23, 25, AreasBBS . . . . . . . 19, 51
- 26, 47, 63, 67, 68, ARJ . . . . . . . . . . 54, 72
- 89, 91, 92, 94, 95, AUTOEXEC.BAT . . . . . . . 18
- 103 BAD_MSGS . 22-24, 64, 67, 69,
- *.OUT . . . . . . . . . 12, 43 83
- *.PKT . 6, 11-13, 19, 40, 52, batch file . . 36-39, 57, 58
- 58, 69, 72, 103, BINKLEY.EVT . . . . . . . . 36
- 108 BinkleyTerm . 6-8, 11, 12, 16,
- *.SA? . . . . . . . . . . . 72 19, 20, 33, 36, 41,
- *.SQ? . . 6-8, 15, 47, 63, 67, 43, 48, 50-53,
- 69, 70, 89, 92, 94, 59-61, 67, 74-76,
- 97, 103 80-82, 87, 104,
- *.SQD . . . . . . . . . . . 93 106, 107
- *.SU? . . . . . . . . . . . 72 BinkleyTerm 2.50 . 7, 52, 87
- *.TH? . . . . . . . . . . . 72 bossnode . 7, 11, 49, 61, 87
- *.TU? . . . . . . . . . . . 72 busy flag . . . . . . 53, 104
- *.WE? . . . . . . . . . . . 72 Change . . . . . . 75, 78, 81
- ^aFLAGS . . . . . . . . . . 59 comment . . . . . . . . . . 33
- ^aPATH . . . . . . . . 68, 85 Compress . . . . . . . . . 20
- <areaname>.XXD . . . . . . 99 COMPRESS.CFG 16, 20, 60, 72,
- <areaname>.XXI . . . . . . 99 73
- <areaname>.XXI. . . . . . . 99 CONFIG.SYS . . . . . . 18, 19
- 1.MSG . . . . . . . . . . . 41 ConfMail . . . . . . 51, 104
- 2+ . . . 7, 50, 88, 103, 108 crash . 12, 27-32, 34, 35, 49,
- 4D 7, 11, 19, 32, 49-52, 61, 54, 55, 64, 76, 78,
- 62, 68, 75, 85, 87, 79, 81, 89, 104,
- 88, 90, 103, 106, 105
-
-
- Squish v1.00 Reference Manual - Page 109
-
-
-
- D'Bridge 19, 50, 59, 87, 104, LHarc . . . . . . 54, 72, 104
- 106 link . 37, 38, 41-43, 46, 83
- decompress . . 16, 36, 38, 52 mailer . 11, 27, 29, 31, 33,
- direct 12, 27-29, 55, 64, 81, 36-38, 50, 53, 57,
- 92, 105, 107 59, 82, 84, 104-106
- Dos . . . . . . . . . . . . 77 mailers . 12, 13, 31, 50, 51,
- dupe . . . . . . . . . . . 48 55, 74, 82, 87,
- DUPES . . . . . . 56, 66, 105 104, 106, 107
- duplicate 53, 54, 56, 67, 91, MAX_MSGS.DAT . . . . . . . 58
- 105 maximum message limit . 89-91,
- dynamic packing . . . . 50, 74 96, 106
- dynamic routing . 29, 33, 51, Maximus 5, 6, 13, 16, 20, 36,
- 74, 82 38, 57, 90, 91-93,
- ECHOTOSS.LOG . 39, 41, 43, 46 102, 103
- errorlevel 36-39, 57, 58, 97, multi-line . . . . 7, 43, 53
- 102, 105 multi-zone . . . . 6, 20, 68
- EXCEPT . 2-4, 37, 39, 42, 55, multipass 40, 43, 46, 53, 57,
- 56, 81, 97, 105 58, 63, 102
- exceptions . . . . . . 55, 56 name wildcards . . . . . . 62
- fakenet 7, 49, 61, 62, 87, 88 NEC . . . . . . . . . . . . 57
- FD . . . . . 16, 37, 38, 105 net . . . 10, 11, 19, 22, 25,
- feed 14, 25, 26, 85, 100, 105 30-34, 42, 50, 61,
- FidoNet . 5, 6, 10, 11, 13-15, 65, 69, 75, 78, 81,
- 19, 34, 54, 56, 60, 82, 87, 100, 103,
- 65, 87, 89, 103, 106, 107
- 104, 106 NetMail . . . 11, 13, 14, 19,
- file attaches 20, 48, 50, 51, 22-24, 27, 33, 34,
- 56, 67, 75, 81, 104 36, 38, 39, 41, 42,
- file requests . . . . . 51, 56 44, 48, 50, 51,
- flavour 12, 27-31, 33-35, 48, 54-59, 62, 65, 67,
- 49, 55, 74, 75, 81, 86, 88, 92, 102,
- 82, 104-106 107
- front end . . . . 15, 19, 106 NoArc . . . 58, 75, 76, 82, 84
- FrontDoor . 6, 8, 11, 16, 19, node . 6, 7, 10, 11, 15, 19,
- 20, 36-38, 41, 50, 25, 26, 28, 29-34,
- 82, 87, 104, 105, 41, 42, 44, 48-50,
- 106 52-55, 60-62, 64,
- FTS-0001 . . 55, 68, 89, 106 65, 68, 69, 71, 72,
- gateroute . . . . . 51, 55, 56 74, 75, 79-85, 87,
- gaterouting . . . . . . 55, 56 88, 100, 101, 103,
- global section 27, 28, 74, 77 105, 107
- hold . 8, 12, 22, 27-29, 46, NoPkt . . . . . . . . . 58, 84
- 48, 49, 55, 63, 64, normal 1, 12, 13, 21, 27-31,
- 78, 79, 81, 106 33, 34, 48, 49, 55,
- host-routed . . . . . . . 106 56, 68, 74-76, 81,
- HostRoute . . . . . . . 81, 82 82, 83, 88, 97, 98,
- Imail . . . . . . . . . . . 87 107
- InterMail . . 19, 50, 87, 104 Opus 1.03 . . . . . . . . . 59
- label . . . . . . . . . 37, 38 origin line . 21, 25, 26, 47,
- LAN . . . . . . . . . . . . 90 59, 61, 107
-
-
- Squish v1.00 Reference Manual - Page 110
-
-
-
- OS/2 . . 2, 7, 8, 77, 91, 105 72, 74
- OUT . 4, 6, 7, 10, 12, 13, 16, Unleave . . . . . . . 80
- 19, 27, 34, 36-46, routing . . 6, 10, 12, 16, 20,
- 48, 52, 53, 57, 58, 24, 25, 27, 28,
- 63, 64, 69, 75, 76, 29-31, 33, 34, 36,
- 82, 87, 93, 102 41, 49, 51, 54, 63,
- outbound area . 6, 19, 20, 43, 64, 74, 76-82, 104,
- 44, 48, 53, 75, 76, 105-108
- 80-82, 104 scan . 13, 30, 36, 38-46, 48,
- outbound directories 51, 53, 58, 59, 62, 75, 95,
- 80, 107 100
- OUTBOUND.### . . . . . . . 20 schedule 27, 44, 74, 77, 78,
- OUTBOUND.SQ . 42, 43, 51, 58, 105
- 59 SEAdog . . . . . . . . . . 55
- packet . 7, 8, 11-13, 27, 30, secure mode . . . . 44, 53, 83
- 41, 44, 46, 50, 53, security 53, 61, 63, 67, 69,
- 57, 58, 60, 63, 75, 83, 84
- 83, 88, 103 SEEN-BY . . . 63, 88, 90, 108
- PAK . . . . . . . . . . 54, 72 semaphore . . . . . . . . 104
- passthru . 6, 25, 40, 43-45, SHARE.EXE . . . . . . 18, 108
- 47, 69 single pass . . 40-42, 46, 57,
- point 6, 7, 9-11, 19, 25, 26, 63, 69
- 30, 49, 50-52, 57, soundex . . . . . . . . 7, 62
- 61, 62, 65, 68, 75, split area . . . . . . . . 71
- 85, 87, 88, 100, SQCONVER . . . . . . . . . 94
- 103, 107, 108 SQFIX . . . . . . . 89, 98, 99
- point directory . . . . . . 7 SQINFO . . . . . . . . 97, 98
- primary address . 25, 49, 50, SQPACK . . . . . . 69, 91-93
- 68, 69, 85 SQREIDX . . . . . . . . . . 98
- private messages 10, 69, 107 SQSET . . . . . . . . . . . 96
- quiet mode . . . . . . . . 44 SQUASH 37-39, 41, 42, 44, 46,
- remapper . . . . . 7, 62, 88 51, 53, 57, 58, 59,
- reply chains . . . 38, 41, 42 74, 77, 78, 102
- RESCAN . . . . . . . . 41, 42 SQUISH 1-9, 11, 13-22, 24-34,
- root filename 47, 67, 69, 90, 36-65, 67-106, 108
- 94, 96-99 SQUISH.CFG . 16, 17, 19, 22,
- ROUTE.CFG . 16, 27-31, 33, 39, 24, 25, 30, 31,
- 51, 55, 63, 72, 74, 43-45, 47-50, 59,
- 77, 78, 100 60, 68, 71, 72,
- Define . 10, 16, 24, 48, 83-88, 90, 91, 96,
- 67, 72, 76 100, 104
- Leave . . 20, 42, 43, 80 AddMode . . . . . . . 48
- Poll . . . . . . . 79, 81 Address . . . . . 49, 86
- Route 12, 16, 27-35, 39, AddToSeen . . . . . . 50
- 42, 48, 49, 51, 55, ArcmailAttach . 19, 27,
- 63, 72, 74-78, 81, 29, 31, 33, 50, 51,
- 82, 100, 29, 30, 57, 59, 60, 67, 74,
- 72, 75, 76 80, 82, 104
- Sched 28, 44, 74, 77-79 BadArea . . . . . 22, 67
- Send . 28-30, 34, 35, 48, BatchUnarc . . . . . . 52
-
-
- Squish v1.00 Reference Manual - Page 111
-
-
-
- BinkPoint . . . . 51, 52 SSTAT.CFG . . . . . . 100, 101
- Buffers . . . . . . . 52 StoneAge . . . . . . 103, 108
- BusyFlags . . . . . . 53 tag . . 13, 22-26, 41, 47, 64,
- CheckZones . . . . . . 53 67, 68, 77, 78, 100
- Compress . . . 20, 54, 72 tear line . . . . . . . . 108
- DefaultPacker . 54, 60, toss 22, 36, 38, 40, 42, 46,
- 72, 54 52, 58, 64, 83
- DupeArea . . . . . . . 67 TosScan . . . . . . . . . . 87
- Duplicates . . . . 53, 54 update requests . . . . 51, 56
- EchoArea 24, 25, 49, 64, wildcard . . . . . . . 30, 31
- 67, 71, 84, 85, 91 World 10, 11, 30, 31, 33, 35,
- ForwardFrom . . . 54, 55 62, 82
- ForwardTo . . . . 54, 55 ZIP . . . . . . . 27, 72, 104
- GateRoute . . 51, 55, 56 zone . 6, 7, 10, 11, 19, 20,
- KillBlank . . . . . . 56 25, 30, 31, 32, 49,
- KillDupes . . . . 56, 67 53, 55, 56, 65, 68,
- KillIntransit . . . . 56 75, 78, 79, 85, 94,
- LogFile . . . 20, 57, 65 100, 103, 108
- MaxAttach . . . . 53, 57 zoned outbound
- MaxMsgs 41, 44, 57, 58, directories . 51, 53
- 102 zonegating . . . . . . . . 65
- MaxPkt . . . . . . 53, 58 ZOO . . . . . . . . . . 54, 72
- NetArea . . . 22, 51, 67
- NetFile . 19, 40, 58, 84
- Nuke . . . . . . . . . 59
- OldArcmailExts . . . . 59
- Origin . . 21, 24-26, 47,
- 59, 61, 85, 107
- Outbound . 6, 19, 20, 27,
- 31, 41-44, 46, 48,
- 49, 51, 53, 57-60,
- 63, 75, 76, 80-82,
- 85, 88, 104, 107
- Pack . . . . . . . 54, 60
- Password . . . . . 61, 83
- PointNet . . . 49, 61, 87
- QuietArc . . . . . . . 61
- Remap . 48, 62, 88, 107
- SaveControlInfo . . . 63
- Secure . 44, 53, 59, 63,
- 83, 84
- Statistics . 44, 57, 63,
- 93, 100
- StripAttributes . . . 64
- Swap . . . . . . . 7, 64
- TinySeenBys . . . . . 64
- TossBadMsgs . . . . . 64
- ZoneGate . . 55, 65, 108
- SSTAT . . . . . . 63, 100, 101
- Track . . . 40, 65, 100
-
-
- Squish v1.00 Reference Manual - Page 112