Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/libexec/ld.elf_so



Module Name:    src
Committed By:   christos
Date:           Tue Apr 18 16:48:45 UTC 2023

Modified Files:
        src/libexec/ld.elf_so: rtld.h symbol.c

Log Message:
The SysV ABI specifies that the symbol hash function should return only 32
bits of hash. Unfortunately due to an implementation bu and the fact that
the return type is unsigned long which is 64 bits in LP64, this can fail
in some cases: "\xff\x0f\x0f\x0f\x0f\x0f\x12". See:
    https://maskray.me/blog/2023-04-12-elf-hash-function
>From Ed Maste @ FreeBSD:
    https://cgit.freebsd.org/src/commit/\
        ?id=29e3a06510823edbb91667d21f530d3ec778116d
Need to write Unit Tests for this.


To generate a diff of this commit:
cvs rdiff -u -r1.144 -r1.145 src/libexec/ld.elf_so/rtld.h
cvs rdiff -u -r1.73 -r1.74 src/libexec/ld.elf_so/symbol.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index