Patch Name: PHNE_26076 Patch Description: s700_800 11.04 (VVOS) ndd(1M) cumulative patch Creation Date: 02/02/27 Post Date: 02/03/21 Hardware Platforms - OS Releases: s700: 11.04 s800: 11.04 Products: N/A Filesets: Networking.NET-RUN,fr=B.11.04,fa=HP-UX_B.11.04_32/64,v=HP Networking.NW-ENG-A-MAN,fr=B.11.04,fa=HP-UX_B.11.04_32/64,v=HP Automatic Reboot?: No Status: General Release Critical: No Category Tags: defect_repair enhancement general_release Path Name: /hp-ux_patches/s700_800/11.X/PHNE_26076 Symptoms: PHNE_26076: Port HP-UX patch PHNE_26125 to VVOS Based on HP-UX patch PHNE_26125: ( SR: 8606234982; Defect: JAGae04166) The problem reported in SR 8606108687 (Defect: JAGab79131) is not effectively addressed by the Special Release patch PHNE_21572. In some cases, the command "ndd -get /dev/tcp tcp_status" still reports the error: "operation failed, Invalid argument" Based on HP-UX patch PHNE_25754: ( SR: 8606225148; Defect: JAGad94236) "ndd -c" does not work if the NDD_VALUE for a ndd tunable in the /etc/rc.config.d/nddconf file is a string of non-numeric characters. For example, "NDD_VALUE[0]=lan0 ON" will not be recognized. ( SR: 8606171754; Defect: JAGad41018) Many NDD parameters are not documented in the ndd help text. ( SR: 8606113716; Defect: JAGac07230) "ndd -c" fails when the /etc/rc.config.d/nddconf file contains more than 10 tunables. ( SR: 8606129381; Defect: JAGac86927) "ndd -c" does not support tunable parameters for "arp" device in the /etc/rc.config.d/nddconf file. ( SR: 8606216047; Defect: JAGad85218) "ndd -c" does not process long tunables correctly. ( SR: 8606221683; Defect: JAGad90817) "ndd -c" crashes in some abnormal cases. ( SR: 8606179394; Defect: JAGad48618) ndd does not support a function equivalent to that provided by nettune's "udp_newbcastenable" in 10.20. ( SR: 8606165144; Defect: JAGad34440) The TTL field in UDP Broadcast packets defaults to 1 which is different from the default of 64 in 10.20. ( SR: 8606208110; Defect: JAGad77288) Problem occurs when multiple instances of "ndd -get /dev/tcp tcp_status" are invoked when there are huge number of tcp connections on the system. Based on HP-UX patch PHNE_21572: ( SR: 8606129520; Defect: JAGac87855) When STRMSGSZ is set to a small value, ndd may return the error: "operation failed, Invalid argument". ( SR: 8606108687; Defect: JAGab79131) "ndd -get /dev/tcp tcp_status" returns the error: "operation failed, Invalid argument". PHNE_21683: See Defect Description Based on HP-UX patch PHNE_20125: See Defect Description Defect Description: PHNE_26076: Port HP-UX patch PHNE_26125 to VVOS Based on HP-UX patch PHNE_26125: ( SR: 8606234982; Defect: JAGae04166) Defect Description: The approach taken to address SR 8606108687 (Defect: JAGab79131) was to remove the timeout completely. However, the error is caused by the restrictions imposed by STRMSGSZ on the maximum buffer size that ndd can use and not because of timing out. Resolution: The changes introduced to address SR 8606108687 (Defect: JAGab79131) have been removed and the timeout value is restored to its initial value. NOTE: As mentioned before, the error "operation failed, Invalid argument" occurs if STRMSGSZ is less than the size of the buffer that ndd uses. To avoid this error, the kernel tunable parameter STRMSGSZ should be modified. Setting STRMSGSZ to 0 will remove the restriction imposed on the maximum buffer size completely. However, if this is not acceptable, the value of STRMSGSZ should be increased depending on the maximum amount of data that ndd is expected to display. The value of STRMSGSZ can be modified using SAM. Based on HP-UX patch PHNE_25754: ( SR: 8606225148; Defect: JAGad94236) Defect Description: NDD_VALUE was always treated as an integer. So "ndd -c" fails if NDD_VALUE is a string of non-numeric characters. Resolution: "ndd -c" now works properly even if NDD_VALUE is a string of non-numeric characters. ( SR: 8606171754; Defect: JAGad41018) Defect Description: Changes made to the ndd tunables are not reflected in the ndd help text. Resolution: Updated the ndd help text to include additional information. ( SR: 8606113716; Defect: JAGac07230) Defect Description: The logic used to convert an ascii number to an integer was incorrect. Hence, the index of the tunables in the /etc/rc.config.d/nddconf file was calculated erroneously. Resolution: ndd, now accurately converts ascii numbers to integers. ( SR: 8606129381; Defect: JAGac86927) Defect Description: "arp" was excluded from the list of valid tunable devices that are specified in the /etc/rc.config.d/nddconf file. Resolution: "ndd -c", now supports tunable parameters for "arp" device also. ( SR: 8606216047; Defect: JAGad85218) Defect Description: "ndd -c" does not process long tunables correctly Resolution: Code has been changed to process long tunables correctly. ( SR: 8606221683; Defect: JAGad90817) Defect Description: "ndd -c" crashes in some abnormal cases. Resolution: The code causing the failure has been changed to work properly. ( SR: 8606179394; Defect: JAGad48618) Defect Description: The tunable "ip_enable_udp_bcastrecv" that is equivalent to nettune's "udp_newbcastenable" in 10.20 was not present in the list of supported ndd tunables. The tunable "ip_enable_udp_bcastrecv" enables UDP sockets bound to specific IP addresses to receive broadcast packets. Resolution: The tunable "ip_enable_udp_bcastrecv" has been added to the list of supported ndd tunables. ( SR: 8606165144; Defect: JAGad34440) Defect Description: The default value of the TTL field of the UDP Broadcasts packets is different between 10.20 and 11.00. Resolution: Use the newly supported tunable "ip_max_bcast_ttl" to change the default value of the TTL field. The TTL for the broadcast packets is calculated to be minimum of either ip_max_bcast_ttl tunable or protocol specific TTL value. ( SR: 8606208110; Defect: JAGad77288) Defect Description: tcp_status is obtained internally by reporting the information in the tcp port array list. However contention occurs when multiple instances try to access the port array list. Resolution: Serialized the execution of ndd to get tcp_status/udp_status report through a semaphore. NOTE: Consequently, "ndd -get /dev/tcp tcp_status" may seem to hang when multiple instances of ndd are run trying to get tcp_status/udp_status. Based on HP-UX patch PHNE_21572: ( SR: 8606129520; Defect: JAGac87855) Defect Description: The maximum buffer size that ndd can use to communicate with the kernel is limited by STRMSGSZ. If STRMSGSZ is set to a value less than the buffer size, ndd cannot communicate with the kernel and hence returns the error: "operation failed, Invalid argument" Resolution: Code has been modified to compare STRMSGSZ with the buffer size before ndd communicates with the kernel. If STRMSGSZ is less than the buffer size, ndd takes STRMSGSZ as the maximum buffer size. NOTE: This will set a limitation on ndd that it can only retrieve data smaller than STRMSGSZ. If the retrieved data is larger than STRMSGSZ, the error: "operation failed, Invalid argument" will be returned. ( SR: 8606108687; Defect: JAGab79131) Defect Description: When the system is busy, tcp may not be able to get a lock for the tcp hash table within a time range. Hence, the command times out and returns the error: "operation failed, Invalid argument" Resolution: Code has been modified to remove the timeout value from ndd. Now, ndd waits till it gets a response from the kernel. PHNE_21683: ( SR: 8606138324 ; Defect: JAGad07525) Symptom: VVOS needs to allow more outstanding inbound connection requests. Also, VVOS can not function as a router and the Strong End-System model should be enforced. Resolution: Two network variables need to be modified for VVOS. The variables are ip_strong_es_model and tcp_conn_request_max. The first variable forces packets sent on an interface to be rejected if they are received from a different interface. The second variable allows for a larger maximum number of outstanding connection requests. Based on HP-UX patch PHNE_20125: ( SR: 1653279786 ; Defect: JAGaa67451) Symptom: ndd -get /dev/ip ip_ire_hash cannot display >100 entries Defect Description: ndd does not display more than 16KB of output. Resolution: ndd now uses a dynamically-allocated output buffer, so that output of any size can be displayed. ( SR not found ; Defect: JAGab16252 ) Symptom: STREAMS error appears when coming up from reboot Defect Description: The console may occasionally output the following STREAMS error message: "ip_rput: lan forced us to pullup pkt" (where is the PPA number of an interface) during bootup. Resolution: The resolution to this problem is to change the default for ip_rput_pullups in the kernel during bootup. This is done via ndd. SR: 1653279786 8606129520 8606108687 8606225148 8606171754 8606113716 8606129381 8606216047 8606221683 8606179394 8606165144 8606208110 8606234982 8606138324 Patch Files: Networking.NET-RUN,fr=B.11.04,fa=HP-UX_B.11.04_32/64,v=HP: /usr/bin/ndd /usr/lib/nls/msg/C/ndd.cat Networking.NW-ENG-A-MAN,fr=B.11.04,fa=HP-UX_B.11.04_32/64, v=HP: /usr/share/man/man1m.Z/ndd.1m what(1) Output: Networking.NET-RUN,fr=B.11.04,fa=HP-UX_B.11.04_32/64,v=HP: /usr/bin/ndd: $Source: net/lanlink/NET/commands/ndd/ndd.c, hpuxcmd net, vvos_rose, rose0272 $ $Date: 02/03/06 1 5:01:00 $ $Revision: 1.6 PATCH_11.04 (PHNE_2 6076) $ $Revision: Hewlett-Packard ISSL Level vvos_rose42 $ $Header: Hewlett-Packard ISSL Release vvos_r ose $ $Date: Sun Mar 17 20:47:58 EST 2002 $ /usr/lib/nls/msg/C/ndd.cat: None Networking.NW-ENG-A-MAN,fr=B.11.04,fa=HP-UX_B.11.04_32/64, v=HP: /usr/share/man/man1m.Z/ndd.1m: None cksum(1) Output: Networking.NET-RUN,fr=B.11.04,fa=HP-UX_B.11.04_32/64,v=HP: 635838241 81920 /usr/bin/ndd 440006678 40758 /usr/lib/nls/msg/C/ndd.cat Networking.NW-ENG-A-MAN,fr=B.11.04,fa=HP-UX_B.11.04_32/64, v=HP: 1698792704 3136 /usr/share/man/man1m.Z/ndd.1m Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: PHNE_26076: This version of ndd(1M) includes enhancements that support new tunables provided in a patched version of the ARPA transport module. PHNE_26101 is the first VVOS kernel transport patch scheduled to support all the ndd(1M) parameters documented in the online help facility (accessed by invoking ndd -help) provided with this patch. ( SR: 8606171754; Defect: JAGad41018). The expected availability of PHNE_26101 is June 2002. Attempts to specify one of the new tunables provided by this patch without the presence of PHNE_26101 on the system will result in an error message indicating the parameter is not available. For example, attempting to set "ip_enable_udp_bcastrecv" on the command line using ndd(1M) ( SR: 8606179394; Defect: JAGad48618) without PHNE_26101 installed will function as follows: # ndd -set /dev/ip ip_enable_udp_bcastrecv 1 name is non-existent for this module for a list of valid names, use name '?' Attempting to set "ip_enable_udp_bcastrecv" in a configuration file and using "ndd -c" will return the error message: "invalid tunable names, ip_enable_udp_bcastrecv for this modules, for a list of valid names use '?'" Normal operation of ndd(1M) does not require any additional patches. Supersedes: PHNE_21683 Equivalent Patches: None Patch Package Size: 160 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_26076 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHNE_26076.depot By default swinstall will archive the original software in /var/adm/sw/save/PHNE_26076. If you do not wish to retain a copy of the original software, use the patch_save_files option: swinstall -x autoreboot=true -x patch_match_target=true \ -x patch_save_files=false -s /tmp/PHNE_26076.depot 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 PHNE_26076.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHNE_26076.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHNE_26076.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None