Patch Name: PHCO_22411 Patch Description: s700_800 10.10 lpspool subsystem cumulative patch Creation Date: 00/09/26 Post Date: 00/10/13 Hardware Platforms - OS Releases: s700: 10.10 s800: 10.10 Products: N/A Filesets: PrinterMgmt.LP-SPOOL Automatic Reboot?: No Status: General Superseded Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHCO_22411 Symptoms: PHCO_22411: 1. rlpdaemon, lpstat, lp, cancel, disable, enable, rlpstat and rcancel have memory overflow. 2. rlpdaemon does not handle control characters correctly. PHCO_15615: Buffer overflow in rwrite and rlpdaemon could memory fault. PHCO_11440: 1. Cancelling a lp job with empty control file clears the whole queue. 2. Printer gets disabled on cancelling a printing job. PHCO_10748: 1. LP-spool hang or qstatus corrupt when /var full log says:Bogus request 2. Parent lpsched hangs when lpalt is used to move a request. 3. Model scripts does not handle SIGTERM any more. 4. lpsched introduced 5 sec delay between prints at 10.20 PHCO_8487: 1. lpsched hangs under FIFO full condition 2. Printers go idle even when requests are present in the queue 3. Jobs not printed when remote host(IBM) immediately snaps connection. 4. If a BSD system spooler sends a '\001' to rlp(1) after the control file has been sent, rlp(1) simply ignores the '\001' and removes the entry. PHCO_7103: 1. When request comes from IBM, to a printer which is in turn configured as a remote printer to another system ( BSD or Non-BSD ) , the printer queue in question will be shut down( disabled ). 2. lp is not able to print from a directory that has no perms for the world 3. Permission denied from rcancel if NIS uppercase and hostname lowercase. 4. rcancel (1M) fails with "Permission denied" if hostname is fully qualified. 5. rlpdaemon and spooler subsytem not working with WINDOWS NT. 6. lp spooler hangs if printers with active requests are disbled. 7. lpsched(1M) deadlocks when its total "MORE" message length exceeds 8192 bytes. 8. Divpage was treating the character '0xff' as EOF. When it gets this character it stops processing the input file. 9. If disk space is not available on the remote server to receive a print job the remote server responds with a return code of 02. The rlp process continues to run for approximately 5 minutes before it dies. 10. When large number of files are sent to a remote spooler the first couple of files are printed at the expected speed but rest of the following files are printed very slowly. The problem is seen on any machine running 10.x and remote spooling to the any other HP machine running 10.01, 9.04 or 9.05. Defect Description: PHCO_22411: 1. Memory fault in the commands is because of the incorrect handling of buffer for error message. Resolution: The buffer size is increased for the error message. If the argument is longer than the allocated buffer size, it is truncated before printing the error message. 2. rlpdaemon does not filter control characters. Because of this, some control characters may turn the user's terminal insane. Resolution: Control characters are replaced with blanks in rlpdaemon. PHCO_15615: rwrite and rlpdaemon should not cause any memory fault due to buffer overflows PHCO_11440: 1. Cancelling a lp job with empty control file clears the whole queue. 2. Printer gets disabled on cancelling a printing job. PHCO_10748: 1. LP-spool hang or qstatus corrupt when /var full log says:Bogus request 2. Parent lpsched hangs when lpalt is used to move a request. 3. Model scripts does not handle SIGTERM any more. 4. lpsched introduced 5 sec delay between prints at 10.20 PHCO_8487: 1. lpsched hangs under FIFO full condition 2. Printers go idle even when requests are present in the queue 3. Jobs not printed when remote host(IBM) immediately snaps connection. 4. If a BSD system spooler sends a '\001' to rlp(1) after the control file has been sent, rlp(1) simply ignores the '\001' and removes the entry. PHCO_7103: 1. When request comes from IBM, to a printer which is in turn configured as a remote printer to another system ( BSD or Non-BSD ) , the printer queue in question will be shut down( disabled ). 2. lp is not able to print from a directory that has no perms for the world 3. Permission denied from rcancel if NIS uppercase and hostname lowercase. 4. rcancel (1M) fails with "Permission denied" if hostname is fully qualified. 5. rlpdaemon and spooler subsytem not working with WINDOWS NT. 6. lp spooler hangs if printers with active requests are disbled. 7. lpsched(1M) deadlocks when its total "MORE" message length exceeds 8192 bytes. 8. Divpage was treating the character '0xff' as EOF. When it gets this character it stops processing the input file. 9. If disk space is not available on the remote server to receive a print job the remote server responds with a return code of 02. The rlp process continues to run for approximately 5 minutes before it dies. 10. When large number of files are sent to a remote spooler the first couple of files are printed at the expected speed but rest of the following files are printed very slowly. The problem is seen on any machine running 10.x and remote spooling to the any other HP machine running 10.01, 9.04 or 9.05. SR: 8606155796 8606155795 8606154599 5003347351 4701356097 1653198119 5003359760 1653198119 1653203109 1653208504 1653142588 5003279463 5003245241 5003242776 1653141861 5003253245 5003240705 5003297796 1653161091 1653162487 5003330688 1653172023 4701323964 5003318188 Patch Files: /usr/lbin/divpage /usr/bin/cancel /usr/bin/disable /usr/bin/enable /usr/bin/lpstat /usr/bin/lp /usr/lbin/rwrite /usr/sbin/lpsched /usr/sbin/rlpdaemon /usr/sbin/rlp /usr/sbin/lpadmin /usr/sbin/rlpstat /usr/sbin/rcancel /usr/lib/nls/msg/C/lp.cat what(1) Output: /usr/lbin/divpage: PATCH_10_10: divpage.o 00/09/26 /usr/bin/cancel: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o cancel.o 00/09/26 /usr/bin/disable: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o disable.o 00/09/26 /usr/bin/enable: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o enable.o 00/09/26 /usr/bin/lpstat: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o lpstat.o 00/09/26 /usr/bin/lp: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o lp.o 00/09/26 /usr/lbin/rwrite: PATCH_10_10: rwrite.o 00/09/26 /usr/sbin/lpsched: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o lpsched.o 00/09/26 /usr/sbin/rlpdaemon: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o rlpdaemon.o 00/09/26 /usr/sbin/rlp: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o rlp.o 00/09/26 /usr/sbin/lpadmin: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o lpadmin.o 00/09/26 /usr/sbin/rlpstat: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o rlpstat.o 00/09/26 /usr/sbin/rcancel: $Revision: 76.7.1.47 $ PATCH_10_10: hpux_rel.o rcancel.o 00/09/26 /usr/lib/nls/msg/C/lp.cat: None cksum(1) Output: 1546188619 20480 /usr/lbin/divpage 3069915239 40960 /usr/bin/cancel 729737458 24576 /usr/bin/disable 2646363437 16384 /usr/bin/enable 983727042 45056 /usr/bin/lpstat 1058528877 40960 /usr/bin/lp 2452080843 16384 /usr/lbin/rwrite 1062251927 53248 /usr/sbin/lpsched 2476227428 61440 /usr/sbin/rlpdaemon 1557403544 24576 /usr/sbin/rlp 1479406368 40960 /usr/sbin/lpadmin 1724696566 36864 /usr/sbin/rlpstat 2940514803 32768 /usr/sbin/rcancel 1666481277 14672 /usr/lib/nls/msg/C/lp.cat Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHCO_7103 PHCO_8487 PHCO_10748 PHCO_11440 PHCO_15615 Equivalent Patches: None Patch Package Size: 530 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_22411 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHCO_22411.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHCO_22411. 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_22411.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_22411.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None