WHAT'S NEW IN KSP FTP 3.0: Enhancement: At the end of a timed-out session, KSP-FTP now waits for the serial output buffer to empty, and then flushes the serial input buffer. Enhancement: Modified to use the ftp PASV command (rather than PORT command) when supported by remote server so that KSP-FTP can now work through most firewalls. 2.9: Bug Fix: Discovered that the Waterloo TCP/IP library routine that reads a line of text from the network failed when the input buffer contained an ASCII NUL. Corrected. 2.8: Clean Up: Reversed the default on "ksp-ftp.retrieve_hostnames". The default now is disabled; the parameter may be used to set it to enabled. New Feature: Added an option (ksp-ftp.allowed_ip_list) to specify the name of a file containing a list of allowed IP addresses. Users will not be allowed to connect to any IP address not on this list. Enhancement: Whenever the local BBS console screen is disabled (by SysOp command or file transfers), KSP-FTP now displays the user's name, city, the remote host id, and the minutes remaining. Enhancement: KSP-FTP now assigns it's local tcp/ip port randomly. This helps when trying to re-establish a connection to a remote host that was lost in a recent previous execution of KSP-TLNT. Clean Up: KSP-FTP no longer hangs up the modem when the user times out but rather simply returns to the BBS and lets the BBS decide whether or not to hangup. 2.7: New Feature: Added reverse domain name lookups so that the command prompt reflects the correct hostname even if an IP address was given by the user. This feature is enabled by default, but may be disabled by setting ksp-tlnt.retrieve_hostnames=DISABLED. Note: This change required adding an entry to KSP-FTP.TXT.) 2.6: Bug Fix: When an external protocol was invoked, the port number was always passed to the driver as zero; corrected. Bug Fix: With external protocols, no check for carrier loss or timeout occurred until after the tcp/ip transfer was complete; corrected. WHAT'S NEW IN KSP FTP 2.5: Clean Up: Improved handling of "ksp-ftp.ophours" . If start time is after the stop time, the hours of operation will be interpreted as all but those in the window specified. I.e., setting ophours to 03:20-03:00 will allow operation anytime except 03:00-03:20. 2.4: New Feature: Added a option (ksp-ftp.blocked_ip_list) to specify the name of a file containing a list of blocked IP addresses. Users will not be allowed to connect to any IP address on this list. This required adding a new message to the end of KSP-FTP.TXT. 2.3: Bug Fix: If you entered the command "PUT" without specifying a filename, external batch protocols would upload the file(s) to the BBS, but not transfer them over the Internet to the remote ftp host. Corrected. Bug Fix: External protocol batch files are supposed to be located in the same directory as the executable file (KSP-FTP.EXE) so that one set can be shared by multiple nodes. The code contained a bug that required these files to be placed in the directory that was the current default directory at the moment that KSP-FTP was executed. Corrected; external protocol batch files (KSPFTPR?.BAT and KSPFTPS?.BAT) should now be located in the directory that holds KSP-FTP.EXE, and the batch files should be marked "read-only". Bug Fix: If the minutes remaining passed to KSP-FTP in the DOOR.SYS file was zero, the user would get unlimited time; corrected. Note: This required adding a new message (#96) to KSP-FTP.TXT. 2.2: Work Around: Discovered that the ARNET driver in Egberto Willies' COMM-DRV (used by Clark Development's PCBoard) does not adhere 100% to the fossil spec in that function 04h (Initialize) does not return 1954h when called with DX=00FFh. I was using this to detect the presence of a fossil driver as recommended in the fossil spec! Corrected by modifying the presence test to add two additional presence tests if the first one (04h) fails. Clean Up: Wow! No one ever noticed before (including me) that there was no explanation in the docs about how to implement external protocols! Corrected. WHAT'S NEW IN KSP FTP 2.1: Bug Fix: Fossil drivers do not typically detect an incoming serial "break" signal. Thus when used with a fossil driver, the configuration parameter called "serialport" is used to enable additional code to provide this feature. Although this code worked fine when tested with the X00 fossil driver, it prevented both the BNU fossil driver and PCBoard's COMMDRV program from doing serial output properly. Corrected. Bug Fix: Was not detecting carrier loss (user hangup) properly. Corrected. New Feature: Added a command line parameter "/SCRIPT=" to specify a text file to be used as command line input. Enhancement: A caller could abort an attempt to connect to a remote site by pressing any key while the dots are being painted back and forth on the screen. However, this caused a rather obvious problem if the caller had a noisy modem connection to the BBS. Now only three specific keystrokes are recognized as a request to abort the connection attempt: Esc, Ctrl-C, and Ctrl-X. Enhancements: When run from the local BBS console, the door no longer announces to the SysOp that Shift-F1 toggles the local BBS screen and the key has no effect; when a remote caller invokes the door, however, Shift-F1 is fully functional in the normal manner. When used with a remote caller to enable/disable the local console screen, Shift-F1 now informs (only) the SysOp whether the screen has been enabled or disabled. Clean Up: When opening the door, the number of minutes remaining is announced properly to the caller. However, the minutes remaining was not displayed properly in the prompt when it was a very large number (like 1440 minutes = 24 hours). Corrected. 2.0: Bug Fix: Wasn't working with Digiboard when used with a fossil driver. Corrected. Bug Fix: The COM port number in DOOR.SYS was limited to COM1 through COM4 since this is all that can be supported by the async library; however, there should be no such limit if a fossil driver is used. Corrected. WHAT'S NEW IN KSP FTP Bug Fix: The special break detect code used with fossil drivers was interfering with normal fossil operation; corrected. New Feature: Added support for an environment variable (ksp-ip) to set the IP address. Since the IP address is often the only parameter in WATTCP.CFG that changes from one BBS node to another, this allows using a single copy of that file for all nodes. New Feature: While user is in the door, pressing Shift-F1 on the local console of the BBS will toggle whether or not output also appears on the BBS's local console screen. Clarification: Some Internet access providers configure their dial-up slip and ppp accounts with a very small segment size. You may need to set mss as low as 212 if your Internet connection is through such a connection. 1.9: Oops! When I fixed the search algorithm in 1.8, I accidentally broke the "include" directive in WATTCP.CFG. Corrected. 1.8: Bug Fix: Dynamic parameters did not function properly; corrected. Change: Changed the search order for WATTCP.CFG to be downward compatible with earlier versions of KSP-FTP. First, it checks for an environment variable called WATTCP.CFG that specifies the directory. Second, it looks in the current (default) directory. Third, if still not found, it looks in the directory that contains the executable (KSP-FTP.EXE). 1.7: Oops! 'Forgot to include KSP-FTP.TXT in KSPFTP16.ZIP! Enhancement: KSP FTP now looks in three directories to locate the WATTCP.CFG configuration file. First, it checks for an environment variable called WATTCP.CFG that specifies the directory. Second, it looks in the directory that contains the executable (KSP-FTP.EXE). Third, if still not found, it looks in the current (default) directory. Enhancement: Added a command line option (/CONFIG=, where "" is a non-zero integer such as "1") to facilitate dynamic configuration options. If used, then any WATTCP.CFG configuration file parameters of the form: WHAT'S NEW IN KSP FTP ksp-ftp[].= are ignored unless the integer number enclosed in square brackets matches that specified in the command line option. This also works for global parameters, such as "ksp[].". 1.6: New Feature: Added a command line option (e.g., /MAX_MINS=60) to limit the time a caller is allowed in the door. If used, time in the door will be the minimum of that specified by the option and their time remaining on the BBS. New feature: Added support for foreign languages by putting all the program text in a file called KSP-FTP.TXT. This file can be modified using any normal text editor. The file MUST be placed in the same directory as KSP-FP.EXE and marked read-only. 1.5: Bug Fix: When a user dropped carrier, KSP FTP did not necessarily properly unhook the serial port interrupt routine. Most users would never experience a problem since it required an improbable combination of events to cause it to occur. Corrected. New Feature: All of our software is now available via anonymous ftp at "scizzl.scu.edu", directory "ksp". Please note that there is no "e" at the end of "scizzl". 1.4: Bug Fix: When remote host refused a connection, KSP FTP would try to close that connection even though it had not been opened, thus causing a long delay. Corrected. Enhancement: Added the ability to override Waterloo TCP/IP's automatic search for the packet vector interrupt by using an environment variable, as in: set ksp-pv= where "" may be in decimal (e.g., "96"), in hex preceded by "0x" (e.g., "0x60"), or in octal preceded by "0" (e.g., "0140"). Enhancement: Added information in the documentation about a packet driver shim for Novell with a Token-Ring_SNAP network. WHAT'S NEW IN KSP FTP Enhancement: Performance problem when running under DESQview with PKTMUX solved by creation of KSP-DVMX packet multiplexer. Available as file KSPMUX*.ZIP, where "*" is the version number. Bug Fix: Users who hung up abruptly in the middle of a FTP session could cause the software to hang; corrected. 1.3: New Feature: Now DESQview "aware" to provide better performance in a multitasking environment. New Feature: Added configuration option "ksp-ftp.local_bell" which can be set to "disabled" to silence the bell on the BBS console. New Feature: Added configuration option "ksp-ftp.local_screen" which can be set to "disabled" to improve screen painting speed for the caller. Enhancement: Added Waterloo TCP/IP configuration parameter "dns_search_mode" to accelerate nameserver lookups. 1.2: Enhancement: KSP-FTP did not send the file size to the receiver at the start of a Zmodem download because some ftp hosts do not provide that information. That's not a problem if Zmodem is implemented properly in the receiver's communications program, since the Zmodem spec regards this information as optional. KSP-FTP now tries two techniques (that suffice for 90% of the ftp hosts) to obtain the file size; if available, it is now provided to the internal Zmodem protocol driver. Enhancement: Documented the "include" directive that helps when you have multiple nodes. CleanUp: Clarified the description of the batch file used to invoke the door. CleanUp: Discovered that only the newest versions of the Novell packet driver shim (ODIPKT) allow command line parameters to be specified in hex; older versions require that they be specified only in decimal. Our docs describing how to install ODIPKT have now been modified to show decimal parameters since they will work in all versions of ODIPKT. BugFix: Translation of filenames like "BBSes.on.Internet" on remote (Unix) ftp host yielded a DOS name of "BBSES.ON." where the second period was clearly improper. WHAT'S NEW IN KSP FTP Corrected. BugFix: If no WATTCP.CFG environment variable was used, there was a chance that part of memory might be corrupted. Corrected. BugFix: The configuration parameter "ksp-ftp.mb_external" unfortunately affected internal as well as external protocols. Corrected; it now only applies to external protocols. 1.1: Enhancement: Configuration parameters such "ksp-ftp.serial_port" that are common to more that one KSP product may now be enterred in the WATTCP.CFG configuration file once, as in "ksp.serial_port". Enhancement: Added "more" command to toggle the "More?" prompt at the end of a page of text." Bug Fix: Downloading using Zmodem in QmodemPro with 32-bit CRC enabled caused "Long packet received during protocol" errors. Corrected. CleanUp: If username or password commands failed during login to remote ftp host, connection is closed but command line prompt looked like connection was still open. Corrected. CleanUp: When presenting remote text to the user, the count of lines that controls the "More?" prompt was off by one. Corrected. 1.0: Initial release.