Commit Graph

725 Commits

Author SHA1 Message Date
John Ericson
cac8c90eaa Release 0.15.5
I think this the last round of backports for now -- I see no other easy
and obviously-safe things to cherry-pick.
0.15.5
2025-08-12 23:33:10 -04:00
Jörg Thalheim
d9ae0a5498 tests: use proper exit code to mark tests as skipped
(cherry picked from commit acee2a4bb4)
2025-08-12 23:20:42 -04:00
Christian Göttsche
87da867f6f Adjust roundUp for 0 as input
Round up 0 to m instead of wrapping around and return an unexpected
result, which is not a multiple of m.

(cherry picked from commit 5b88266ce8)
2025-08-12 23:15:48 -04:00
yairKoskas
df161c6a38 Out-of-bounds read exists in the function modifySoname
(cherry picked from commit e9d3394659)
2025-08-12 23:05:36 -04:00
Jörg Thalheim
7f431b95f4 patchelf: correct page size for sparc64/sparc32
(cherry picked from commit da968fb849)
2025-08-12 23:03:14 -04:00
Jörg Thalheim
80335e1f63 fix pagesize on ia64
(cherry picked from commit b21526c11a)
2025-08-12 23:02:52 -04:00
John Ericson
efbed36bbe A few more markdown changes 2025-08-12 22:49:03 -04:00
John Ericson
be2c5d5df9 Better markdown in change log 2025-08-12 22:47:46 -04:00
John Ericson
5f773e4a1a Fix version in change log 0.15.4 2025-08-12 22:36:54 -04:00
John Ericson
90ce9d3db2 Merge pull request #615 from NixOS/0.15-latest-elf-header
elf.h: Update `RISC-V` relocations
2025-08-12 22:21:30 -04:00
Michal Biesek
cdddc5511b elf.h: Update RISC-V relocations
glibc: commit: 6f962278e24bdf5cb5f310c5a17add41da95407c

And then cut a patch release

Signed-off-by: Michal Biesek <michalbiesek@gmail.com>
(adapted from commit ace831cc97)
2025-08-12 22:14:28 -04:00
John Ericson
35f952fd24 Cut release 0.15.3 2025-08-12 22:04:25 -04:00
John Ericson
ba938c55b2 Merge remote-tracking branch 'upstream/0.15-maintenance' into 0.15-maintenance 2025-08-12 22:02:11 -04:00
John Ericson
db84a3a647 Merge pull request #613 from obsidiansystems/test-64
Add regression test for #64
2025-08-12 21:59:21 -04:00
John Ericson
c0186ccf5a Add regression test for #64
This issue has been solved in the decade since it was reported. We just
need the test to prove it.

Closes #64
2025-08-12 21:45:15 -04:00
John Ericson
fa67b61ec1 Start preparing 0.15.3 release 2025-08-12 18:59:58 -04:00
Bo Anderson
eb1f61ac0b Fix out of bounds access when increasing program header table
(cherry picked from commit fc21d139a4)
2025-08-12 18:40:15 -04:00
zhailiangliang
5b27dc4d5a Out-of-bounds read exists in the function modifyRPath
(cherry picked from commit 96c8422e37)
2025-08-12 18:39:47 -04:00
Jörg Thalheim
76486f7643 fix c++17 check
https://github.com/NixOS/patchelf/issues/393

Appearantly there are compilers that support -std=c++17 but do not
really support c++17.

(cherry picked from commit 9921136529)
2025-08-12 18:38:06 -04:00
John Ericson
d27e04333c Merge commit '7281d999e95d6730d1d08fc7517c15e27ddfb65f' into 0.15-maintenance 2025-08-12 18:37:16 -04:00
John Ericson
58f5b19503 Release 0.15.2
Very minor, just a build system thing. See change log.
0.15.2
2025-08-12 17:16:59 -04:00
Heiko Becker
6b0d933887 Also respect a prefixed nm and strings too
(cherry picked from commit 1ab6930d15)
2025-08-12 17:11:38 -04:00
Heiko Becker
731fcc20ef Also pass STRIP to the tests
It is used in tests/no-gnu-hash.sh.

(cherry picked from commit d9ff398634)
2025-08-12 17:11:12 -04:00
John Ericson
db8cbe93f2 Release 0.15.1 0.15.1 2025-08-12 16:10:17 -04:00
John Ericson
64e8cf5c12 Add change log for a potential, not-yet-released 0.15.1 2025-08-12 15:59:26 -04:00
John Ericson
4ac172be9a Format markdown in the commit log 2025-08-12 15:48:41 -04:00
Christian Göttsche
89d970597f Avoid implicit conversion
Use auto to avoid implicit type conversion, hiding possible value
truncation.

(cherry picked from commit 00d1e82f2b)
2025-08-12 15:23:59 -04:00
Christian Göttsche
90bad95364 Avoid implicit value truncations in wri()
Abort on truncation of values being written to the ELF data, to prevent
silent behavior mismatch.

(cherry picked from commit 28e95b30f3)
2025-08-12 15:23:58 -04:00
Christian Göttsche
daba6af292 Avoid dropping const qualifier
(cherry picked from commit b5b59ca4cb)
2025-08-12 15:23:45 -04:00
Christian Göttsche
86c3d0f441 Declare file local functions static
(cherry picked from commit 889350de50)
2025-08-12 15:23:45 -04:00
Christian Göttsche
a188583fb0 Drop superfluous semicolons
(cherry picked from commit 1c2d1fffaf)
2025-08-12 15:23:45 -04:00
Christian Göttsche
986a0aeeba Use C++11 [[noreturn]]
(cherry picked from commit b2897ab819)
2025-08-12 15:23:45 -04:00
Christian Göttsche
602405bb13 Avoid potential overflows in checkPointer()
Prevent overflows in the addtion of q and size, and avoid truncations in
callers by using size_t as type for size.

(cherry picked from commit e883229437)
2025-08-12 15:23:45 -04:00
Christian Göttsche
2b9700b643 Drop unnecessary casts in getElfType()
Also declare the function static and warn if return value not used.

(cherry picked from commit 98d1813f25)
2025-08-12 15:23:45 -04:00
Christian Göttsche
45a6dcee39 Close file before potentially throwing
(cherry picked from commit c00676a28a)
2025-08-12 15:23:45 -04:00
Christian Göttsche
de48fab274 Avoid unnecessary copies in splitColonDelimitedString()
Avoid creating a stringstream by using find().

(cherry picked from commit a393454963)
2025-08-12 15:23:45 -04:00
Christian Göttsche
d8de743799 Use C++ casts instead of raw C ones in hdr()
(cherry picked from commit 404761cf4d)
2025-08-12 15:23:45 -04:00
Christian Göttsche
547d8d7bd2 Drop unnecessary friend declarations
(cherry picked from commit 09673eb553)
2025-08-12 15:23:45 -04:00
Christian Göttsche
728797dbed Add misc functions annotations
Make the behavior of functions more explicit.

(cherry picked from commit fbb12a72ad)
2025-08-12 15:23:45 -04:00
Christian Göttsche
5baeaeecd5 Add required includes in header file
Enable to parse the header file on its own, e.g. for language servers
(clangd).

(cherry picked from commit ce5907fc40)
2025-08-12 15:23:42 -04:00
John Ericson
c0ee925daf Add 0.15 release info
Taken for retroactive documentation from GitHub.
2025-08-12 15:15:07 -04:00
Jörg Thalheim
344efe7cef README: move release history to ChangeLog.md
John thinks its better that we keep this information in-repo. It just
doesn't need to go in the read-em.

Co-Authored-By: John Ericson <John.Ericson@Obsidian.Systems>
2025-08-12 15:14:33 -04:00
Breno Rodrigues Guimaraes
a97bfdf479 Fix all shellcheck issues
(cherry picked from commit 8adc31ed7b)
2025-08-12 15:06:56 -04:00
Jörg Thalheim
61fdb6e999 tests: apply suggestions from shellcheck
(cherry picked from commit be4b84635f)
2025-08-12 15:04:30 -04:00
Jörg Thalheim
2d18660af7 fix checkPhase for cross builds
fixes https://github.com/NixOS/patchelf/issues/417

(cherry picked from commit f7b184c004)
2025-08-12 15:04:13 -04:00
Bo Anderson
33e3e8b617 tests/contiguous-note-sections.sh: use scratch directory
(cherry picked from commit a93de9d4ce)
2025-08-12 15:03:34 -04:00
Jörg Thalheim
06b8a41214 make objdump/objcopy/readelf configurable and respect cross-compiling related prefixes
(cherry picked from commit b0599fe776)
2025-08-12 14:59:49 -04:00
John Ericson
03746bff2c Backport infra improvements from master to 0.15
This is the version currently used in Nixpkgs as the stable version, so
I am interested in seeing it be developable, even as the hope is to move
to a newer version.
2025-08-12 14:54:44 -04:00
Jörg Thalheim
7281d999e9 Merge pull request #407 from robert-scheck/glibc-hwcaps
Handle glibc-hwcaps on ppc64le on CentOS/RHEL/Rocky 8 for tests/replace-add-needed.sh (fixes #406)
2022-09-27 21:52:14 +02:00
Robert Scheck
f7053d0237 Handle glibc-hwcaps on ppc64le on CentOS/RHEL/Rocky 8 for tests/replace-add-needed.sh (fixes #406)
ldd(1) usually returns for ELF binaries output like this:

	libc.so.6 => /lib64/libc.so.6 (0x00007fbacd6ca000)

But with glibc-hwcaps, the output could also be like this:

	libc.so.6 => /lib64/glibc-hwcaps/power9/libc-2.28.so (0x00007fffb5800000)

See also: https://sourceware.org/pipermail/libc-alpha/2020-June/115250.html
2022-09-27 00:41:51 +02:00