Previous | Contents |
This chapter describes the problems corrected in this version of
TCP/IP Services.
4.1 Advanced Programming Environment Problems Fixed in This Release
The following sections describe programming-related problems fixed in
this release.
4.1.1 Socket Routines Limited to 64k Bytes
In previous versions, the socket routines send(), recv(), read(), write(), sendto(), and recvrom(), along with routines (sendmsg(), recvmsg(), readv(), writev(), etc., were limited to 64k bytes (65535, or FFFF hex). That restriction has been lifted.
The QIO operations IO$_READVBLK and IO$_WRITEVBLK also now accept
buffer lengths greater than 64k, with a corresponding change in the
format of the IOSB. The size of the IOSB remains unchanged at 8 bytes.
However, the second half of the IOSB is now a copy of the returned byte
count. The count is still also returned in the second half of the first
longword, for compatibility with older applications. If the count
equals or exceeds 65535 bytes, that 16-bit count will be returned as
65535, the maximum possible value. Applications designed for TCPIP V5.5
and later are encouraged to reference the second longword of the IOSB
in order to determine how many bytes were successfully transferred. In
the event of an error return, the UNIX-style errno is still returned in
the second half of the first IOSB longword.
4.1.2 Symbol Vector Inappropriately Inserted in the IPC Options File
Problem:
In V5.5, a symbol vector for the routine socketpair was inappropriately inserted in the IPC options file. This caused applications that were linking directly against TCPIP$IPC_SHR to ACCVIO when run on an OpenVMS V8.2 system.
Solution:
This problem has been corrected and allows those previously linked programs to run on recent versions of OpenVMS.
TCP/IP Services does not recommend or support linking directly against the TCPIP$IPC_SHR shareable image. |
Problem:
In previous releases, the file SOCKET.H in TCPIP$EXAMPLES had AF_AAL defined twice, to two different values.
Solution:
This problem has been corrected.
4.2 BIND Server Problems Fixed in This Release
The following sections describe BIND server problems fixed in this
release.
4.2.1 BIND Server Not Properly Using the TCPIP$BIND_COMMON Logical Name
Problem:
In previous versions of TCP/IP Services, the BIND Server was not properly using the TCPIP$BIND_COMMON logical name. This logical name is a search list used in the multiple masters BIND server environment. It is designed to detect files first in the sys$specific:[tcpip$bind] directory, then in the BIND common directory. The problem with the logical name caused the files in the sys$specific:[tcpip$bind] directory to be ignored.
Solution:
This problem is corrected in this release; however, the solution requires changes to your configuration.
To modify your configuration, perform the following steps:
$ @sys$manager:tcpip$bind_shutdown.com |
options { directory "TCPIP$BIND_COMMON:[TCPIP$BIND]"; }; |
$ @sys$manager:tcpip$bind_startup.com |
Problem:
In previous releases, a change to the list of BIND servers in the resolver configuration was not recognized when attempting to set host via DECnet over IP. The customer would have to reboot for changes to take effect.
Solution:
This problem is corrected in this release.
4.2.3 Resolver Clients Not Receiving Responses from the BIND Server
Problem:
In previous releases, some resolver clients did not get responses from the BIND server after a failover event when using the cluster alias.
Solution:
This problem is corrected in this release.
4.2.4 ACCVIO When Using TSIG
Problem:
In previous releases, the NSUPDATE utility could ACCVIO when using TSIG and attempting to delete a CNAME record. The ACCVIO would only occur if some other NSUPDATE command was issued first with a send in between the command.
Solution:
This problem is corrected.
4.3 FTP Server Problems Fixed in This Release
The following sections describe FTP server problems fixed in this
release.
4.3.1 FTP Does Not Allow IP Address Specification
Problem:
The FTP server does not allow you to specify an IP address other than that of the connected client, or the specification of a privileged port, in the PORT, LPRT, or EPRT commands. Any such commands are rejected with the following error:
500 Illegal {PORT|LPRT|EPRT} command. |
The FTP server and client prevent data connection "theft" by a third party. For the FTP server, this applies to passive-mode connections from an IP address other than the client's, or from a privileged port. For the FTP client, this applies to active-mode connections from an IP address other than the server's, or from a port other than port 20.
Solution:
If this software change is not acceptable, you can restore the original behavior by defining the following logical names:
Server | Client |
---|---|
TCPIP$FTPD_ALLOW_ADDR_REDIRECT | TCPIP$FTP_ALLOW_ADDR_REDIRECT |
TCPIP$FTPD_ALLOW_PORT_REDIRECT | TCPIP$FTP_ALLOW_PORT_REDIRECT |
These logical names allow you to relax the IP address and port checks
in the FTP server and the FTP client.
4.3.2 DCL DIRECTORY or UNIX ls Command Returns "Illegal Port Command" Error
Problem:
On an FTP client, if you use a password with an embedded space to log into an OpenVMS FTP server, the following error message is returned in response to the DCL command DIRECTORY or the UNIX command ls :
500 Illegal PORT command. |
Solution:
This problem is corrected in this release.
4.4 FTP Client Problems Fixed in This Release
The following sections describe FTP client problems fixed in this
release.
4.4.1 FTP Client Fails to Delete Interim Files after GET/MGET Commands
Problem:
After an FTP GET or MGET command entered with wildcard characters completes, the temporary TCPIP$FTP_TEMPnnnnnnnn.TMD files created by FTP are supposed to be deleted from the SYS$SCRATCH area. However, if no files match the wildcard criteria, FTP fails to delete any of the temporary files. (If at least one file matches the wildcard criteria, FTP successfully deletes any TCPIP$FTP_TEMPnnnnnnnn.TMD files created in SYS$SCRATCH.)
Solution:
This problem is corrected in this release.
4.5 IMAP Problems Fixed in This Release
The following sections describe IMAP problems fixed in this release.
4.5.1 TELNET to IMAP SSL Port 993 Hangs and Aborts The Same Results in Server Crash
Problem:
When using IMAP with SSL support, the IMAP client sometimes cannot connect to the server. Events such as the following are signaled in the IMAP server event log:
12:41:50 3020041B Session 10: Session::DoRun, one of our exceptions was unprocessed. 12:41:50 3020041B Session 10: Socket::Write, Network Error:0 |
Connection requests to IMAP SSL port 993 should satisfy SSL handshake to complete successfully. Raw telnet cannot perform SSL handshakes and hence hangs. However, exceptions on SSL handshake was server-wide and hence any unhandled exception was fatal to server. Solution:
The problem has been rectified by making SSL handshake session specific.
4.5.2 A Message Line Containing More Than 255 Characters Gets Truncated to 255 When Fetched via IMAP
Problem:
In a message, any line containing more than 255 characters (i.e., without intermediate CR/LF) was truncated to 255. This was too short in many cases. Solution:
With this fix, IMAP now reads message lines up to 2048 characters
including CR/LF.
4.5.3 IMAP server crashes intermittently
Problem:
IMAP server crashes intermittently while fetching messages with more than 256 characters per line. IMAP server crashes intermittently while listing empty folders. Solution:
This has been rectified in this release. The memory corruptions in
various functions, which had caused IMAP to crash, have been fixed.
4.6 IPv6 Problems Fixed in This Release
The following sections describe IPv6 problems fixed in this release.
4.6.1 iptunnel create Command Causes BIND Lookups for IPv4 Addresses
Problem:
When invoking an iptunnel create command that specifies IPv4 addresses for the tunnel source or end points, numerous DNS name resolution queries are sent to the name server even though resolution is not needed. These queries could result in a delay.
Solution:
This problem is corrected in this release.
4.7 LPD/LPR and TELNETSYM Problems Fixed in This Release
The following sections describe LPD/LPR and TELNETSYM server problems
fixed in this release.
4.7.1 Print Jobs Using Wildcard Proxy from Hosts with No Name to Address Translation Available Are Rejected
Problem:
Print jobs using wildcard proxy from hosts with no name to address translation available should succeed but are rejected.
Solution:
This release resolves this problem. Print jobs using wildcard proxy
from hosts with no name to address translation available will now
succeed.
4.7.2 $PRINT/PARAM=(host=x) would report an access violation (ACCVIO)
Problem:
$PRINT/PARAM=(host=x) would report an access violation (ACCVIO).
Solution:
This problem is corrected in this release.
4.8 NFS Server Problems Fixed in This Release
The following sections describe NFS server problems fixed in this
release.
4.8.1 NFS Server Overwrites Files with Case-Sensitive Lookup
With OpenVMS Version 7.3-1 and higher the /CASE_LOOKUP=BLIND qualifier with the SET PROCESS command causes the case of file names to be ignored during lookups, while /CASE_LOOKUP=SENSITIVE causes the case of file names to be considered. However, if case sensitivity is not enabled on the NFS server, and the NFS client attempts to create both of those files, unexpected results can happen. For example the second file might overwrite the first.
With this release of TCP/IP Services, the TCP/IP management command ADD EXPORT has two new options: CASE_BLIND and CASE_SENSITIVE, which control UNIX-like case sensitivity for NFS server file lookups. For example, when case sensitivity is enabled, NFS preserves the case in the file names AaBBc.TXT and AABBC.TXT, regarding them as two different files.
In general, TCP/IP Services clients (not servers) determine whether lookups are case sensitive because they perform lookups in their local directory cache rather than on the server. However, when a file is being created, the server controls whether case sensitivity is in effect. Make sure that the case-sensitivity options for the server and client match; otherwise, unexpected results can occur.
For more information on the CASE_BLIND and CASE_SENSITIVE options, enter the following command:
$ TCPIP HELP ADD EXPORT |
Problem:
Newly created directories should inherit the version limit attribute from their parent directory. When a directory is created at the request of an OpenVMS NFS client, the attribute is inherited as expected; however, directories created at the request of non-OpenVMS NFS clients do not inherit this attribute. This is a problem particularly for UNIX clients, because UNIX files only have one version, but the version limit of a new directory is set to zero (no limit).
Solution:
This problem is corrected in this release. Directories created for
non-OpenVMS clients now inherit the parent directory's version limit
attribute.
4.8.3 NFS Server and netstat Do Not Run Properly on Alpha Systems Not Running EV56 or Later Technologies
Problem:
On Alpha systems predating the EV56 processor, the NFS server and the netstat utility either experience excessive instruction time or do not run at all.
Solution:
This problem is corrected in this release.
4.8.4 MOUNT Server Problems Fixed in This Release
The following sections describe MOUNT server problems fixed in this
release.
4.8.5 Client Unable to Mount Devices
Problem:
In previous releases, if at least two exports were added to the export database, with options specified, a client was unable to mount both of the devices. It would only be able to mount the last export entered.
Solution:
This problem is corrected in this release.
4.9 NTP Problems Fixed in This Release
The following sections describe NTP problems fixed in this release.
4.9.1 NTPDATE Issue If the NTP Service Is Not Defined
Problem:
In previous releases of TCP/IP Services, if the NTP service was not defined in the TCP/IP Configuration database, the ntpdate utility would produce an error or ACCVIO.
Solution:
This problem is corrected in this release.
4.9.2 NTP Server Automatically Purges Log Files
Problem:
Previously, the NTP server would automatically purge log files when NTP was started (/keep=5). As long as NTP remained running, another purge was not performed.
Solution:
With this release the NTP server will still purge log files at NTP
startup time. In addition it will also automatically purge log files
once per day before creating the new daily log file.
4.9.3 NTP Broacast Feature Does Note Work on an IPv6-enabled System
Problem:
In V5.5 the NTP broadcast feature was not working on an IPv6-enabled system.
Solution:
This problem has been corrected.
4.10 LBROKER Problems Fixed in This Release
The following section describes LBROKER problems fixed in this release.
4.10.1 Load Broker Polls Metric Servers Only Twice
Problem:
In previous releases of the TCP/IP software, the load broker would poll the metric servers twice before marking the address for removal from the DNS alias. The documentation stated that metric servers would be polled three times before the address is marked for removal.
Solution:
The software has been corrected to align with the documentation.
4.11 UCP Problems Fixed in This Release
The following section describes UCP problems fixed in this release.
4.11.1 TCPIP SHOW CONFIG NAME Incorrectly Generates Write Audit Alarm
Problem:
TCPIP SHOW CONFIGURATION NAME command generates security alarm for WRITE operation on TCPIP$CONFIGURATION.DAT file.
Solution:
This release fixes this problem. The
WRITE
mode has been removed while accessing the
TCPIP$CONFIGURATION.DAT
when using
TCPIP SHOW CONFIGURATION
commands.
4.11.2 TCPIP SHOW MAIL/ENTRY Failure
Problem:
The TCPIP SHOW MAIL /ENTRY=entry_number fails for every alternative attempts when executed from the same terminal session.
Solution:
This problem has been fixed in this release.
4.11.3 PIPE to tcpip show conf communication fails
Problem:
The tcpip show configuration communication command works well when running standalone. However, the command fails when executing the same in a pipe and displays the following error:
$pipe tcpip show configuration communication | type sys$input %TCPIP-E-TCPIPDISPLAY, error displaying information -TCPIP-F-BUGCHK, TCPIP internal error -RMS-F-SYS, QIO system service request failed |
Solution:
This problem has been fixed in this release.
4.11.4 Problems Generating Correct Database Files with the TCPIP CONVERT/UNIX BIND Command
Problem:
In previous releases, there could be problems generating correct database files when using the TCPIP CONVERT /UNIX BIND command. This could result in database files that contained unqualified hostnames in the SOA and NS records.
Solution:
This problem has been corrected.
4.11.5 Illegal BIND Resolver Search Lists Defined via the TCPIP SET NAME/PATH Command
Problem:
In previous releases, UCP would allow illegal BIND Resolver search list (paths) to be defined via the TCPIP SET NAME/PATH command.
Solution:
This problem has been corrected.
4.12 RLOGIN Problems Fixed in This Release
The following section describes RLOGIN problems fixed in this release.
4.12.1 System Crash, INCONSTATE for an RLOGIN socket
Problem: System crash with INCONSTATE when logging out of RLOGIN.
Solution:
This problem is only with the Scalable Kernel and fixed in this release.
4.13 RSH Problems Fixed in This Release
The following section describes RSH problems fixed in this release.
4.13.1 RMT Server Does Not Work with Solaris Clients
Problem: OpenVMS RMT server does not work with Solaris RMT clients.
Solution:
This release corrects this problem. Upon the failure, the Solaris
client checks that it can still access the server by sending an
S
. The fix is to add code to detect the
S
command.
4.13.2 RSH /Escape_character for the Alpha Client Causes an Access Violation
Problem: RSH /escape_character for the Alpha client cause either an access violation or improper terminal characteristics.
Solution:
This problem is fixed in this release.
4.14 RCP Problems Fixed in This Release
The following section describes RCP problems fixed in this release.
4.14.1 RCP Command Returns Error Status When /LOG Option is Used
Problem: The RCP command returns error status when /LOG option is used though the job completed successfully.
Solution:
This problem is corrected in this release. The RCP command now returns
the appropriate status when
/log
option is used.
4.14.2 RCP Cannot Locate A File in the Current Directory When SET DEFAULTed to a Search List
Problem: RCP cannot locate a file in the current directory when you are SET DEFAULTed to a search list.
Solution:
This release corrects this problem in RCP. RCP can now locate and copy
the file in the current directory when you have SET DEFAULTed to a
search list.
4.15 SMTP Problems Fixed in This Release
The following sections describe SMTP problems fixed in this release.
4.15.1 Try-A-Records Governs SMTP Symbiont Use of A Records For Relay
Problem:
When attempts to relay outbound mail to the gateway(s) specified in MX records fail, the SMTP symbiont tries to relay outbound mail using A records. This is a hedge against misconfigured MX records. In today's Internet however, hosts pointed to by A records for a domain are often configured to reject mail for the domain when it doesn't come from a known host as a counter measure to protect against SPAM route through. Attempts to relay mail to such a host may be rejected mid-way through the SMTP dialog. This causes the message to be bounced.
Solution:
A new Try-A-Records switch is added to the SMTP.CONFIG file to govern the SMTP symbiont's use of A records for outbound mail relay should attempts to relay to MX gateways fail or should no MX records be present.
The switch can take the values "NEVER", "ALWAYS" or IFNOMX". These values are as follows:
Value | SMTP Symbiont Behavior |
NEVER | The SMTP symbiont will never try to relay mail using A records, even if no MX records are found. |
ALWAYS | The SMTP symbiont will always try to relay mail using A records. Note that gateways specified in MX records are still tried first. A records are used only if attempts to contact MX gateway(s) fail or when no MX records are found. |
IFNOMX | The SMTP symbiont will try to relay mail using A records only if no MX records are found. If one or more MX records are found, A records will not be used. The default value of the configuration field for Try-A-records is IFNOMX. |
Previous | Next | Contents |