Patch Name: PHCO_9227 Patch Description: s700_800 10.20 POSIX shell cumulative patch Creation Date: 96/11/15 Post Date: 96/11/19 Hardware Platforms - OS Releases: s700: 10.20 s800: 10.20 Products: N/A Filesets: OS-Core.UX-CORE OS-Core.CORE-ENG-A-MAN Automatic Reboot?: No Status: General Superseded Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHCO_9227 Symptoms: PHCO_9227: 1) While using in-line command editing, characters would sometimes appear that had not been typed by the user, most commonly ^B. Also, in editing long history lines, especially near the end of the lines, garbage characters would appear and the line couldn't be edited properly. 2) Posix shell when invoked with -c or called by the system() library call did not read commands from $ENV file. 3) When Posix shell scripts were run with sh -c or system() calls, environment variables were being set or changed incorrectly. E.g. sh -c "VAR=x a.out; echo \$VAR" should echo a blank, but instead echoes "x" because VAR was changed in the parent's environment. 4) In Posix shell scripts run with sh -c or system() calls and including embedded "here" documents, temporary files (/tmp/sh?????.?) were not removed upon completion. E.g. sh -c "cat <<= hello =" left a file (/tmp/sh?????.?). PHCO_8785: 1) A trap set within a function has no effect after the function returns. For example, trap 'echo exiting' EXIT f() { trap 'echo alternate' EXIT } f will produce output: alternate exiting Correct output for a POSIX compliant shell is: alternate 2) exit called from within a sourced file ( . file ) from within a function exits the sourced file, but not the shell. For example, if file t1 contains: f() { . ./t2 } f echo should not get here and file t2 contains exit Output is "should not get here", but this script should produce no output. 3) Some builtin commands cause the shell to exit when the command contains a syntax error. For example, ( fc -e ; echo code = $? ; exit 0 ) ; echo $? should output: sh: fc: Specify a parameter with this command. code = 1 0 but instead produces: sh: fc: Specify a parameter with this command. 1 4) When a here-document is used on the left side of a pipeline that is put into the background, the shell sometimes fails to open temporary files. For example, cat < Match What Target Has" and then "Actions -> Install" from the Menubar. 5c. For a heterogeneous NFS Diskless cluster: - run swinstall on the server as in step 5a to install the patch on the cluster server. - run swcluster on the server as in step 5b to install the patch on the cluster clients. By default swinstall will archive the original software in /var/adm/sw/patch/PHCO_9227. 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_9227.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_9227.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None