Revision history ---------------- 14/Jan/00, v0.99 -- maintenance release a8 - Added Win32 build to the distribution. From now on this is the primary build for debugging and testing, all other flavours just pass automated acceptance tests. - New keyword "IdlePassthruIgnorePassive" will force program to ignore passive downlinks when checking if the passthru area is an idle one. - NewAreaRefuse keyword will now accept reference area mask files just like ForwardRequestRefuse etc. Thanks Den. - Fixed problem with readonly nodes not being properly set for autocreate areas. Thanks Andrey. - SqaFix will not forward request if requested area matches NewAreaRefuse mask for the uplink node. Thanks Piter. - SqaFix will now refuse to create areas with tags specified in NetArea, BadArea and DupeArea keywords in Squish.cfg -- this should prevent those terrible disasters when message with AREA:NETMAIL somehow falls into BadArea and then EchoArea with NETMAIL area tag gets autocreated. - SqaFix will now use the first instance of AREA: kludge just like Squish does. Previous versions used the last instance and this caused problems with autocreate messages which somehow had multiple AREA: kludges. Thanks Konstantin. - Fixed problem with being set for %avail requests even if DefaultAreaDescr is set to "". Thanks Alexander. - Fixed problem with readonly areas not being processed with %ACTIVE/%PASSIVE requests. - Fixed problem which sometimes caused trap when updating Squish.cfg Pack lines close to 127 characters. Thanks Alexey. - SqaFix will not automatically allow area autocreation for the node, which is specified as an uplink node. You need explicitely specify +A flag for nodes, which you want to forward requests to. - Added code to always build the full paths before comparing them. This should prevent problems when new areas are sometimes created with duplicate area path if NewAreaPath is fully qualified but some of the area paths are not or vise versa. - Added code to skip leading 'Password' keyword in Password List lines. So now you can specify Squish config files in 'PasswordList' keyword. Thanks John. - Added code which will prevent processing of any message generated by SqaFix during a single run in order to prevent endless reply loops caused by erroneus setups. - Added more strict subject line checking to prevent endless reply loops. Any message to SqaFix which does not have subject line matching [ -?[...]] pattern will be ignored. - Fixed problem with max rescan limit +R[nnn] not being set for the nodes if defined in DefaultNodeFlags keyword. - Fixed minor cosmetic bug with extra empty lines added in original message text printout in remote request reports when the original message lines ended with 0d/0a. Thanks Dmitry. - Added console command 'Rules' which allows you to send rules to the specified node for all areas matching the given mask. - Added console command 'DumpNode' to dump the node information. If no nodes are specified, then all the existing nodes info will be dumped. - Added console command 'DumpUplink' to dump the uplink information. If no uplinks are specified, then all the existing uplinks info will be dumped. - Added console command 'DumpArea' to dump the area information. If no areas are specified, then all the existing areas info will be dumped. - Added fake autocreation mode. Run the command: SqaFix AutoCreate -X to see what will happen if will create . This command helps to test your new area creation rules. 07/May/98, v0.99 -- bugfix release a7 - Added 'PasswordList' keyword which allows you to specify T-Mail compatible password list file. If the node's password in 'Node' keyword is set to '*', it would be taken from this password list. This allows you to keep passwords in one place. Thanks Oleg... - fixed bug with -L flag in the Node statement which sometimes caused arbitrary node flags being set if happened to be very first flag specified. Thanks Oleg... 13/Nov/97, v0.99 -- bugfix release a6 - fixed problem with adding empty extra line on every config file update in OS/2 version. 10/Nov/97, v0.99 -- bugfixes mostly... a5 - Bumped max number of aka addresses to 32. Klaus Panzlaff from Germany is the first who ran out of previous 16 akas limit :) - Added new node flag Z which prevents report generation for the remote requests coming from this node from name SqaFixHost. This can be used to cut down traffic with the busy uplinks. - ATTENTION: CHANGES IN 'NewAreaPath TREE' SPECIFICATION !!! Added TREEDIR specification which works exactly like TREE in previous versions, that is TREEDIR creates names like: \UUCP\COMP\BINARY\IBM\PC\*.MSG or \UUCP\COMP\BINARY\IBM\PC\@.SQ? Changed TREE specification to create names like: \UUCP\COMP\BINARY\IBM\PC\*.MSG or \UUCP\COMP\BINARY\IBM\PC.SQ? Also, TREE/TREEDIR file name conversion in SqaFix/OS2 will split the path if the target file system does not support long file names, for example, ALT.BINARIES.MULTIMEDIA.EROTICA goes in: \ALT\BINARIES\MULTIMEDIA\EROTICA on HPFS or \ALT\BINARIES\MULTIMED\IA\EROTICA on FAT - Fixed problem with ;NewAreaPlace at the very end of the file without a newline character - Fixed problem with netmail message attributes to an unknown nodes. Now they will be set to the 'DefaultNodeFlags' specification. - Fixed problem with sending echoarea rule files for areas with HPFS file names - Fixed problem with forwarded request being sent to the uplink with the same address as the requesting node 23/Oct/97, v0.99 -- bugfixes mostly... a4 - Added -q command line switch to override queue file name - Added 'AddTearLine' keyword wich forces tearline in netmail messages if 'AddOrigin' keyword is not specified. - ^aPID kludge will now be added to all messages generated by SqaFix - Improved code which loads area description and area mask files to make these faster when processing huge files like usenet newsgroups. - Fixed problem with downlink sending an unlink request for an area which has been requested for it, but not yet created. Now the downlink will be gracefully removed from the forwarded request queue. - Fixed problem with World mask not being recognized in Squish Pack statements. - Fixed problem with -0 flag in NewAreaFlags being ignored when autocreating areas for forwarded requests. 24/Jul/97, v0.99 -- echo area rules support is here a3 - Added %RULES remote request which allows nodes to request rules for an area or areas matching mask. - Added +I node flag to specify nodes which will receive rules when linking to the area with +I flag set - Added +I[file] echoarea flag to specify the associated rule file. If file is not specified, default .rul will be used. - Help info for %HELP will now be sent in a separate message. - Added +Y node flags to prevent Notify command messages and area status change notifications to be sent to the node - Improved report display for very long areatags. Thanks Uwe. - IMPORTANT: changed Squish.Cfg EchoArea links scanning logic: previously for the short address specification SqaFix started scanning links using its primary address for the beginning. Now it also scans all the addresses specified in -x,-p and -+ flags and uses the last such address when beginning to scan links specification. If any of your Squish.cfg EchoArea links don't start with the full address, this may result in different link address. Hint: in order to quickly catch this create all links report with 'SqaFix Report .' command using previous and new SqaFix versions and compare the output for differences. - Fixed problem with %CREATE message not being sent to freq node even if it has +F flag set. Thanks Victor. 03/Jul/97, v0.99 -- readonly areas support is finally here! a2 - Added support for readonly areas. If areagroup for a node is specified in lowercase, all areas in this group will be made readonly when linking up this node. - Added optional rescan request limit specification in the -R flag of the Node and DefaultNodeFlags keywords to specify max number of areas to be rescanned during a single session for a given node. - Extended area linkup request functionality to support immediate area rescan if ',R' suffix is added after area or area mask specification. Thanks Uwe. - Extended %RESCAN remote request functionality to support areamasks. Also, if area specification is omitted, all areas linked or activated during current session will be rescanned. Thanks Uwe. - Added +N flags for a 'Node' keyword which specifies that all areas created by forwarded requests from this node should not be made passthru. Thanks Uwe. - Added +N flags for an 'UpLink' keyword which specifies that all areas created by forwarded requests to this uplink should not be made passthru. Thanks Uwe. - Added 'ForwardRequestKeepAreas' keyword to specify areamasks for forwarded request areas that should not be made passthru. - Fixed problem with Maint mode setting area max day/msgnumber/skip values to previous processed msgbase values if they were not specified explicitely for the current area. 19/Jun/97, v0.99 -- archiver change support is finally here! a1 - Added support for the packer type change using the %COMPRESS remote request, related keyword 'AllowPackerRequest' and new node flag -S to control packer change on per node basis. - Added 'ForwardRequestRetryAll' which allows program to retry all other available uplinks which have the matching area if the first uplink failed to link area within the timeout period. - Added optional ^aREPLY kludge generation and 'UseREPLY' keyword to control it. Thanks Serge. - Added support for local node link/unlink to/from passthru areas. If you link one of your akas to an existing passthru are it will be made nonpassthu. Similarily, if you unlink your aka from nonpassthru area, it will be made passthru unless there are other akas linked. To make this logic work you'll need to add your aka to the Node list. - Removed check for locally sent messages which caused those "Loop msg ..." log entry and prevented local maintenance. - Removed check which required uplink to have at least one areamask specified so one can have unlink only uplinks. Thanks Tony. - Added DZ2NA utility which converts DZ area description files to NA format suitable for uplink areamask specifications. - Fixed problems with areatags with special characters like <>| and & for OS/2 being passed to the external programs without surrounding double quotas. Thanks Kirill. 21/May/97, v0.99 -- getting closer to 1.00 :) a0 - Added group and level area access restrictions for the forwarded requests. - Added area status and group display in the %AVAIL area list - Added optional forwarded request limit specification in the -O flag of the Node and DefaultNodeFlags keywords to specify max number of outstanding forwarded requests allowed for node. - AreaFix requests will now be sent from the primary address unless specific address is specified for the uplink using -p switch. Previously the closest aka address was used. Thanks, Leo... - BadArea msgs matching refuse create mask will now be deleted. - SqaFix Maint run will not try to open passthru areas which results in area msg base files being created. Thanks, Victor... - When creating help report the first extension specified in the 'HelpFileExt' keyword will be used as the default help file extension if no language is specified. Thanks, Victor... - Fixed problem with 'SqaFix Report' creating msgs with max 60 chars line length disregarding MaxMsgLineLength setting. Thanks, Oleg... - Fixed problem with NewArea path type not being set for node and area mask specific NewArea definitions with missing NewAreaPath specifications. Thanks, Sergei... 20/Apr/97, v0.98 -- BUG FIX... a9 - Fixed that remote request password problem slipped in the previous version so it could not process remote requests at all. Primary SqaFix tester Alex Litvin is getting married next week so I released it without his testing pass. Anyway, congratulations, Alex, and GOOD LUCK to you and your family :) 19/Apr/97, v0.98 -- new features and bug fixes... a8 - Added Sync command line command which syncs Squish and SqaFix config file EchoArea lines. - Changed SqaFix config parser so that it will properly process EchoArea lines which go after the Node lines. Also changed the order of keywords in sample SqaFix config since most people like to have EchoArea stuff at the end of the config - Echoarea lines for newly created areas will be formatted so that the information past the area tag is aligned to the longest areatag encountered. - Added check for duplicate area definitions in Squish.Cfg. Currently SqaFix does not support this nice mostly unknown feature... - Fixed bug whith ForceINTL keyword causing problems when receiving messages from zones other then primary one. 17/Apr/97, v0.98 -- new features and bug fixes... a7 - NewAreaNotify, ForwardRequestNotify and IdlePassthruNotify keywords now accept @filename specifications which allow you to place these notification in files. If such file exists, new lines are appended to it, so existing info is preserved. Feeding this file to a packet creation utility (like txt2pkt) you can post notifications to a passthru areas. Also you can use it to create condensed event log if you run with DetailedLog and find it too messy to review but still want to keep it for troubleshooting. - When scanning BadArea for autocreation SqaFix will kill msgs for the areas in the kill queue. Thanks, Leo. - Forwarded request and Idle Passthru notifications now may have multiple areas reported in one message. - Added request forwarded and forwarded request expired notifications in addition to the forwarded request will be expired notification - Added idle passthru destroyed notification in addition to passthru will be destroyed notification. - Added passthru status parameter when calling Maint batch files. - Renamed keyword KeepIdlePassthru to IdlePassthruKeepAreas for the consistency. Old keyword is still supported. - If you specify test mode command line switch -X in upper case, the queue file will not be updated. Used for testing... - Fixed problem with -L node and area level not being set if specified in the DefaultNodeFlags and DefaultAreaFlags. Thanks Nick. - Fixed problem with the same area listed multiple times in %AVAIL list if it is available from several uplinks. Thanks Oleg. - Reworked new area message base file name generation code and hopefully fixed all the related bugs. 10/Apr/97, v0.98 -- new features and bug fixes... a6 - Enabled all the assertion code to catch programming errors, so this version is somewhat bigger and slower than previous ones. Don't worry, this will be removed in release builds. - Added IdlePassthruIgnoreNodes keyword to specify links wich will be ignored during idle passthru area detection. Thanks Tony. - SqaFix Relink will not sent linkup requests for those areas which are in the idle passthru queue. Thanks Alex. - Fixed bug which caused GPF if you have NewArea... = along with NewArea... =. Thanks Vitaly & Alexander. 04/Apr/97, v0.98 -- new features and bug fixes... a5 - Added ReLink, ReFreq and ReKill command line commands. - The kill queue entries now have the uplink address the unlink areafix request was sent to when unlinking idle passthru area. - Removed working buffer size limit on BadArea messages size. - Added -* flag for the UpLink keyword to optionally suppress sending multiple areafix requests in one message. - Changed areafix generation logic to send multiple areafix requests in a single message. As a result, parameter values for external areafix requestors slightly changed. See SqaFix.Cfg for details. - Added -p flag for the UpLink keyword to specify the address to send areafix requests to this uplink from. Thanks, Pavel. - Fixed bug with incorrect date set for freq queue entries converted from kill entries. This happens when linkup request arrives for recently destroyed idle passthru area. 01/Apr/97, v0.98 -- bug fixes... a4 - Fixed bug with forward slash character being used as a valid file name character in newly created area message base names. - Fixed bug with bombing out when appending the original message text for very long remote request messages. 27/Mar/97, v0.98 -- new features and bug fixes... a3 - Added new method of building new area names which makes up an 8 character base name using hexadecimal CRC32 value of areatag. Useful for those who have huge amount of echo areas. This method is guaranteed to return unique path for a new area. - Added Maint command line command to run the maintenance mode in which SqaFix will update the MaxMsg/SkipMsg/KeepDays settings to the ones specified in Squish.Cfg and then run the programs listed in the command line for every known area. - Added netmail path parameter when spawning external areafix request processing program. - Added -f command line option to suppress link up request forwarding - For existing areas without description SqaFix will now use the one found in area description files provided it exists. - Fixed bug in code responsible for selecting a closest network address caused weird origin addresses used when creating manual mode and autocreation report msgs if you have more then one aka. 25/Mar/97, v0.98 -- bug fixes... a2 - Fixed serious bug in processing of 'KeepIdlePassthru' -- entries in reference files were added into the 'ForewardRequestRefuse' list. - Added %PAUSE and %RESUME remote commands as aliases to %PASSIVE and %ACTIVE commands respectively. - Added 'HelpFileExt' keyword which allows you to specify available usage help file extensions. 23/Mar/97, v0.98 -- more features... a1 - Extended area description list search to match grep-like areamask if an exact match was not found. - All the 'NewArea...' keywords now can be set for the given grep-like area mask using = specification. - Added 'NewAreaRefuse' keyword to specify a list of areatag masks which should never be created. - Added 'RescanPassthru' keyword which allows rescanning of the passthru areas as some people asked for it ;) 21/Mar/97, v0.98 -- you've been waiting for it for so looooong! me2!!! a0 - Implemented uplink request forwarding... finally :) See README for implementation details and SqaFix.Cfg for related keywords. - Implemented idle passthru area detection and cleanup. See README for implementation details and SqaFix.Cfg for related keywords. - New config file keyword 'QueueFile' specifies the SqaFix queue file necessary to process forwarded requests and idle passthru area maintenance. - New config file keyword 'SortAreaGroup' tells program to sort areas by group, so now you can have the area lists not sorted, sorted by group, sorted by tag, or sorted by group then by tag depending on the combination of SortAreaGroup and SortAreaTag keywords. - When opening mail folder SqaFix will create it if it does not exist. Previously netmail, badarea and notification folders had to exist before SqaFix could open them. - New area creation notifications will now be reported on a per node basis, with all the areas created during particular autocreate run by the single node in one message (unless it exceeds the message size limit). Previously newly created areas were reported in the separate messages. - Grep-like areatag masks are now supported for remote and command line link/unlink/passive/active requests. The following symbols are treated specially: * - match zero or more characters ? - match any character \ - literally match the next character [ae0-9] - match a,e and 0 thru 9 [^ae0-9] - match anything but a,e and 0 thru 9 - New config file keyword 'AreaListSaveFile' allows you to create list of all known areas with descriptions in a NA format file. - New config file keyword 'AreaDescrSaveFile' allows you to save area descriptions collected from files, specified in 'AreaDescrFileXX' keywords, in a single NA format file. - New config file keywords 'AreaDescrFileNA' and 'AreaDescrFileDZ' allow you to specify locations of the files with area tag and descriptions usually distributed for echobackbones. This descriptions will be used when autocreating new areas. Two area description file formats are currently supported: NA: and DZ: [flag],,,,, - Added command line commands summary help screen - Added new command line command 'Create' which creates specified area and links it to the given node. - Added new command line command 'Destroy' which destroys specified area and all its links. - Renamed 'PreserveDeletedAreas' keyword to 'PreserveDestroyedAreas'. Old keyword is still supported. - Renamed '%DELETE' area remote command to '%DESTROY' area. Old command is still supported. - Linked node address lists will now start with a full address to make sure both Squish and SqaFix interpret incomplete address specifications identically. - Message arrival date/time is now set to message creation time on all newly created messages to prevent those message purgers for accidentally deleting them. Previously it was set to zero... - Fixed problem with origin line sometimes not being stored in messages send to a *.SQD netmail folder - Fixed problem with multiple %CREATE requests processing in a *.SQD netmail folder - Fixed problem with -bNN command line option causing file i/o errors if set to value greater then 32Kb - Fixed problem which caused incorrect modification of both cfg files when deleting areas with %DELETE% remote request and 'PreserveDeletedAreas" keyword in effect. - Fixed problem with "Not being able to generate unique msgid stamp" on some machines under OS/2 - Fixed problem with not being able to post notification messages to areas with HPFS file names under OS/2 09/Jun/95, v0.97b -- buxfixes a2 - Fixed problem which caused truncated msgid stamp to be written into the message often resulting some dupe messages reported. In fact, I could not duplicate this problem no matter how hard I tried, so finally I just changed the code which is suspected to be the reason of this problem. - Fixed problem with extended DOS/DPMI version loader caused it not to run running under Windows'95 beta releases 06/May/95, v0.97b -- supposed to be a maintenance release... bugfixes mostly a1 - Improved ^aMSGID kludge stamp generation logic. This will hopefully stop those damned dupes produced by pervious releases of the program. Thanks to KirillL and YuryS. - Fixed bug which caused SqaFix not to write the autocreated EchoArea statements without existing EchoArea or ;NewAreaPlace keywords in any of the *.CFG files. Thanks to BorisP and AlexP. - Inline comments in EchoArea statements in both Sqiush and SqaFix cfg files will now be properly handled. Previous versions did not allow them at all. Thanks to SergejQ. 01/Apr/93, v0.96b -- you've been waiting for it for so looooong! me2!!! a6 - Added code to remove trailing spaces from every line read from a config file. Those unspotted spaces caused various problems if left there by your text editor. Thanks Markus. a5 - New keyword: 'IgnoreKeyword' instructs SqaFix to ignore specified keywords in the configuartion file. This allows various third party utilities to store their info in the same config file. Thanks Boris - New feature: the node sysop name may be optionally specified in the Node statement. SqaFix will use this name when generating messages to this node on its own. Thanks Kai. - From now on SqaFix is available in DPMI protected mode version, executable file name is SqaFixX.Exe -- useful for those who run many conferences but still not switched to OS/2 protected mode. To run SqaFixX you have to have external DPMI host available, following hosts are known to work correctly: MS Windows 3.10 Enhanced Mode DosBox OS/2 2.00 DosBox (Set Settings/DPMI_SERVICES to Enabled) QuarterDesk QDPMI.SYS v1.01 Borland DPMIRES.EXE - New keywords 'SwapPath', 'SwapEMS' and 'SwapXMS' control swap behaviour. The 'SwapPath' specification may be overridden using the SQAFSWAP environment variable. Applies to real mode DOS only - When spawning Squish to do area rescans real mode DOS SqaFix will now optionally swap itself out to disk, EMS or XMS memory. Thanks to Ralf Brown's great SPAWNO library. a4 - The RescanCommand code has been reworked in attempt to cure that weird "Rescan failed -- system error" message popped out from time to time on some OS/2 installations... - NewAreaPath TREE option now works a little bit different when applied to the Squish style areas: for area tags looking like this UUCP.BIN.IBM.PC it creates message base file name: X:\M\UUCP\BINARY\IBM\PC\@.SQ? (was X:\M\UUCP\BINARY\IBM\PC.SQ?), which matches the way it will work for the *.msg style area: X:\M\UUCP\BINARY\IBM\PC\*.MSG - NewAreaPath HPFSDIR option allows you to have all the newly created squish message bases placed in the separate directories. For "tidy-up" fanatics from Hannover (hear me, Markus?) - Whoops! The '+' character was treated as a valid DOS file name character when creating an area base file name from the area tag. Fixed, thanks Kirill. - SqaFix now will send only one copy of the help file even if multiple %HELP lines are specified in the request message. Thanks Jan. - New keyword ';NewAreaPlace' (note the leading semicolon!) allows you to control where to place the newly created area definitions in both Sqafix.Cfg and Squish.Cfg. If this keyword is found in the config file all the newly created area definitions will go past it. if it's omitted they will be placed the old way, that is before the very EchoArea line - New keyword 'SortAreaTag' instructs SqaFix to sort areas by the areatag when creating reports. Note that this does not affect the order of the area definitions in the config files. Thanks Dmitry a3 - Fixed bug when '%' character in area description was sometimes treated as a printf formatting character. Thanks Andrew - Fixed bug introduced in 0.96a1 when SqaFix generated origin lines with a missing leading space. Thanks Egons a2 - When generating report messages SqaFix will now wrap the long area descriptions at the position specified by the MaxMsgLineLength keyword - New keyword MaxMsgPartLength controls size of the report message parts. Note that this should not be greater than working buffer size - SqaFix will now properly handle the messages sent from the fakenet points even if they have the ^aFMPT/^aTOPT kludge specified - SqaFix will not more flag the domain specification in the Address keyword of Squish.Cfg as the invalid address specification - New feature -- when subscribing the downlink node to the area SqaFix may optionally (if -F flag set for this node) send it a %CREATE remote request thus forcing the area creation. Thanks Alex. - SqaFix now accepts LINKED as an alias to QUERY for both commands and remote requests a1 - Modified areatag to message base file name conversion logic: now you may choose between old style conversion when program used new area tag to build truncated eight character base name, new style when program creates directory tree out of the dot separated areatag (thanks Heinz), or HPFS when it only removes the characters not valid in OS/2 HPFS file names (thanks Markus). - New node flags: !C and !D control processing of the %CREATE and %DELETE requests sent from this node. - New remote request: %CREATE <"description"> allows trusted nodes to create areas at your system. Nice thing about it is that the echo hub or boss system may create areas with the specified description. Thanks Alex. - New remote request: %DELETE allows trusted node to delete areas at your system. You may choose to completely delete associated EchoArea's entries from config files and remove the message base files, or just to comment EchoArea statements out making deleted areas invisible to both SqaFix and Squish but leaving message base files intact - New report type: lists unlinked and passive areas for the given node. Activated with UNLINKED command or request - New feature: all the NewArea... settings can be specified on per creating node basis. This greatly helps in multizone environments when the area flags , autolink and notification lists may be quite different - New feature: node and area levels, allows you to control node access to the area within the group. This makes area access control a lot more flexible. - New command line switch -o overrides area access restrictions making the node link management a bit easier in some cases. - When generating messages SqaFix will now properly determine the originating address based on the aka list zone matching or -p flag if specified for the notification echo area - New keyword 'UseFullAddr' forces link network addresses to be written in the full zone:net/node[.point] form instead of short (normalised to the previous address specification) one. This helps to cope with Squish's -p flag in EchoArea lines. - New keyword 'UseMSGID' instructs SqaFix to insert ^aMSGID kludge in all the automatically generated messages so that it's (almost) guaranteed that there will not be identical messages created by the program in quite reasonable time - New keyword 'UseINTL' instructs SqaFix to always insert ^aINTL kludge. Without this keyword it adds ^aINTL kludge only if necessary -- that is if origination and/or destination address are different from the primary aka zone. - New keyword 'AddOrigin' instructs program to add the tear and origin lines to all the automatically generated netmail messages. Unlike the previous versions this one will NOT add tear line if you don't specifically request it and if it does, it will add it along with origin line. Note that tear/origin lines are always added to the notification messages posted into the echo areas. Thanks Alex. - SqaFix will not more miss the next past deleted request message when scanning squish style netmail folder. Thanks Gerard. - SqaFix will not more interpret the trailing hidden info (^aVia etc.) as the remote message requests. For those weird types who use routed mail to send requests to SqaFix :) - Fixed that infamous 'grunged date' bug caused Squish to bark on some of the automatically generated messages - Fixed stupid bug in processing of the /b command line switch. Now you can specify any work buffer size from 1 to 64K. This affects max. config file line length (not longer than 32k even if buffer size is greater), max. length of the message SqaFix can process (up to 64k) - When autocreating new areas SqaFix will now properly handle the leading spaces preceding the area tag specification in the AREA: message kludge. Although the FSC standard does not allow these spaces, some older software still inserts them. - In addition to the 'IgnoreMsgsFrom' list SqaFix will now ignore all the messages sent from one if its aka's. This prevents endless loop when SqaFix replies to its own message, processes its own reply replying again... etc. nasty one! - Fixed bug in 'IgnoreMsgsFrom' code. Now should work as expected Also its logic has been changed to the prefix match, as opposed to the exact string match as it was previously. So now you may specify MsgTrack and SqaFix will ignore every message with the from name beginning with MsgTrack, that is MsgTrack 3.30, etc. Thanks Dmitry. 23/Mar/92, v0.95b -- from now on SqaFix is available for both DOS and OS/2 - minor source code fixes for Microsoft C compilation, the distribution archive now contains the protected mode version of SqaFix, functionally identical to the real mode one. It was extensively tested under OS/2 1.3 and 2.0 beta 304, however it should run on any OS/2 system above version 1.2 21/Mar/92, v0.94b -- still in beta, cosmetic changes and bug fixes - Those information "Scanning ..." lines now are not written in the log, thus making it much shorter since idle runs will not be logged. - The 'Report' command output has been modified, now it lists all the existing echo areas with linked node addresses instead of just using the %LIST command code output. - The 'NewAreaNotify' line now accepts the echo area tag so that the new area creation notification messages may be send not only to the particular node by netmail but also posted into the echo mail areas. - SqaFix now uses the SQUISH environment variable if specified. Set this to the name and path of Squish config file. When SqaFix is run, it checks the environment variable and if it's defined, program will expect to find the SqaFix.Cfg in the same directory as Squish.Cfg. However, the -c and -s command lines switches always override the environment setting. - SqaFix used to cross link areas generating identical base file names for newly created areas which have more then 8 leading characters of the area tag the same. Fixed... thanks Andrew! - SqaFix sometimes used to report 'Invalid PATH line' if autocreating areas for nodes which are not described in SQAFIX.CFG. Although i could not re-create this bug exactly, i sincerely hope that it's gone since this part of the code got re-written. - Since the new area autocreation for point nodes is not possible due to some technical reasons, the program now will not allow the +A flag to be specified for the point nodes. - When quoting the original remote request message text the tear and origin lines will not be included since this can probably confuse some other mail processors. Thanks Dmitry! 07/Feb/92, v0.93b -- looks like we're close to the final release! - New keyword 'NewAreaNotify' defines a list of nodes which should be informed of the new area creation. - New command 'Report' allows you to send all the existing links report to the specified node address. Helpful when you'd like to keep your *EC informed. Thanks Max! - program now assumes -M (report by a message) switch specified for the HELP, NOTIFY and REPORT commands. I have no idea why it was not so right from the start :-) - All the information text previously displayed via standard output device is now written to the standard error device. The created messages text still goes to a standard output so you can optionally redirect it to a file... 27/Jan/92, v0.92b -- back to coding and here it is... major update! - Implemented the areas autocreate feature. Check the sample SQUISH.CFG and READ.ME file for details of its operation. - In some cases SqaFix failed to give the reply message flavour specified in the 'Node' statement, setting only the default 'Pvt/Local' message attributes. Fixed. - The list of echomail areas should be the same in both SqaFix and Squish config files. Previous versions were happy if the area was defined only in the Squish.Cfg and is unknown to SqaFix. This is not so any more... - Most manual mode commands can now be entered in a short form. Generally only the first letter is required... - New manual mode command NOTIFY allows you to inform all known nodes (that is described in SqaFix.Cfg) about their linked/available areas at once. Sort of a global %LIST command. - The %HELP request now allows you to specify language. The first three characters past the %HELP command will be used as a usage file extension. That is '%HELP Russian' will send help from the file SQAFIX.RUS. If the file with the specified extension is not available, the default SQAFIX.USE will be sent provided it exists. 13/Jan/92, v0.91b -- OK, that's Monday, 13th, anyway... let it go! - The subsequent 'Address' lines if specified in the Squish.Cfg file caused SqaFix to terminate with 'Different primary AKA' message. Fixed... thanks Nick! - When intentionally updating echo area specifications in the Squish.Cfg (using the -u switch), SqaFix eat up the rest of the line past the end of the area tag for all the areas not described in SqaFix.Cfg... Fixed, thanks Nick! - SqaFix used to write a null byte between the message text and origin line in the message body. This caused problems with certain netmail packers... fixed. - New keyword 'KeepFailedRequests' allows you to control the way SqaFix handles messages from unknown nodes and with invalid passwords - New keyword 'IgnoreMsgsFrom' allows you to tell SqaFix to ignore requests sent from the certain names. Suppose the SqaFix reply gets bounced by some sort of message tracker like MsgTrack or TrackM, and arrives back, SqaFix responds, other side bounces... Gee, things get kinda repetitive here! Wish all automatic message generators implement this sort of feature. Suggested by Andrew Kovalev. - Implemented remote rescan request support for those who are trustful enough to let it be processed :-) - Max2Sq utility is included into the package to help you to convert Max 2.0 area definitions to the SqaFix/Squish configuration file format - SqaFix now will not insist on the echo area description to be specified - major code clean up for future improvements... 11/Jan/92, v0.90b -- first released to beta team.. whoops!