Patch Name: PHNE_8114 Patch Description: s700_800 10.0X-10 NFS/NIS Runtime cumulative patch Creation Date: 96/08/29 Post Date: 96/09/09 Hardware Platforms - OS Releases: s700: 10.00 10.01 10.10 s800: 10.00 10.01 10.10 Products: N/A Filesets: NFS.NFS-CORE NFS.NFS-SERVER NFS.NFS-CLIENT NFS.NIS-CLIENT NFS.NIS-SERVER NFS.NFS-ENG-A-MAN Automatic Reboot?: Yes Status: General Superseded Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHNE_8114 Symptoms: PHNE_8114: ypwhich: 1. ypwhich fails connection on X.25 interface. INDaa24591,SR# 5003323980 rpc.pcnfsd: 1. Enhanced pcnfsd logging in wtmp file to include ip and system name of caller INDaa22350 makedbm: 1. Previous patch makedbm refuses to run on some S800's. rpc.quotad: 1. Previous patch left out rpc.rquotad fixes. rpc.mountd: 1. rpc.mountd ran from unprivleged ports. INDaa23107, SR#1653155622 rpc.yppasswdd: 1. rpc.yppasswdd gives errors when trying to write passwd maps when file is on different partition. INDaa25035, SR#1653183277 PHNE_7073: portmap: 1. It is possible to break any machines that support a large number of open file descriptors with the old portmap program. rpc.pcnfsd: 1. rpc.pcnfsd incorrectly sets spool dir permissions. rpc.lockd: 1. rpc.lockd does not handle lock at 2Gb-1 with length of 0. Also creates large logfiles when rpc.statd is unavailable. Kernal patches are required for this fix. (See depend- ancy list below.) rpc.statd: 1. Possible mem leak problem. rpc.mountd: 1. mount daemon runs from non-priveleged ports. rpc.rexd: 1. rexd daemon fails to rename mnttab if /tmp is on a seperate partition. rpc.yppasswdd: 1. ypmake fails to run after master map is updated. PHNE_6444: Automount: 1. Automount cannot correlate entries in log file to entries in syslog.log because of missing timestamps. rpc.mountd: 1. Rpc.mountd has to be stopped and restarted when logging is desired. rpc.lockd: 1. rpc.lockd doesn't dump lock queue when issued SIGUSR2. rpc.statd: 1. Want to toggle logging by signaling through SIGUSR2. ypxfr: 1. Ypxfr complains when it can't find ypxfrd on NIS server. exportfs 1. Hostname containing the string "rw" is erroneously flagged as a mutually exclusive error when the host is also tagged as -ro. makedbm: 1. Makedbm makes maps which are full of duplicate entries. ypset: 1. Ypset returns wrong loopback address. portmap: 1. Portmap needs to have the keep_quiet enhancement. rpc.pcnfsd: 1. Rpc.pcnfsd doesn't support user authentication on Trusted Systems. PHNE_6121: Automount: 1. Automount tries to open NIS map as local map and prints error message. 2. Automount unable to mount filesystems from different NIS domain. rpc.lockd: 1. Access to data files receive file locking errors. Rpc.lockd memory leak. rpc.statd: 1. rpc.statd dies. ypserv: 1. NIS returns wrong nextkey when concurrent access is allowed to maps. rpc.mountd: 1. Rpc.mountd exits without warning . Defect Description: PHNE_8114: 1. Get_myaddress routine in ypwhich fails if X.25 is the only interface configured. 2. Enhancement request to log authentication info to wtmp file. 3. Makedbm wouldn't run on certain S800's due to compilation error. 4. rpc.rquotad was inadvertantly left out of last patch. 5. rpc.mountd default was to run from non-priveledged ports. 6. rpc.yppasswdd daemon would return errors if temp file was on seperate partition from root rile. PHNE_7073: 1. Portmapp had limit on number of file descriptors it would handle. 2. Rpc.pcnfsd did not set spool/users directory per- missions correctly. 3. rpc.lockd does not handle lock at 2Gb-1 with length of 0. 4. rpc.lockd creates large logfiles when rpc.statd is unavailable. 5. Possible mem leak problem in rpc.statd. 6. Rpc.mountd runs from non-priveleged ports. 7. Rpc.rexd has problem renaming if /tmp is on a seperate file system. 8. Rpc.yppasswdd can return incorrect error status on rename. PHNE_6444: 1. Automount is enhanced to provide timestamps in logfile. 2. Rpc.mountd daemon has to be stopped and restarted when problems arise where logging is needed. 3. rpc.lockd does not dump lock queue to log when issued a SIGUSR2 signal but logs everything else. 4. rpc.statd Added the function to enable rpc.statd to turn on the logging at run time when rpc.statd receives SIGUSR2 5. Exportfs has a bug which gives an error when the -ro option is compared to a hostname which contained the "rw" string. Exportfs interprets this as as read-write option. 6. Makedbm bug does not give an error indication when hash table overflow occurs. 7. ypset returns wrong loopback address if no ethernet card is installed. 8. portmap has the keep_quiet option brought forward. 9. Rpc.pcnfsd doesn't support user authentication on Trusted Systems. PHNE_6121: 1. Automount when resolving the mapnames, by default looks at the local directory and if the map is not found logs an error message in the syslog file. Then it tries NIS for the matching map. When the automount is instructed to read the map from NIS using command line options, it can be annoying if it logs a message that the local map is not found. 2. Automount before sending the request to mount the file- system checks the netgroups file to see if the client has permission to mount it. If the client and server are in different domain then they might have different netgroups file. If the client netgroup file does not have an entry for the local host, the automount will not send a request to the server to mount the filesystem even though the server might allow access to it. This is incorrect behavior. 4. Trying lock an NFS file if it is a blocked lock the client may be blocked forever when server logging show it is already granted. This can cause any processes attempt to lock this file be blocked. Rpc.lockd has memory leak problem that causes the object to grow. 5. Client reboot can cause server rpc.statd to exit. 6. When concurrent processes access the same open map in NIS the wrong data can be returned when the hash key gets changed by one of the processes. Data can even be skipped for one or more of the processes. 7. Ypxfr returns a warning error which is really an information only message. 8. Rpc.mountd daemon can remove itself from the system when it encounters a timeout from various interface cards other than lan and ethernet which are not configured properly. SR: 5003323980 1653155622 1653153593 5003306993 1653146357 4701314765 5003283846 5003273565 5003282038 5003291245 5003291245 1653154476 5003299255 5003293001 5003290833 5003301564 4701314765 1653159087 1653183277 Patch Files: /usr/sbin/automount /usr/sbin/rpc.mountd /usr/sbin/rpc.lockd /usr/sbin/rpc.statd /usr/sbin/rpc.rexd /usr/sbin/rpc.rquotad /usr/sbin/exportfs /usr/sbin/portmap /usr/lib/netsvc/yp/ypserv /usr/lib/netsvc/yp/rpc.yppasswdd /usr/sbin/ypxfr /usr/sbin/ypset /usr/sbin/makedbm /usr/sbin/rpc.pcnfsd /usr/bin/ypwhich /usr/share/man/man1m.Z/mountd.1m what(1) Output: /usr/sbin/automount: automount: PHNE_6444 $Revision: 1.10.112.6 $ $Dat e: 96/02/12 13:59:50 /usr/share/man/man1m.Z/mountd.1m: None /usr/sbin/rpc.mountd: patch PHNE_8114 10.0-10.10 rpc.mountd: $Revision: 1 .79.112.4 $ $Date: 9 6/01/09 16:05:25 $ issubdir.c 1.2 90/07/23 4.1NFSSRC Copyr 1990 Su n Micro /usr/sbin/rpc.lockd: rpc.lockd: $Revision: 1.37.112.5 $ $Date: 96/05 /14 17:04:17 $ PHNE_7073 prot_pnlm.c 1.rb5 86/09/24 Copyr 1986 Sun Micro prot_msg.c 1.3.rb 86/09/24 Copyr 1984 Sun Micro PATCH_10.X rpc.lockd: $Revision: 1.19.112.5 $ $Date: 96/01/04 00:19:04 $ PHNE_6121 prot_proc.c 1.9.rb 86/09/24 Copyr 1986 Sun Micro prot_freeall.c 1.1 88/08/05 NFSSRC4.0 1.3 88/02/07 Copyr 1984 Sun Micro prot_share.c 1.1 88/08/05 NFSSRC4.0 1.4 88/08/04 Copyr 1984 Sun Micro RB2 /usr/sbin/rpc.statd: PATCH_10.X rpc.statd: $Revision: 1.19.112.5 $ $Date: 96/05/14 16:52:46 $ PHNE_7073 sm_proc.c : $Revision: 1.10.112.8 $ $Date: 96/02/21 20:05:21 $ PHNE_6444 sm_statd.c: $Revision: 1.20.112.4 $ $Date: 96/02/07 20:08:28 $ PHNE_6444 /usr/sbin/rpc.rexd: rexd.c PHNE_7073 1.5 92/04/20 4.1NFSSRC Copyr 1990 Sun Micro publickey.c 1.3 90/07/19 4.1NFSSRC Copyr 1990 Su n Micro $ /usr/sbin/rpc.rquotad: PHNE_7073 10.X $Revision: 1.9.112.2 $ /usr/lib/netsvc/yp/ypserv: patch PHNE_6444 ypserv.c 1.4 92/06/05 4.1NFSS RC Copyr 1990 Sun Micro ypserv_ancil.c 1.4 90/07/23 4.1NFSSRC Copyr 1990 Su n Micro ypserv_map.c 1.3 92/06/05 4.1NFSSRC Copyr 1990 Su n Micro ypserv_proc.c 1.3 90/07/23 4.1NFSSRC Copyr 1990 Su n Micro yp_cache.c: $Revision: 1.3.111.1 $ $Date: 94/11 /04 11:36:24 $ patch PHNE_6444 ypserv_dbmtrak.c 1.1 90/07/24 4.1NFS SRC Copyr 1990 SMI ypserv_net_secure.c 1.2 92/06/05 4.1NFSSRC Copyr 1990 Sun Micro ngethostbyname.c 1.2 92/04/08 4.1NFSSRC $ /usr/sbin/ypxfr: ypxfr: PHNE_6121 $Revision: 1.46.111.1 $ $Dat e: 94/11/04 11:35:31 $ /usr/sbin/ypset: patch PHNE_6444 ypset: $Revision: 1.30.112.2 $ $Dat e: 96/01/09 16:10:27 $ /usr/sbin/exportfs: patch PHNE_6444 exportfs.c: $Revision: 1.3.112.3 $ $Date: 96/01/16 12:38:08 $ issubdir.c 1.2 90/07/23 4.1NFSSRC Copyr 1990 Su n Micro $ /usr/sbin/portmap: patch PHNE_7073 portmap: $Revision: 1.37.112. 4 $ $Date: 96/01/09 16:19:43 $ /usr/lib/netsvc/yp/rpc.yppasswdd: PHNE_8114 10.0-10.1 rpc.yppasswdd: $Revision: 1 .50.112.3 $ $Date: 96/03/21 10:51:30 $ /usr/sbin/makedbm: makedbm: $Revision: 1.33.109M.3 $ $Dat e: 94/02/07 10:28:18 $ /usr/sbin/rpc.pcnfsd: rpc.pcnfsd: $Revision: 1.2.112.5 $ $Date: 96/08 /20 14:21:30 $ PHNE_8114 pcnfsd_v2.c 1.6 - rpc.pcnfsd V2.0 (c) 1991 Sun T echnology Enterprises, Inc. /usr/bin/ypwhich: PHNE_8114 10.0-10.10 ypwhich: $Revision: 1.37.112. 1 $ $Date: 95/03/01 11:20:40 $ cksum(1) Output: 4157031883 86016 /usr/sbin/automount 3633542419 36864 /usr/sbin/rpc.mountd 4096209073 102400 /usr/sbin/rpc.lockd 3906179429 45056 /usr/sbin/rpc.statd 2737315607 20480 /usr/sbin/rpc.rquotad 82647965 73728 /usr/sbin/rpc.rexd 500261357 20480 /usr/sbin/exportfs 2386822309 24576 /usr/sbin/portmap 1265917306 81920 /usr/lib/netsvc/yp/ypserv 2914821402 20480 /usr/bin/ypwhich 3101238153 28672 /usr/lib/netsvc/yp/rpc.yppasswdd 3026603961 57344 /usr/sbin/ypxfr 2081604636 16384 /usr/sbin/ypset 2752288367 36974 /usr/sbin/makedbm 3487686149 53248 /usr/sbin/rpc.pcnfsd 475614411 2195 /usr/share/man/man1m.Z/mountd.1m Patch Conflicts: None Patch Dependencies: s700: 10.01: PHKL_7059 s700: 10.10: PHKL_8292 s800: 10.01: PHKL_7060 s800: 10.10: PHKL_8293 Hardware Dependencies: None Other Dependencies: None Supersedes: PHNE_6121 PHNE_6444 PHNE_7073 Equivalent Patches: None Patch Package Size: 760 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 PHNE_8114 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHNE_8114.depot 5b. For a homogeneous NFS Diskless cluster run swcluster on the server to install the patch on the server and the clients: swcluster -i -b This will invoke swcluster in the interactive mode and force all clients to be shut down. WARNING: All cluster clients must be shut down prior to the patch installation. Installing the patch while the clients are booted is unsupported and can lead to serious problems. The swcluster command will invoke an swinstall session in which you must specify: alternate root path - default is /export/shared_root/OS_700 source depot path - /tmp/PHNE_8114.depot To complete the installation, select the patch by choosing "Actions -> 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/PHNE_8114. 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 PHNE_8114.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/PHNE_8114.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None