Patch Name: PHCO_30431 Patch Description: s700_800 11.11 lpspool subsystem cumulative patch Creation Date: 04/04/26 Post Date: 04/06/16 Hardware Platforms - OS Releases: s700: 11.11 s800: 11.11 Products: N/A Filesets: PrinterMgmt.LP-SPOOL,fr=B.11.11,fa=HP-UX_B.11.11_32/64,v=HP Automatic Reboot?: No Status: General Release Critical: Yes PHCO_30431: HANG PHCO_28256: CORRUPTION Category Tags: defect_repair enhancement general_release critical halts_system corruption Path Name: /hp-ux_patches/s700_800/11.X/PHCO_30431 Symptoms: PHCO_30431: ( SR:8606347944 CR:JAGaf08766 ) cancel(1M): exits with an error due to overrun of file descriptors. ( SR:8606347805 CR:JAGaf08627 ) Performance of lpsched is degraded severely due to the way in which lpstat reads request control files. PHCO_29209: ( SR:8606312003 CR:JAGae74822 ) rwrite has functional problem. ( SR:8606312198 CR:JAGae75017 ) lp:removes an arbitrary request when Ctrl-c is hit. ( SR:8606316941 CR:JAGae79653 ) lpalt:displays wrong results when the destination queue is full. ( SR:8606317971 CR:JAGae80525 ) rlpdaemon:doesn't accept hostname starting with digits. PHCO_28259: ( SR:8606286028 CR:JAGae49970 ) When a printer is disabled, the currently printing job remains in the queue and doesn't get printed even after the printer is enabled. PHCO_28256: ( SR:8606286988 CR:JAGae50928 ) Mails from lpsched can corrupt users mailbox. ( SR:8606284963 CR:JAGae48905 ) lpalt incorrectly handles 3 digit job id numbers for BSD print queues. This can cause lpsched to exit. PHCO_27020: ( SR:8606227217 CR:JAGad96279 ) lpadmin(1m) dumps core in certain conditions. ( SR:8606265902 CR:JAGae30155 ) Duplicate ( SR:8606103767 CR:JAGab70847 ) Duplicate ( SR:8606213046 CR:JAGad82233 ) lpstat(1) returns incorrect exit value when HPDPS is installed. ( SR:8606233628 CR:JAGae02852 ) rlpdaemon(1m) is not behaving properly in certain conditions. ( SR:8606262488 CR:JAGae26823 ) lp spooler commands dumps core in certain conditions. ( SR:8606226693 CR:JAGad95756 ) lpsched(1m) was not killing its children when lpshut(1m) was run. PHCO_25111: ( SR:8606221482 CR:JAGad90616 ) rlpdaemon(1M) is mis-behaving in certain conditions. ( SR:8606197229 CR:JAGad66422 ) Multiple lpscheds can be running simultaneously on a HP-UX system. ( SR:8606215197 CR:JAGad84385 ) rlpdaemon(1M) is not functioning as expected in certain cases. PHCO_24701: ( SR:8606201567 CR:JAGad70743 ) rlpdaemon(1M) is not functioning as expected in certain cases. PHCO_24288: ( SR:8606200198 CR:JAGad69382 ) lpspool subsystem to support IPv6 Defect Description: PHCO_30431: ( SR:8606347944 CR:JAGaf08766 ) cancel(1M): exits with an error due to overrun of file descriptors. If the number of requests getting cancelled is more than the number of open file descriptors allowed for the process, cancel fails due to overrun of file descriptors. This problem occurs only when lp scheduler is running. The problem can be reproduced as follows: 1. Shut down the lp scheduler $ lpshut 2. Now configure a dummy printer (dprinter) $ lpadmin -pdprinter -v/dev/null -mdumb $ accept dprinter 3. Start the lp scheduler again $ lpsched 4. Stream requests to dprinter. The total number of requests should be greater than the file descriptor limit. i=0 total=$(/usr/bin/ulimit -n) while [[ $i -ne ${total} ]] do lp -ddprinter /etc/passwd i=`expr $i+1 ` done 5. Now try canceling all the requests $ cancel -e dprinter Observation: cancel (1M) will give the following error message. cancel: can't open output queue file Resolution: Now the file descriptors are closed appropriately. ( SR:8606347805 CR:JAGaf08627 ) Performance of lpsched is degraded severely due to the way in which lpstat reads request control files. Resolution: lpstat has been changed in such a way that it reads the request control files in a way that will not interfere with the processing of request control file by lpsched. PHCO_29209: ( SR:8606312003 CR:JAGae74822 ) rwrite has functional problem. Resolution: The problem is resolved. ( SR:8606312198 CR:JAGae75017 ) lp command with -ob3, for BSD 3 digit ids will hang on the 1000th request. When Ctrl-c is hit to get out of the hang, one request is cancelled at random. This is because when the interrupt occurs, the interrupt handler removes one of the requests. The problem can be reproduced as follows: 1. Configure a BSD printer as follows. $ lpadmin -pprint1 -v/dev/null -mdumb -h -ob3 $ accept print1 $ enable print1 2. Stream requests to the printer "print1" as follows to make the queue full i=0 while [[ $i -ne 1000 ]] do lp -dprint1 /etc/passwd i=`expr $i+1 ` done 3. $ lpstat print1 This will list all the requests for the printer "print1". Check the number of requests. 4. Now stream another request to the same printer "print1" $ lp -dprint1 /etc/passwd It is observed that the lp hangs.Send an interrupt Ctrl-c. 5. $ lpstat print1 This will list all the requests for the printer "print1". Check the number of requests. One of the requests will be deleted. 6. Now stream another request to the same printer "print1" $ lp -dprint1 /etc/passwd we are able to get a new request id. 7. Repeat the steps 3 & 4 several times. Observe that each time a different request id is obtained. Resolution: The interrupt handler is modified not to remove any queued request when interrupt occurs. ( SR:8606316941 CR:JAGae79653 ) lpalt with -ob3, for BSD 3 digit ids shows wrong results when a request is altered to the destination printer which is already having 1000 requests. Also the request to be altered will be removed from the first printer. The problem can be reproduced as follows: 1. Configure a BSD printer as follows. $ lpadmin -pprint1 -v/dev/null -mdumb -h -ob3 $ accept print1 $ enable print1 2. Stream requests to the printer "print1" as follows to make the queue full i=0 while [[ $i -ne 1000 ]] do lp -dprint1 /etc/passwd i=`expr $i+1 ` done 3. Configure another BSD printer as follows. $ lpadmin -pprint2 -v/dev/null -mdumb -h -ob3 $ accept print2 $ enable print2 4. Stream requests to the printer "print2" as follows i=0 while [[ $i -ne 10 ]] do lp -dprint2 /etc/passwd i=`expr $i+1 ` done 5. Now alter one request from print2 to print1. $ lpalt print2-1 -dprint1 An arbitrary id is displayed. $ lpstat print2-1 no entries The above condition is wrong as the first queue is already full. Resolution: lpalt code has been modified to resolve this issue. The request is not altered when the destination printer queue is full. An error is printed. ( SR:8606317971 CR:JAGae80525 ) rlpdaemon checks the name of the control and data files sent through the network. Host name is one of the fields in the filename. If the hostname field contains ip address instead of hostname, rlpdaemon will not accept the request. Resolution: Now rlpdaemon has been modified such that it accepts the ip address in the hostname field. PHCO_28259: ( SR:8606286028 CR:JAGae49970 ) cancel and disable commands send SIGTERM to the lpsched child process to stop the current printing. Also these commands inform the parent lpsched to make appropriate changes in its internal data structures. Sometimes before the disable/cancel command could inform the parent lpsched to disable/cancel the printer, the child lpsched which got the SIGTERM informs the the parent that the printer is free to process further requests. The parent interprets it as completion of print request, thus removing the request from the dynamic data structure it maintains. This is not expected for disable command because the request should be reprinted later. The problem can be reproduced as follows: Step 1) Configure a local printer and a remote printer on the same machine. # lpshut # lpadmin -ploc -v/dev/null -mdumb -h # lpadmin -prem -v/dev/null -mrmodel -orm`hostname` -orploc Step 2) Accept and Enable remote printer and not local printer. Hence the request will be in the printing mode until the local printer accepts requests. # accept rem # enable rem Step 3) Start the scheduler. # lpsched Step 4) Give 2 requests to remote printer. # lp -drem /etc/passwd # lp -drem /etc/passwd You can see that lpsched will start printing the first request and will be waiting since loc does not accept the requests. Step 5) Disable remote printer. Accept and Enable local printer such that the printing continues and Enable the remote printer. # disable rem # accept loc # enable loc # enable rem lpsched starts printing from the second request instead of the first one. The first request remains in the queue and is never printed. Resolution: Code changes are made such that lpsched parent does not remove the request entry when the child receives SIGTERM. Removing the requests for cancel is taken care when cancel informs the parent lpsched. PHCO_28256: ( SR:8606286988 CR:JAGae50928 ) Mails from lpsched can corrupt users mailbox. A newline character was missing in lpsched mail text, due to which the mail message was getting corrupted when read through /usr/bin/mail. This can be reproduced as follows: 1) Configure a dummy printer - printer1. /usr/sbin/lpadmin -pprinter1 -v/dev/null -mdumb -h /usr/sbin/accept printer1 /usr/bin/enable printer1 2) /usr/bin/lp -dprinter1 -m /etc/passwd 3) Check with the mail box in /var/mail/user for null characters. This will result in corrupting the mail box when mailx is used. Resolution: The newline character has been added in the end of the mail message sent from lpsched. ( SR:8606284963 CR:JAGae48905 ) lpalt incorrectly handles 3 digit job id numbers for BSD print queues. This can cause lpsched to exit. When lpalt is called to move a request across printers, lpalt generates a new request id. It then informs the scheduler about the new request id. The scheduler while moving the request tries to create the data/control files as per the new request id. On some cases these names clashes with the already existing request id's of the new spooler resulting in lpsched to terminate. This can be reproduced as follows: Step 1: Configure 2 BSD printers lpadmin -pBSD1 -v/dev/null -mdumb -h -ob3 accept BSD1 enable BSD1 lpadmin -pBSD2 -v/dev/null -mdumb -h -ob3 accept BSD2 enable BSD2 Step 2: Run the Scheduler. lpsched Step 3: Give 2 requests in BSD1 and lpalt one request from BSD2, such that both have same request id. lp -dBSD1 /etc/passwd lp -dBSD1 /etc/passwd lp -dBSD2 /etc/passwd lpalt -dBSD1 BSD2-0 << lpsched exits with the following message >> cat /var/spool/lp/log lpsched: can't create temporary request file "request/printer1/tfA970abght" Resolution: Now lpalt generates new request ids which will not clash with the already existing request id's on the new print spooler. PHCO_27020: ( SR:8606227217 CR:JAGad96279 ) lpadmin dumps core and does not display proper messages. Resolution: Changes are done in the code such that core dump does not occur and messages are printed properly. ( SR:8606265902 CR:JAGae30155 ) Duplicate ( SR:8606103767 CR:JAGab70847 ) Duplicate ( SR:8606213046 CR:JAGad82233 ) When HPDPS is installed on a system and lpstat(1) is invoked with an unknown printer name, it will exit with 0 (SUCCESS). For example, lpstat -pnoneprinter; echo $? The above script will show 0, whereas it should show 1. The return value will be 0 for all the lpstat(1) options. Resolution: lpstat(1) will query the HPDPS system if the printer is non-existent in lp spooler system. A new variable is declared which will capture exit values of every such HPDPS invocation. lpstat(1) is made to exit with the value of this variable. ( SR:8606233628 CR:JAGae02852 ) rlpdaemon (1m) is not behaving properly in certain conditions. Resolution: Code is modified such that rlpdaemon (1m) behaves properly. ( SR:8606262488 CR:JAGae26823 ) lp spooler commands dumps core in certain conditions and does not display proper messages. Resolution: Changes are done in the code such that core dump does not occur and messages are printed properly. ( SR:8606226693 CR:JAGad95756 ) For every print request, lpsched forks a child which handles that request. lpsched was not killing its child processes when lpshut was run, printing jobs were not stopped. Resolution: The problem was in handling the signals. Signal handlers for the signal SIGTERM were not properly set. The changes are made such that signal handlers are set at proper places. PHCO_25111: ( SR:8606221482 CR:JAGad90616 ) rlpdaemon(1M) is mis-behaving in certain conditions. Resolution: Code is modified so that rlpdaemon(1M) would behave correctly. ( SR:8606197229 CR:JAGad66422 ) In lpsched startup, there is a large window for a race condition that allows multiple lpscheds to start. Resolution: The fix is to lock ~lp/SCHEDLOCK file when lpsched is started. If one lpsched is already running,the second lpsched will not start as the lock is already acquired by the first lpsched process which is already running. ( SR:8606215197 CR:JAGad84385 ) rlpdaemon(1M) is not functioning as expected in certain cases because of improper file handling. Resolution: Code is modified to handle the files properly. PHCO_24701: ( SR:8606201567 CR:JAGad70743 ) rlpdaemon(1M) is not functioning as expected in certain cases because of improper memory handling. Resolution: A new condition is added to the code to handle the problem. PHCO_24288: ( SR:8606200198 CR:JAGad69382 ) lpspool subsystem only supports IPv4. Resolution: lpspool subsystem is enhanced to support IPv6. Enhancement: No (superseded patches contained enhancements) PHCO_24288: This is an enhancement for the lp spooler subsystem to support IPv6. SR: 8606103767 8606197229 8606200198 8606201567 8606213046 8606215197 8606221482 8606226693 8606227217 8606233628 8606262488 8606265902 8606284963 8606286028 8606286988 8606312003 8606312198 8606316941 8606317971 8606347805 8606347944 Patch Files: PrinterMgmt.LP-SPOOL,fr=B.11.11,fa=HP-UX_B.11.11_32/64,v=HP: /usr/bin/cancel /usr/bin/disable /usr/bin/enable /usr/bin/lp /usr/bin/lpalt /usr/bin/lpstat /usr/lbin/rwrite /usr/lib/nls/msg/C/lp.cat /usr/sbin/accept /usr/sbin/lpadmin /usr/sbin/lpana /usr/sbin/lpfence /usr/sbin/lpmove /usr/sbin/lpsched /usr/sbin/lpshut /usr/sbin/rcancel /usr/sbin/reject /usr/sbin/rlp /usr/sbin/rlpdaemon /usr/sbin/rlpstat what(1) Output: PrinterMgmt.LP-SPOOL,fr=B.11.11,fa=HP-UX_B.11.11_32/64,v=HP: /usr/bin/cancel: fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) sendmail.c $Date: 2002/12/09 22:14:26 $Revision: r11 .11/2 PATCH_11.11 (PHCO_28256) mpstatus.c $Date: 2004/03/11 19:51:46 $Revision: r11 .11/1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:36 PDT 2004 $ /usr/bin/disable: fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) sendmail.c $Date: 2002/12/09 22:14:26 $Revision: r11 .11/2 PATCH_11.11 (PHCO_28256) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:38 PDT 2004 $ /usr/bin/enable: fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:40 PDT 2004 $ /usr/bin/lp: lp.c $Date: 2003/07/09 01:48:56 $Revision: r11.11/5 PATCH_11.11 (PHCO_29209) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:42 PDT 2004 $ /usr/bin/lpalt: lpalt.c $Date: 2003/07/09 01:50:36 $Revision: r11.11 /6 PATCH_11.11 (PHCO_29209) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) common.c $Date: 2001/08/14 04:42:30 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_24701) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:46 PDT 2004 $ /usr/bin/lpstat: lpstat.c $Date: 2004/04/15 08:37:41 $Revision: r11.1 1/10 PATCH_11.11 (PHCO_30431) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) mpstatus.c $Date: 2004/03/11 19:51:46 $Revision: r11 .11/1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:57 PDT 2004 $ /usr/lbin/rwrite: rwrite.c $Date: 2003/07/09 01:52:15 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_29209) $Revision: vw: -f selectors: R11.11_BL2004_0426_2 PHCO_30431 'R11.11_BL2004_0426_2' Mon Apr 26 09:54:18 PDT 2004 $ /usr/lib/nls/msg/C/lp.cat: None /usr/sbin/accept: accept.c $Date: 2002/07/23 23:57:48 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_27020) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:34 PDT 2004 $ /usr/sbin/lpadmin: lpadmin.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) fullpath.c $Date: 2002/07/24 07:56:42 $Revision: r11 .11/3 PATCH_11.11 (PHCO_27020) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:44 PDT 2004 $ /usr/sbin/lpana: $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:31 PDT 2004 $ /usr/sbin/lpfence: lpfence.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:48 PDT 2004 $ /usr/sbin/lpmove: lpmove.c $Date: 2002/07/24 07:56:42 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_27020) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:49 PDT 2004 $ /usr/sbin/lpsched: lpsched.c $Date: 2003/01/29 08:56:26 $Revision: r11. 11/10 PATCH_11.11 (PHCO_28259) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) sendmail.c $Date: 2002/12/09 22:14:26 $Revision: r11 .11/2 PATCH_11.11 (PHCO_28256) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:53 PDT 2004 $ /usr/sbin/lpshut: lpshut.c $Date: 2001/11/04 23:09:38 $Revision: r11.1 1/1 PATCH_11.11 (PHCO_25111) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:55 PDT 2004 $ /usr/sbin/rcancel: fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) common.c $Date: 2001/08/14 04:42:30 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_24701) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:54:01 PDT 2004 $ /usr/sbin/reject: reject.c $Date: 2002/07/24 07:56:42 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_27020) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:53:59 PDT 2004 $ /usr/sbin/rlp: rlp.c $Date: 2002/07/24 07:56:42 $Revision: r11.11/3 PATCH_11.11 (PHCO_27020) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) sendit.c $Date: 2002/07/24 07:56:42 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_27020) common.c $Date: 2001/08/14 04:42:30 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_24701) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:54:04 PDT 2004 $ /usr/sbin/rlpdaemon: rlpdaemon.c $Date: 2002/07/24 07:56:42 $Revision: r1 1.11/5 PATCH_11.11 (PHCO_27020) recvjob.c $Date: 2003/07/09 01:47:04 $Revision: r11. 11/5 PATCH_11.11 (PHCO_29209) alter.c $Date: 2002/07/23 23:57:48 $Revision: r11.11 /3 PATCH_11.11 (PHCO_27020) displayq.c $Date: 2002/07/24 07:56:42 $Revision: r11 .11/2 PATCH_11.11 (PHCO_27020) fifo.c $Date: 2004/02/10 10:18:31 $Revision: r11.11/ 1 PATCH_11.11 (PHCO_30431) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) common.c $Date: 2001/08/14 04:42:30 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_24701) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:54:06 PDT 2004 $ /usr/sbin/rlpstat: rlpstat.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) displayq.c $Date: 2002/07/24 07:56:42 $Revision: r11 .11/2 PATCH_11.11 (PHCO_27020) request.c $Date: 2002/07/24 07:56:42 $Revision: r11. 11/2 PATCH_11.11 (PHCO_27020) common.c $Date: 2001/08/14 04:42:30 $Revision: r11.1 1/2 PATCH_11.11 (PHCO_24701) $Revision: @(#) all R11.11_BL2004_0426_2 PATCH_11.11 PHCO_30431 Mon Apr 26 09:54:08 PDT 2004 $ cksum(1) Output: PrinterMgmt.LP-SPOOL,fr=B.11.11,fa=HP-UX_B.11.11_32/64,v=HP: 366354040 36864 /usr/bin/cancel 4051378083 24576 /usr/bin/disable 3718697178 20480 /usr/bin/enable 1328654651 40960 /usr/bin/lp 613565508 40960 /usr/bin/lpalt 2200992611 49152 /usr/bin/lpstat 2889429569 16384 /usr/lbin/rwrite 3334616911 16330 /usr/lib/nls/msg/C/lp.cat 3759512127 16384 /usr/sbin/accept 3100812244 45056 /usr/sbin/lpadmin 4119462182 16384 /usr/sbin/lpana 1352287359 20480 /usr/sbin/lpfence 1674540136 28672 /usr/sbin/lpmove 1152385773 53248 /usr/sbin/lpsched 689938285 16384 /usr/sbin/lpshut 4198954849 32768 /usr/sbin/rcancel 1990022162 20480 /usr/sbin/reject 237670097 28672 /usr/sbin/rlp 3170553523 69632 /usr/sbin/rlpdaemon 3448017467 32768 /usr/sbin/rlpstat Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHCO_29209 PHCO_28259 PHCO_28256 PHCO_27020 PHCO_25111 PHCO_24701 PHCO_24288 Equivalent Patches: None Patch Package Size: 330 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_30431 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHCO_30431.depot By default swinstall will archive the original software in /var/adm/sw/save/PHCO_30431. If you do not wish to retain a copy of the original software, include the patch_save_files option in the swinstall command above: -x patch_save_files=false WARNING: If patch_save_files is false when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. For future reference, the contents of the PHCO_30431.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHCO_30431.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHCO_30431.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: Do lpshut before the installation of this patch.