diff --git a/share/man/man5/elf.5 b/share/man/man5/elf.5
index 385b0243784c..5cdd94ae83cf 100644
--- a/share/man/man5/elf.5
+++ b/share/man/man5/elf.5
@@ -90,6 +90,7 @@ The following types are being used for 32-bit architectures:
 .Bd -literal -offset indent
 Elf32_Addr	Unsigned 32-bit program address
 Elf32_Half	Unsigned 16-bit field
+Elf32_Lword	Unsigned 64-bit field
 Elf32_Off	Unsigned 32-bit file offset
 Elf32_Sword	Signed 32-bit field or integer
 Elf32_Word	Unsigned 32-bit field or integer
@@ -99,10 +100,11 @@ For 64-bit architectures we have the following types:
 .Bd -literal -offset indent
 Elf64_Addr	Unsigned 64-bit program address
 Elf64_Half	Unsigned 16-bit field
+Elf64_Lword	Unsigned 64-bit field
 Elf64_Off	Unsigned 64-bit file offset
 Elf64_Sword	Signed 32-bit field
-Elf64_Word	Unsigned 32-bit field
 Elf64_Sxword	Signed 64-bit field or integer
+Elf64_Word	Unsigned 32-bit field
 Elf64_Xword	Unsigned 64-bit field or integer
 .Ed
 .Pp
@@ -375,19 +377,31 @@ A section header is one
 entry in the section header table; all entries are the same size.
 .It Dv e_shnum
 This member holds the number of entries in the section header table.
-Thus
-the product of
+If the file is using extended section numbering, then the
+.Sy e_shnum
+field will be zero and the actual section number will be stored in the
+.Sy sh_size
+member of the section header at index
+.Dv SHN_UNDEF .
+If a file has no section header table, both the
+.Sy e_shnum
+and the
+.Sy e_shoff
+fields of the ELF header will be zero.
+The product of
 .Sy e_shentsize
-and
-.Sy e_shnum
-gives the section header table's size in bytes.
-If a file has no section
-header table,
-.Sy e_shnum
-holds the value of zero.
+and the number of sections in the file gives the section header
+table's size in bytes.
 .It Dv e_shstrndx
 This member holds the section header table index of the entry associated
 with the section name string table.
+If extended section numbering is being used, this field will hold the
+value
+.Sy SHN_XINDEX ,
+and the actual section header table index will be present in the
+.Sy sh_link
+field of the section header entry at index
+.Dv SHN_UNDEF .
 If the file has no section name string
 table, this member holds the value
 .Sy SHN_UNDEF .