aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2020-04-01 15:34:10 +0000
committerEd Maste <emaste@FreeBSD.org>2020-04-01 15:34:10 +0000
commit51ae128421c56a5f47d8ee86fba4671cd9b7db3e (patch)
tree48e0eda0afccf896096ba0539c2039558e2766d3
parent0bf56da32d83fbd3b5db8d6c72cd1e7cc26fbc66 (diff)
downloadsrc-51ae128421c56a5f47d8ee86fba4671cd9b7db3e.tar.gz
src-51ae128421c56a5f47d8ee86fba4671cd9b7db3e.zip
elf.5: add definitions of FreeBSD notes
I hope to extend this with some more detail in the future but it gives a good starting point. Thanks to 0mp for assistance with markup. Reviewed by: jkoshy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23982
Notes
Notes: svn path=/head/; revision=359513
-rw-r--r--share/man/man5/elf.526
1 files changed, 26 insertions, 0 deletions
diff --git a/share/man/man5/elf.5 b/share/man/man5/elf.5
index b386af12e5d0..a0a10cbed28b 100644
--- a/share/man/man5/elf.5
+++ b/share/man/man5/elf.5
@@ -1296,6 +1296,32 @@ fields are padded to ensure 4-byte alignemnt.
and
.Va descsz
specify the unpadded length.
+.Pp
+.Fx
+defines the following ELF note types
+.Po with corresponding interpretation of
+.Va desc Pc :
+.Bl -tag -width 4n
+.It Dv NT_FREEBSD_ABI_TAG Pq Value: 1
+Indicates the OS ABI version in a form of a 32-bit integer containing expected
+ABI version
+.Po i.e.,
+.Dv __FreeBSD_version Pc .
+.It Dv NT_FREEBSD_NOINIT_TAG Pq Value: 2
+Indicates that crt does not call init.
+.Va desc
+is ignored.
+.It Dv NT_FREEBSD_ARCH_TAG Pq Value: 3
+.It Dv NT_FREEBSD_FEATURE_CTL Pq Value: 4
+Contains a bitmask of mitigations and features to enable:
+.Bl -column "NT_FREEBSD_FCTL_PROTMAX_DISABLE" "0x00" "Disable implicit PROT_MAX"
+.Sy Name Ta Sy Value Ta Sy Description
+.It NT_FREEBSD_FCTL_ASLR_DISABLE Ta 0x01 Ta Disable ASLR
+.It NT_FREEBSD_FCTL_PROTMAX_DISABLE Ta 0x02 Ta Disable implicit PROT_MAX
+.It NT_FREEBSD_FCTL_STKGAP_DISABLE Ta 0x04 Ta Disable stack gap
+.It NT_FREEBSD_FCTL_WXNEEDED Ta 0x08 Ta Binary makes W+X mappings
+.El
+.El
.Sh SEE ALSO
.Xr as 1 ,
.Xr gdb 1 ,