Patch Name: PHCO_23353 Patch Description: s700_800 10.24 (VVOS) ex(1),vi(1),expreserve(1) patch Creation Date: 01/02/09 Post Date: 01/02/13 Hardware Platforms - OS Releases: s700: 10.24 s800: 10.24 Products: N/A Filesets: TextEditors.EDITORS Automatic Reboot?: No Status: General Release Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHCO_23353 Symptoms: PHCO_23353: Ported HP-UX patch PHCO_22228 to VVOS. The notes for HP-UX patch PHCO_8654 states that the permissions on expreserve should be 0555. The permissions are different on a VVOS system. Based on HP-UX patch PHCO_22228: 1. exrecover(1) functionality corrected. 2. vi(1) cannot handle tags longer than 30 characters. 3. vi(1) is not matching the patterns correctly in case of multi-byte locales. 4. vi(1) does not handle window size change signal (SIGWINCH) in case of piped commands. 5. Line number information was not being reset whenever a fresh file was being opened after alternation between files for e# command. Based on HP-UX patch PHCO_13667: 1. Incomplete fix in PHCO_12335. Word anchoring in global substitution not handled correctly. vi fails for the specific case - g/\/s//globals/g 2. vi command reports incorrect number of characters for multibyte locales. Based on HP-UX patch PHCO_12335: 1. End of Word anchoring (\>) in substitution causes a loss of punctuation and white space. Based on HP-UX patch PHCO_11678: 1. %s/\/xx_\1/g does not work. Based on HP-UX patch PHCO_9490: 1. Begin of Word anchoring (\<) under a global substitution causes an unexpected truncation of the string. 2. End of Word anchoring (\>) in substitution causes a loss of punctuation and white space. Based on HP-UX patch PHCO_8654: Permission of /usr/lib/expreserve should be 0555. PHCO_12305: A non privileged user does not receive local mail notifications when the user's vi session is killed or terminated unexpectedly. Defect Description: PHCO_23353: Ported HP-UX patch PHCO_22228 to VVOS. The notes for HP-UX patch PHCO_8654 states that the permissions on expreserve should be 0555. The permissions are different on a VVOS system. Based on HP-UX patch PHCO_22228: 1. exrecover(1) functionality corrected. Resolution: Code has been modified to take care of this issue. 2. vi(1) cannot handle tags longer than 30 characters. Resolution: Now the code is modified to handle the tags longer than 30 characters. 3. vi(1) is not matching the patterns correctly in case of multi-byte locales, because vi(1) is not substituting the newline in a multi-byte locale. Resolution: The code has been modified to take care of the newline substitution in case of multi-byte locales. 4. The signal handler for "SIGWINCH" was not activated for piped commands to vi(1). Resolution: Now the code is modified to take care of signal handler for SIGWINCH while piping. 5. The vi(1) behaves differently between 9.X and 10.X because line number information was not being reset whenever a fresh file was being opened after alternation between files . Resolution: Now the code has been modified to reset the line number information properly when a fresh file was being opened after alternation between files. Based on HP-UX patch PHCO_13667: 1. Incomplete fix in PHCO_12335. Word anchoring in global substitution causes a loss of punctuation and white space. vi fails for the specific case - g/\/s//globals/g 2. vi command reports incorrect number of characters for multibyte locales. vi used to report the number of bytes instead of the number of characters in the file. Based on HP-UX patch PHCO_12335: vi does not recognize that ";" does not belong to a word. Based on HP-UX patch PHCO_11678: The PHCO_9490 version of ex(1) translates incorrectly. Based on HP-UX patch PHCO_9490: Since 10.01, vi(1)/ex(1) fails to correctly interpret/process \< and \> in substitute commands. This worked OK in 9.04. Based on HP-UX patch PHCO_8654: Permission of /usr/lib/expreserve should be 0555. PHCO_12305: When a non privileged user's vi session is terminated unexpectedly, the user does not receive mail notifying the user that a copy of the editor session was saved and can be retrieved by using the 'recover' command of vi. SR: 8606156264 8606100309 4701385112 1653249524 1653280651 1653251314 1653240234 4701379339 5003398289 1653213132 1653201574 1653181115 4701329391 4701365619 Patch Files: /usr/bin/e /usr/bin/edit /usr/bin/ex /usr/bin/vedit /usr/bin/vi /usr/bin/view /usr/lib/nls/msg/C/exrecover.cat /usr/lbin/exrecover /usr/lbin/expreserve /etc/auth/system/files.fcdb/05.patches/PHCO12305.fcdb what(1) Output: /usr/bin/e: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/bin/edit: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/bin/ex: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/bin/vedit: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/bin/vi: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/bin/view: $Revision: 78.2.1.21 $ 32-bit NLS $ PATCH_10_20: hpux_rel.o ex.o ex_addr.o ex_cmds.o ex_ cmds2.o ex_cmdsub.o ex_data.o ex_extern.o ex _get.o ex_io.o ex_put.o ex_re.o ex_rldata.o ex_set.o ex_subr.o ex_temp.o ex_tty.o ex_uni x.o ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex _voper.o ex_vops.o ex_vops2.o ex_vops3.o ex_ vput.o ex_vwind.o printf.o bcopy.o ex_crypt. o 01/01/24 /usr/lib/nls/msg/C/exrecover.cat: None /usr/lbin/exrecover: $Revision: 78.2.1.21 $ 32-bit NLS $ $Revision: 76.2.2.1 $ PATCH_10_20: hpux_rel.o exrecover.o ex_extern.o 01/0 1/24 /usr/lbin/expreserve: $Revision: Hewlett-Packard ISSL Level vvos_davis40 $ $Header: Hewlett-Packard ISSL Release vvos_ davis $ $Date: Fri Feb 9 20:43:46 EST 2001 $ $Revision: 78.2.1.21 $ 32-bit NLS $ cmd/ex/expreserve.c, hpuxcmdfs, vvos_davis, davis176 $Date: 01/02/09 21:00:01 $ $Revision: 1.12 PATCH_10.24 (PHCO_23353) $ $Revision: 76.2 $ /etc/auth/system/files.fcdb/05.patches/PHCO12305.fcdb: $Revision: Hewlett-Packard ISSL 1.1 etc/auth/system/ files.fcdb/05.patches/PHCO12305.fcdb, hpuxcm dfs, vvos_davis, davis175 $ $Date: 97/09/08 16:24:05 $ etc/auth/system/files.fcdb/05.patches/PHCO12305.fcdb , hpuxcmdfs, vvos_davis, davis175 $Date: 01/ 02/09 16:21:41 $ $Revision: 1.1 PATCH_10.24 (PHCO_12305) $ cksum(1) Output: 408415990 237568 /usr/bin/e 408415990 237568 /usr/bin/edit 408415990 237568 /usr/bin/ex 408415990 237568 /usr/bin/vedit 408415990 237568 /usr/bin/vi 408415990 237568 /usr/bin/view 3071133312 558 /usr/lib/nls/msg/C/exrecover.cat 1038296614 20480 /usr/lbin/exrecover 2213825864 20480 /usr/lbin/expreserve 1764124143 737 /etc/auth/system/files.fcdb/05.patches/ PHCO12305.fcdb Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHCO_12305 Equivalent Patches: PHCO_22229: s700: 11.00 s800: 11.00 PHCO_23354: s700: 11.04 s800: 11.04 PHCO_22228: s700: 10.20 s800: 10.20 PHCO_22848: s700: 10.10 s800: 10.10 PHCO_22849: s700: 10.01 s800: 10.01 Patch Package Size: 340 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 PHCO_23353 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHCO_23353.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHCO_23353. 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 PHCO_23353.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/PHCO_23353.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None