2.12 DIS 04 Jul 93 1) Fixed most compiler warnings. 2) SMTP: tightened up "smtp list" error checking. 3) Name resolver: fixed the routine which chooses the "best" IP address for a multi-homed host. 4) Dialer: improved dialer interrupt handling. 5) SMTP: fixed problems when copying large mail files. Ian Young 6) NNTP: reinstated the 2 minute NNTP "fudge factor". 7) Made the lzw compression code conditional on LZW and removed it by default. Not required for our application. ~6k saving in load image size. 8) Disabled SLIP by default. DIS KA9Q users use PPP. ~2k saving in load image size. 9) SMTP: fixed dot transparency. Ian Young 10) SMTP: fixed alias expansion so that there can be multiple spaces between the alias and its expansion. Grahame Davies 11) Changed behaviour of TCP/IP in low memory conditions. This now follows the following algorithm: If available memory < 2 * low memory threshold Accept incoming packet. Queue a "source quench". If available memory < low memory threshold Discard incoming packet. Queue a "source quench". If available memory < low memory threshold / 2 Discard incoming packet. Don't queue a "source quench". This is intended to cure the problem whereby KA9Q hangs when doing multiple downloads in low memory conditions. Thanks to Ian Young (ian@rats.demon.co.uk) for the suggestion. 12) NNTP: dropped the word "article" from the "News arrived:" message. 13) NNTP: fixed duff throughput reports caused by the use of signed variables for counts. Uncredited changes: Giles Todd ---------------------------------------------------------------------------- 2.11 DIS 19 Apr 93 1) Fixed a bug which could disable the SMTP client under tight memory conditions. Giles Todd ---------------------------------------------------------------------------- 2.10 DIS 13 Apr 93 1) Automatic time setting tweaks. 2) New command: "time delay ". Sets a delay before the automatic time setting and kick commands are issued after connection. Default: 10 seconds. Giles Todd ---------------------------------------------------------------------------- 2.09 DIS 09 Apr 93 1) Fix spurious error message from "time set". 2) Increased connection timeout in time commands. 3) Fixed automatic SMTP kick. Giles Todd ---------------------------------------------------------------------------- 2.08 DIS 06 Apr 93 1) "smtp delay": use localtime () rather than gmtime (). Mark Turner ---------------------------------------------------------------------------- 2.07 DIS 05 Apr 93 1) Fixed "smtp delay" command. Mark Turner ---------------------------------------------------------------------------- 2.06 DIS 03 Apr 93 1) Multiple telephone numbers are now dialled in sequence (rather than the last in the list being dialled first). 2) Reinstated "smtp beep" command. 3) Added a dummy function to prevent error messages appearing as a result of the disappearance of the "smtp delay" command. Giles Todd ---------------------------------------------------------------------------- 2.05 DIS 01 Apr 93 1) Removed post 1.29 changes to the SMTP client (apart from mail routing changes). This is now in its version 1.29 state. As a side effect, this has removed the "smtp beep" command. This can be reinstated if there is a demand for it. 2) The "receive character from socket" routine now strips embedded ^Z characters when the socket is in ASCII mode. Giles Todd ---------------------------------------------------------------------------- 2.04 DIS 30 Mar 93 1) Delay ten seconds before sending the automatic NNTP and SMTP kicks. Mark Turner ---------------------------------------------------------------------------- 2.03 DIS Feb 93 1) Added version to help screen. Mark Turner 2) Added extended TZ environment variable syntax to fix problems with non-US compatible daylight saving time changeover dates in 1993. Please note that earlier versions of KA9Q will not work correctly in the UK after 27 March 1993. You must upgrade to this or a later version of KA9Q for correct operation after this date. This product includes software developed by the University of California, Berkeley and its contributors. The TZ variable has the following syntax: STD offset [DST [offset] [, rule]] (Spaces added for clarity.) Only the STD part is required. If DST is not specified, summer time does not apply. Uppercase and lowercase letters are allowed in the designation. Any characters except a : (colon), digits, , (comma), - (minus), + (plus) and ASCII NULL are allowed. STD denotes the standard time zone and DST denotes the summer time zone. indicates the value to be added to local time to equal Coordinated Universal Time (equivalent to GMT). The part has the following format: hh[:mm[:ss]] The part following the STD part is required. If an part does not follow the DST part then summer time is assumed to be one hour ahead of standard time. One or more digits may be used and are interpreted as a decimal integer. The hour must be specified between 0 and 24 (sic). The mm (minutes) and ss (seconds) parts are optional. If these parts are present, they must be specified between 0 and 59. If the part is preceded by a - (minus), the time zone is east of the Prime Meridian (Greenwich again). If the part is not preceded by a - (minus) or is preceded by a + (plus), the time zone is assumed to be West of the Prime Meridian. The part has the following format: date/time,date/time The first date part describes the date when the change from standard to summer time occurs. The second date part describes when the change from summer to standard time occurs. Each time part describes, in current local time, when the change is made. The date part has the following format: J or M.. J indicates a Julian date. is the day of the year and has a value from 1 to 365. Leap days are not counted. M.. describes a month, a week and a day. is the month (1..12), is the week (1..5) and is the day (0..6). Week one is the first week in the month when day occurs. Day zero is Sunday. The time part has the same format as the part described above except that it can have no leading sign (- or +). The default value of the time part is 02:00. For example, in the UK in 1993 the correct setting would be: TZ=GMT0BST1,M3.4.0/02:00,M10.4.0/02:00 This extended syntax for TZ may cause some MS-DOS applications to work incorrectly. If this occurs, the extended syntax may be used with the GTZ environment variable. If the GTZ variable is present, it will take precedence over the TZ variable for the purposes of these routines. Giles Todd ---------------------------------------------------------------------------- 2.02b DIS 18 Feb 93 - Added support for a TYPE_ANY query to the built in nameserver. - New command, 'domain qtype n' sets the type used by 'domain query' Use domain qtype 1 to set TYPE_A if you're stuck with a nameserver that won't accept TYPE_ANY (Are there any of these apart from the ka9q one ?) - Converted all remaining printf's to tprintf. Iain Paton ---------------------------------------------------------------------------- 2.02a DIS 11 Feb 93 1) Fixed bug that stopped SMTP and NNTP kicks from occuring automatically when time auto on was not in use. Mark Turner ---------------------------------------------------------------------------- 2.02 DIS 07 Feb 93 1) Change 'source' to operate in foreground. Added 'sourceb' which replaces the old 'source' command. 2) Added 'ip filter' command. This allows packet level filtering on each interface. May be used to make your system more choosy about whose packets it will accept. See filter.txt for more details. Included with permission from the author, Dave Mischler . 3) Improved dial-on-demand to work with filtering. 4) Added up/down scripts which allow net scripts to be sourced whenever particular PPP links come up/go down. To use this feature a file 'scripts' should be placed in the net base directory. Each line of the file has three fields. The first is the remote IP address negotiated by PPP, the second and third are the scripts (stored in spool/scripts) to be executed when the link appears/disappears. E.g. /scripts 158.152.13.137 up down Any net commands may be placed in these scripts. This is where I do my SMTP and NNTP kicks and adjust routing and nameserver details. 5) Altered fkey so that if the programmed string starts with "[command]" then the rest of the string is entered at the Net> prompt. E.g. fkey 104 "[command]se 1\n" fkey 105 "[command]se 2\n" fkey 106 "[command]se 3\n" fkey 107 "[command]se 4\n" etc.... This would program ALT-function-key to switch to the corresponding session. 6) Fixed Tx hardware handshake. 7) Added [XYZ]MODEM file transfers over rlogin. To start a download, type "~d". To start an upload, type "~u". Both commands prompt for the protocol to use - enter "x", "y" or "z" as required. All uploads and XMODEM downloads will prompt for a file name. The "~" character alone can be entered by typing "~" twice. 8) Added SMTP kill file. To reject mail from particular users just put their email address in the file 'mailkill' in the ka9q base directory. The SMTP server will reject all mail from specified sites with the message '503 Local policy blocking mail from you'. This facility was added to combat junk mail from auto-reply daemons. ---------------------------------------------------------------------------- 2.01 DIS 07 Jan 93 1) Make SMTP bouncing action/rules more flexible. Described in the file bouncing.txt. 2) Added: source Execute the commands in the specified file as if they were typed at the net prompt. Commands are executed as a background task but output is to console. 3) Added: at