aboutsummaryrefslogtreecommitdiff
path: root/include/elf.h
diff options
context:
space:
mode:
authorjohannst <johannes.stoelp@gmail.com>2020-11-24 21:23:08 +0100
committerjohannst <johannes.stoelp@gmail.com>2020-11-24 21:23:08 +0100
commitf9f2b6bb2d685556bc3346ca3f7e55f4c865fc16 (patch)
tree3ed8ac66323b6985713427d147826c5845212c13 /include/elf.h
parentf9e7e2003266e70c0d018f5712c431d187159e65 (diff)
downloaddynld-f9f2b6bb2d685556bc3346ca3f7e55f4c865fc16.tar.gz
dynld-f9f2b6bb2d685556bc3346ca3f7e55f4c865fc16.zip
add process init chapter
Add chapter on process initialization. Add program to visualize data provided by the Linux Kernel as specified in the SysV ABI. Add utils for syscalls and printing + tests.
Diffstat (limited to 'include/elf.h')
-rw-r--r--include/elf.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/elf.h b/include/elf.h
new file mode 100644
index 0000000..7e279fe
--- /dev/null
+++ b/include/elf.h
@@ -0,0 +1,26 @@
+// Copyright (c) 2020 Johannes Stoelp
+
+#pragma once
+
+#include <bits/stdint-uintn.h>
+#include <stdint.h>
+
+enum eAuxvTag {
+ AT_NULL = 0, /* ignored */
+ AT_IGNORE = 1, /* ignored */
+ AT_EXECFD = 2, /* val */
+ AT_PHDR = 3, /* ptr */
+ AT_PHENT = 4, /* val */
+ AT_PHNUM = 5, /* val */
+ AT_PAGESZ = 6, /* val */
+ AT_BASE = 7, /* ptr */
+ AT_FLAGS = 8, /* val */
+ AT_ENTRY = 9, /* ptr */
+ AT_NOTELF = 10, /* val */
+ AT_UID = 11, /* val */
+ AT_EUID = 12, /* val */
+ AT_GID = 13, /* val */
+ AT_EGID = 14, /* val */
+
+ AT_MAX_CNT,
+};