Updated: 24-SEP-2003 (Use your browsers' Reload button to ensure you're viewing the most recent version)
UCXVAX_E05042 TCP/IP V4.2 VAX ECO Summary
Copyright (c) Compaq Computer Corporation 1999, 2000, 2001. All rights reserved.
New Kit Date : 09-OCT-2001
Modification Date: Not Applicable
Modification Type: Updated Kit Supersedes UCXVAX_E04042
PRODUCT: DIGITAL TCP/IP Services for OpenVMS V4.2
OP/SYS: OpenVMS VAX
SOURCE: Compaq Computer Corporation
ECO INFORMATION:
ECO Kit Name: UCXVAX_E05042
ECO Kits Superseded by This ECO Kit: UCXVAX_E04042
UCXVAX_E03042
UCXVAX_E02042
UCXVAX_E01042
ECO Kit Approximate Size: 17,316 Blocks
Saveset A - 3,096 Blocks
Saveset B - 14,220 Blocks
Kit Applies To: DIGITAL TCP/IP Services for OpenVMS V4.2
OpenVMS VAX V6.2, V6.2-0HF,V7.0 AND V7.1
System/Cluster Reboot Necessary: Yes
Installation Rating: None
Kit Dependencies:
The following remedial kit(s) must be installed BEFORE
installation of this kit:
None
In order to receive all the corrections listed in this
kit, the following remedial kits should also be installed:
None
ECO KIT SUMMARY:
An ECO kit exists for DEC TCP/IP V4.2 on OpenVMS VAX V6.2 through V7.1.
The following sections describe the corrections to each facility.
-------------------------------------------------------------------------------
PREVIOUSLY UNDOCUMENTED BEHAVIOR:
-------------------------------------------------------------------------------
---------------------------------------------------------------
1: PTR 70-5-1032 User buffer length problem
---------------------------------------------------------------
Note:
Because of the following ECO to UCX V4.1, which was
incorporated into the UCX V4.2 base release, user buffer
lengths are now validated and rejected if they exceed 64K:
ECO Y 2-Apr-1997 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.1-12Y
UCX$INTERNET_SERVICES.EXE UCX V4.1-12Y (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.1-12Y (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.1-12Y (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.1-12Y (VAX)
UCX$INETACP.EXE UCX V4.1-12Y
Problem:
System crash on write to a BG device when P2 parameter
(user buffer length) specifies a negative value.
Solution:
Lengths of user buffers were not being properly validated
and as a result, the negative value length was being
misinterpreted as a large positive number. The fix is
to properly validate this length, limiting lengths to
64KB-1 bytes. Lengths greater than this and lengths less
than zero will now cause the I/O request to be terminated
with an SS$_IVBUFLEN status.
Reference:
See the diagram on p. 3-4 of the "UCX System Services
and C Socket Programming Guide". "Transfer Size" gets
a 16-bit field (because VMS QIO interface only provides
for a 16-bit return value on the actual number of bytes
read in the IOSB structure).
---------------------------------------------------------------
2: PTR 70-5-281 LPD Print Symbiont Problem
---------------------------------------------------------------
Problem:
LPD print symbiont inserts LF character after setup
module.
Solution:
The following two logicals have been added for the LPD print
symbiont to fix this:
Defining the logical UCX$LPD_SETUP_NOLF will suppress
the LF characters on a per-system basis.
Defining the logical UCX$LPD_<queue>_SETUP_NOLF will
suppress the LF characters on a per-queue basis.
Reference:
PTR 70-5-281 / CFS.51026 / UTO101399
---------------------------------------------------------------
3: PTR 70-5-773 Documentation Change
---------------------------------------------------------------
Problem:
Backlog parameter is ignored in a call to listen().
Solution:
Fix documentation in UCX System Service & C Socket Programming
Guide.
On p. 6-11 which documents listen(), change:
If a connection request arrives with the queue full (more
than backlog connection requests pending), the client
receives an error with an errno of ECONNREFUSED.
to:
If a connection request arrives with the queue full (more
than backlog connection requests pending), the request is
ignored so that retries inherent in TCP may succeed. If
the backlog has not cleared by the time TCP times out, the
connect() will fail with ETIMEDOUT.
On p. 4-55 which documents QIO IO$_SETMODE/IO$_SETCHAR,
change:
If more connections are received than have been specified,
then the additional connections are rejected.
to:
If more connections are received than have been specified,
then the additional connections are ignored so that retries
inherent in TCP may succeed.
Reference:
PTR 70-5-773 / CFS.55406 / MGO103148
---------------------------------------------------------------
4: PTR 70-5-942 Documentation Change
---------------------------------------------------------------
Problem:
The l_linger time value is ignored when setting the socket
SO_LINGER option.
Solution:
This fix is too complex for an ECO. Documentation changes
need to be made to the System Services and C Socket
Programming Guide to eliminate the references to this
parameter that indicate that it is used.
Documentation:
The following changes need to be made to System Services and
C Socket Programming Guide:
On p. 6-62 delete the paragraph:
SO_LINGER uses a linger structure parameter defined in the
<socket.h> file. This structure specifies the desired
state of the option and the linger interval. The option
value for the SO_LINGER command is the address of a linger
structure. See Section 5.8.4 for a description of the
linger structure.
On p. 6-62 delete the line in the next paragraph:
A timeout period, called the linger interval, is specified
in l_linger.
On p. 5-5 delete the line at the bottom of the page:
l_linger is the number of seconds to linger (the default
is 120, or 2 minutes).
The reason for deleting these paragraphs is because the use
of the l_linger parameter was never implemented and has been
determined to be too risky to implement as an ECO.
Reference:
PTR 70-5-447 / CFS.53296 / MGO102981
QAR 70-5-924
---------------------------------------------------------------
5: PTR 70-5-949 NFS Server Problem
---------------------------------------------------------------
Problem:
NFS: Server is not responding %UCX-E-NORESPOND after a DIR
command from the client.
Solution:
Suggested tuning change: When a directory is very large,
doing a DIR to access the directory may appear to hang on
the client and invoking the nfs server will get the message
"NFS: Not responding". When the directory cache is built
then NFS responds. Section 14.13 of the TCP/IP Services for
OpenVMS/Management describes different changes that can be
done to improve the server performance. Changing
UCX$CFS_CACHE_SIZE is one of the ones that may help.
---------------------------------------------------------------
6: PTR 70-5-792 F$GETDVI Problem
---------------------------------------------------------------
Problem:
F$GETDVI("TT","TT_ACCPORNAM") continues to provide the
"old" name for a renamed host.
Solution:
The INET ACP maintains a small 20-entry cache for IP
address <--> hostname translation to speed acceptance
of incoming telnet and rlogin sessions. This cache
was designed without any means to invalidate renamed
entries, although over time old entries will be pushed
out to make room for new entries. The cache is cleared
only when UCX is started.
To redesign the cache with an invalidation mechanism
when hosts are renamed is beyond the scope of an ECO.
There are some possible avoidances which involve
switching from using hostname (which can change during
the lifetime of a session) to using IP address instead
(which is immutable for the lifetime of a session):
1. Modify the Telnet and/or Rlogin services to
specify /LOG_OPTIONS=(ADDRESS). This will cause
the INET ACP's cache to be bypassed and the IP
address (in dotted-decimal form) to be provided
by TT_ACCPORNAM rather than hostname:
$ write sys$output F$GETDVI("TT","TT_ACCPORNAM")
would now show something like:
Host: 16.20.208.147 Port: 42124
2. Parse SYS$REM_ID for IP address. For Telnet & FTP
the form of this logical is TELNET_<ipaddr-in-hex>
and FTP_<ipaddr-in-hex>, respectively. SYS$REM_ID
does not appear to be used for Rlogin.
---------------------------------------------------------------
7: PTR 70-5-896 COPY/FTP Problem
---------------------------------------------------------------
Problem:
COPY/FTP *.* host::dir, which used to copy all files
to the remote system's "dir" subdirectory in 4.1 SSB,
now fails with "553 dir: Is a directory." (Unix target)
or "550 dir: Access is denied." (VMS target).
Solution:
4.1 SSB was being generous in supporting this ambiguous
remote file specification where "dir" can be interpreted
as being either the name of a directory or the name of a
file. In 4.1 ECO F and 4.2, the COPY/FTP operation was
rewritten to improve support for non-VMS remote systems
and in the process the interpretation was necessarily
changed such that "dir" is treated as a filename as it
would be if the VMS COPY command parsed this.
To restore the original 4.1 SSB behavior would be a step
backwards; however there are viable workarounds for a
variety of target platforms:
Unix: COPY/FTP *.* host::"dir/"
WinNT: COPY/FTP *.* host::"dir\"
VMS: COPY/FTP *.* host::[.dir]
Note that the use of double-quotes is necessary when
specifying a non-VMS pathname style.
---------------------------------------------------------------
8: PTR 70-5-991 Documentation Change
---------------------------------------------------------------
Problem:
Installation errors with UCX V4.2 ECO 2 after OpenVMS
upgrade from 6.2 to 7.1.
Solution:
The DIGITAL TCP/IP Services for OpenVMS Release Notes
manual states in Section 2.3.1 Reinstall UCX After OpenVMS
Upgrade on page 2-2:
If you upgrade from OpenVMS Version 6.2 to OpenVMS
Version 7.0 or 7.1, you must reinstall the UCX software
to ensure the correct image compatibility.
This section should read:
If you upgrade from OpenVMS Version 6.2 to OpenVMS
Version 7.1, you must remove UCX and then reinstall
UCX to ensure the correct image compatibility.
To remove UCX on an Alpha system use PRODUCT REMOVE.
To remove UCX on a VAX system use
SYS$UPDATE:UCX$CLEANUP.COM.
References:
PTR 70-5-991 /
PTR 70-5-975 / CFS.65871 / SOO101227
PTR 70-5-1112 / CFS.69400 / ZPO020971
UCX Notes 6846, 6778
---------------------------------------------------------------
9: PTR 70-5-958 NFS ECO 3 Large File Support
---------------------------------------------------------------
Problem:
ACCVIO when exporting files greater than 2GB. This
prevents using files greater than 2GB and less then 4GB
in size via NFS.
Solution:
Fixed the handling of files that are greater than 2GB
in size. This fix will only handle files up to 4GB-1 in
size.
Reference:
PTR 70-5-958 / CFS.65376 / EVT102774
CAUTION:
The NFS V2 protocol supports file sizes between 2G and 4G
temporarily because NFS V3, which supports much larger
files, is not yet available with TCP/IP Services for
OpenVMS. Therefore, if you upgrade from V4.2 ECO3 to V5.0,
you will lose support for file sizes between 2G and 4G. If
you upgrade to V5.0A or any future V5.0-based maintenance
release, support for file sizes in this range cannot be
guaranteed.
When NFS V3 is available with TCP/IP Services, it will
support both V2 and V3 protocols, depending on what
protocol version is requested by the NFS client. At that
time, files larger than 2G will be usable only by NFS
clients that request the V3 protocol.
---------------------------------------------------------------------------
You can install this update kit on the following OpenVMS systems running
DIGITAL TCP/IP Services for OpenVMS V4.2:
* OpenVMS VAX V6.2 and V7.1.
=========================================================================
Postinstallation Notes.
To complete the installation, do the following:
1. Copy SYS$MANAGER:UCX$RSHD_STARTUP.COM to
SYS$SYSDEVICE:[UCX$RSH].
2. Copy SYS$MANAGER:UCX$REXECD_STARTUP.COM to
SYS$SYSDEVICE:[UCX$REXEC].
3. Copy SYS$COMMON:[SYSMGR]UCX$SNMP_SHUTDOWN.COM to
SYS$SYSDEVICE:[UCX$SNMP]UCX$SNMP_SHUTDOWN.COM.
4. Copy SYS$COMMON:[SYSMGR]UCX$SNMP_STARTUP.COM to
SYS$SYSDEVICE:[UCX$SNMP]UCX$SNMP_STARTUP.COM.
=========================================================================
The following sections describe the corrections to each facility.
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 INSTALL Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 13-MAR-1998 Alpha and VAX
Images:
UCX$VERSIONS.EXE UCX V4.2-21A
Sources:
UCX$CONFIG.COM V4.2-21
Problem:
UCX$CONFIG does not operate in a configuration where the
first network device configured is not the "A" controller.
It assumes there will always be an _EWA0:, if it is to
also configure an _EWB0.
Unfortunately, this particular assumption does not hold
true for all but one of the partitions in a Galaxy
configuration.
Solution:
UCX$EDEV was updated to reflect the use of an EW-class
Ethernet device.
ECO A 13-MAR-1998 Alpha and VAX
Sources:
UCX$SNMP_SHUTDOWN.COM V1.0-02
UCX$SNMP_STARTUP.COM V1.0-02
Problem:
There are inconsistencies in startup/shutdown of
subagents. Also, some process names (e.g., those ending
in hyphen) need to be enclosed in quotation marks so as
not to confuse DCL.
Solution:
Make sure both subagents are handled, and enclose results
of getjpi for PRCNAM in quotes. Also make checking of
privileges, installation and removal of images, and
enable/disable of service consistent between the
procedures.
Add P1 option to control use of privilege setting and
install since some changes in ECO would not work with
autostart invocation of startup which uses non-privileged
UCX$SNMP account. The UCX$SNMP_SHUTDOWN.COM must be run
from a privileged account. The procedure deinstalls UCX
SNMP images and disables the SNMP service.
UCX$SNMP_STARTUP.COM runs in two modes:
Default: This is the non-privileged mode in which the
procedure is called from UCX$STARTUP.COM and for
autostart from the Auxiliary server.
Full: This mode is intended for interactive startup from
a privileged account. Use the command:
$ @SYS$MANAGER:UCX$SNMP_STARTUP FULL
This mode is required if you want to restart SNMP
after running UCX$SNMP_SHUTDOWN without stopping
and restarting UCX.
Reference:
Internal testing.
ECO B 03-MAR-1998 Alpha and VAX
Sources:
UCX$NFSSETUP.COM
UCX$NFSSETUP_HELP_CLIENT.DAT
UCX$NFSSETUP_HELP_SERVER.DAT
UCX$NFSSETUP_HELP_MAIN.DAT
UCX$BINDSETUP.COM
UCX$BINDSETUP_HELP.TXT
Problem/Solution:
Updated UCX$BINDSETUP command procedure.
Included UCX$NFSSETUP command procedure.
ECO B 06-MAR-1998 Alpha and VAX
Sources:
SYS$NET_SERVICES_UCX.COM
Problem/Solution:
Prior versions of this file would complain about
UCX$INET_* logical names being defined if network
services were registered before UCX$STARTUP.COM had been
executed. This is the usual case at OpenVMS system
startup. This ECO allows the registration of TCP/IP
without such errors. This ECO uses the same lexical
case for the host (node) name registration as is used
in the UCX$INET_HOST and UCX$INET_DOMAIN logical names.
Previous versions would uppercase the fully qualified
host name.
ECO B 06-MAR-1998 Alpha and VAX
Sources:
UCX$REXECD_STARTUP.COM
UCX$RSHD_STARTUP.COM
Problem/Solution:
An attempt to $RCP between systems running UCX 4.1 (and
possibly earlier) and UCX 4.2 would fail with the error
%RCP-E-INVRESP.
This error may also occur with two systems running
UCX 4.2 where the SYS$MANAGER:UCX$REXECD_STARTUP.COM
and SYS$MANAGER:UCX$RSHD_STARTUP.COM files have not
been copied to the appropriate directories after the
UCX 4.2 installation.
PLEASE NOTE:
The ECO installation places these two files in SYS$MANAGER:.
To complete the solution, you must manually copy the files to
the proper directories and ensure that file ownership and
protection are correct. For example (please follow local
security policy in setting file protections):
$ copy SYS$MANAGER:UCX$REXECD_STARTUP.COM SYS$SYSDEVICE:[UCX$REXEC]
$ set file/owner=parent/protection=(S:RWE,O:RWED,G:RE,W:RE) -
SYS$SYSDEVICE:[UCX$REXEC]UCX$REXECD_STARTUP.COM;
$ copy SYS$MANAGER:UCX$RSHD_STARTUP.COMSYS$SYSDEVICE:[UCX$RSH]
$ set file/owner=parent/protection=(S:RWE,O:RWED,G:RE,W:RE) -
SYS$SYSDEVICE:[UCX$RSH]UCX$REXECD_STARTUP.COM;
Failure to copy both files or to properly set file
ownership and protection might cause RSH, REXEC,
and/or RCP to either fail or to act inconsistently
depending upon whether the /USER qualifier or proxy is used.
ECO B 13-MAR-1998 Alpha and VAX
Images:
UCX$VERSIONS.EXE UCX V4.2-21B
Problem/Solution:
Corrected to display a patch version properly.
Reference:
Internal testing.
ECO 2 updates:
--------------
ECO C 28-APR-1998 Alpha and VAX
Sources:
UCX$SHUTDOWN.COM
Problem:
When logged in on a system with tn device and trying to
shutdown UCX, the customer gets unrecognized command
messages.
Solution:
Define SAY as SYS$OUTPUT at the top of the UCX$SHUTDOWN.COM
file.
Reference:
PTR 70-5-446 / CFS.53292 / UTO101490
ECO C 28-APR-1998 Alpha and VAX
Sources:
UCX$LPD_STARTUP.COM UCX V4.1-01
UCX$LPD_SHUTDOWN.COM UCX V4.1-01
Problem:
Some UCX$*.COM files are not respecting a customer's
non-default setting for the UCX$LPD_PRINTCAP logical.
The default setting is being restored when LPD is
either restarted or UCX$CONFIG is run.
Solution:
In UCX$LPD_STARTUP.COM, only DEFINE UCX$LPD_PRINTCAP if
it is not already defined. In UCX$LPD_SHUTDOWN.COM, do
not DEASSIGN UCX$LPD_PRINTCAP.
ECO C 28-APR-1998 Alpha and VAX
Sources:
UCX.PDF
Problem:
RFC1442.MY file is in kit but is not copied to the [.SNMP]
subdirectory of UCX$EXAMPLES.
Solution:
Add line to do copy to [INSTALL]UCX.PDF.
Reference:
UCX Note 6380
ECO D 24-SEP-1998 Alpha and VAX
Sources:
UCX$CONFIG.COM
Images:
UCX$VERSIONS.EXE UCX V4.2-21D
Problem:
Pointing to 127.0.0.1 as BIND server will give you the
following error:
UCX> show host /server=127.0.0.1
%UCX-W-BIND_NOSERVNAM, Server with address 127.0.0.1 is not
responding
%UCX-E-BIND_NOSERVERS, Default servers are not available
%UCX-W-NORECORD, Information not found
-UCX-E-BIND_NOSERVERS, Default servers are not available
Solution:
Modify the UCX$CONFIG.COM to add the entry for LOCALHOST.
Reference:
QAR 30-2-546
ECO E 16-OCT-1998 Alpha and VAX
Sources:
UCX$SNMP_STARTUP.COM
Problem:
Undesired purges could occur in SYS$MANAGER.
Solution:
Comment out the following lines from UCX$SNMP_STARTUP.COM:
$ SAVE=5+2*F$GETSYI("CLUSTER_NODES")
$ PURGE/KEEP='SAVE'
Reference:
None.
ECO 3 updates:
--------------
ECO F 29-JAN-1999 Alpha and VAX
Sources:
UCX$CONFIG.COM
Problem:
INSTALL: @sys$manager:ucx$config all enable does not
configure mount in the configuration database.
Solution:
The UCX$CONFIG.COM file was changed to disable and
enable mount when nfs is being disabled or enabled.
Reference:
PTR 70-5-932 / CFS.64690 / BRO101311
ECO G 08-APR-1999 Alpha and VAX
Sources:
UCX$RSHD_STARTUP.COM
Problem:
Some VAXeln clients will experience difficulty initiating
rsh commands on OpenVMS system due to a change introduced
in UCX V4.0 ECO #1.
Solution:
This change adds a comment to the UCX$RSHD_STARTUP.COM
command procedure showing how to avoid this problem if
necessary.
Reference:
PTR 70-5-942 / CFS.65126 / KAOQB0770
ECO H 07-JUL-1999 Alpha and VAX
Images:
UCX$UCP_HELP.HLB
Problem:
UCX SET SERVICE/ACCEPT=HOST=(*.domain) yields
UCX-E-NOWILD error. On-line UCX Help indicates
that wildcards can be used for this operation.
Solution:
Wildcard use with /ACCEPT and /REJECT lists is
only supported for NOHOSTS= and NONETWORKS= to
delete all the entries that had been set up on
the respective list with prior HOSTS= or
NETWORKS= operation(s) (in which wildcards are
not permitted).
Fixed the on-line help for the SET SERVICE and
SET COMMUNICATIONS options /ACCEPT and /REJECT
to clarify this.
Reference:
PTR 70-5-882 / CFS.63089 / HPAQA08HR / UCX Note 6582
ECO H 07-JUL-1999 Alpha and VAX
Problem:
Installation errors with UCX V4.2 ECO 2 after OpenVMS
upgrade from 6.2 to 7.1.
Solution:
If you upgrade from OpenVMS Version 6.2 to OpenVMS Version
7.1, you must remove UCX and then reinstall UCX to ensure
the correct image compatibility.
To remove UCX on an Alpha system use PRODUCT REMOVE. To
remove UCX on a VAX system use SYS$UPDATE:UCX$CLEANUP.COM.
References:
PTR 70-5-991
PTR 70-5-975 / CFS.65871 / SOO101227
UCX Notes 6846, 6778
ECO 5 updates
--------------
ECO I 21-DEC-2000 Alpha and VAX
Sources:
UCX$CONFIG.COM
Problem:
UCX$CONFIG's service menu displays incorrect menu options
when a service is enabled on both specific and cluster nodes.
Solution:
Backport the fix for TCPIP_BUGS Note 931 (UCX V5.1), which was
provided for us by Randy Black.
Reference:
PTR 30-2-588 / TCPIP_BUGS Note 931
ECO K 29-DEC-2000 Alpha and VAX
Sources:
UCX$CONFIG.COM
Problem:
If in UCX$CONFIG or TCPIP$CONFIG you go into 1-"Core Environment"
and then 4-"Interfaces" and change the internet address to a
different subnet address, the question "Enter broadcast mask for
xxxx" shows the old "Broadcast Address" and does not default to
the new "Broadcast Address". This often means that customers end
up with the wrong "Broadcast Address". This problem also exists
with the network mask default.
Solution:
Make sure the default values for the network mask and broadcast
mask are recalculated after a new IP address is entered.
Reference:
PTR 30-2-592
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 KERNEL Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 15-JAN-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21A
UCX$INTERNET_SERVICES.EXE UCX V4.2-21A (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21A (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21A (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21A (VAX)
UCX$INETACP.EXE UCX V4.2-21A
Problem:
Deassigning one channel to a particular device caused
any pending attention ASTs to be canceled, even
those of other channels.
Solution:
Flush only attention ASTs upon the final channel
deassign operation, when the reference count drops to zero.
Reference:
PTR 70-5-371 / CFS.52150 / EVT102249
ECO B 23-JAN-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21B
UCX$INTERNET_SERVICES.EXE UCX V4.2-21B (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21B (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21B (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21B (VAX)
UCX$INETACP.EXE UCX V4.2-21B
Problem:
IP Multicast support was compromised in V4.1 ECO W. IGMP
messages were no longer being sent, and the SO_BROADCAST
option was required in order to send Multicast datagrams.
Solution:
Skip several broadcast-related checks in the case
of Multicast data. Ensure that IGMP messages are sent,
and that other Multicast packets are looped back upon
transmit for other sockets on the local host.
Note that packets larger than the MTU are still not
looped back, but this should be a highly unusual case.
Reference:
PTR 70-5-453 / CFS.53405 / SOO101007
ECO C 25-Feb-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21C
UCX$INTERNET_SERVICES.EXE UCX V4.2-21C (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21C (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21C (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21C (VAX)
UCX$INETACP.EXE UCX V4.2-21C
Problem:
1. In some circumstances, the active service counter
was decremented below zero, resulting in an inability
to
accept further connections.
2. Termination AST's for created server processes were
missed, leading to inaccurate service counts and
occasional RWMBX hangs.
Solution:
1. Test to avoid decrementing this counter below zero.
2. Rather than queuing an AST each time a server process
is started, queue only one. When it triggers, queue
another.
Reference:
PTR 70-5-656 / CFS.56956 / STLK10112
ECO C 25-Feb-1998 Alpha V7.x only
Images:
UCX$TRACE.EXE UCX V4.2-21C
UCX$INET_ROUTING.EXE UCX V4.2-21C
Problem:
Wrong image ID.
Solution:
Image was rebuilt with correct ID.
Reference:
Internal report.
ECO 2 updates:
--------------
ECO D 10-APR-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21D
UCX$INTERNET_SERVICES.EXE UCX V4.2-21D (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21D (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21D (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21D (VAX)
UCX$INETACP.EXE UCX V4.2-21D
Problem:
SW "LAND ATTACK" hangs VMS on Alpha and VAX (also called
Denial of Service Attack). The machine goes into an
infinite loop and consumes all available cpu cycles. The
listen port under attack becomes completly unresponsive
until the machine is rebooted.
Solution:
Fixed.
Reference:
PTR 70-5-635 / CFS.56529 / MGO103248
ECO E 17-JUN-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2 21E
UCX$INTERNET_SERVICES.EXE UCX V4.2-21E (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21E (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21E (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21E (VAX)
Problem:
A UCX program sends UDP packets to the limited broadcast
address 255.255.255.255, incorrectly sends to
{<Network-number>, 255}. This can be an issue for
customers with multiple subnets on the same wire.
Solution:
Enhance UCX to behave similarly to Digital Unix, that is,
the conditions for broadcasting to the limited broadcast
address are the same two that apply to Digital Unix:
(1) The socket must be bound to a local interface, and
(2) The SO_DONTROUTE socket option must be set.
In an emergency the fix can be disabled by clearing the
limited_bcast longword.
Reference:
PTR 70-5-440 / CFS.53151 / EVT102292
ECO F 24-JUN-1998 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21F
Problem:
System can crash when SSRVEXCEPT while processing an
incoming RSH connection.
Solution:
In routine INETACP_GET_USER_INFO, if we get an error
condition, we wind up calling INETACP_SERV_ACCEPT_SYS_ERROR,
which finally winds up in routine INETACP_SERV_ACCEPT_CLOSE,
which expects R5 to be pointing at the acceptor UCB.
Therefore, before calling INETACP_SERV_ACCEPT_SYS_ERROR,
refresh R5.
Reference:
None.
ECO G 20-JUL-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2 21G
UCX$INTERNET_SERVICES.EXE UCX V4.2 21G (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21G (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21G (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21G (VAX)
Problem:
Configuring an interface when OpenVMS system global,
NET$AR_LAN_VECTOR has not been initialized causes a
system crash.
Solution:
Test for a valid value in NET$AR_LAN_VECTOR before using
it.
Reference:
None.
ECO H 27-JUL-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21H
UCX$INTERNET_SERVICES.EXE UCX V4.2 21H (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21H (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21H (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21H (VAX)
UCX$INETACP.EXE UCX V4.2-21H
Problem:
Unable to make contact with cluster alias.
Solution:
The solution was to update the cluster lock name before
requesting it, in case multiple ARP-based cluster aliases
are in simultaneous use.
Reference:
PTR 70-5-773 / CFS.60036 / BCGM50435
ECO K 31-AUG-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21K
UCX$INTERNET_SERVICES.EXE UCX V4.2 21K (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21K (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21K (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21K (VAX)
UCX$INETACP.EXE UCX V4.2-21K
Problem:
UCX 4.1 ECO8 VMS 7.1 MBUF Large Buffer leak; around 180
DATA type buffers are lost each day. Customers must
disruptively shutdown and restart UCX to clear the
problem.
Solution:
Free the mbuf chain in the paths in tcp_usrreq() that were
found which could allow mbufs to leak.
Reference:
PTR 70-5-668 / CFS.57212 / EVT102482
ECO 3 updates:
--------------
ECO L 03-OCT-1998 Alpha V7.1 only
Images:
UCX$BGDRIVER.EXE UCX V4.2-21L
Problem:
Using UCX SET NOINTERFACE with PPP channels is risky
and can lead to system crashes.
Solution:
Prevent a PPPDEF struct from being reused before it has
finished being shut down.
Reference:
PTR 70-5-843 / CFS.62107 / HPAQ81B97
ECO M 09-NOV-1998 Alpha V7.1 only
Images:
UCX$BGDRIVER_SEC.EXE UCX V4.2-21M
Problem:
Errors occur when building the security driver,
UCX$BGDRIVER_SEC.EXE. Need a procedure and/or
fix to avoid these errors.
Solution:
Problem was found in UCX$BGDRIVER_PA_V70_SEC.OPT
This file was modified to correct the problem.
Reference:
PTR 70-5-246 / CFS.48748 / EVT102108
ECO N 25-NOV-1998 Alpha V7.1 only
Images:
UCX$BGDRIVER_SEC.EXE UCX V4.2-21N
Problem:
Errors still occur when building the security
driver, UCX$BGDRIVER_SEC.EXE. Need a procedure
and/or fix to avoid these errors.
Solution:
Changed ipforward_rt and iproute to IPFORWARD_RT
and IPROUTE (lower case to upper case) in the
second location of UCX$BGDRIVER_PA_V70_SEC.OPT.
The first attempt at this fix (70-5-246) only
changed the first location to upper case.
Reference:
QAR 30-2-564
PTR 70-5-246 / CFS.48748 / EVT102108
ECO O 03-DEC-1998 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21O
Problem:
When a node is configured as a cluster alias, UCX$FTPD
server process does not shut down as it should after
some specified idle period. This results in very large
UCX$FTPD.LOG log files.
Solution:
Make timer identifiers non-zero, and unique, so that
canceling one timer will not cancel all timers.
Reference:
PTR 70-5-901 / CFS.63677 / TKTBA4813
ECO P 11-DEC-1998 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21P
UCX$INTERNET_SERVICES.EXE UCX V4.2-21P (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21P (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21P (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21P (VAX)
Problem:
Frequent system crashes with heap corruption due to bad
handling of IP fragments that are received with partial
TCP headers.
Solution:
Correctly handle these types of fragments.
Reference:
PTR 70-5-908 / CFS.63957 / BCSMB0MQT
PTR 70-5-1036 / CFS.67219 / HPAQ40HMQ
PTR 70-5-1002 / CFS.66453 / BCSM30D60
PTR 70-5-1124 / CFS.69750 / HPAQ71M91
PTR 70-5-1133 / CFS.70163 / BCPM80L6B
PTR 70-5-1141 / CFS.70354 / BCGM811R4
PTR 70-5-1212 / CFS.72625 / BCPMB180B
QAR 30-2-566
ECO Q 21-JAN-1999 VAX only
Images:
UCX$TRACE.EXE UCX V4.2-21Q
Problem:
TCPIPTRACE does not display any trace-output on OpenVMS
V6 system with large amounts of physical memory installed
(2+ GB).
Solution:
Change the number of bits used to pick up the PFN
(Physical Frame Number) from the Page Table Entry to
include extended addressing.
Reference:
PTR 70-5-530 / CFS.54750 / UTO101543
ECO R 28-JAN-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21R
UCX$INTERNET_SERVICES.EXE UCX V4.2-21R (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21R (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21R (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21R (VAX)
Problem:
Port 6000 (DECwindows server port) failed when
there was no valid UCX license loaded.
Solution:
Properly defined the listener socket for port 6000
prior to execution of the "no UCX license" code path.
Reference:
PTR 70-5-947 / CFS.63427 / MGO103818
ECO S 02-MAR-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21S
UCX$INTERNET_SERVICES.EXE UCX V4.2-21S (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21S (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21S (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21S (VAX)
Problem:
UCX$BGDRIVER crashes with SSRVEXCEPT when debugger
watchpoints are set in an application using TCP/IP.
Crash occurred during the processing of an accept().
Solution:
Reprobe the peername output parameter buffer before
writing to it.
Reference:
PTR 70-5-963 / CFS.65555 / SQO100563 / UCX Note 6805
DECC Note 2775
ECO T 12-MAR-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21T
UCX$INTERNET_SERVICES.EXE UCX V4.2-21T (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21T (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21T (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21T (VAX)
Problem:
1. System crash in sbappend, called from SOSEND_LOOPBACK.
2. Leakage of large mbufs.
Solution:
1. Test for existence of a pointer and deallocate an
allocated buffer chain if pointer no longer exists.
2. Add cleanup code to two error paths in the BGDRIVER to
deallocate partial allocations of mbufs.
Reference:
PTR 70-5-993 / CFS.66202 / MGO104056
PTR 70-5-595 / CFS.55795 / HPAQB165D
PTR 70-5-668 / CFS.57212 / EVT102482
ECO U 07-MAY-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21U (Alpha)
UCX$BGDRIVER_SEC.EXE UCX V4.2-21U (Alpha)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21U (VAX)
UCX$INTERNET_SERVICES.EXE UCX V4.2-21U (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21U (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21U (VAX)
Problem:
VAX System crash in UCX$INTERNET_SERVICES, PGFIPLHI. Two
parameters from a user data structure were not saved in
a register and subsequently were swapped out of main
memory.
Solution:
Save the two user parameters in register R1 and access
them from there at higher IPL.
Reference:
PTR 70-5-1033 / CFS.67067 / TPOB32222
PTR 70-5-1140 / CFS.70337 / BRO85831
ECO V 04-JUN-1999 Alpha and VAX
Problem:
The l_linger time value is ignored when setting the
socket SO_LINGER option.
Solution:
We have determined that the fix for this problem would be
too risky and too complex for an ECO. The Release Notes
for V4.2 ECO 3 will be updated to indicate the necessary
changes that need to be made to System Services and C
Socket Programming Guide to eliminate the references to
this parameter that indicate that it is used.
Reference:
QAR 70-5-924
PTR 70-5-447 / CFS.53296 / MGO102981
ECO W 08-JUN-1999 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21W
Problem:
ucx$inet_acp consumes 100% cpu time in scsi cluster
environment.
Solution:
Prevent corruption in the interface chain.
Reference:
PTR 70-5-1000 / CFS.66288 / TKTB25143
ECO X 16-JUN-1999 Alpha only
Images:
UCX$BGDRIVER.EXE UCX V4.2-21X
UCX$BGDRIVER_SEC.EXE UCX V4.2-21X
Problem:
PPP: ASN device staying assigned. Attempt to free line
crashes system. Continuation of 70-5-843.
Solution:
Added code to check for in-progress cleanup of a PPP line,
and handle this better.
Reference:
PTR 70-5-976 / CFS.65846 / HPAQ20R56
ECO Y 17-JUN-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21Y
UCX$INTERNET_SERVICES.EXE UCX V4.2-21Y (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21Y (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21Y (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21Y (VAX)
Problem:
System crash during UCX$SHUTDOWN with INCONSTATE,
Inconsistent I/O data base q.
Solution:
Check if thread owns the VMS Communications Interface Block
before closing it down.
Reference:
PTR 70-5-1032 / CFS.67160 / ZPO010358
ECO Z 25-JUN-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21Z
UCX$INTERNET_SERVICES.EXE UCX V4.2-21Z (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21Z (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21Z (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21Z (VAX)
Problem:
UCX small buffers are never deallocated when creating and
deleting SLIP interfaces (actually any multicast-capable
interfaces). After some days the max value is reached.
Solution:
Deallocate the multicast address buffers that get
allocated each time an interface is defined.
Reference:
PTR 70-5-676 / CFS.57541 / EVT102495
ECO AA 30-JUN-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AA
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AA (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AA (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AA (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21AA (VAX)
Problem:
System hang or CPUSPINWAIT crash occurs on Pathworks
shutdown.
Solution:
An optimization was introduced to the BGdriver a few
years ago specifically for Pathworks to coalesce
fragmented UDP packets received from the network. This
optimization failed to adjust the socket's accounting of
associated mbufs when a fragmented packet was coalesced,
causing an infinite loop to occur when the socket was
closed. Fixed to properly account for coalesced mbufs.
Reference:
PTR 70-5-1074 / CFS.67243 / BCGM40KS1
PTR 70-5-1092 / CFS.68867 / MGO13335A
ECO AA 01-JUL-1999 Alpha and VAX
Problem:
F$GETDVI("TT","TT_ACCPORNAM") continues to provide the
"old" name for a renamed host.
Solution:
The INET ACP maintains a small 20-entry cache for IP
address <--> hostname translation to speed acceptance
of incoming telnet and rlogin sessions. This cache
was designed without any means to invalidate renamed
entries, although over time old entries will be pushed
out to make room for new entries. The cache is cleared
only when UCX is started.
To redesign the cache with an invalidation mechanism
when hosts are renamed is beyond the scope of an ECO.
There are some possible avoidances which involve
switching from using hostname (which can change during
the lifetime of a session) to using IP address instead
(which is immutable for the lifetime of a session):
1. Modify the Telnet and/or Rlogin services to
specify /LOG_OPTIONS=(ADDRESS). This will cause
the INET ACP's cache to be bypassed and the IP
address (in dotted-decimal form) to be provided
by TT_ACCPORNAM rather than hostname:
$ write sys$output F$GETDVI("TT","TT_ACCPORNAM")
would now show something like:
Host: 16.20.208.147 Port: 42124
2. Parse SYS$REM_ID for IP address. For Telnet & FTP
the form of this logical is TELNET_<ipaddr-in-hex>
and FTP_<ipaddr-in-hex>, respectively. SYS$REM_ID
does not appear to be used for Rlogin.
Reference:
PTR 70-5-792 / CFS.60706 / EVT102608 / UCX Notes 4826, 5761
ECO AB 15-JUL-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AB
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AB (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AB (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AB (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21AB (VAX)
Problem:
UCX does not respect the socket buffer quota
when TCP LOOPBACK is enabled
Solution:
Test the receive side (so$t_rcv) of the receive socket (R0)
instead of the send side (so$t_snd) of the receive socket (R0)
Reference:
PTR 70-5-727 / CFS.59009 / EVT102541
ECO AC 4-AUG-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AC
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AC (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AC (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AC (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21AC (VAX)
Problem:
The case of "No valid UCX license, but still need port 6000 to
work for DECwindows" still failed after the fix for 70-5-947
which went into the kernel in ECO R.
Solution:
Corrected a register miss-compare. Code previously placed port
number in r0, but compared port 6000 to r1 for above case.
Reference:
QAR 30-2-596
PTR 70-5-947 / CFS.63427 / MGO103818
ECO AD 4-AUG-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AD
UCX$INTERNET_SERVICES.EXE UCX V4.2 21AD (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AD (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AD (VAX)
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21AD (VAX)
Problem:
Cannot telnet/ping after restart of ucx from ucx$config.
The interfaces do not get defined. This problem started
after installing patch containing PTR 70-5-1032 fix.
Solution:
The ECO G fix to deal with NET$AR_LAN_VECTOR not being
defined was defective -- and it actually didn't get
built until ECO Y was built to fix 70-5-1032.
Corrected that fix to properly close the LAN port upon
UCX shutdown.
References:
PTR 70-5-1091 / CFS.68860 / ZPO018753
ECO 4 updates
--------------
ECO AE 20-AUG-1999 VAX only
Images:
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AE
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AE
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AE
UCX$INTERNET_SERVICES_V6_SEC.EXE UCX V4.2-21AE
Problem:
After update from UCX 4.1 ECO 9 to 4.2 ECO 3, the system crashed
during Pathworks startup. This problem was introduced with the fix
for 70-5-1074.
Solution:
Save register R3 on the stack *before* clearing it.
Reference:
PTR 70-5-1134 / CFS.70187 / MG044828A
PTR 70-5-1155 / CFS.70901 / UTO29981A
PTR 70-5-1153 / CFS.70878 / HPAQ90F9R
ECO AF 16-SEP-1999 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AF
Problem:
System crash INVEXCEPTN after enabling BOOTP
Solution:
Load r2 with INETCB expected by INETACP_STOP_SERVICE_1() routine.
Reference:
PTR 70-5-1109 / CFS.69310 / BRO78175A
ECO AG 24-SEP-1999 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AG
UCX$BGDRIVER_SEC.EXE UCX V4.2-21AG
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AG (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AG (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AG (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21AG (VAX)
Problem:
UDP applications can receive SS$_REJECT error due to ICMP
Port Unreachable error caused by an entirely unrelated
application. The ICMP port unreachable error is being
reported to *all* sockets bound to the local interface
receiving the error, not just the socket tickling the port
that resulted in the error.
Solution:
UCX is based on older Berkeley code which was not designed
to discriminate the delivery of ICMP errors based on port
number, which this particular error is best suited for.
(TCPIP V5 is much more modern and has such code.) Rather
than redesign UCX, which would be risky at this stage of
its life, UCX was modified to simply not deliver an ICMP
Port Unreachable error to any socket. Since UDP is an
inherently unreliable protocol, UDP applications can not
depend on receiving such error indications anyway.
Reference:
PTR 70-5-1142 / CFS.70731 / UVO23151
ECO AH 29-OCT-1999 Alpha and VAX
Images:
UCX$BGDRIVER UCX V4.2-21AH
UCX$BGDRIVER_SEC.EXE UCX V4.2-21AH
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AH (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AH (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AH (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21AH (VAX)
Problem:
System crashed with INVEXCEPTN @UCX$BGDRIVER due to a regression
caused by fix PTR 70-5-676.
Solution:
Add back the line of code believed to be obsolete during 70-5-676
fix. Once this line was added back, it was necessary to add
reference count to the RTI buffer to avoid any future crashes during
its deallocation.
Reference:
PTR 70-5-1167 / CFS.71330 / MGO62962A
PTR 70-5-1252 / CFS.73275 / SQO49493A
PTR 70-5-1255 / CFS.73323 / BRO01846A
PTR 70-5-1220 / CFS.72788 / HPAQB1QKC
PTR 70-5-1310 / CFS.74612 / STL014171
ECO AI 3-JAN-2000 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AI
Problem:
If TFTP service is configured with an accept or reject
host/network list, and the very first TFTP connection
comes from a rejected host, all subsequent TFTP requests
are rejected, even from acceptable hosts. A converse
situation also exists: if the first TFTP connection
comes from an accepted host, TFTP will accept all further
requests, even those from rejected hosts.
Solution:
The first problem, a denial-of-service issue, occurred
because the INETACP was leaving the rejected TFTP request
in the TFTP service's receive socket buffer, where it
was reprocessed (and re-rejected) for every new request
that came in. The INETACP now clears rejected requests
from the socket.
The second problem, a security concern, occurs because
the INETACP spawns a TFTP process to service all future
TFTP requests when the first acceptable request comes in,
and it passes off the TFTP service socket to that process.
Accept/Reject processing only occurs within the INETACP
-- there is no code in TFTP to do this itself. This is a
design limitation of the INETACP and TFTP service which is
not fixable within the scope of an ECO. For sites that
consider this a serious security issue, two workarounds
exist: (1) disable the TFTP service entirely, or (2)
configure UCX to reject *all* communications from a
rejected host/network (using SET COMM/ACCEPT/REJECT)
instead of configuring it on a per-service basis.
Reference:
PTR 70-5-1136 / CFS.70242 / MGO44648A
ECO AK 7-JAN-2000 Alpha and VAX
Images:
UCX$BGDRIVER UCX V4.2-21AK
UCX$BGDRIVER_SEC.EXE UCX V4.2-21AK
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AK (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AK (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AK (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21AK (VAX)
Problem:
System crashed with INVEXCEPTN when Pathworks is shut down
to stop runaway UCX$PWIPACP_*.LOG, which shows errors like:
... *** sys$qio Accept failed ***. channel 272 error 676
... *** sys$qio Accept failed ***. channel 256 error 44
... *** sys$qio Accept failed ***. channel 256 error 44
which repeats ad nauseum. (The problem is not necessarily
unique to Pathworks, however.)
Solution:
This is regression from 70-5-963 fix introduced in 4.2-21S.
The probing of the output parameter buffer was misplaced
exposing a hole in which a listen socket could end up being
associated with more than one channel (UCB). Corrected by
relocating that fix to a safer place, eliminating the hole.
Reference:
PTR 70-5-1189 / CFS.72146 / Req Id: BCGMA1RHT / UCX Note 7321
PTR 70-5-1229 / CFS.72936 / Req Id: DEKQB0018 / UCX Note 7402
PTR 70-5-1250 / CFS.73238 / Req Id: BCGMC0TH1
PTR 70-5-1254 / CFS.73301 / Req Id: HPAQC12K5
PTR 70-5-1257 / CFS.73341 / Req Id: BCGMC14C3
PTR 70-5-1304 / CFS.74500 / Req Id: MGO22773A
PTR 70-5-1321 / CFS.74790 / Req Id: HPAQ21C1X
PTR 70-5-1278 / CFS.73853 / Req Id: BCSM10QS4
ECO AL 14-JAN-2000 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AL
Problem:
RLOGIN server can hang during user proxy validation in
rare circumstance.
Solution:
This problem was diagnosed a while back as being caused
by the INET ACP calling $GETUAI system service while in
Kernel mode, leading to a deadlock situation in VMS/RMS.
The problem was fixed in TCPIP V5 but not brought back
to V4.x. Backported V5 fix to V4.x such that $GETUAI is
called in User mode.
Also corrected several incomplete or possibly corrupt
OPCOM messages produced by the INET ACP in this and
several other Rlogin rejection circumstances.
Reference:
PTR 70-5-1242 / CFS.73090 / Req Id: BCGMC0GW4
PTR 70-5-214 / CFS.50804 / Req Id: UTO101394 / UCX Note 5645
PTR 70-5-953 / CFS.65313 / Req Id: GOZ101070
ECO AM 8-FEB-2000 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AM
Problem:
UCX$INET_ACP process enters MUTEX state because
Timer Queue Limit is reached.
Solution:
Save the address to the cluster IFNET data structure in R3,
not R2, which can be overwritten in INETACP_ACP_LINK().
Reference:
PTR 70-5-1227 / CFS.72868 / Req Id: MGO91408A / UCX Note 7380
ECO AN 14-MAR-2000 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AN
Problem:
UCX$INET_ACP process enters MUTEX state because Timer Queue Limit
is reached.
Solution:
70-5-1227 fix was incomplete and failed to address the full problem,
which was introduced by 70-5-901 fix in 4.2 ECO 3.
Use only one timer ID since there should only be one cluster timer
running.
Reference:
PTR 70-5-1321 / CFS.74790 / Req Id: HPAQ21C1X
ECO AO 25-MAR-2000 VAX Only
Images:
UCX$INETACP.EXE V4.2-21AO
Problem:
RLOGIN fails to a VAX server running pre-release V4.2 ECO 4
kit. The client hangs, and on the server the INETACP process
is hung preventing further connections. VAX server must be
rebooted to clear.
Solution:
A piece of the 70-5-1242 fix backported from V5.0 was incorrect
given how another piece of that fix was backported from C to
Macro32. Corrected a CALLS instruction to a JSB. (On Alpha
these Macro32 instructions end up doing the same thing so the
problem is benign for Alpha.)
Reference:
QAR 30-2-609
ECO AP 25-MAR-2000 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AP
Problem:
The BGdriver goes into an infinite loop if there are no
available ports, causing a system hang or crash.
Solution:
Backport the TCP/IP V5.0A solution. Run through the list
of all the ports once. If no ports are available, exit
with an error (EADDRINUSE).
Reference:
PTR 70-5-1352 / CFS.75355 / Req Id: SQO84274A
ECO 5 updates
--------------
ECO AQ 18-JUL-200 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AQ (Alpha)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AQ (VAX)
Problem:
Socket passed to tcp_ctloutput() contained NULL so_pcb field,
which caused the system to crash.
Solution:
Backport V5.0A fix to check for non-NULL so_pcb field before
reference and return an error if it is NULL. Also initialize
the placeholder for the IRP address, which contains the so_pcb
field. This part was also missing in V5.x.
Reference:
PTR 70-5-1398 / CFS.76411 / Req Id: UVO54445
ECO AR 2-AUG-200 Alpha and VAX
Images:
UCX$BGDRIVER UCX V4.2-21AR
Problem:
BGDRIVER crashed due to mbuf chain not being linked properly.
Solution:
Relink the mbuf chain properly when removing a 0-length mbuf
from the chain.
Reference:
PTR 70-5-1400 / CFS.76436 / Req Id: STL052188
ECO AS 22-NOV-200 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AS (Alpha only)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AS (VAX only)
UCX$INETACP.EXE UCX V4.2-21AS
Problem:
There is a synchronization hole for an incoming UDP datagram to
be replayed twice -- first successfully, then again through a
failure path causing a system crash.
Solution:
Close the synch hole by removing the function for the dequeuing of
the REQCB from the BGdriver and place this function in the INETACP.
Reference:
PTR 70-5-1511 / CFS.79236 / Req Id: ISO100625
ECO AT 22-JAN-200 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AT
UCX$BGDRIVER_SEC.EXE UCX V4.2-21AT
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AT (VAX)
UCX$INTERNET_SERVICES_V6.EXE UCX V4.2-21AT (VAX)
UCX$INTERNET_SERVICES_SEC.EXE UCX V4.2-21AT (VAX)
UCX$INTERNET_SERVICES_SEC_V6.EXE UCX V4.2-21AT (VAX)
Problem:
Excessive large buffer consumption can occur when sending
small UDP datagrams via loopback interface. This code path
is not enforcing the Total Buffer Limit socket buffer quota.
Solution:
Properly enforce the Total Buffer Limit socket buffer quota.
Reference:
PTR 70-5-1549 / CFS.80201 / Req Id: BCSMB0P98
ECO AU 12-APR-200 Alpha
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AU
UCX$INETACP.EXE UCX V4.2-21AU
Problem:
The BGDRIVER crashes when terminating an I/O request.
Solution:
Within the RCV_XMT_COMMON_PREPROCESSING routine, move code from one
place, where the IRP fields were only conditionally initialized, to
the beginning of the routine, where the fields are sure to be
initialized.
Reference:
PTR 70-5-1616 / CFS.82268 / Req Id: FNO26391A
PTR 70-5-1634 / CFS.82536 / Req Id: MGO65957A
ECO AV 20-APR-200 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AV
UCX$INETACP.EXE UCX V4.2-21AV
Problem:
Crash in INET_SEL_BUILD_PAR_LIST.
Solution:
Backport modifications from V5.1's INET_SEL_INIT_SYS_LIST()
routine to V5.0A's INET_SEL_BUILD_PAR_LIST() routine to properly
check that every entry on the list is in fact a BG UCB.
Reference:
PTR 70-5-1636 / CFS.82546 / Req Id: BCPM30MQP
ECO AW 23-APR-200 Alpha and VAX
Images:
UCX$BGDRIVER.EXE UCX V4.2-21AW Alpha
UCX$INTERNET_SERVICES.EXE UCX V4.2-21AW VAX
Problem:
Extra initial blank line is output from RSH and REXEC server.
Solution:
Fixed flawed code that had been designed to remove this extra
line feed from the beginning of RSH/REXEC server output.
Reference:
PTR 70-5-1263 / CFS.73456 / Req Id: BCGMC1G1G / UCX Note 7508
ECO AX 26-APR-200 Alpha and VAX
Images:
UCX$INETACP.EXE UCX V4.2-21AX
Problem:
Shutting down UCX V4.2 ECO 4 results in a SSRVEXCEPT crash in the
INETACP. Customer reported experiencing similar crash 4 times
within a few weeks.
Solution:
The INETACP needs to be more robust and check for Telnet having
been shut down prior to processing a INETACPF$C_CREATE_SESSION
request.
Reference:
PTR 70-5-1591 / CFS.81489 / Req Id: SQO59406A
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 INET Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 09-FEB-1998 Alpha and VAX
Images:
UCX$INETDRIVER.EXE UCX V4.2-21A
Problem:
I/O cancel does not return the OpenVMS error
SS$_CANCEL as does TGV INETDRIVER.
Solution:
Added a macro to all return code translations to check
for a valid UNIX exit code and, in the absence of one,
return the OpenVMS error code. This code should address
any problems with exit codes.
Reference:
None.
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 IPC Images
---------------------------------------------------------------------------
ECO 2 updates:
--------------
ECO A 28-MAY-1998 Alpha only
Images:
UCX$IPC_SHR.EXE UCX V4.2-21A
Problem:
Alpha customers using Alignment Fault Reporting (AFR)
to fine-tune their application performance are thwarted
if their application uses gethostbyname(), because the
application will no longer work.
Solution:
Fixing the source of the alignment faults would likely
require modifying the database format, which is not
feasible to do in an ECO and could be very risky.
(Alignment faults are only a performance issue, their
occurrence should not break any functionality.) Rather,
we corrected the malformed code to properly revert the
LIB$SIG_TO_RET exception handler in ucx$gethostbyname()
prior to its calling into the UCX$ACCESS_SHR.EXE library
where the alignment faults occur.
Reference:
PTR 70-5-672 / CFS.57336 / UVO105808
PTR 70-5-245 / CFS.50501 / UVO105305
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 TELNET Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 29-JAN-1998 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21A
Problem:
System crashed in OpenVMS routine EXE$TIMEOUT while
servicing a corrupt fork and wait queue.
Solution:
The major reason this problem occurred is that OpenVMS
changed the value of the name of a bit position in a TTY
UCB (such as a TNDRIVER UCB) in OpenVMS V6.2. In
particular, symbol TTY$V_FD_BUSY was defined as bit 8 in
OpenVMS versions prior to V6.2, and it was redefined to
be bit 10 in V6.2.
The TNDRIVER distributed for all VAX platforms uses the
old definition and for Alpha platforms running, V6.2 of
OpenVMS, the TNDRIVER built for V6.2 uses the old
definition. The result is that the wrong bit was being
tested on systems where the definitions were out of
synch. The solution was to devise a new test of the
condition that works on all platforms.
Reference:
PTR 70-5-407 / CFS.52568 / HPAQ70BDE
ECO 2 updates:
--------------
ECO B 05-MAY-1998 Alpha and VAX
Images:
UCX$TELNET.EXE UCX V4.2-21B
Problem:
Using the FIND key in TN3270 after connecting to an IBM
system can grant the user OPER privilege in DCL
subprocess back on the VMS host.
Solution:
Change STESCRKBD.B32::SPAWN(), wrapping its LIB$SPAWN()
call with calls to the reset_privs() routine introduced
in 1995, similar to how TELNET$SPAWN() now works.
Reference:
70-5-712 / CFS.58556 / STLQ34027
ECO 3 updates:
--------------
ECO C 19-OCT-1998 Alpha and VAX
Images:
UCX$TELNET.EXE UCX V4.2-21C
Problem:
ATTN key not working after first usage. The lack of
this functionality prevents users from being able to
switch between multiple sessions on the IBM host,
impacting their performance tremendously.
Solution:
Directly cause IAC-BREAK to be sent on the wire without
queuing it into the normal data stream.
Bypass entirely the SNA protocol stuff of generating a
Signal RU expedited data request, setting the
LUFLG$V_SIG_SNT flag, and waiting for a Signal Response
before clearing this flag.
Reference:
PTR 70-5-801 / CFS.61151 / HPAQ70KTM
PTR 70-5-838 / CFS.62038 / BCPM815CB
ECO D 13-NOV-1998 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21D
Problem:
TNdriver: INVEXCEPTN, Exception while above ASTDEL UCX 4.1
ECO 9 Alpha
Solution:
Problem was found in UCX$TN_SERVER_RLOGIN.MAR. This file
was modified to correct the problem.
Reference:
PTR 70-5-841 / CFS.62072 / BCGM81698
ECO E 16-NOV-1998 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21E
Problem:
System crash in UCX$TNDRIVER at offset 000033A8
Solution:
Prevent crash by better checking.
Reference:
PTR 70-5-895 / CFS.63460 / HPAQA199N
ECO F 02-FEB-1999 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21F
Problem:
System hang caused by corruption of the timer queue.
Solution:
Prevent corruption of the timer queue by ucx$tndriver.
Reference:
PTR 70-5-941 / CFS.65098 / ZPOB10137
PTR 70-5-957 / CFS.65362 / KAOQ12632
PTR 70-5-984 / CFS.65964 / KAOQ22021
ECO G 11-FEB-1999 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21G
Problem:
VMS user processes do not disappear when the TCP/IP
connection is broken/disconnected.
Solution:
Mark unit offline when previous attempts to send
disconnect to the application have failed.
Reference:
PTR 70-5-910 / CFS.64120 / UTO101866
ECO H 02-MAR-1999 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21H
Problem:
TNdriver causes a INVEXCEPTN crash at OTS$CALL_PROC_C due
to it referencing a null pointer.
Solution:
Since pointer can be null depending on the type of
session, test before branching.
Reference:
PTR 70-5-916 / CFS.64301 / HPAQB1M1L
ECO I 29-MAR-1999 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21I
Problem:
The fix for 70-5-910 was incomplete.
Solution:
Removed the test for the device being offline in
tn$disconnect.
Reference:
PTR 70-5-910 / CFS.64120 / UTO101866
PTR 70-5-989 / CFS.66060 / UTO101930
PTR 70-5-1145 / CFS.70534 / BRO88113
PTR 70-5-1135 / CFS.70195 / HPAQ80P5Z
PTR 70-5-1125 / CFS.69778 / ZPO022452
ECO 4 updates
--------------
ECO K 29-FEB-2000 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21K
Problem:
[1] System occasionally allocates all of the available large
buffers.
[2] VAX system can crash due to TNdriver confusion about type of
transfer.
Solution:
[1] Have TNdriver enforce limit of 65535 character burst
transfer from the above terminal driver's GETNXT routine.
[2] Double-check that the VAX has the correct type of transfer
(burst or single-character) from the above terminal
driver's GETNXT routine.
Reference:
PTR 70-5-1290 / CFS.74234 / Req Id: BCGM11WK4
PTR 70-5-859 / CFS.62537 / Req Id: UVO106153
PTR 70-5-698 / CFS.58039 / Req Id: HPAQ21Q6X
ECO 5 updates
--------------
ECO L 12-JUL-2000 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21L
Problem:
System still occasionally allocates all of the available large
buffers, even with the original fix for 70-5-1290 installed.
Solution:
During TN$STARTIO, reload R2 from UCB$W_TN_OUTLEN and
R3 from UCB$L_TN_OUTADR for burst transfers.
Reference:
PTR 70-5-1290 / CFS.74234 / Req Id: BCGM11WK4
ECO M 21-MAY-2001 Alpha and VAX
Images:
UCX$TELNET.EXE UCX V4.2-21M
Problem:
UCX-E-REQREJECT is seen on TN3270 screen due to the receipt
of a long Request Unit > 4 KB. Customer is unable to proceed
with their 3270 application as a result.
Solution:
Increased the TN3270 receive buffer size to avoid breaking up a
RU > 4 KB bytes. The new limit is 16 KB.
Reference:
PTR 70-5-1658 / CFS.83081 / Req Id: KAOQ22102 / UCX Note 8390
ECO N 6-SEP-2001 Alpha and VAX
Images:
UCX$TNDRIVER.EXE UCX V4.2-21N
Problem:
Regression of 70-5-1290 found during ECO 5 SQA testing. A
faulty cmpb instruction in the 70-5-1290 redux fix causes
TNdriver to crash immediately.
Reference:
PTR 70-5-1290 / CFS.74234 / Req Id: BCGM11WK4
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 SNMP Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 22-JAN-1998 Alpha and VAX
Images:
UCX$SNMPIVP.EXE UCX V4.2-21A
Problem:
Non-initialization of status variable for
snmp_request() routine.
Solution:
Initialize variable to non-error value.
Reference:
QAR 30-3-77
ECO A 22-JAN-1998 Alpha and VAX
Images:
UCX$OS_MIBS.EXE UCX V4.2-21A
Problem:
Display of physical address for interface group
(OID 1.3.6.1.2.1.2.2.1.6) incorrect:
* First two bytes incorrect, correct bytes start
at third position, but then last 2 not displayed.
* Wrong address for display, either mismatched,
or in case of LO0 address, displayed when none
should be (exact problem depended on the number of
interfaces).
Solution:
Correct string compare routines that determined match of
address to interface name in table read, also copy
of physical address from QIO data structure to
application structure.
Reference:
PTR 70-5-571 / CFS.55374 / HPAQA25GZ
ECO A 22-JAN-1998 Alpha and VAX
Problem:
Display of incorrect next hop
(OID 1.3.6.1.2.14.21.1.7), often as 0.0.0.0.
Solution:
Change to copy correct data from QIO data structure.
Reference:
QAR 30-2-509
ECO A 22-JAN-1998 Alpha and VAX
Problem:
In-code documentation added for unfinished Process
Software CIDR change.
Solution:
Corrected.
Reference:
None.
ECO A 22-JAN-1998 Alpha and VAX
Images:
UCX$ESNMP_SHR.EXE UCX V4.2-21A
Problem:
A SHRIDMISMAT error for applications linked with
the previous version of the ucx$esnmp_shr.exe.
Solution:
Insert GSMATCH=lequal,a,b into options file, where
a,b match the values inserted by the linker for the
base version of UCX V4.1.
Reference:
None.
ECO A 22-JAN-1998 Alpha and VAX
Images:
UCX$ESNMP_SHR.EXE UCX V4.2-21A
Problem:
Function missing from shareable image for API: inst2ip().
Solution:
For Alpha: add SYMBOL_VECTOR to link options file.
For VAX: add VECTOR to macro file.
Reference:
None.
ECO A 22-JAN-1998 Alpha and VAX
Problem:
Header file corrections:
esnmp.h: need #define for __() so users can use this
header file for custom applications.
ioctl.h: minor correction taken from old UCX V4.1 code
for consistency.
Solution:
esnmp.h: with #ifdef __VMS, insert #define __(x) x.
ioctl.h: edit out old structure value (rt_mask) not
used in OpenVMS.
Reference:
None.
ECO B 17-FEB-1998 Alpha and VAX
Images:
UCX$ESNMP_SERVER.EXE UCX V4.2-21B
UCX$OS_MIBS.EXE UCX V4.2-21B
UCX$HR_MIB.EXE UCX V4.2-21B
Problem:
Incorrect MIB variable reporting, counts for if group.
Solution:
Aligned header file.
Reference:
QAR 30-2-377
ECO B 17-FEB-1998 Alpha and VAX
Problem:
MIB-II subagent aborts if system has pseudo-interface
configured.
Solution:
Correct clearing out of buffer area.
Also, include interface name in error message for easier
debugging.
Reference:
PTR 70-5-688 / CFS.57686 / MGO103352
ECO 2 updates:
--------------
ECO C 19-MAY-1998 Alpha and VAX
Images:
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21C
UCX$ESNMP_SERVER.EXE UCX V4.2-21C
UCX$ESNMP_SHR.EXE UCX V4.2-21C
UCX$OS_MIBS.EXE UCX V4.2-21C
UCX$HR_MIB.EXE UCX V4.2-21C
Problem:
Need more robustness for subagent functioning.
Solution:
Subagent code modified to do shorter sleep, more restarts.
Reference:
QAR 30-2-534
ECO C 19-MAY-1998 Alpha and VAX
Images:
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21C
Problem:
Chess sub-agent example is linked unnecessarily against
ucx$access_shr.exe and ucx$ipc_shr.exe. No effect on UCX
V4.2 but good to send out an updated example for users to
test interoperability against V5.0.
Solution:
Remove link of those shareables in the .opt files for
Chess example.
Reference:
None
ECO D 27-MAY-1998 Alpha and VAX
Sources:
types.h
The file types.h belongs in the system directory:
SYS$COMMON:[UCX$LIB.RPC]
Problem:
DECC compiler on Alpha fails with "%CC-E-NOLINKAGE"
errors on typedefs: int32, uint32, int64 & uint64
There are a number of workarounds available for this
problem.
Solution:
Use the INTS.H definitions for int32, uint32, int64 and
uint64. This prevents the %CC-E-NOLINKAGE errors that
were generated at compile time if both RPC.H and
PTHREAD.H were included. INTS.H properly defines int32
and uint32 for both current platforms and properly
defines int64 and uint64 for the Alpha platform.
However, if the platform is VAX, INTS.H does not define
either int64 or uint64. This is an acceptable solution
because none of the provided source code in either
RPCXDR or PCNFSD uses either int64 or unit64. Therefore,
these typedefs are only used in customer applications.
If a customer application is currently using the
misdefined 32-bit typedefs int64 and/or uint64 on either
platform, the solution would be to modify the source
code of the application to use int32 and/or uint32 and
recompile.
Reference:
PTR 70-5-242 / CFS.50386 / HPAQ40J07
ECO D 27-MAY-1998 Alpha and VAX
Images:
UCX$OS_MIBS.EXE UCX V4.2-21D
Problem:
Inaccurate counts for ifTable data elements.
Solution:
Use values from qio call adapted from lancp code (VMS
V7.1) (DCL command: mcr lancp show device/counters).
Reference:
PTR 70-5-789 / CFS.60594 / HGOQ60143
ECO E 29-JUL-1998 Alpha only
Images:
UCX$HR_MIB.EXE UCX V4.2-21E
UCX$OS_MIBS.EXE UCX V4.2-21E
Problem:
Code for consistency with V5.
Checking 64-bit counters; likely never implemented unless
4.x build to be done on 7.2 Alpha (otherwise #ifdef'ed out)
Solution:
For 64-bit counts, check architecture and VMS version,
adjust qiow parameter accordingly. Add routine to check
VMS version at run-time.
Reference:
None.
ECO E 29-JUL-1998 Alpha only
Images:
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21E
UCX$HR_MIB.EXE UCX V4.2-21E
UCX$OS_MIBS.EXE UCX V4.2-21E
Problem:
Fix for ECO C 19-May "robustness". After unsuccessful
close was still just trying to re-open, got dupl.
Solution:
See under ECO C 19-MAY-1998 for more details.
Reference:
QAR 30-2-534
ECO E 29-JUL-1998 Alpha only
Images:
UCX$HR_MIB.EXE UCX V4.2-21E
UCX$OS_MIBS.EXE UCX V4.2-21E
Problem:
SNMP cannot handle display of large number (>700) sockets.
Solution:
Change data structure to QIO.
Reference:
UCX Note 6390
ECO F 03-AUG-1998 Alpha and VAX
Sources:
CHESS_METHOD.C
Images:
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21F
UCX$HR_MIB.EXE UCX V4.2-21F
UCX$OS_MIBS.EXE UCX V4.2-21F
Problem:
Chess sub-agent aborts on SET of OID
1.3.6.1.4.1.36.2.15.2.99.4.1.4.4 to 3 (delete);
this was on VMS 6.2, DEC C 5.7-004, link with
UCX$SNMP:ESNMP.OLB
Solution:
An element of "method" data structure was not getting
initialized within the calling code in esnmp_poll.c. Both
the calling code and the example were fixed. Error showed
up only on certain platforms and in link with .olb, not
shareable; could be that under certain conditions the
problem struct element was getting initialized to 0 by
chance or because of architecture, DEC C version, etc.
Reference:
UCX Note 6453
ECO 3 updates:
--------------
ECO G 14-SEP-1998 Alpha and VAX
Images:
UCX$ESNMP_SHR.EXE UCX V4.2.21G
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21G
UCX$ESNMP_SERVER.EXE UCX V4.2.21G
UCX$HR_MIB.EXE UCX V4.2-21G
UCX$OS_MIBS.EXE UCX V4.2-21G
UCX$SNMPIVP.EXE UCX V4.2.21G
UCX$ESNMP.OLB UCX V4.2.21G
Problem:
Unable to run the examples UCX$CHESS_SUBAGENT because
the agent id name is wrongly truncated.
If the total length, including dots, of hostname + domain
(as returned by gethostname(), i.e., concatenation of
tcpip$inet_host + "." + tcpip$inet_domain) is > 25
characters, subagent init routine in may not generate a
unique name to register with in master agent, and
subagent can never start up.
Solution:
Instead of forming the subagent name from full host name
+ PID (with truncation occurring after 25 characters),
use only the first 22 characters of the host name. This
allows for "_" and full 8 hex digits from PID. Since for
4.x master and subagents always run on the same host,
possible truncation of host name doesn't matter.
Reference:
PTR 70-5-861 / CFS.62568 / UTO101832
PTR 70-5-1055 / CFS.67884 / BRO101393
ECO I 04-MAY-1999 Alpha and VAX
Images:
UCX$ESNMP_SERVER.EXE UCX V4.2-21I
Problem:
When starting up large number of subagents, some cannot
bind to socket, end up terminating.
Solution:
Order of calls to bind(), getsockname(), and setsockopt()
in routine bind_sub_skt was wrong. Problem did not show
up in all cases, mainly seen in TCPIP V5.0 on VMS V7.2.
Same code back here, so fixed.
Reference:
QAR 30-2-579
ECO J 06-MAY-1999 Alpha and VAX
Images:
UCX$ESNMP_SERVER.EXE UCX V4.2-21J
Problem:
UNDO functionality did not work.
MMS file did not have correct dependency for building
subagents.
Solution:
Change or add dependency for subagents on .OLB, not
shareable .EXE.
Reference:
UCX Note 7007
ECO K 11-JUN-1999 Alpha and VAX
Images:
UCX$CHESS_SUBAGENT.EXE UCX V4.2-21K
UCX$ESNMP_SERVER.EXE UCX V4.2-21K
UCX$ESNMP_SHR.EXE UCX V4.2-21K
UCX$HR_MIB.EXE UCX V4.2-21K
UCX$MIBCOMP.EXE UCX V4.2-21K
UCX$MOSY.EXE UCX V4.2-21K
UCX$OS_MIBS.EXE UCX V4.2-21K
UCX$SNMPI.EXE UCX V4.2-21K
UCX$SNMPIVP.EXE UCX V4.2-21K
UCX$SNMP_REQUEST.EXE UCX V4.2-21K
Problem:
No official images have been built for ECOs
F through J.
Solution:
Build new images with the image ID 'UCX V4.2-21K'
that will include all the fixes from ECO F
through ECO J.
Reference:
PTR 70-5-861 / CFS.62568 / UTO101832
QAR 30-2-579
UCX Note 7007
ECO 4 updates
--------------
ECO L 8-NOV-1999 Alpha and VAX
Images:
UCX$OS_MIBS.EXE UCX V4.2-21L
Problem:
sysObjectID returned needs to be changed to conform to
Compaq Insight Manager.
Solution:
Hard code OID. This does not change and does not use
VMS version number.
Reference:
QAR 30-2-603
ECO 5 updates
--------------
ECO M 14-APR-2000 VAX and Alpha
Images:
UCX$OS_MIBS.EXE UCX V4.2-21M
Problem:
Version displayed for MIB-II variable sysDescr does not include
full OpenVMS version information.
Solution:
In itemlist for sys$getsyiw call, change SYI$_NODE_SWVERS to
SYI$_VERSION and in using resulting string, trim trailing blanks.
Reference:
QAR 30-2-606
ECO N 7-SEP-2001 Alpha and VAX
Images:
UCX$SNMPIVP.EXE UCX V4.2-21N
Problem:
Executing SNMP IVP test results in %SYSTEM-W-NOSUCHDEV
if run before TCPIP is started after system reboot.
Found during ECO 5 SQA testing.
Reference:
Internal testing.
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 SDA Images
---------------------------------------------------------------------------
ECO 2 updates:
--------------
ECO B 15-OCT-1998 Alpha and VAX
Images:
UCX$SDA.EXE UCX V4.2-21B
Problem:
pwip$sda.exe ECO A was installed as ucx$sda.exe
in ECO 1.
Solution:
ucx$sda.exe needs to be relinked for Alpha V6.2
and V7.0 and VAX V6.2 with a new image ID.
Reference:
None.
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 BIND Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 19-DEC-1997 Alpha and VAX
Images:
UCX$ACCESS_SHR.EXE UCX V4.2-21A
Problem:
Obsolete IQUERY calls need to be removed for
compatibility with other BIND implementations.
Solution:
Replaced the call to FindHostInfo that uses IQUERY
with GetHostByAddr().
Reference:
None.
ECO A 19-DEC-1997 Alpha V7.x only
Images:
UCX$METRIC.EXE UCX V4.2-21A
Problem:
Wrong image ID.
Solution:
Image was rebuilt with correct ID.
Reference:
Internal report.
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 BIND_SERVER Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 13-JAN-1998 Alpha and VAX
Images:
UCX$BIND_SERVER.EXE UCX V4.2-21A
Problem:
The name server generated too much logging information
about load balancing.
Solution:
Put both syslog() calls inside "if DEBUG" clause.
Reference:
PTR 70-5-630 / CFS.56463 / EVT102451
ECO 3 updates:
--------------
ECO B 21-JUN-1999 Alpha and VAX
Images:
UCX$BIND_SERVER.EXE UCX V4.2-21B
Problem:
Load balancing worked for only one cluster in a multiple
cluster environment. The other clusters were not properly
balanced.
Solution:
Do not search the entire host list for the highest rated
host. Only search the current cluster host list for the
highest rated (least loaded) host.
Reference:
PTR 70-5-1024 / CFS.66898 / BCGM31SHH / UCX Note 6932
ECO 4 updates
--------------
ECO C 4-FEB-2000 Alpha and VAX
Images:
UCX$BIND_SERVER.EXE UCX V4.2-21C
Problem:
This fix was submitted to 4.1, but was not ported to 4.2.
The name server sorts the response based on the subnet locale.
It shouldn't do that for cluster names.
Solution:
Fix ns_req() routine not to sort the response based on the
subnet locale if this is a cluster name.
Reference:
QAR 30-2-576
PTR 70-5-694 / CFS.57941 / Req Id: MCGM21JMG
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 PWIP Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 22-JAN-1998 Alpha and VAX
Images:
UCX$PWIPACP.EXE UCX V4.2-21A
Problem:
Several different symptoms, including crashes,
memory corruption, loss of PWIP connections, etc.
Solution:
A variable in routine getChan() was incorrectly
declared to be static. The result was that,
if the routine was ever entered simultaneously
(such as in normal mode and in an AST), data could be
corrupted. This day-one bug was dormant until the latest
release of PATHWORKS. With an older version of PATHWORKS,
conditions were such that the routine was never entered
simultaneously. However, the new release has a different
set of calls into PWIP and the bug is now exposed. The
solution was to make the variable a normal automatic
variable.
Reference:
Many reports.
ECO 3 updates:
--------------
ECO B 23-JUN-1999 Alpha and VAX
Images:
UCX$PWIPDRIVER.EXE UCX V4.2-21B
Problem:
UCX 4.2 ECO 2, INVEXCEPTN, Exception while above ASTDEL
Process currently executing on this CPU: UCX$PWIP_ACP
Solution:
Validate pointers to socket and inpcb before referencing
data structures while processing T_CONN_CON indication.
Reference:
PTR 70-5-1046 / CFS.67487 / HPAQ41B1Q
PTR 70-5-1061 / CFS.68036 / HPAQ50RWJ
PTR 70-5-1129 / CFS.69983 / BCSM805KR
ECO 5 updates
--------------
ECO C 26-OCT-2000 Alpha and VAX
Images:
UCX$PWIPACP.EXE UCX V4.2-21C
Problem:
Since upgrading clients from NT4-SP3 to NT4-SP6a the server
response has become terribly slow.
Solution:
In pwipacp_ucx::bindPort() the $QIO used the uninitialized variable
"channel" rather than the intended "acpcb->original_channel"
Reference:
PTR 70-5-1476 / CFS.77197 / Req Id: ZUO23883A
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 UCP Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 06-APR-1997 Alpha V7.x only
Images:
UCX$UCP.EXE UCX V4.2-21A
Problem:
Wrong image ID.
Solution:
Image was rebuilt with correct ID.
Reference:
Internal report.
ECO 3 updates:
--------------
ECO B 20-OCT-1998 Alpha and VAX
Images:
UCX$UCP.EXE UCX V4.2-21B
Problem:
When a multi-homed host is configured such that its
addresses are of different lengths, the logical(s)
UCX$INET_HOSTADDRx are set to incorrect values.
Solution:
Set the string length correctly for all address strings.
Reference:
PTR 70-5-820 / CFS.61642 / GOZ100984
ECO C 1-JUL-1999 Alpha and VAX
Images:
UCX$UCP.EXE UCX V4.2-21C
Problem:
SET COMMUNICATIONS/REJECT=NOHOSTS=x.x.x.x doesn't
always remove the desired entry from the list.
Solution:
Fixed the NOHOSTS and NONETWORKS list removal code to
not assume the respective /ACCEPT or /REJECT HOSTS and
NETWORKS lists are sorted. The code now searches the
entire list for the desired entry to remove.
Reference:
PTR 70-5-752 / CFS.59606 / BCGM5022P
ECO 4 updates
--------------
ECO D 21-SEP-1999 Alpha and VAX
Images:
UCX$UCP.EXE UCX V4.2-21D
Problem:
UCX SET CONFIG COMM /TYPE=[DEFAULT, ETHER or FDDI] can only be set
by manipulating the last two bits of "n" in UCX SET CONFIG COMM
/LARGE=FREE=n
Solution:
Fixed the size of _OPTIONS as defined in the memory block to be 3
numbers. It was previously defined as 2.
Reference:
PTR 70-5-755 / CFS.59702 / EVT102566
PTR 70-5-829 / CFS.61882 / UTO101816
PTR 70-5-1148 / CFS.70742 / BCGM902MD
ECO E 8-NOV-1999 Alpha and VAX
Images:
UCX$UCP.EXE UCX V4.2-21E
Problem:
KERNEL: show arp command gives ACCVIO
Solution:
The UCP initialization code for get ARP
was modified to handle the ACCVIO error code.
Reference:
PTR 70-5-948 / CFS.65284 / MGO103970
PTR 70-5-1199 / CFS.72374 / HPAQB0C96
ECO F 31-JAN-2000 Alpha and VAX
Images:
UCX$UCP.EXE UCX V4.2-21F
Problem:
Unable to set the probe and the drop timers of
a Service defined in the service database.
Solution:
Fixed UCXCP$$SET_TCP_OPTS() to build a
valid TCP Options structure.
Reference:
PTR 70-5-493 / CFS.54138 / Req Id: EVT102326
PTR 70-5-602 / CFS.55901 / Req Id: EVT102420
PTR 70-5-1213 / CFS.72673 / Req Id: UVO98145 / UCX Note 7190
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 BOOTP and TFTP Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 04-FEB-1998 Alpha and VAX
Images:
UCX$BOOTP.EXE UCX V4.2-21A
Problem:
BOOTP replies with the wrong Server Address on a
multiple interface host.
Solution:
Correct a problem in the subnet_match() routine. Pass
subnet mask of the BOOTP client to subnet_match(). The
responding interface must be in the same subnet as BOOTP
client.
Reference:
PTR 70-5-497 / CFS.54174 / EVT102328
ECO 5 updates
--------------
ECO B 27-APR-2001 Alpha and VAX
Images:
UCX$TFTP.EXE UCX V4.2-21B
Problem:
TFTP server does not retransmit properly after a lost packet,
causing client to hang or give up.
Solution:
Fixed TFTP retransmission to work reliably.
Reference:
PTR 70-5-1622 / CFS.82290 / Req Id: BCGM21ZWS / UCX Note 8379
PTR 70-5-1027 / CFS.66996 / Req Id: BCSM31Z0V / UCX Note 7499
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 FTP Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 05-FEB-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21A
Problem:
The FTP initialization file, FTPINIT.INI, was not being
used when FTP executed in batch mode.
Solution:
Corrected the code path to place the FTP initialization
into the common path independent of whether the FTP
client is executing on a DC$_TERM or not.
Reference:
PTR 70-5-605 / CFS.55947 / MCGMB1LCC
ECO D 05-FEB-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21D
Problem:
Internal problems caused by the presence of the
FTPINIT.INI file. The DCL command line was lost
if the file existed.
Solution:
Processed the initialization file only after
parsing the command line.
Reference:
Internal testing.
ECO E 05-FEB-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21E
Problem:
If the local source file of the COPY/FTP command
does not exist (or an error signaled), that error
was not returned to DCL for examination of $STATUS.
Solution:
The status FTP$_NORMAL was always returned by the central
FTP PUT routine, even after it signals the error. In
addition, the routine did not signal the error in typical
FTP fashion. The code has been modified to signal an
appropriate error and to return error indication to DCL.
Reference:
PTR 70-5-618 / CFS.56104 / MGO103212
ECO F 09-FEB-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21F
Problem:
The PUT command sends an unwildcarded file in its
uppercase OpenVMS format, which is not acceptable for
UNIX systems.
Solution:
When the responsibility for uppercasing moved to the
caller of the common 'put' routine, the appropriate
code needed in the unwildcarded put routine was
never implemented. The file's name from the NAM
block is now lowercased if the connection is not in
VMS-Plus mode and uppercase enforcement is disabled.
Reference:
PTR 70-5-609 / CFS.55993 / HGOQB0361
ECO 2 updates:
--------------
ECO G 25-JUN-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21G
Problem:
FTP will not allow one to output results from DIR/OUT
to a directory owned by an identifier when DISKQUOTAs
are enabled on the volume.
Solution:
In dir_lst_rqst(), do not use FAB$M_TMP flag when
creating user-specified DIR/OUT file, and no longer
SYS$ENTER() it.
Reference:
PTR 70-5-733 / CFS.59175 / HPAQ40V5Q
ECO H 10-AUG-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21H
Problem:
FTP 'Directory/FTP' output is wrongly displayed when
filename sizes are 20 characters (names are concatenated).
This can confuse not only users but also automated batch
procedures.
Solution:
Add one space to enforce at least one blank between
columns.
Reference:
PTR 70-5-756 / CFS.59707 / EVT102568
ECO I 11-AUG-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21I
Problem:
FTP Client command 'user username password' no longer
works in a DCL procedure file.
Solution:
The fix was ported from a V5 fix.
Change ftp$prompt() to check the variable fromatty rather
than stdin_specified to determine when to use C I/O and
when to use SMG. Modified login_prompt() to accept input
that is not from a proper terminal by testing both
stdin_specified and fromatty.
Reference:
PTR 70-5-531 / CFS.54755 / EVT102362
PTR 70-5-775 / CFS.60067 / TKTB52245
ECO K 25-AUG-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21K
Problem:
FTP in batch mode fails to set $status on an error.
FTP command files can stop working if they use the DCL
'on error' directive to handle various types of FTP
errors.
Solution:
Port from 5.0. Change in ftpget and ftpput to propagate
error status values out to DCL.
Reference:
PTR 70-5-689 / CFS.57719 / UTO101650
ECO 3 updates:
--------------
ECO L 13-NOV-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21L
Problem:
FTP can corrupt VMS index files when transferred.
Customers can avoid only by doing a CONVERT of the
file prior to transferring via FTP.
Solution:
Fixed FTP (both client and server) to create a
properly-sized index file structure such that it
can contain all the data transferred. Also undid
a previous change in which RMS$_EOF errors were
ignored when attempting to write beyond the EOF
of such files.
> COMPATIBILITY WARNING!! This change will cause <
> index files received by a fixed client or server <
> from an unfixed counterpart to now report failure. <
> The state of the transferred file after reporting <
> this failure will be no different than if the file <
> had been received by an unfixed client or server <
> who quietly believed truncating the file was okay. <
Reference:
PTR 70-5-823 / CFS.61674 / UVO106108
PTR 70-5-842 / CFS.62085 / TLAQ70031
ECO M 18-NOV-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21M
Problem:
Many FTP commands unnecessarily consume VMS
channels in both client and server when a
search-list logical is involved in the
operation. This eventually results in SYSTEM-
F-NOIOCHAN error. User must start a new FTP
session to make further progress.
Solution:
Fixed FTP (both client and server) to clean up
channels no longer needed after each command.
Reference:
PTR 70-5-839 / CFS.62042 / BCGM815V7
PTR 70-5-1222 / CFS.72837 / UTO51529A
ECO N 24-DEC-1998 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21N
Problem:
FTP client can sometimes display an error message
from the server twice. With COPY/FTP, it might
display no error message at all, or substitute an
unrelated non-error message for a real error.
Server can corrupt some 501 error messages. This
can be confusing to users.
Solution:
Fixed client to display messages only once.
Fixed server to provide uncorrupted messages.
Also fixed a rare situation where client can
send a corrupted command to the server; this
happened only when doing a put with wildcarded
versions to a specified target file (e.g.
FTP> put file.txt;* remote-file).
Reference:
QAR 30-2-565
ECO O 28-JAN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21O
Problem:
FTP client fails to recognize login command in a
command procedure file.
Solution:
The FTP client was modified to allow 'login <user_name>'
and 'login "<user_name>"' in a command file or batch
job.
Reference:
PTR 70-5-931 / CFS.64679 / TKTRC0588
ECO P 09-MAR-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21P
Problem:
FTP /INPUT=xxx does not work after installing UCX 4.2
ECO 2.
Solution:
FTP client was changed to again to allow /INPUT files.
This functionality was inadvertently broken by the fix
for PTR 70-5-775.
Reference:
PTR 70-5-975 / CFS.65871 / SOO101227
PTR 70-5-946 / CFS.65222 / UTO101897
PTR 70-5-995 / CFS.66218 / BCGM21QZF
PTR 70-5-1112 / CFS.69400 / ZPO020971
ECO Q 11-JUN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21Q
Problem:
FTP in 4.2 ECO 2 broke the handling of DCL command
scripts which have Fortran carriage control record
attribute. Customer's automatically-generated scripts
which perform FTP functions no longer work. They
worked fine prior to upgrading to 4.2 ECO 2.
Solution:
Undo original PTR 70-5-775 fix which caused this
regression, and re-fix that problem in a different
manner, taking into account interim fixes for 70-5-931
and 70-5-975 which also dealt with command and/or
FTP/INPUT script functionality.
Reference:
PTR 70-5-983 / CFS.65958 / ZPO005735
ECO R 11-JUN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21R
Problem:
MPUT in Binary mode with VMS_Plus disabled results in
RMS-F-COD error on 2nd and subsequent files processed.
Solution:
Fixed FTP client's binary mode file send routine to
save and restore certain FAB fields that get reused
when processing multiple files.
Reference:
PTR 70-5-985 / CFS.65977 / UVO106407
PTR 70-5-1011 / CFS.66682 / UVO106463
ECO S 17-JUN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21S
Problem:
FTP client doesn't return to original directory on
exit. User will be left in the last directory to
which they did an LCD or SET DEFAULT/LOCAL command.
Solution:
FTP now properly restores the location which had
been saved from when FTP was invoked.
Reference:
QAR 30-2-572
ECO S 22-JUN-1999 Alpha and VAX
Problem:
COPY/FTP *.* host::dir, which used to copy all files
to the remote system's "dir" subdirectory in 4.1 SSB,
now fails with "553 dir: Is a directory." (Unix target)
or "550 dir: Access is denied." (VMS target).
Solution:
4.1 SSB was being generous in supporting this ambiguous
remote file specification where "dir" can be interpreted
as being either the name of a directory or the name of a
file. In 4.1 ECO F and 4.2, the COPY/FTP operation was
rewritten to improve support for non-VMS remote systems
and in the process the interpretation was necessarily
changed such that "dir" is treated as a filename as it
would be if the VMS COPY command parsed this.
To restore the original 4.1 SSB behavior would be a step
backwards; however there are viable workarounds for a
variety of target platforms:
Unix: COPY/FTP *.* host::"dir/"
WinNT: COPY/FTP *.* host::"dir\"
VMS: COPY/FTP *.* host::[.dir]
Note that the use of double-quotes is necessary when
specifying a non-VMS pathname style.
Reference:
PTR 70-5-896 / CFS.63487 / UTO101852
ECO T 23-JUN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21T
Problem:
[1] $ COPY/FTP A. B.DAT would drop a character off the
target filename, resulting in B.DA being created.
This would only occur when the source filename has
no type. (70-5-806)
[2] $ COPY/FTP of a wildcarded list of files can result
in a loop where the errors %FTP-E-INPROCF and
%RMS-F-IFI are reported ad infinitum, filling up log
files. (70-5-1001)
Solution:
[1] In the FTP client, when a target file has been
specified, don't touch its type or version fields;
this is only done when automatically generating a
target file specification from the source file
specification. Also no longer convert a version
separator ';' to '.' when doing VMS-to-VMS (VMS
Plus) transfers. This makes the filename conform
better to VMS standards in %FTP-S-COPIED messages.
[2] In the FTP client, eliminate the possibility of an
infinite loop when dealing with errors in this
situation. Second, try to prevent the RMS-F-IFI
error from occurring -- it can only result from a
previous file transfer that was not properly cleaned
up.
The second piece of the fix was found to also apply
to FTP server code, where it could potentially
prevent channel leakage.
Reference:
PTR 70-5-806 / CFS.61299 / EVT102630 / UCX Note 6402
PTR 70-5-1001 / CFS.66367 / EVT102812 / UCX Note 6738
ECO U 23-JUN-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21U
Problem:
FTP client "PUT a.a,b.b" yields "a.a;1" and "a.a;2" on
remote system, instead of expected "a.a;1" and "b.b;1".
Solution:
Fixed PUT of comma-separated source file lists such
that when no remote file is specified, the default
is the corresponding entry from the source list, not
always the first in the source list.
Reference:
PTR 70-5-776 / CFS.60170 / SOO101139 / UCX Note 6116
ECO V 13-JUL-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21V
Problem:
Problem with 70-5-839 fix found during subsequent
code scan. Bug appears to be benign.
Solution:
Remove extra level of indirection in a call
introduced with 70-5-839 fix.
References:
QAR 30-5-268
ECO 4 updates
--------------
ECO W 25-AUG-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21W
UCX$FTPC.EXE UCX V4.2-21S
Problem:
[1] Put/Convert inserts extra LineFeeds (LF) when sending
certain VFC files. (70-5-954)
[2] FTP Client does not send STRU R files correctly in
ASCII mode. Regression from UCX V4.0 ECO stream.
(70-5-1107)
Solution:
[1] The algorithm FTP used to convert VFC/PRN-format files
made certain assumptions about the VFC prefix and
suffix codes when mapping records to FTP ASCII "lines
of text" on the wire, which according to the RFC must
end with <CR><LF> (or end-of-record <IAC><01> for
STRU R files).
The algorithm works fine for common VMS listing and
log files which are VFC/PRN format, but can fail in
the general case for files written by customer Cobol
applications.
Fixed FTP's conversion algorithm to perform a more
faithful conversion of VFC/PRN prefix/suffix code
combinations with a better mapping to FTP ASCII
records on the wire. This affected both the client
(Put/Convert) and the server (UCX$FTP_CONVERT_FILE
logical). Also fixed bug in server which has
prevented VFC conversion from working at all since
early in the UCX 4.1 ECO stream.
[2] FTP client was sending <IAC><00> instead of <IAC><01>
as the end-of-record tag. Fixed it to send the proper
<IAC><01> sequence. The server, which has similar
code, did not suffer from this problem. Both client
and server appear capable of receiving STRU R-format
in ASCII mode okay.
References:
PTR 70-5-954 / CFS.65319 / EVT102771 / UCX Note 6786
PTR 70-5-1107 / CFS.69202 / BRO72130A / UCX Note 7067
PTR 70-5-1277 / CFS.73803 / UVO81901
ECO X 11-OCT-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21X
Problem:
FTP client in batch mode is not exiting appropriately
when encountering an error while doing an "mget".
Solution:
Backported functionality from TCP/IP V5 to report
"last_ftp_error_seen" to cause FTP to exit.
Reference:
PTR 70-5-824 / CFS.61742 / HPAQ80C0G
ECO Y 15-OCT-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21Y
UCX$FTPC.EXE UCX V4.2-21U
Problem:
COPY/FTP (get) retrieves multiple versions of the specified
file when it shouldn't, and reverses the version ordering to
boot. For example:
COPY/FTP remote"user pwd"::login.com []
retrieves remote"user pwd"::login.com;2 --> []login.com;1
and remote"user pwd"::login.com;1 --> []login.com;2
Solution:
Fixed COPY/FTP (get) and FTP GET command operations in VMS
Plus mode (VMS-to-VMS) to behave much more like the VMS
$COPY command behaves (with /NOCONCAT option):
- only retrieve the highest version when no version is
specified;
- preserve version number of source file when possible;
- disallow overwriting (superceding) an existing version
of a file (both client and server); and
- in circumstances for which the previous change is not
desirable, create a new version to avoid a conflict
with an existing version.
Note that it is still possible to end up with reversed
versions when retrieving all versions of a file (e.g.
COPY/FTP remote"user pwd"::login.com;* []) and those
versions already exist locally. This is exactly how VMS
$COPY/NOCONCAT behaves in this circumstance.
Reference:
PTR 70-5-988 / CFS.66051 / UTO101929 / UCX Note 6857
ECO Z 5-NOV-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21Z
Problem:
COPY/FTP returns a successful status (FTP$_COPIED)
even when the destination disk is full.
Solution:
This class of problem (error propagation out to DCL
$status) has been a thorn in UCX FTP client's side for a
long time. (The FTP client was originally designed with
interactive use only in mind.) Several prior fixes have
plugged a hole here or there. This solution caplitalizes
on a comprehensive review of FTP code that was done for
TCPIP V5.0A and backports into UCX much of the error
propagation improvements that were made in that release.
For the reported problem, send_data() was modified to
return FTP$_COPIED only on success, and FTP$_NOTCOPIED
on failure.
NOTE: This change could "break" batch-mode FTP scripts
which "relied" on FTP's lack of error propagation.
A workaround exists for such situations:
In the file SYS$LOGIN:FTPINIT.INI (or the file
referenced by a logical named "FTPINIT"), include
the following FTP command:
set error_level error
This instructs FTP not to abort (in batch mode)
when a non-fatal error is encountered.
Reference:
PTR 70-5-1163 / CFS.71175 / EVT49088A
PTR 70-5-1247 / CFS.73188 / BRO8368
ECO AA 15-NOV-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21AA
Problem:
FTP> mget file can result in RMS-E-FEX error since 70-5-988
fix was implemented. Using FTP> get file instead works
fine, generating a new version of file if the actual version
of the requested remote file actually exists locally.
Solution:
Fixed FTP> mget to maximize the local file's version when no
version has been explicitly specified for the file. This is
what 70-5-988 fix did for FTP> get.
Reference:
QAR 30-2-602
ECO AB 15-NOV-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21AB
Problem:
The FTP 'mput' command does not search the several
equivalence names defined by a logical name correctly.
Solution:
This problem was partly caused by 70-5-839 fix to
eliminate channel leaks, in which several uses of
SYS$PARSE were changed to be syntax-checking only.
Mput no longer passes the expanded result of its
SYS$PARSE down to wldcrd_put_process().
A similar problem with the recv and dir/out= commands,
and with $copy/ftp remote local were also corrected.
Reference:
PTR 70-5-1177 / CFS.71701 / TKT018643
ECO AC 21-FEB-2000 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21AC
Problem:
FTP Client occasionally hangs in accept().
Solution:
Use select() to monitor both the data and control ports.
Reference:
PTR 70-5-1165 / CFS.71233 / Req Id: BCGM918DV
UCX Note 7159 and UCX Note 7330
ECO 5 updates
--------------
ECO AD 11-JUL-200 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21AD
Problem:
[1] FTP Client assumes that * is invalid for output filename.
This may not be true if Server is non-VMS.
[2] FTP send command ACCVIO's if globbing is off.
Solution:
[1] Allow the FTP Server to determine if special characters
are valid for the output filename if not VMS Plus mode.
[2] Unconditionally set command type.
Reference:
PTR 70-5-1152 / CFS.70848 / Reg. ID HPAQ90BGK
---------------------------------------------------------------------------
Corrections for DIGITAL TCP/IP Services V4.2 FTPD Images
---------------------------------------------------------------------------
ECO 1 updates:
--------------
ECO A 29-JAN-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21A
Problem:
CWD only reported syntax errors when attempting to
establish a new default directory even though the
device and/or directory strings may be invalid.
Solution:
The $PARSE SYNCHK option was being used when parsing
the new default directory. Turning this off allows
the device and directory strings to be checked for
validity and existence.
Reference:
PTR 70-5-549 / CFS.54999 / MCGMA140C
ECO B 30-JAN-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21B
Problem:
The command 'CWD /' returns an error.
Solution:
Treat 'CWD /' as synonymous with 'CWD ~' and 'CWD':
set the default to SYS$LOGIN:.
Reference:
PTR 70-5-624 / CFS.56290 / EVT102444
ECO C 05-FEB-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21C
Problem:
RENAME does not handle wildcard characters correctly.
Solution:
Recoded RNTO action routine to handle wildcards
as well as multiline output.
ECO C 05-FEB-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21C
Problem:
CWD does not handle logical names properly when they
are expressed without a colon (:) at the end.
Solution:
Added a check for a logical name when deciding if the
string needs to be translated from UNIX to OpenVMS
format.
Reference:
PTR 70-5-523 / CFS.54606 / MGO103083
ECO 2 updates:
--------------
ECO D 29-MAY-1998 Alpha and VAX
Images:
UCX$FTPD.EXE UCX V4.2-21D
Problem:
The FTP server stops creating FTPC session processes
after 100,000 connections. Users are unable to FTP
into the system.
Solution:
Reset the session_sequence counter when it exceeds
999999 so the FTPC process name is a valid VMS process
name.
Reference:
PTR 70-5-743 / CFS.59475 / TKTQ40039
ECO E 20-AUG-1998 Alpha and VAX
Images:
UCX$FTPD.EXE UCX V4.2-21E
Problem:
FTP Server hangs in LEF state after getpeername()
failure. Remote users cannot FTP into this system
any more -- they will be prompted for the username,
but not for the password.
Solution:
Re-enable ASTs before returning in all cases. Always
return a value when returning from startup_session().
Reference:
PTR 70-5-827 / CFS.61807 / UTO101809
ECO F 10-SEP-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21F
Problem:
FTP put of file named 'TT' may overwrite
UCX$FTPSERVER.COM if user has sufficient privilege.
This breaks the FTP server such that it will no longer
accept any future connections.
Solution:
Fixed by having the FTPC child process suppress the
default TT logical definition.
Reference:
PTR 70-5-765 / CFS.59922 / HPAQ50XHH
ECO 3 updates:
--------------
ECO G 21-Sep-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21G
Problem:
Multiple FTP APPENDs not updating remote file correctly
in binary mode. Only ASCII mode APPEND works.
Solution:
Fixed binary-mode appends to properly append to binary
files with partially-filled last blocks, and to use
RMS $WRITE rather than $PUT.
Reference:
PTR 70-5-840 / CFS.62046 / HPAQ80L96
ECO H 08-OCT-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21H
Problem:
FTP server returns duplicate lines to ls command when
directory contain 258 files of 30 characters. Directory
listings whose data content is larger than 4K bytes can
contain redundant information as the last 4K+ bytes
might be accidentally sent twice.
Solution:
The routines FillNetBuffer() and nlist() were updated to
fix the problem.
Reference:
PTR 70-5-853 / CFS.62407 / KAOQ90630
ECO I 15-OCT-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21I
Problem:
[1] Cannot append to file in path utilizing a search-list
logical.
[2] Some append messages appear sloppy or are missing
useful info.
[3] Server can lose sync with client when attempting an
append to a file of incompatible format (e.g. ascii
to binary or vice-versa). When this happens, the
client must disconnect and start a new FTP session.
[4] FTP URLs from a browser (passive mode) do not work
correctly.
Solution:
[1] Properly point the FAB to the NAM structure.
[2] Properly init nam.nam$b_rss instead of nam.nam$b_rsl
in appe_ascii(). Terminate messages with FAO "!/"
so they end with a newline, and make sure with
multiline response that last message includes the '-'
after the reply number (501 or 550), per the RFC.
[3] Don't SYS$WAIT() on an RMS operation when posting
that operation failed.
[4] Port V5 fix, properly initializing raddrlen arg in
FTP server's call to accept() a passive data
connection.
Reference:
PTR 70-5-868 / CFS.62658 / HPAQ911WL
QAR 30-2-557
QAR 30-2-554
QAR 30-2-556
UCX Note 6558
ECO K 11-NOV-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21K
Problem:
FTP can corrupt VMS index files when transferred.
Customers can avoid only by doing a CONVERT of the
file prior to transferring via FTP.
Solution:
Fixed FTP (both client and server) to create a
properly-sized index file structure such that it
can contain all the data transferred. Also undid
a previous change in which RMS$_EOF errors were
ignored when attempting to write beyond the EOF
of such files.
> COMPATIBILITY WARNING!! This change will cause <
> index files received by a fixed client or server <
> from an unfixed counterpart to now report failure. <
> The state of the transferred file after reporting <
> this failure will be no different than if the file <
> had been received by an unfixed client or server <
> who quietly believed truncating the file was okay. <
Reference:
PTR 70-5-823 / CFS.61674 / UVO106108
PTR 70-5-842 / CFS.62085 / TLAQ70031
ECO L 19-NOV-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21L
Problem:
Many FTP commands unnecessarily consume VMS
channels in both client and server when a
search-list logical is involved in the
operation. This eventually results in SYSTEM-
F-NOIOCHAN error. User must start a new FTP
session to make further progress.
Solution:
Fixed FTP (both client and server) to clean up
channels no longer needed after each command.
Reference:
PTR 70-5-839 / CFS.62042 / BCGM815V7
PTR 70-5-1222 / CFS.72837 / UTO51529A
ECO M 22-DEC-1998 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21M
Problem:
FTP client can sometimes display an error message
from the server twice. With COPY/FTP, it might
display no error message at all, or substitute an
unrelated non-error message for a real error.
Server can corrupt some 501 error messages. This
can be confusing to users.
Solution:
Fixed client to display messages only once.
Fixed server to provide uncorrupted messages.
Also fixed a rare situation where client can
send a corrupted command to the server; this
happened only when doing a put with wildcarded
versions to a specified target file (e.g.
FTP> put file.txt;* remote-file).
Reference:
QAR 30-2-565
ECO O 14-JUN-1999 Alpha and VAX
Images:
UCX$FTPD.EXE UCX V4.2-21O
Problem:
FTP server provides inconsistent "530 Login incorrect"
messages.
Solution:
Make sure all such messages end with a period '.'.
Reference:
QAR 30-4-1
ECO P 16-JUN-1999 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21P
Problem:
UCX$FTPC_xxx processes can hang after entering password
then hitting Ctrl-Y. The UCX$FTPD.LOG shows error
messages like:
%UCX-I-FTP_NODE, Client Nodename : mario2
%UCX-I-FTP_USER, Username : :
%UCX-I-FTP_OBJ, Object : Error
%UCX-I-FTP_CHINFO, FTPC000004DFassigning channel to
command mailbox
%SYSTEM-F-IVDEVNAM, invalid device name
Solution:
Fixed the FTPC process to abort rather than attempt to
continue in this circumstance; a channel to the command
mailbox connecting FTPC to its parent FTPD process is
necessary for proper FTP operation. Also corrected
malformed error message in this instance.
Reference:
PTR 70-5-1025 / CFS.66946 / UTO101967
ECO Q 18-JUN-1999 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21Q
Problem:
Rename problems with FTP:
1. "rename x.x y.y" fails with error "550 ACP enter
function failed" when y.y exists with same version
as x.x.
2. "rename x.x y." renames x.x to be y.x, not y.
Both are regressions introduced in 4.1 ECO 9 and
4.2 ECO 1.
Solution:
The FTP server's RNTO (rename-to) operation was fixed
to address both of these problems.
Reference:
PTR 70-5-962 / CFS.65493 / HPAQ11SQ3
PTR 70-5-1084 / CFS.68665 / ZUO101646
ECO R 23-JUN-1999 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21R
Problem:
[1] $ COPY/FTP A. B.DAT would drop a character off the
target filename, resulting in B.DA being created.
This would only occur when the source filename has
no type. (70-5-806)
[2] $ COPY/FTP of a wildcarded list of files can result
in a loop where the errors %FTP-E-INPROCF and
%RMS-F-IFI are reported ad infinitum, filling up log
files. (70-5-1001)
Solution:
[1] In the FTP client, when a target file has been
specified, don't touch its type or version fields;
this is only done when automatically generating a
target file specification from the source file
specification. Also no longer convert a version
separator ';' to '.' when doing VMS-to-VMS (VMS
Plus) transfers. This makes the filename conform
better to VMS standards in %FTP-S-COPIED messages.
[2] In the FTP client, eliminate the possibility of an
infinite loop when dealing with errors in this
situation. Second, try to prevent the RMS-F-IFI
error from occurring -- it can only result from a
previous file transfer that was not properly cleaned
up.
The second piece of the fix was found to also apply
to FTP server code, where it could potentially
prevent channel leakage.
Reference:
PTR 70-5-806 / CFS.61299 / EVT102630 / UCX Note 6402
PTR 70-5-1001 / CFS.66367 / EVT102812 / UCX Note 6738
ECO 4 updates
--------------
ECO S 25-AUG-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21W
UCX$FTPC.EXE UCX V4.2-21S
Problem:
[1] Put/Convert inserts extra LineFeeds (LF) when sending
certain VFC files. (70-5-954)
[2] FTP Client does not send STRU R files correctly in
ASCII mode. Regression from UCX V4.0 ECO stream.
(70-5-1107)
Solution:
[1] The algorithm FTP used to convert VFC/PRN-format files
made certain assumptions about the VFC prefix and
suffix codes when mapping records to FTP ASCII "lines
of text" on the wire, which according to the RFC must
end with <CR><LF> (or end-of-record <IAC><01> for
STRU R files).
The algorithm works fine for common VMS listing and
log files which are VFC/PRN format, but can fail in
the general case for files written by customer Cobol
applications.
Fixed FTP's conversion algorithm to perform a more
faithful conversion of VFC/PRN prefix/suffix code
combinations with a better mapping to FTP ASCII
records on the wire. This affected both the client
(Put/Convert) and the server (UCX$FTP_CONVERT_FILE
logical). Also fixed bug in server which has
prevented VFC conversion from working at all since
early in the UCX 4.1 ECO stream.
[2] FTP client was sending <IAC><00> instead of <IAC><01>
as the end-of-record tag. Fixed it to send the proper
<IAC><01> sequence. The server, which has similar
code, did not suffer from this problem. Both client
and server appear capable of receiving STRU R-format
in ASCII mode okay.
References:
PTR 70-5-954 / CFS.65319 / EVT102771 / UCX Note 6786
PTR 70-5-1107 / CFS.69202 / BRO72130A / UCX Note 7067
PTR 70-5-1277 / CFS.73803 / UVO81901
ECO T 8-SEP-1999 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21T
Problem:
FTP 'sunique' (store unique) put operations could
overwrite an existing version of the specified file
if the target filename includes a version specification.
Solution:
FTP server handling of STOU command had been modified
in 4.1 ECO and 4.2 to no longer generate a weird-looking
unique filename (which apparently wasn't always unique),
but to instead exploit RMS' file versioning scheme by
forcing a new (unique) version for the specified file.
Unfortunately, code to override an explicit version
specified in the target filename was only implemented
for the case of storing non-VMS-Plus ASCII files.
Fixed the FTP server STOU operation to create a new
version for the file regardless of any specified version
or file transfer mode (ASCII, BINARY, VMS-Plus).
Reference:
PTR 70-5-1128 / CFS.69894 / KAOQ73305
ECO U 15-OCT-1999 Alpha and VAX
Images:
UCX$FTP.EXE UCX V4.2-21Y
UCX$FTPC.EXE UCX V4.2-21U
Problem:
COPY/FTP (get) retrieves multiple versions of the specified
file when it shouldn't, and reverses the version ordering to
boot. For example:
COPY/FTP remote"user pwd"::login.com []
retrieves remote"user pwd"::login.com;2 --> []login.com;1
and remote"user pwd"::login.com;1 --> []login.com;2
Solution:
Fixed COPY/FTP (get) and FTP GET command operations in VMS
Plus mode (VMS-to-VMS) to behave much more like the VMS
$COPY command behaves (with /NOCONCAT option):
- only retrieve the highest version when no version is
specified;
- preserve version number of source file when possible;
- disallow overwriting (superceding) an existing version
of a file (both client and server); and
- in circumstances for which the previous change is not
desirable, create a new version to avoid a conflict
with an existing version.
Note that it is still possible to end up with reversed
versions when retrieving all versions of a file (e.g.
COPY/FTP remote"user pwd"::login.com;* []) and those
versions already exist locally. This is exactly how VMS
$COPY/NOCONCAT behaves in this circumstance.
Reference:
PTR 70-5-988 / CFS.66051 / UTO101929 / UCX Note 6857
ECO V 7-JAN-2000 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21V
Problem:
FTP> del .; command does not works after UCX was upgraded
from 4.0 ECO 5 to UCX 4.2 ECO 3. Error is: "550 The file
specification must contain a name, type and version number
(even if wildcarded)."
Solution:
Modify FTP DELE command to relax this restriction to just
requiring a version number, in order to accommodate files
that consist of just a name, or just a type.
Reference:
PTR 70-5-1231 / CFS.72967 / Req Id: ZPO035470 / UCX Note 7474
ECO 5 updates
--------------
ECO W 14-JUN-2000 Alpha and VAX
Images:
UCX$FTPC.EXE UCX V4.2-21W
Problem:
FTP rename using wildcards in UCX 4.2 ECO3 fails with
'550-invalid wildcard operation'
Solution:
The type field of the target was not properly stripped
o |