Time for a new release announcement of TCP/IP for RSX-11M-PLUS.
This is version 2.19 of BQTCP/IP.
It's been a while since the last release, and quite some improvements
have been done in several subsystems. Some of them are rather
significant, and a recommendation to update to this new version soon is
recommended.
Highlights:
. TCP and UDP AST notifications now work from supervisor mode.
. Fixed if TCP tries to send a packet and there wasn't enough IP POOL,
TCP would stop transmitting altogether.
. Changed behavior with notification ASTs and sockets closing in TCP.
This will now always cause a notification AST, even if notification ASTs
were blocked.
. Fixed that IFCONFIG was not able to set an interface to down.
. Fixed that DNS lookups using the F11ACP functions could fail because
of uninitialized fields.
Detailed information on things that have been done since the last release:
IP:
. Correct checking for fragmentation in IP receive (packets could
incorrectly be counted as fragments when they were not).
. Improved timeout handling for IP (fragments, ICMP, IGMP).
UDP:
. Bugfix. If a user notification AST was set up while in supervisor
mode, the AST would not be delivered in supervisor mode.
TCP:
. Bugfix. If a user notification AST was set up while in supervisor
mode, the AST would not be delivered in supervisor mode.
. If a TCP SYN gets a ACK with a completely bad sequence number, we'll
assume the connection is all bad, and we'll treat it as a RST.
. Improvement in TCP close. The receive buffer size is reset to just MSS
when the socket is closed (this optimize traffic at socket close).
. Bugfix in tcp. Probes did not back off in retrying as they should.
. If sending in TCP cannot get pool, it didn't reschedule the send.
. Changed TCP handling of remote close of connection to always generate
a notification AST if one have been defined. User AST block is
unconditionally lifted.
. Changed TCP handling of received RST to always flush input and lift
possible user block on receive notification AST.
. Added that a connection that received an RST cancel all outstanding
transmit data, and cancel any transmit I/O.
. Improvment in TCP. If a connection receives an RST, the task didn't
get notified that the connection was gone. It eventually would go away
because of timeouts, but it really should be notified as well.
IFCONFIG:
. Bugfix in IFCONFIG. Setting an interface state to down didn't work.
RWHOD:
. Bugfix in rwhod. Uptime wasn't computed against sending system time,
leading to incorrect uptime information if sending system was in another
time zone than receiving system.
. Bugfix in rwhod. RMS keys were not properly setup for the rwhod.dat
file management.
. Improved rwhod. If RMS indexed file gets slightly corrupted with key
index information, try to delete and rewrite record.
HTTPD:
. Improve web server CGI subprocess communication.
FTP/FTPD:
. Removed transfer statistics output at end of directory listing in FTP.
. Added explicitly maximizing buffer sizes for ftp and ftpd.
. Bugfix. FTPD could corrupt memory if a long username was given.
. Improved FTPD handling of default directory strings.
TELNET/TELNETD:
. Changed telnetd error handling for directive errors to better deal
with those.
. Changed telnetd to detect if connection remotely have been closed
while driver sent XOFF to remote, and close the connection immediately
in this situation.
DNS:
. Bugfix. If using the F11 ACP functions for looking up hostnames, the
lookup could fail because of some uninitialized fields.
IPLOG:
. Bugfix in LOGGER. Potential buffer overrun issue.
. Stop logging IP broadcast packets that have a different network number.
. Bugfix in LOGGER. ICMP redirect messages were reported wrong.
SPOOF:
. Rewritten spoofer to better catch distributed attacks.
BQTLIB:
. Added bignum to BQTLIB and PDP-11 C. Corrected documentation errors.
. Added DIRENT.H to BQTLIB for PDP-11 C.
Some additional notes:
As usual, I would recommend people to update as soon as possible.
The changes are somewhat critical, but will also lead to a much better
experience.
The patches to the TT: driver cannot be applied automatically, but
requires users to apply the patches themselves, and then run SYSGEN to
generate a new system.
Once added, the TNC2 task can be run at login, and will define logical
names for the user telling where he is connected from, if using telnet,
DECnet or LAT.
TNC2 can get information about remote connections over DECnet as well,
but this requires updates to DECnet. Such patches are not available
separately at this time, but are included in the RSX image provided from
Johnny Billquist.
The TT: driver patches also allows the updated MCR to give more
information with the DEV command (SHOW TERMINAL in DCL).
The patched TT: driver also makes is possible to get telnetd fully
vectorized, as this version provides two more addresses that are
required by telnetd to access information in the kernel.
The other patches to RSX can be applied automatically by IPGEN, either
if used interactively when answering YES to the question about applying
RSX patches, or by running IPGEN explicitly to do the patches, with the
command:
@IPGEN PATCH
Specific information about the patches:
LAT: Fixes a memory leak, and adds the ability to read where a terminal
connection comes from when using LAT, using SF.GMC.
RMSDAP: Fixes a bug in getting the file protection, so the XAB gets
filled in correctly for remote files.
RMSDSP: Fixes that some numbers were displayed in signed octal, which
should have been displayed in decimal or unsigned octal, depending on
number.
DCL: Added terminal attributes for COLOR.
MCR: Too many fixes to be listed here...
INS: Fixes that users cannot circumvent protection on common regions.
HEL: Fix that users can login with session ID, or with directory, in
addition to name and UIC.
ACNT: Add no password change attribute to accounts.
PSW: Add no password change handling.
SYL (SYSLOG): Add terminal idle tracking on accounts without idle logout.
ECL: If the receiving machine is very slow, and the sending machine is
very fast, and the receiver announce several large buffers available,
ECL cannot keep up, and drops packets. This is a problem with the DECnet
flow control, as it is used in RSX. The simple solution is to allow more
outstanding buffers when receiving. A more complex solution would be to
change how RSX DECnet do flow control, but that would require rewriting
a fair chunk of the ECL module.
NMVACP: Fix handling of "show known nodes" command, which could skip
some nodes.
NVP: Add ability to use session ID or directory name for user identity
in DECnet nodename specifications.
EPM: Fix handling of ethernet multicast.
NTDEMO: Fix that hosts without names should display DECnet address.
NCP: Parse of additional information types in NICE messages.
*** NOTE ***
MIM have moved to a new address, and a new name. The correct name is now
Mim.SoftJAR.SE. I hope that this will now not need to change again.
*** NOTE ***
As usual, the distribution is available from:
ftp://mim.softjar.se/bqtcp.dsk
ftp://mim.softjar.se/bqtcp.tap
!!! BQTCP is also available through RPM !!!
(As an additional note, if there are any problems communicating with Mim
using port 21, the ftp service is also available at port 10021)
The documentation is also available through ftp on Mim, or also at
http://mim.softjar.se/tcpipdoc
I hope people find this update useful.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email:
b...@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol