Patch Name: PHSS_20649 Patch Description: s700_800 10.20 MeasureWare/Glance C.02.15 libarm patch Creation Date: 99/12/14 Post Date: 00/01/05 Hardware Platforms - OS Releases: s700: 10.20 s800: 10.20 Products: MeasureWare C.02.15 GlancePlus C.02.15 GlancePlus Pak C.02.15 Filesets: MeasurementInt.TT,C.02.15.000 Automatic Reboot?: No Status: General Release Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHSS_20649 Symptoms: PHSS_20649: There is a potential problem that ARM-instrumented programs may encounter on systems running with hostnames which are exact multiples of 8 characters long. For example, a program linked to libarm.sl running on a system with a 8 character hostname or a 16 character hostname may abort or experience other memory allocation related failures. This symptom is a corner case and is not likely to occur for most applications. This patch is specific to the 10.20 December 98 Application Release. Other patches provide this same fix for other OS and product versions. Defect Description: PHSS_20649: There is an interaction of libarm with the small block allocator of libc's malloc such that on systems with hostnames exactly 8 or 16 or 24 or 32 characters long, one byte of heap data may be overwritten by a null character when the program calls arm_init. This happens because arm_init called malloc to allocate some internal memory based on the size of the hostname, and then it wrote the hostname appended with a null character into that memory. SR: R555004886 Patch Files: /opt/perf/lib/libarm.a /opt/perf/lib/libarm.sl what(1) Output: /opt/perf/lib/libarm.a: libarm C.02.15.10 12/02/99 HP-UX 10.20 =*= /opt/perf/lib/libarm.sl: libarm C.02.15.10 12/02/99 HP-UX 10.20 =*= cksum(1) Output: 1665755505 45942 /opt/perf/lib/libarm.a 111648932 32943 /opt/perf/lib/libarm.sl Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: None Equivalent Patches: PHSS_20652: s700: 11.00 s800: 11.00 Patch Package Size: 140 KBytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. ------------------------------------------------------------ 1. Back up your system before installing a patch. 2. Login as root. 3. Copy the patch to the /tmp directory. 4. Move to the /tmp directory and unshar the patch: cd /tmp sh PHSS_20649 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHSS_20649.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHSS_20649. If you do not wish to retain a copy of the original software, you can create an empty file named /var/adm/sw/patch/PATCH_NOSAVE. WARNING: If this file exists when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. It is recommended that you move the PHSS_20649.text file to /var/adm/sw/patch for future reference. To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHSS_20649.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: SUBSYSTEM_SHUT Installation of this libarm patch will affect any current programs using ARM. The MeasureWare scopeux collection daemon will be terminated if it is active when this patch is installed. The MeasurementInt processes midaemon and ttd will be terminated if they are active. This will cause any Glance processes to terminate as well. You will need to restart the performance tools after patch installation completes (/opt/perf/bin/mwa start). Also note that any ARMed applications should be restarted after patch installation completes. Application programs which were archive-linked with libarm.a should be recompiled.