Commit Graph

764 Commits

Author SHA1 Message Date
John Ericson
0aaa2f7401 Add a number of tests for binaries that used to crash patchelf
Most now error out nicely, as of 0.16, but some still cause a crash.

Fix #132
Progress on #133 (have tests, failure remains)
Fix #134
Progress on #135 (have test, failure remains)
2025-08-13 00:33:50 -04:00
John Ericson
4c0bb4fc71 Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 23:36:43 -04:00
John Ericson
4b2ad30106 More markdown fixes in changelog 2025-08-12 23:36:15 -04:00
John Ericson
5f65d1dab2 Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 23:35:21 -04:00
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
f3cb3033ff Start preparing notes for next release 2025-08-12 22:57:09 -04:00
John Ericson
fd98c9841a Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 22:49:34 -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
9963cbef08 Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 22:42:54 -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
5b0bab10fe Add historical 0.16.x change log entries 2025-08-12 19:06:53 -04:00
John Ericson
d377657ab3 Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 19:03:02 -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
ca2538504b Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 17:19:23 -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
Jörg Thalheim
edec2a9ad7 tests: apply suggestions from shellcheck
Re-cherry-pick for the files that were not in the last cherry-pick.

(cherry picked from commit be4b84635f)
2025-08-12 16:20:35 -04:00
John Ericson
aeaaa426ab Merge branch '0.15-maintenance' into 0.16-maintenance 2025-08-12 16:16:34 -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