<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Patch-ID# 103627-09
Keywords: security dlsym symbol ld.so.1 ld libld.so.2 SHF_EXCLUDE ar archive ufs
Synopsis: SunOS 5.5.1: Linker patch
Date: May/06/99

Solaris Release: 2.5.1

SunOS Release: 5.5.1

Unbundled Product: 

Unbundled Release: 

Xref: This patch available for x86 as patch 103628

Topic: SunOS 5.5.1: linker patch

	NOTE:  Refer to Special Install Instructions section for 
               IMPORTANT specific information on this patch.

BugId's fixed with this patch: 1046594 1056449 1182346 1244333 1247793 4008477 4044285 4050759 4052067 4058928 4062757 4064724 4066815 4067926 4068108 4069849 4074398 4075643 4079003 4079633 4081897 4084466 4085036 4085734 4088306 4092335 4092511 4092633 4093064 4095586 4096079 4096995 4097806 4099108 4099127 4099713 4100002 4102130 4102797 4104963 4105877 4106398 4107294 4107525 4108699 4108808 4110994 4112585 4114006 4116970 4118404 4121152 4121546 4122351 4124773 4126137 4127674 4128742 4128755 4129745 4134302 4134367 4135749 4141174 4143820 4145987 4149227 4150646 4153501 4156854 4159122 4160709 4161775 4165899 4168556 4173576 4174468 4176579 4176796 4179880 4188527 4188843 4205087 

Changes incorporated in this version: 4173576 4174468 4179880 4188527 4188843 4205087

Relevant Architectures: sparc

Patches accumulated and obsoleted by this patch: 103606-02 105069-01 

Patches which conflict with this patch: iss_sparc-01 (or newer)

Patches required with this patch: 

Obsoleted by: 

Files included with this patch:

/usr/ccs/bin/lorder
/etc/lib/ld.so.1
/etc/lib/libdl.so.1
/usr/bin/ldd
/usr/bin/pvs
/usr/bin/sotruss
/usr/bin/whocalls
/usr/ccs/bin/ar
/usr/ccs/bin/dump
/usr/ccs/bin/elfdump
/usr/ccs/bin/gprof
/usr/ccs/bin/ld
/usr/ccs/bin/mcs
/usr/ccs/bin/nm
/usr/ccs/bin/size
/usr/ccs/bin/strip
/usr/ccs/lib/libld.so.2
/usr/ccs/lib/link_audit/ldprof.so.1
/usr/ccs/lib/link_audit/truss.so.1
/usr/ccs/lib/link_audit/who.so.1
/usr/include/dlfcn.h
/usr/include/gelf.h
/usr/include/libelf.h
/usr/include/link.h
/usr/include/proc_service.h
/usr/include/rtld_db.h
/usr/include/sys/elf.h
/usr/include/sys/elf_386.h
/usr/include/sys/elf_M32.h
/usr/include/sys/elf_ppc.h
/usr/include/sys/elf_SPARC.h
/usr/include/sys/elftypes.h
/usr/include/sys/link.h
/usr/include/sys/machelf.h
/usr/lib/0@0.so.1
/usr/lib/ld.so
/usr/lib/ld.so.1
/usr/lib/lddstub
/usr/lib/libdl.so.1
/usr/lib/libelf.a
/usr/lib/libelf.so.1
/usr/lib/libld.so.2
/usr/lib/liblddbg.so.4
/usr/lib/libldfeature.a
/usr/lib/libldstab.so.1
/usr/lib/librtld.so.1
/usr/lib/librtld_db.so
/usr/lib/librtld_db.so.1
/usr/lib/link_audit/ldprof.so.1
/usr/lib/link_audit/truss.so.1
/usr/lib/link_audit/who.so.1
/usr/xpg4/bin/ar
/usr/xpg4/bin/nm
/usr/include/sys/elf_notes.h
/usr/lib/llib-lelf.ln
/usr/ccs/lib/ldprof.so.1	(deleted file)
/usr/ccs/lib/liblddbg.so.3	(deleted file)
/usr/lib/liblddbg.so.3		(deleted file)

Problem Description:

4173576 Segmentation Fault on register-symbol declaration building a.out
4174468 scratch register symbol has multiple entries in .dynamic for same register
4179880 DT_RELASZ in .dynamic incorrectly calculated when .rela for reg-sym present
4188527 lorder output incorrect for v9 objects with global register ELF records
4188843 nm -p produces key letter of 13 for global register records
4205087 linker patch 103627-08 breaks viewpathing

(from 103627-08)

4159122 UNIX98:  dlclose() to invalid handle may dump core

(from 103627-07)

4176579 problem loading dynamically linked libraries with setuid root
4176796 The Intel version of visu crashes before main

(from 103627-06)

4107294 contents of /usr/ccs/lib should be moved to /usr/lib and symlink created
4106398 size of .bss section is truncated
4110994 patch 103627-02 and 105490-02 breaks implicit arch dependence result from libs
4092633 rtld_db only returns link-map lists for ld.so.1 &amp; base
4116970 gelf.h fails to compile under C++
4114006 dlopen() and symbol addressing failures
4118404 link_audit: pltglue applied on functions which don't need it.
1046594 RFE: allow multiple initializations of a COMMON block
4122351 need 64-bit port of rdb_demo
4121546 rtld_db: displaying 32bit link_maps from 64bit process is broken
4124773 ld has 2GB file size limit
4069849 mcs: multiple -a xxx with null .comment section is ignored
4105877 patch 103627-02 causes sources to core dump
4126137 EF_SPARC_SUN_US3 flag added to v9 ABI
4127674 dlopen() doesn't always use the correct link map
4129745 fix WDISP30 relocations won't reach errors on sparcv9
4099108 dladdr returns argv[0] in dli_fname
4121152 linker does not complain about type mismatches
4128742 register symbols are not implemented for sparc
4135749 gelf_getehdr segmentation faults
4141174 elf utilities are not consistent printing 64-bit fields
4143820 change to v9 ABI spec for PCPLT10 relocation
4145987 32-bit nlist(3E) on 64-bit object leaks fd's
4134302 dlopen/dlclose leaks memory
4134367 libthread panic: alloc_chunk due to too many open files
4128755 doreloc() is truncating relocation error messages...
4153501 patch 103627-02 causes ksh to core dump
4156854 Symbol yp_get_default_domain not found by the gethostent() function
4160709 dlopen() fails on library (libxil) built with -lthread
4161775 nm dumps core on ELF with no symbol table.
4159122 UNIX98:  dlclose() to invalid handle may dump core
4165899 ld execs 64-bit ld when linking Elf32, can break apps using procfs.
4168556 elfdump truncates 64-bit symbol values

(from 103627-05)

4150646 Security bug 1241843 resurfaces in 2.7 + 2.6 and 5.5.1 + patch
4149227 103612-41 causes ldd to throw out unresolved references in libdl.so.1

(from 103627-04)

4112585 mcs -p fails on read-only binaries

(from 103627-03)

4008477 Change where executable finds its libraries without re-linking
4050759 /usr/ccs/bin/dump -sv or -r hit SIGBUS on -dn stripped binaries
4044285 Combining relocation sections yields performance gain
4058928 segment reservations made too soon
4066815 GOT table on x86 has empty fields
4068108 dlerror() messages printed to stderr during link-auditing
4064724 linking against a EM_SPARC32PLUS dynamic library results in a EM_SPARC32PLUS obj
1182346 utilities need to use cplus_demangle from latest version of libC.so
4074398 2.4 app takes up 8X more space under 2.5.1
4079633 typo in new "gelf.h" wyoming header file
4085734 ld: V9 default load address is different to V8
4079003 Multiplication fails intermittently with libthread linked against program
4081897 Stripping shared object makes an illegal binary that crashes ld
4084466 elf32_newehdr() hangs in programs linked with libthread.
4075643 -zallextract can corrupt relocation section placement
4081897 Stripping shared object makes an illegal binary that crashes ld
4050759 /usr/ccs/bin/dump -sv or -r hit SIGBUS on -dn stripped binaries
4085036 Need lazy loading with Solaris
4092335 chkmesg not able to find xlate.c during build of libelf
4093064 elfdump coredumps inside of syminfo processing
4096079 ABI requires HIX22 and LOX10 reloc types (Hal additions)
4096995 gelf needs to be made MT-safe
4067926 strip breaks hard links
4097806 runtime linker references a unmapped address causing libthread panic
4099713 stripping and scoping create invalid init/fini dynamic tags.
4088306 introduce new section SHT_COMDAT
4102797 elftypes.h uses new 2.7 inttypes data structures
4095586 need LD_PROFILE for 64-bit libraries
4100002 /usr/ccs/bin/dump gives different results on 2.7 compared with 2.6
4099127 dlopen failure in link auditing context can be hazardous to your health
4104963 Either EM_NUM or EM_SPARCV9 needs to change
4102130 linker need dependency search continuation
4092511 object size silently truncated to 32 bits
4107525 Locking in eprint() is incorrect; causes hangs on MT applications on 2.6
4108699 lazy loading can cause .init sections to fire off to soon.
4108808 text segment re-mapped read-write when not required

(from 103627-02)

4068108 dlerror() messages printed to stderr during link-auditing
4062757 link auditing breaks apps using libdl

(from 103627-01)

1247793 dlsym() can't find symbol

(from 103606-02)

1244333 The SHF_EXCLUDE flag defined in ppc ABI should be implemented and for all ISA's

(from 103606-01)

1056449 ld should handle an empty archive without aborting with an error

(from 105069-01)

4052067 ar can't have identical archive and file names


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: 
-----------------------------
NOTE 1:	TO GET THE COMPLETE FIX FOR BUGID FOR 4149227 (103612-
        41 causes ldd to throw out unresolved references in 
        libdl.so.1), ONE ALSO NEEDS TO INSTALL THE FOLLOWING
        PATCHES:

        103663-14 (or newer)       libresolv patch
        103640-23 (or newer)       libthread/KU patch
        105732-02 (or newer)       libxfn patch
        103612-44 (or newer)       libc/libnsl patch	
</pre></body></html>