about summary refs log tree commit diff
path: root/patches/e9patch-static-pie.patch
diff options
context:
space:
mode:
authorNguyễn Gia Phong <cnx@loang.net>2025-10-22 16:54:32 +0900
committerNguyễn Gia Phong <cnx@loang.net>2025-10-22 16:54:32 +0900
commit129c729a064e8a26d56cf746f31a5f325070989a (patch)
tree40b0b4771a74ac5c26282990b101133aa6bf2d3b /patches/e9patch-static-pie.patch
parent8505f11552b411e180722980dc64268dfe95af2b (diff)
downloadloftix-129c729a064e8a26d56cf746f31a5f325070989a.tar.gz
E9Patch: support call trampolines in static-PIE
Diffstat (limited to 'patches/e9patch-static-pie.patch')
-rw-r--r--patches/e9patch-static-pie.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/patches/e9patch-static-pie.patch b/patches/e9patch-static-pie.patch
new file mode 100644
index 0000000..cb269a7
--- /dev/null
+++ b/patches/e9patch-static-pie.patch
@@ -0,0 +1,22 @@
+From 4e41d765307fae15c903dc6d1141ec85e9047d87 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nguy=E1=BB=85n=20Gia=20Phong?= <cnx@loang.net>
+Date: Wed, 22 Oct 2025 16:37:24 +0900
+Subject: [PATCH] Support call trampolines in static-PIE linked executables
+
+---
+ src/e9tool/e9frontend.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/e9tool/e9frontend.cpp b/src/e9tool/e9frontend.cpp
+index a296a71..080e751 100644
+--- a/src/e9tool/e9frontend.cpp
++++ b/src/e9tool/e9frontend.cpp
+@@ -1022,7 +1022,7 @@ ELF *e9tool::parseELF(const char *filename, intptr_t base)
+         end = std::max(end, phdr_end);
+         switch (phdr->p_type)
+         {
+-            case PT_INTERP:
++            case PT_DYNAMIC:
+                 if (!exe && !isLibraryFilename(filename))
+                     exe = true;
+                 dynlink = true;