summaryrefslogtreecommitdiff
path: root/src/patchelf.h
diff options
context:
space:
mode:
authorChristian Göttsche <cgzones@googlemail.com>2023-01-27 17:15:02 +0100
committerChristian Göttsche <cgzones@googlemail.com>2023-01-28 23:27:34 +0100
commitf7d304eeb1f46a15d8fb6564459ed003edbf9bb3 (patch)
tree06c541da9cf09d6d92ac8f2510b02316348db6b9 /src/patchelf.h
parent5908e16cd562bcb1909be4de0409c4912a8afc52 (diff)
downloadpatchelf-f7d304eeb1f46a15d8fb6564459ed003edbf9bb3.tar.gz
Add options to print, clear and set executable stack state
Add options the modify the state of the executable flag of the GNU_STACK program header. That header indicates whether the object is requiring an executable stack.
Diffstat (limited to 'src/patchelf.h')
-rw-r--r--src/patchelf.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/patchelf.h b/src/patchelf.h
index f4eec6f..c3096ff 100644
--- a/src/patchelf.h
+++ b/src/patchelf.h
@@ -105,7 +105,7 @@ private:
public:
- void rewriteSections();
+ void rewriteSections(bool force = false);
std::string getInterpreter();
@@ -139,6 +139,10 @@ public:
void clearSymbolVersions(const std::set<std::string> & syms);
+ enum class ExecstackMode { print, set, clear };
+
+ void modifyExecstack(ExecstackMode op);
+
private:
/* Convert an integer in big or little endian representation (as