SEARCH CONTACT US SUPPORT SERVICES PRODUCTS STORE
United States    
COMPAQ STORE | PRODUCTS | SERVICES | SUPPORT | CONTACT US | SEARCH
gears
compaq support options
support home
software & drivers
ask Compaq
reference library
support forum
frequently asked questions
support tools
warranty information
service centers
contact support
product resources
parts for your system
give us feedback
associated links
.
} what's new
.
} contract access
.
} browse patch tree
.
} search patches
.
} join mailing list
.
} feedback
.
patches by topic
.
} DOS
.
} OpenVMS
.
} Security
.
} Tru64 Unix
.
} Ultrix 32
.
} Windows
.
} Windows NT
.
connection tools
.
} nameserver lookup
.
} traceroute
.
} ping
OpenVMS ALPACRT13_062 Alpha V6.2 - V6.2-1H3 DEC C RTL ECO Summary

TITLE: OpenVMS ALPACRT13_062 Alpha V6.2 - V6.2-1H3 DEC C RTL ECO Summary Modification Date: 25-FEB-99 Modification Type: Updated Kit: Supersedes ALPACRT12_062 NOTE: An OpenVMS saveset or PCSI installation file is stored on the Internet in a self-expanding compressed file. The name of the compressed file will be kit_name-dcx_vaxexe for OpenVMS VAX or kit_name-dcx_axpexe for OpenVMS Alpha. Once the file is copied to your system, it can be expanded by typing RUN compressed_file. The resultant file will be the OpenVMS saveset or PCSI installation file which can be used to install the ECO. Copyright (c) Compaq Computer Corporation 1997, 1999. All rights reserved. OP/SYS: DIGITAL OpenVMS Alpha COMPONENT: DEC C RTL - DECC$SHR.EXE LOCALEDEF.EXE CRTLMSGDEF.OBJ (Updates STARLET.OLB) CRTL.OBJ (Updates STARLET.OLB) ACRT$ECO_DROP.COM (If desired, this command file may be used to remove the ECO and restore the original files and libraries.) SOURCE: Compaq Computer Corporation ECO INFORMATION: ECO Kit Name: ALPACRT13_062 ECO Kits Superseded by This ECO Kit: ALPACRT12_062 ALPACRT11_062 ALPACRT10_062 ALPACRT09_062 ALPACRT08_062 ALPACRT07_062 ALPACRT06_062 ALPACRT05_062 ALPACRT04_062 ALPACRT02_062 ECO Kit Approximate Size: 13068 Blocks Kit Applies To: OpenVMS ALPHA V6.2, V6.2-1H1, V6.2-1H2, V6.2-1H3 System/Cluster Reboot Necessary: Yes Rolling Reboot Supported: Yes Installation Rating: 3 - To be installed on all systems running the listed versions of OpenVMS which are experiencing the problems described. 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 the DEC C RTL on OpenVMS Alpha V6.2 through V6.2-1H3. This kit addresses the following problems: Problems addressed in the ALPACRT13_062 kit: o The DECC$SHR.EXE image in the ALPACRT12_062 remedial kit did not include X/Open Issue 4 (XPG4) functions. Problems addressed in the ALPACRT12_062 kit: o A call to the POW function resulted in a %SYSTEM-F-HPARITH exception when called in D_FLOAT floating point mode. The result exceeded the maximum value representable in D_FLOAT format. Problems addressed in the ALPACRT11_062 kit: o Sometimes, a call to the sigvec() C RTL function places the process in hibernate state. o The printf function was enhanced to print "(null)" when passed a null pointer to be used with the "%S" format specifier. Prior to this, the DEC C RTL would issue an access violation error. o The setlocale function was enhanced to detect the situation where run-time support for the specified locale is not available on the system. Prior to this, the function would successfully load the locale, but a call to mbtowc function, for example, would result in access violation. Problems addressed in the ALPACRT10_062 kit: o The LOCALE COMPILE command fails. Problems addressed in the ALPACRT09_062 kit: o Customers who installed the previous ECO kit for OpenVMS V6.2 have reported problems accessing VFC files. The symptom is incorrect data when reading the first record of the file. o The printf function has been corrected to properly initialize a work buffer during the format string processing. Prior to this change, the processing of a format specifier could result in data from the last specifier processed remaining in the buffer. This problem was reported as fixed in the ALPACRT04_062 and VAXACRT04_062, but continued testing showed that the problem still exists. o Although files in general are correctly inherited after a fork/exec function call, files which are opened in any sort of sharing mode are not. o Unlike Digital UNIX, calling the fsync function with a socket descriptor results in an access violation. The correct behavior is to set errno to EINVAL (Invalid Value) and return a failure status. o When accessing files in stream mode, closing the file may result in an extra byte being written to the file. While this byte is not seen using the type command, it may be seen when using the dump utility. o The runtime library disables control_y for a process when a call is made to the signal function instructing it to ignore SIGINT signals, but does not restore control_y state on image exit, so that after image rundown they remain disabled. Note that the during image rundown, the runtime library restores the state to that which existed when they were disabled. Applications which make calls to the LIBRTL routines LIB$DIS/ENABLE_CTRL after calling signal may have these changes discarded on image exit. o A customer reports that the functions atof, strtod, and wcstod incorrectly return HUGE_VAL values when compiling with the IEEE_FLOAT and an ieee_mode qualifier of DENORM_RESULTS. The results returned have been modified to take the compilation mode of the calling program into account. The return value can now be compared against HUGE_VAL. o The following code segment demonstrates a problem in the printf family of functions running on OpenVMS for Alpha. double n; for (n = 9.0e16; n < 11.0e17; n += 1.0e+17) printf ("%20.0f\n", n); The result is that the final zero is missing in the display of all but the first and last line. Problems addressed in the ALPACRT08_062 kit: o An ISV reports that extra characters are seen on occasion when using a subprocess that sends data back to the parent process using a mailbox. o A case was found where the fseek function fails. It correctly returns a -1 value, but fails to set errno properly. o After migration to OpenVMS V6.2, processing VFC files may be difficult. Calling the fgetc function results in the error RMS-W-RTB which is "record too large for user's buffer". In addition, carriage control information in PRINT VFC files is not interpreted correctly resulting in superfluous or missing blank lines when the contents are displayed to a terminal. Problems addressed in the ALPACRT07_062 kit: o Testing of the printf function showed that the conversion of "printf("%.9sn",s)" will access all 9 characters of the string even if the null terminator is earlier in the string. If the terminator is at the end of a page and the next page is a protected page, an access violation will result. o Extra characters may be written to stdout under the conditions that the application is reading from stdin and it is not a terminal. The extra characters appear random in the output, but in fact are written each time a new record is read from stdin. o An application which closes either stdin, stdout, or stderr, and then reopens it using the dup function may not have the file actually closed if I/O is not done using the file descriptor. A workaround is to force I/O on the file by using a function call such as sync or flush. Problems addressed in the ALPACRT06_062 kit: o A change occurred in how fseek works with fixed length odd byte record lengths. The description of fseek in the rtl reference manual says "The function can position fixed-length record-access file with no carriage control or a stream-access file on any byte offset, ....". Using OpenVMS V6.1 the phrase "on any byte offset" did not include the pad byte that RMS keeps on disk between records of odd length in fixed length record format sequential files. By the time of OpenVMS V6.2, the phrase "on any byte offset" apparently includes that pad byte. o The qsort function no longer access violates when sorting a large number of records. This was demonstrated by sorting 1966079 records whose values were 1 through 1966079. The qsort function can now sort the maximum number of records. o The DEC C Runtime Library had previously added the ability for users to define the logical name DECC$DEFAULT_LRL to change the default longest record length value on stream files. A problem existed such that defining this logical name to zero resulted in files which had fixed length records instead of stream_lf records. o A problem in the way the timer functions, such as sleep and alarm, was introduced into OpenVMS 6.2. This family of functions has been rewritten to no longer lose Timer Queue Entries. o The rewind function is documented to write all buffered output and discard all buffered input prior to rewinding the file. Under certain situations, the buffer was not being flushed to disk. o In the access function, the user_group and user_member components are no longer truncated when they are larger than 255. In addition, the system group now abides by the MAXSYSGROUP SYSGEN parameter. Problems addressed in the ALPACRT05_062 kit: o The RAB size for the LRL (longest record length) was incorrectly set to -1 when the value was greater than the maximum allowed value - greater than 8K. An invalid fseek() was therefore performed. Problems addressed in the ALPACRT04_062 kit: o Due to an uninitialized buffer, certain combinations of calls to the printf() function would result in spurious characters being displayed. o Calls to EXECVE with a parameter or environment list larger than 127 bytes fails. o Poor performance or a failure may occur when an attempt is made to SORT a Stream_LF file with variable length records. o DECC$TO_VMS does not recognize hyphens in OpenVMS file names resulting in difficulties porting software to OpenVMS. Problems addressed in the ALPACRT02_062 kit: o OpenVMS Alpha V6.2 STARLET modified two symbols (SYS_ERRLIST and SYS_NERR) to have DECC$ prefixes. These symbols were inaccessable. The ability to access these symbols via external references was not shipped with OpenVMS Alpha V6.2 and is included in this kit. NOTE: In the C database, there was an article entitled: [DEC C] %LINK-I-UDFSYM, SYS_ERRLIST %LINK-I-UDFSYM, SYS_NERR which gave instructions on how to compile and insert these global symbols into STARLET.OLB via small C and MACRO programs. These small programs included these global symbols in a module named DECC$SYS_ERRLIST. The installation of ALPACRT02_062 will fail, ONLY FOR THOSE CUSTOMERS who utilized this article. With ALPACRT02_062, these global symbols are included in the CRTL.OBJ object file that is replaced into STARLET.OLB. When this occurs, you will get a DUPGLOBALS error. That is, the global symbols SYS_ERRLIST and SYS_NERR are now defined twice (hence DUPlicates). To workaround this issue, please do the following before installing the ALPACRT02_062 kit: $ LIBRARY/DELETE=DECC$SYS_ERRLIST SYS$LIBRARY:STARLET.OLB o On FT2 and FT3 of OpenVMS AXP T6.2, the DEC C RTL routine chdir() fails when passed a logical search list. o In the DSNlink and DIA C database, there is an article on how to implement non-blocking pipes under OpenVMS. The article title is: Example-C Implementing Non-Blocking Pipes Using VAX C RTL This example fails under OpenVMS Alpha V6.2. It worked under OpenVMS Alpha V6.1. o When fget is used to read a remote file over DECnet, different results are obtained than when an identical file is read locally. o The function ungetc() stopped working in OpenVMS V6.2 for both variable and fixed length records. o Using VAXC, the curses code fragment: wmove(win, 1, 2); wprintw(win, "First line" ); wmove(win, 2, 2); wprintw(win, "Second line"); produces the output: First line Second Line Using the compatible VMS Curses package provided by DECC on both VAX and Alpha, the results are: First lineSecond Line o A call to getenv("TERM") will fail when it is issued from a VT500 class terminal. o If a program containing the following fragment is run on an OpenVMS Alpha V6.1 system, a file called test.file will be created. A second run of the fragment would append to the test.file. If the same fragment is run on an OpenVMS Alpha V6.2 system, a new test.file is created every time. It is not appended to the original test.file. fp = fopen("TEST", "a", "dna=SYS$DISK:[].file"); o On slow systems, the return value from sleep (which is defined to be how much of the time sleep did not occur) could be a negative number if sleep continued for too long. o Two locks may be obtained during I/O operations. In the fclose() function, lock A is obtained before lock B. In all other CRTL functions lock B is obtained before lock A. Under adverse conditions, deadlock results. o The implementation of toupper/tolower was changed to use the value supplied by the user to index into the table of lowercase characters. DEC C RTL was incorrectly using only 7 bits instead of 8. OpenVMS Alpha V6.2 mainlined the XPG4 support. Part of this support was support for locales. o When using fflush()/fsynch() with DEC C the "stdout" buffer is NOT flushed at the time you call these RTLs. Eventually the buffers do get flushed, but with VAX C the buffer is flushed using the same RTLs. o Undefined symbols, CC$RMS_xxx, exist in STARLET.OLB. The symptoms for this are the following linker errors: %LINK-W-NUDFSYMS, 2 undefined symbols: %LINK-I-UDFSYM, CC$RMS_XABFHC %LINK-I-UDFSYM, CC$RMS_XABPRO o Positioning to the end of file using the fseek function with the SEEK_SET option will no longer succeed if the user does not open the file with write. o Bizarre I/O behavior occurs when the I/O operation involves positioning to the last block in the file. o A regression was introduced in OpenVMS Alpha V6.2 that always causes access violations in the scanw and wscanw routines. o An access violation may occur when zero length records from a FORTRAN carriage control record are read. The carriage control from the previous read is used causing incorrect data to be the buffer. INSTALLATION NOTES: The images in this kit will not take effect until the system is rebooted. If there are other nodes in the VMScluster, they must also be rebooted in order to make use of the new image(s). If it is not possible or convenient to reboot the entire cluster at this time, a rolling re-boot may be performed. During installation, the following message may appear: %INSTALL-E-NODELSHRADR, unable to delete image with shareable address data -INSTALL-I-PLSREBOOT, please reboot to install a new version of this image This is not a cause for concern. It simply means that DECC$SHR.EXE was installed as a resident image, which is the standard configuration for OpenVMS Alpha V6.2 systems. The new image will not take effect until the system is rebooted. REMOVAL INSTRUCTIONS: Remove this kit and restore the original files and libraries by logging into the SYSTEM account and typing the following DCL prompt: @SYS$UPDATE:ACRT$ECO_DROP NOTE: ACRT$ECO_DROP.COM installs the earlier version of DECC$SHR.EXE. However, the earlier version will not take effect until the system is rebooted. A reboot MUST be done as part of the removal process. Otherwise, the system may be left in an inconsistant state. To remove the kit from an OpenVMS cluster node, the ACRT$ECO_DROP.COM file must be run and a reboot MUST be performed on any system disk upon which the kit was installed.



This patch can be found at any of these sites:

Colorado Site
Georgia Site



Files on this server are as follows:

alpacrt13_062.README
alpacrt13_062.CHKSUM
alpacrt13_062.CVRLET_TXT
alpacrt13_062.a-dcx_axpexe

privacy and legal statement