NOTE: - Beginning with this release (3.00) compatibility with PCB 14.5
is no longer maintained. PCB 15.0 is required. This level of
Kmail will work correctly with PCB 15.21 although all of the
new features of 15.21 are not supported.
Support for the OLDINDEX switch is still provided.
NOTE: - As of this level, Kmail has been fully converted to use the
new .IDX file format. It will, however, still maintain the
older .NDX files if the DOS environment SET PCB=/OLDINDEX is
present *OR* on a conference-by-conference basis as indicated
by the individual conference "maintain old NDX' switch.
This switch can be found in PCBsetup by selecting a conference
and then pressing PgDn to get to page two of conference setup.
It is not necessary to specify any form of NDX support unless
you have other 3rd party software that still requires it.
NOTE: - Due to problems in the comm library this version does
not support the FOSSIL interface.
KMAIL200 - 02/26-95
- Added code to properly handle generic messages to a specific
security level or to a security range. (@nn@ or @nn-@nn@)
- Stacked commands failed to work after the check for a valid
protocol was added in beta version 'y'.
- Fixed compatibility problem with "attached files" and pcb 15.2
- Corrected error message text dealing with attached files.
- Corrected a range check error that occured when a message
base exceeded around 8.5 meg.
- Added code to check if a valid transfer protocol is selected,
and notify caller when this condition is detected.
- Some messages imported from Internet used date format XX/XX/XX
rather than XX-XX-XX which caused Kmail to ignore the msg.
Changed Kmail to accept both formats.
- Added support for connect speeds 24000 and 28800. Update your
KMAIL.CFG if your modem will operate at these speeds.
- Provide initial compatibility with PCB 15.2 beta code. It is
no longer necessary to restrict the door to building a 15.1
or earlier users.sys file.
- Translate the "From" name in rep packets to upper case.
- Fixed an endless loop when using the 'W' command.
- Added additional carrier-loss checks in the scan routine.
- Corrected a memory overlay problem that was likely causing
InterPCB to not export messages. The overlay occured ONLY
when the conference name was greater than 8 characters.
- Corrected a runtime Range Check error that occured when a
message base file exceeded about 8.2 meg.
- If more than one message had an attached file, only the
first file was sent. Fixed!
- Fixed a range check that occured with large IDX files.
- Added some debugging code to help determine why some
prescan packets are created with CRC errors. It is possible
that this is an archiver problem.
- Changed to execute PKZzip under control of COMMAND.COM.
- Fixed the 'Y' command. It was apparently broken when
implementing the new IDX file support.
- Fixed a range check problem and the potential for missing
and/or dup messages.
Tidy up the New File scan just a little.
- Created separate error messages to indicate when a message
base is in "read-only" status and when the caller has
insufficient security to enter a message. Prior to this
update, an error of "read-only" was reported in both cases.
- Added the ability to remove the PCB @x color codes from the
bulletin and news files. This option is user controlled via
the (E)exended menu selection on the main KMail menu.
- A previous update introduced a condition that caused conference
directories to not be scanned for new files. Fixed.
- Added support for uploading ATTACHED files in the REP packet.
File format conforms to the OLX reader standard.
- Code now saves and restores interrupt vectors when shelling
to Dos programs such as DSZ and PKZip. (Don't know if this
specifically addresses COM ports or not).
- When downloading locally, if a qwk packet already exists in
the output directory, the next sequence number is attempted
(up to .QW9) before prompting the operator.
- Added code to properly handle mixed case names such as those
received from Internet.
- Added additional error checking to TEXT file processing.
- Added additional option to attached file processing to allow
callers to receive attached files addressed to someone else.
See sample CFG file, default changed from Yes to No and now
includes an All option.
- Now logs error info to $door.err file during ATTACHED file
processing. (trying to determine why some files not included
in the qwk packet.
- Diagnostic info is now written to caller log to help
determine if the PCBSTUFF command is working correctly on
multi node systems.
- Added checking for the conference specific "Force Echo" flag.
This will allow R/O messages imported from Internet to be
downloaded by network sysops if they are otherwise authorized
to download R/O messages via the Qnet_Private=Yes parameter.
The problem was that the internet messages did not have the
echo flag set in their message headers and therefore could
not be downloaded by network sysops.
- Level 'h' exposed a problem in dealing with messages imported
from InterNet... an unexpected date format was being used.
Instead of mm-dd-yy, they are using mm-dd─yy. (look closely
and you will see that the 2nd dash is really the long narrow
line used to draw boxs).
- Additional checking to prevent a Range-Check when using
the 'K' command.
- If a message was re-edited in PCBoard and the added text
caused PCB to relocate the message because it would no
longer fit in the original location, Kmail would sometimes
get out of sync resulting in missed messages and the
last-read pointer would be reset to zero or the lowest msg
in the conference.
- Added support for ARJ compression. Suppport is automatic
even without changes to the CFG file. See sample CFG for
the default values.
- Altered attached file processing to allow the sysop to
receive files in messages addressed to all or anyone.
- Lockup processing a REP file. Problem was caused by not
properly detecting eof when reading the NETWORK.DAT file.
- Added additional error checking during copy of attached files.
- Increased stack allocation.
- Made adjustments to Attached File processing to allow the
OLX mail reader to detect attached files in the mail packet.
- Increased maximum message size to 200 blocks.
- Attached-File processing. Ok, let's try this and see what
what happens. If enabled by the sysop and selected by the
caller, Attached-Files to a specific person will be included
in the mail packet. Attached-Files within messages addressed
to ALL will not be processed.
- The Attached-File option for the caller is located under
the (E) - Extended Options selection.
- Disabled overlay swapping to EMS memory to see if that
will help clear up a couple of flakey problems. Swapping
is now performed to disk only.
- Due to some reorganization, the QNET status flag was not
being read soon enough which effectivly caused the QNET=
parm to be ignored. This resulted in an internal default of
300/1500 message limit for 9600 and higher callers.
- Info from DSZ.LOG now posted in caller log file.
- TAG lines were being truncated and converted to upper case.
- Added support for up to 9 unique network tag lines.
- Removed the RO1, RO2, and RO3 parms from the cfg file. These
parms had been used to specify read-only conferences. This
information is now taken from the CNAMES.ADD file.
KMAIL299 - Not Released
KMAIL298 - Not Released
KMAIL297 - Not Released
KMAIL296 - 07/17/93
- System lockups have been reported at the 'j' beta level.
Re-compiled using ProKit libraries that were in effect at
the 296g beta level.
- Increased the maximum message length to 192 message blocks.
- Fixed a runtime error after an aborted download because the
kwork directory was not cleaned out properly.
- Qnet status was not always enabled for private conferences.
- Added additional carrier-loss checks in conf selection routine.
- Removed fossil support since it has never worked correctly.
Will readd it later pending an update to ProKit.
- Removed experimental call to PCBPack which should not have
been compiled into the public version.
- Similar (again) to the problem fixed in level 'd', if only
a SINGLE message existed beyond a users last-read pointer
and that message was killed, an endless loop occured. Fixed!
- If a reply to an existing message was uploaded, Kmail
incorrectly attempted to reference the old NDX file strucrure
in order to locate the ReferTo message... causing a DOS error [6]
- Added the following option to the KMAIL.CFG file.
;------------------------------------------------;
; Local_QWK=A/R
;------------------------------------------------;
; When creating a QWK packet in local mode and an
; existing QWK packet is found in the receiving
; directory, should the packet be over-written?
;
; A = Ask
; R = Replace without asking.
;------------------------------------------------;
Local_QWK=A
- Similar to the problem fixed in level 'c', if ALL messages
beyond the last-read pointer have been killed or packed out
then the mail scan would begin at a random location. Fixed!
- If the next sequential message number beyond the current
last-read pointer has been killed or packed out of the msg
base, then the message scan will begin at a random location
causing excess or missing messages in the mail packet. Fixed!
- Incorrect julian date calculation caused a runtime error
during upload processing.
- Kmail is now fully compliant with the new PCB 15.0 'IDX'
record format and no longer needs the /OLDINDEX setting in
the DOS environment. However, Kmail will still maintain the
older 'NDX' records on a global basis if the /OLDINDEX
variable is found, or on a conference by conference basis
as specified by the "Maintain Old NDX" switch in PCBsetup
for each conference.
- Under some conditions Kmail would not allow a user to select
a conference unless the 'X' flag was set in the user record.
KMAIL295 - 04/25/93
- Initial compatibility with PCB 15.0 code... backward
compatibility with PCB 14.5 is maintained, no special
action required, the code detects what level you are running.
- Added additional checks for carrier-loss during msg scan.
- Allow an aborted download to restart without having to
perform a full conference message scan.
- Check for and honor the sliding-event flag in PCBSetup.
- Restructuring to reduce memory requirements by 8k.
- Added support for 115200 baud rate.
- Adjusted scan routines to NOT include File, Bulletin, and
News scan for 2nd ann later passes during the same call.
- Adjustments to Speed= processing so that /LOCALON will
be processed correctly.
- Fixed the "Set Personal Message Limits" menu screen, it
was displaying incorrect information.
- CONTROL.DAT was incorrectly built for a null conference
if the conference was also private. Fixed!
- Adjusted code so that stacked command "D;Y;G" will work
with a prescanned mail packet waiting.
- Fixed inability to ADD/DROP conferences above 1000.
- Added user option to allow selection of large or small
CONTROL.DAT. (Small control.dat will only contain the
conferences that have been selected for scanning.)
See the (E) option on the main menu screen.
- Fixed a problem where the "Download Own Msgs" flag was
being incorrectly reset.
- Fixed a problem that caused the stacked command D;Y;G
to fail if there was a prescanned packet waiting.
KMAIL294 - 01/10/93
- Changes for compatibility with PKUNZIP v2.04c. The default
is now PKUNZIP -e which is compatible with the current and
previous levels of PKUNZIP. UnZip_Opt= is now supported in
the KMAIL.CFG in case additional options are required by
your system.
- Added support for 19200 & 38400 speeds because some front-
end programs can pass these values to PCBoard as valid
carrier speeds. Update KMAIL.CFG if you need these speeds.
- Compatibility problems associated with some readers trying
to read CONTROL.DAT and associated xxx.NDX files because of
the changes introduced for greater than 999 conf support.
Adjusted download routines to check the number of conferences
allocated on a system and when less than 999, then use
the old format to build CONTROL.DAT and xxx.NDX files.
- Changed conference selection screen to be more user friendly.
- Corrected problems in CONTROL.DAT associated with conferences
greater than 999.
- Number of conferences supported raised to 3,000.
- Increased stack allocation.
- Added check for negative conference #'s in REP packets.
- Added support for FOSSIL interface. (see doc)
- Allow PNT file to be included within the REP pcaket.
- Updated the online KMHELP file.
- Added support for 7200 and 16800 carrier speed.
(Remember to add Speed= parms to your KMAIL.CFG file.)
KMAIL293 - 10/04/92
- Allow Net sysops to deselect forced conferences.
- Added .CFG parms RO1=, RO2=, and RO3= to allow defination
of up to three Read-Only conferences. (see sample CFG)
- If a "disk-full" condition was encountered while scanning
messages Kmail would currupt memory an cause a system lockup.
Finally nailed this one down after many hours of tracing.
- Fixed runtime error 201 in conference selection routine.
- Added .CFG parms FC1=, FC2=, and FC3= to allow defining
forced conferences. (ex: FC1=0) to force conference 0.
- Added code to check the required security level to enter
messages. This allows the sysop to define read-only
conferences by using a negative number in in the added_security
field of one or more conferences.
- Broke the extended services file send in v2.92, Fixed!
- Added support for 12000 carrier speed, you'll need to add
a Speed=12000 to KMAIL.CFG file.
KMAIL292 - 07/05/92
Added additional offline configuration options. In addition
to the normal Add, Drop, and Reset... the following new
options are accepted by Kmail:
Yours # (select a conference and scan only Your mail)
YA # (select a conference and scan your mail +
mail addressed to All).
The # is an optional parameter. If positive the last-read
is set to that value, if negative, the last-read pointer
is set to that number of messages below the high number.
Fixed an unusual case where bi-directional xfers would fail.
More adjustments to the routine handling the NoTime option.
Added the ability to run KMail from a batch file using the
PCB /localon switch. Uploading, downloading and stacked
commands are all supported. See sample KMBATCH.BAT file.
Changes in NoTime processing to prevent crediting too much
time in some cases.
Added NoTime=Yes/No option in the CFG file.
Closed security exposure when using the Block-Add routine
to select conferences.
Changed the wording on the conference Block-Add function
to help clarify the meaning of the prompt.
Disabled checking the BBS name in the KMAIL.KEY file due to
the problems associated with multi-node systems having a
unique name on each node. Now, only the sysop name is checked.
Corrected processing of the .PNT file. Last-read pointers
were out of sync by one conference.
Added a check when downloading in local mode to test if a
QWK file already exists in the target directory. The user
is given the option to continue or cancel the operation.
Installed filters to test for invalid/non-displayable chars
in the To/From name field of the message header record. These
invalid characters would prevent TCAN filters from working.
Any messages with invalid characters will be TCAN'ed by KMail.
KMAIL291A 03/09/92
Automatic logoff was not working correctly if Disable_Goodbye
option was enabled in the CFG file.
KMAIL291 - 03/05/92
Broke the bulletin scan routine earlier in this beta cycle.
It ended up trying to scan bulletins from the highest
numbered conference. Fixed!
Added the beginning of multi-lingual support. You may now
customize the following files with a .language extension
as necessary. The English versions will NOT have a .extension.
KMail also supports the PCB @XX color codes in these files.
NEWUSER
PNTMSG
KMHELP
===> The KMAIL.HLP has been renamed to just KMHELP. Please delete
===> the old version and use the new help file with this version.
Any sequence of stacked U/D commands are now accepted.
KMAIL U D Y G or KMAIL D Y U G will work just fine now.
Local mode now works exactly the same as remote callers.
The .PNT file now contains message pointers of both BEFORE
and AFTER the mail download. When resetting message pointers
the caller may choose which set to use.
Added "File Send" services, see KMail DOC under heading
Extended Services for info.
Changed "Want to Receive this Packet" prompt to require
a specific match rather than default to No.
Added enhanced error messages in a couple of places to help
isolate a problem reading CNAMES.@@@
Added Fido style tag line support. Use: Fido_Tag=Yes in CFG.
Revised security checking to test for "Locked" conferences
and expired security levels.
KMail now adds user for Yours Only if a message is uploaded
into a non-selected conference. (subject to security checks)
No longer strip the NE: from the Subject line so the the
receiver will be aware that the message is local only.
Added message to indicate MESSAGES.DAT has reached limit.
PreZip process failed when scanning for the name in USERS
record #1. This bug has been here since day 1 and nobody
has tried doing this until recently.
Changed BBSID.PTR to BBSID.PNT to avoid conflict with Rnet.
Fixed error 201 which occured processing a REP packet if the
message + the tag line ended exactly on the last byte of any
given message buffer.
Changed logic in the conference selection routine to avoid
the "Conference out of Range" message. The user is now moved
directly to the appropriate selection panel.
Added ability to specify maximum MESSAGES.DAT size.
Fixed error 201 at 0051:2D3E in the PTR processing routine.
It couldn't handle a message number greater than 65,535.
New option "Sysop_Alias=" is implemented in the CFG file. This
option is intended for those Sysops who may have something
other than their real name in record #1 of users. Using this
option will cause messages addressed to the alias name to be
included in the personal index of a download packet. The
messages will also be marked as having been read. This option
has no effect when uploading.
KMAIL290 - 12/22/91
Fixed a long standing problem that caused a caller to be
returned to CONF 255 if the door was opened from within any
conference greater that 255.
Adjusted routines so that CTRL-K will abort the message scan.
Added check for carrier-loss in the conference scan routine.
New parm "Disable=xx" added to configuration to indicate the
number of minutes prior to event to prohibit downloading.
Kmail was incorrectly asking for qwk/rep location after
receiving a .REP using a bi-directional protocol.
Due to debugging code enabled, Kmail was trying to read
CONFINFO causing an error message. Fixed!
Adjustments made to handle EZ 2.0 reply packets.
Chat time was not being credited to the caller
Network status was not being granted for private conferences.
KMAIL289 - 11/11/91
Due to debugging code left in a routine, the Speed parms
were not being processed from the CFG file.
KMAIL288 - 11/09/91
Added additional user option "Message Limits" to allow
callers to specify messages per conference and overall
number of messages. (not to exceed system defaults).
Added HS/Link protocol support. Just add the appropriate
HS= and HR= entries to KMail.CFG to enable HS/Link.
Expanded TPA bytes to 18 to allow saving the date/time of
files sent via the SysFile function and to allow for
future functions.
Using PCBSM, select "User Info File Maintenance" and update
the KMAIL Third Party Application entry with the following info.
==> Version : 30 <---- This changed!
==> Static Size : 18 <---- This changed!
Dynamic Size : 1
Keyword : KMAIL
Network status not enabled correctly on some systems when
Ignore_Echo=Yes was in effect. Fixed!
Corrected new files scan when in conferences > 255.
Added an option to prevent the caller from logging off
from within the door. Include: Disable_Goodbye=Yes
in the KMAIL.CFG to enable this option.
Update the time-used and time-left fields more frequently
to try and keep them in sync with PCBoard.
KMAIL287 - 08/26/91
Added ability to transmit network adminstration files
within the QWK packet. See heading SYSFILE.DAT in docs.
Increased HEAP and STACK allocations to see if that will
prevent the lockup that a couple of people have reported.
KMAIL286 - 08/14/91
Midnight boundry still causing a problem. Revised elapsed
time checking to cover all cases that I can think of.
KMAIL285 - 08/11/91
Fixed a problem for multinode systems where an abend would
occur during the New File scan if PCBFiler was also running.
Fixed a midnight boundry problem that could cause a user to
have ZERO time the following day. This could happen if the
KMail session spanned the midnight boundry and the caller
logged off from within the KMail door.
Added the KWORK drive and path info to the %3 parm passed
to Xmodem protocol batch files.
No longer translate @USER@ to real name if caller has
network status.
Added user selectable mail scan option to allow scanning
of "Personal" + "To All" messages.
Updated KMAIL.HLP file.
Changes to allow KMail to use the protocol batch files
from the KMail subdirectory when present.
Strip trailing blanks from entries in the .CFG file.
Some editors were doing this, causing a problem.
KMail was appending a TAG line to messages imported from
other systems. This is incorrect, TAG's should only be
appended to messages which originate on your system. Fixed!
The help info would not display on the first invocation by a
user, except for the sysop. That's why I missed it. Fixed!
KMAIL284 - 07/13/91
Fixed yet another failure to set the mail-waiting flags.
Added TAG line support. (See .CFG for details.)
Also included with this level are new Welcome and Welcomeg
files. Be sure and include them in your \KMAIL directory
unless you have customized your own version.
KMAIL283 - 07/06/91
Added @XX color codes to the KMAIL.HLP file.
Corrected an intermittent problem causing the mail waiting
flags to not be set.
SCRIPT0 processing was causing an unexpected "Enter to
Continue" prompt to the caller. Disabled displaying
the script0 file for now.
KMAIL282 - 07/01/91
Added processing to set the "Mail Waiting" flags for the
various conferences during message importing. A .CFG option
Mail_Waiting=Yes/No is provided to disable it.
====> KMAIL.HLP has been changed to a new format, be sure and
put the new version into your \KMAIL directory.
Fixed a runtime 201 error caused by trying to set the
"has been read" flag of a purged message.
Corrected Xmodem %1 and %2 parms, they were reversed.
The SCRIPT0 file is now processed directly from the
location specified in PCBSetup.
Fixed the System News file processing which was broken
a few levels back. The System News file processing now
respects the PCBSetup option to only send "new" news.
KMAIL281 - 06/14/91
Included options in the CFG file to control ARC and LHA
processing. (ARC=Yes/No and LHA=Yes/No).
Altered processing of SCRIPT0 file to prevent a message
from LHA if the SCRIPT0 is missing.
KMAIL280 - 06/09/91
Restructured code to allow multi-node systems to run using
a common \KMAIL sub-directory.
Added support for LHA.
Removed the dir prompt when running in Local mode if the
QWK/REP locations are specified in the CFG file.
Resolved compatibility problem with PowerQwk RDR.
KMAIL279 - 05/26/91
Added support for 14,400 carrier speed. Also, removed 19,200
and 38,400 parms from the CFG file as these are port speeds
rather than carrier speeds.
KMAIL278 - 05/25/91
Resolved a compatibility problem with SLMR 2.0, lousy timing!
Made a change to KEY file processing on multi-node systems to
assist those that have different BBS name text on each node.
(more info in doc file)
KMAIL277 - 05/24/91
Added BiModem support.
Added an online HELP file "KMAIL.HLP" that callers may
view within Kmail. Just place this file in the \KMAIL dir.
Fixed a problem that caused Kmail to reject a message if
the Sysop was using their "Real Name" in the from field.
Fixed a problem that caused Kmail to ignore any Keyword
in the TPA record other than 'KMAIL'.
Fixed an error in calling the Xmodem-1K protocol.
Included separate protocol entries for Xmodem/Sum
and Xmodem/CRC to help reduce confusion.
To assist those Sysop's who have separate QWK/REP locations,
the Loc_Dir option has been split into Qwk_Dir & Rep_Dir.
Added parm "Buffers=" to the KMAIL.CFG to allow controlling
the number of buffered I/O blocks that Kmail will allocate.
Previously was hard coded to use (120) 512 byte blocks.