Patch-ID# 103613-26 Keywords: security libc memory su getdate NIS+ libnsl nis_cachemgr rpc.nisd NIS+ Synopsis: SunOS 5.5.1_x86: libc, libnsl, nis_cachemgr and rpc.nisd patch Date: Jul/02/97 Solaris Release: 2.5.1_x86 SunOS Release: 5.5.1_x86 Unbundled Product: Unbundled Release: Xref: This patch available for SPARC as patch 103612 Xref: This patch available for PPC as patch 103614 Topic: SunOS 5.5.1_x86: libc, libnsl, nis_cachemgr and rpc.nisd patch NOTE: TO GET THE COMPLETE FIX FOR BUGID 4040423 (SS4000 WITH HME INTERFACE UNABLE TO BOOT WITH NSSWITCH SETTING USING DNS), ONE NEEDS TO INSTALL PATCH 103631-07 (OR HIGHER). BugId's fixed with this patch: 1159865 1212974 1213016 1219671 1221809 1223323 1223326 1230570 1232758 1234630 1235867 1242395 1244872 1244917 1245451 1246630 1246864 1247052 1248090 1249373 1249903 1255623 1258916 1259200 1262666 1264708 1265785 4005483 4006674 4011495 4016724 4018883 4018887 4025665 4026833 4029971 4040423 Changes incorporated in this version: 4040423 Relevant Architectures: i386 Patches accumulated and obsoleted by this patch: 103616-04 103655-01 Patches which conflict with this patch: iss_x86-01 (or higher revs) Patches required with this patch: Obsoleted by: Files included with this patch: /usr/lib/libc.a /usr/lib/libc.so.1 /usr/lib/libp/libc.a /usr/lib/libnsl.a /usr/lib/libnsl.so.1 /usr/lib/pics/libc_pic.a /usr/sbin/nis_cachemgr /usr/sbin/rpc.nisd /usr/sbin/static/rcp Problem Description: 4040423 ss4000 with hme interface unable to boot with nsswitch setting using dns (from 103613-25) 4011495 'zoneinfo' summertime/wintertime (Southern hemisphere) switchover anomaly Various geographic regions in the Southern hemisphere report a daylight savings time switchover problem in conjunction with the 'zoneinfo' database feeding 'localtime(3)'. (from 103613-24) 4026833 niscat hangs the rpc.nisd in getmsg when adding a third interface in Solaris 2.5.1. 1159865 select small timeouts should round up (from 103613-23) 4025665 nisping -Ca broken by fix to bugid#4005483 This patch is generated to workaround bug 4010430 -- installpatch should ignore a required patch when not applicable to a target system. The workaround is to include an empty root sparse patch package. This will allow patch dependency requirement to be met in a server/client configuration. (from 103613-22) 4029971 getopt security problem The fix for 4029971 requires the static version of rcp to be included in the patch. (from 103613-21) 4029971 getopt security problem (from 103613-20) 4018883 getgrnam_r() & getpwnam_r() can overrun buffers. 4018887 gethostbyname_r() can overrun buffer. 1223323 No bounds checking on NIS_GROUP environment variable (from 103613-19) 1247052 nis_dumplog_r translates all failures into NIS_RPCERROR nis_dumplog_r() frequently fais because it attempts to reuse a connection that had been closed on the server side, but couldn't handle the resulting error. Consequently, the dumplog request gets aborted and the NIS+ replica would remain out of sync with the master until the next update for the NIS+ directory in question. (from 103613-18) 1212974 Bogus bootparam packet makes rpcbind stop working (from 103613-17) 4016724 nis_cptime failure in nisd causes unreliable update propagation (from 103613-16) 4005483 replica doing full resync too frequently (from 103613-15) 4006674 rpc.nisd crash because of simple user program The rpc.nisd can free the same memory twice during modify or add operations. Since part of the cleanup work is to zero out pointers, the second free can stomp on memory that's been re-used, or an administrative information used by the malloc library. The latter scenario leads to a core dump. 1249373 Application file descriptors are being closed without applications knowledge 1232758 finddirectory call fails when there are too many replicas 1223326 possible memory leak in "rpc.nisd" rpc.nisd can leak memory if a nis_list with search criteria is done with callbacks. The leak will be equal to 8*(number of matched entries) bytes. The reason for the leak is that memory is being freed in the child process but not in the parent rpc.nisd. (from 103613-14) 1230570 nisplus strips leading spaces before doing lookup. (from 103613-13) 1259200 no more syslog from rpc.nisd after the fix for 1244917 was integrated The fix for bug 1244917 prevents syslog from working. This fix is to call closelog() so that forking and subsequent closing of all field descriptors does not prevent syslog from working. (from 103613-12) 1248090 getwd very slow over nfs to 4.1.3 server The fix for bug 1220400 ("lofs becomes confused about where the present working directory "." is") introduced a new problem -- where getcwd() would erroneously believe that it was passing a mount point, and start lstat()ing every directory in the current directory. With lots of subdirectories, and especially over NFS, these unnecessary lstat() calls could result in very noticeable delays (on the order of minutes with ten+ thousand subdirectories, and/or a slow network). (from 103613-11) 1249903 rpc.nisd hung in nis_list_svc on getmsg in _rcv_conn_con (from 103613-10) 1221809 absence of user public key caching makes NIS+ inter-domain lookups unreliable (from 103613-09) 1245451 syslogd failing to log messages every 12-48 hours of operation (from 103613-08) 1264708 get segmt fault on malloc with getcwd, chdir and opendir over PATH_MAX (from 103613-07) 1265785 fwrite regression from 2.4 to 2.5, 2.5.1 (from 103613-06) 1262666 nscd client backend, getxby_door, has buffer overflows (from 103613-05) 1244917 syslog(3) does not correctly cache the file descriptor that it writes on (from 103613-04) 1255623 getdate() fails on 1st of month with julian date (from 103613-03) 1246864 Multithreaded C++ program using strptime() causes bus error when 'new' used. (from 103613-02) 1219671 Memory is given free which was never allocated before. (from 103613-01) 1235867 line buffered stdio loses data and/or hangs in 2.5 (from 103616-04) 1258916 nis_cachemgr causing other many processes to hang in semop (from 103616-03) 1213016 User looses access to secondary groups if nisplus root master is not up (from 103616-02) 1234630 Client side RPC handle caching and server side fd leaks needs a general solution (from 103616-01) 1244872 nis_cachemgr can deadlock when servers are unavailable 1242395 NIS+ TTLs for objects not correct on 2.4 slave replicas and 2.3 slave/clients. (from 103655-01) 1246630 nisd can potentially hang if it gets a SIGCHLD/SIGHUP on an established callback Patch Installation Instructions: -------------------------------- Refer to the Install.info file within the patch for instructions on using the generic 'installpatch' and 'backoutpatch' scripts provided with each patch. Any other special or non-generic installation instructions should be described below. Special Install Instructions: ----------------------------- TO GET THE COMPLETE FIX FOR BUGID 4040423 (SS4000 WITH HME INTERFACE UNABLE TO BOOT WITH NSSWITCH SETTING USING DNS), ONE NEEDS TO INSTALL PATCH 103631-07 (OR HIGHER).