2019-09-06 15:57:44 -07:00

66 lines
20 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `section_header` mod in crate `goblin`."><meta name="keywords" content="rust, rustlang, rust-lang, section_header"><title>goblin::elf::section_header - Rust</title><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../goblin/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module section_header</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li><li><a href="#constants">Constants</a></li><li><a href="#functions">Functions</a></li></ul></div><p class='location'><a href='../../index.html'>goblin</a>::<wbr><a href='../index.html'>elf</a></p><script>window.sidebarCurrent = {name: 'section_header', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/goblin/elf/section_header.rs.html#1-555' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>goblin</a>::<wbr><a href='../index.html'>elf</a>::<wbr><a class="mod" href=''>section_header</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="section_header32/index.html" title='goblin::elf::section_header::section_header32 mod'>section_header32</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="section_header64/index.html" title='goblin::elf::section_header::section_header64 mod'>section_header64</a></td><td class='docblock-short'></td></tr></table><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.SectionHeader.html" title='goblin::elf::section_header::SectionHeader struct'>SectionHeader</a></td><td class='docblock-short'><p>A unified SectionHeader - convertable to and from 32-bit and 64-bit variants</p>
</td></tr></table><h2 id='constants' class='section-header'><a href="#constants">Constants</a></h2>
<table><tr class='module-item'><td><a class="constant" href="constant.SHF_ALLOC.html" title='goblin::elf::section_header::SHF_ALLOC constant'>SHF_ALLOC</a></td><td class='docblock-short'><p>Occupies memory during execution.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_COMPRESSED.html" title='goblin::elf::section_header::SHF_COMPRESSED constant'>SHF_COMPRESSED</a></td><td class='docblock-short'><p>Section with compressed data.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_EXECINSTR.html" title='goblin::elf::section_header::SHF_EXECINSTR constant'>SHF_EXECINSTR</a></td><td class='docblock-short'><p>Executable.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_FLAGS.html" title='goblin::elf::section_header::SHF_FLAGS constant'>SHF_FLAGS</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_GROUP.html" title='goblin::elf::section_header::SHF_GROUP constant'>SHF_GROUP</a></td><td class='docblock-short'><p>Section is member of a group.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_INFO_LINK.html" title='goblin::elf::section_header::SHF_INFO_LINK constant'>SHF_INFO_LINK</a></td><td class='docblock-short'><p>`sh_info' contains SHT index.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_LINK_ORDER.html" title='goblin::elf::section_header::SHF_LINK_ORDER constant'>SHF_LINK_ORDER</a></td><td class='docblock-short'><p>Preserve order after combining.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_MASKOS.html" title='goblin::elf::section_header::SHF_MASKOS constant'>SHF_MASKOS</a></td><td class='docblock-short'><p>OS-specific..</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_MASKPROC.html" title='goblin::elf::section_header::SHF_MASKPROC constant'>SHF_MASKPROC</a></td><td class='docblock-short'><p>Processor-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_MERGE.html" title='goblin::elf::section_header::SHF_MERGE constant'>SHF_MERGE</a></td><td class='docblock-short'><p>Might be merged.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_NUM_REGULAR_FLAGS.html" title='goblin::elf::section_header::SHF_NUM_REGULAR_FLAGS constant'>SHF_NUM_REGULAR_FLAGS</a></td><td class='docblock-short'><p>Number of &quot;regular&quot; section header flags</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_ORDERED.html" title='goblin::elf::section_header::SHF_ORDERED constant'>SHF_ORDERED</a></td><td class='docblock-short'><p>Special ordering requirement (Solaris).</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_OS_NONCONFORMING.html" title='goblin::elf::section_header::SHF_OS_NONCONFORMING constant'>SHF_OS_NONCONFORMING</a></td><td class='docblock-short'><p>Non-standard OS specific handling required.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_STRINGS.html" title='goblin::elf::section_header::SHF_STRINGS constant'>SHF_STRINGS</a></td><td class='docblock-short'><p>Contains nul-terminated strings.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_TLS.html" title='goblin::elf::section_header::SHF_TLS constant'>SHF_TLS</a></td><td class='docblock-short'><p>Section hold thread-local data.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHF_WRITE.html" title='goblin::elf::section_header::SHF_WRITE constant'>SHF_WRITE</a></td><td class='docblock-short'><p>Writable.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_ABS.html" title='goblin::elf::section_header::SHN_ABS constant'>SHN_ABS</a></td><td class='docblock-short'><p>Associated symbol is absolute.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_AFTER.html" title='goblin::elf::section_header::SHN_AFTER constant'>SHN_AFTER</a></td><td class='docblock-short'><p>Order section after all others (Solaris).</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_BEFORE.html" title='goblin::elf::section_header::SHN_BEFORE constant'>SHN_BEFORE</a></td><td class='docblock-short'><p>Order section before all others (Solaris).</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_COMMON.html" title='goblin::elf::section_header::SHN_COMMON constant'>SHN_COMMON</a></td><td class='docblock-short'><p>Associated symbol is common.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_HIOS.html" title='goblin::elf::section_header::SHN_HIOS constant'>SHN_HIOS</a></td><td class='docblock-short'><p>End of OS-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_HIPROC.html" title='goblin::elf::section_header::SHN_HIPROC constant'>SHN_HIPROC</a></td><td class='docblock-short'><p>End of processor-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_HIRESERVE.html" title='goblin::elf::section_header::SHN_HIRESERVE constant'>SHN_HIRESERVE</a></td><td class='docblock-short'><p>End of reserved indices.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_LOOS.html" title='goblin::elf::section_header::SHN_LOOS constant'>SHN_LOOS</a></td><td class='docblock-short'><p>Start of OS-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_LOPROC.html" title='goblin::elf::section_header::SHN_LOPROC constant'>SHN_LOPROC</a></td><td class='docblock-short'><p>Start of processor-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_LORESERVE.html" title='goblin::elf::section_header::SHN_LORESERVE constant'>SHN_LORESERVE</a></td><td class='docblock-short'><p>Start of reserved indices.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_UNDEF.html" title='goblin::elf::section_header::SHN_UNDEF constant'>SHN_UNDEF</a></td><td class='docblock-short'><p>Undefined section.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHN_XINDEX.html" title='goblin::elf::section_header::SHN_XINDEX constant'>SHN_XINDEX</a></td><td class='docblock-short'><p>Index is in extra table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_CHECKSUM.html" title='goblin::elf::section_header::SHT_CHECKSUM constant'>SHT_CHECKSUM</a></td><td class='docblock-short'><p>Checksum for DSO content.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_DYNAMIC.html" title='goblin::elf::section_header::SHT_DYNAMIC constant'>SHT_DYNAMIC</a></td><td class='docblock-short'><p>Dynamic linking information.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_DYNSYM.html" title='goblin::elf::section_header::SHT_DYNSYM constant'>SHT_DYNSYM</a></td><td class='docblock-short'><p>Dynamic linker symbol table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_FINI_ARRAY.html" title='goblin::elf::section_header::SHT_FINI_ARRAY constant'>SHT_FINI_ARRAY</a></td><td class='docblock-short'><p>Array of destructors.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_ATTRIBUTES.html" title='goblin::elf::section_header::SHT_GNU_ATTRIBUTES constant'>SHT_GNU_ATTRIBUTES</a></td><td class='docblock-short'><p>Object attributes.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_HASH.html" title='goblin::elf::section_header::SHT_GNU_HASH constant'>SHT_GNU_HASH</a></td><td class='docblock-short'><p>GNU-style hash table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_LIBLIST.html" title='goblin::elf::section_header::SHT_GNU_LIBLIST constant'>SHT_GNU_LIBLIST</a></td><td class='docblock-short'><p>Prelink library list.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_VERDEF.html" title='goblin::elf::section_header::SHT_GNU_VERDEF constant'>SHT_GNU_VERDEF</a></td><td class='docblock-short'><p>Version definition section.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_VERNEED.html" title='goblin::elf::section_header::SHT_GNU_VERNEED constant'>SHT_GNU_VERNEED</a></td><td class='docblock-short'><p>Version needs section.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GNU_VERSYM.html" title='goblin::elf::section_header::SHT_GNU_VERSYM constant'>SHT_GNU_VERSYM</a></td><td class='docblock-short'><p>Version symbol table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_GROUP.html" title='goblin::elf::section_header::SHT_GROUP constant'>SHT_GROUP</a></td><td class='docblock-short'><p>Section group.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_HASH.html" title='goblin::elf::section_header::SHT_HASH constant'>SHT_HASH</a></td><td class='docblock-short'><p>Symbol hash table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_HIOS.html" title='goblin::elf::section_header::SHT_HIOS constant'>SHT_HIOS</a></td><td class='docblock-short'><p>End OS-specific type.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_HIPROC.html" title='goblin::elf::section_header::SHT_HIPROC constant'>SHT_HIPROC</a></td><td class='docblock-short'><p>End of processor-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_HISUNW.html" title='goblin::elf::section_header::SHT_HISUNW constant'>SHT_HISUNW</a></td><td class='docblock-short'><p>Sun-specific high bound.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_HIUSER.html" title='goblin::elf::section_header::SHT_HIUSER constant'>SHT_HIUSER</a></td><td class='docblock-short'><p>End of application-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_INIT_ARRAY.html" title='goblin::elf::section_header::SHT_INIT_ARRAY constant'>SHT_INIT_ARRAY</a></td><td class='docblock-short'><p>Array of constructors.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_LOOS.html" title='goblin::elf::section_header::SHT_LOOS constant'>SHT_LOOS</a></td><td class='docblock-short'><p>Start OS-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_LOPROC.html" title='goblin::elf::section_header::SHT_LOPROC constant'>SHT_LOPROC</a></td><td class='docblock-short'><p>Start of processor-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_LOSUNW.html" title='goblin::elf::section_header::SHT_LOSUNW constant'>SHT_LOSUNW</a></td><td class='docblock-short'><p>Sun-specific low bound.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_LOUSER.html" title='goblin::elf::section_header::SHT_LOUSER constant'>SHT_LOUSER</a></td><td class='docblock-short'><p>Start of application-specific.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_NOBITS.html" title='goblin::elf::section_header::SHT_NOBITS constant'>SHT_NOBITS</a></td><td class='docblock-short'><p>Program space with no data (bss).</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_NOTE.html" title='goblin::elf::section_header::SHT_NOTE constant'>SHT_NOTE</a></td><td class='docblock-short'><p>Notes.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_NULL.html" title='goblin::elf::section_header::SHT_NULL constant'>SHT_NULL</a></td><td class='docblock-short'><p>Section header table entry unused.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_NUM.html" title='goblin::elf::section_header::SHT_NUM constant'>SHT_NUM</a></td><td class='docblock-short'><p>Number of defined types.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_PREINIT_ARRAY.html" title='goblin::elf::section_header::SHT_PREINIT_ARRAY constant'>SHT_PREINIT_ARRAY</a></td><td class='docblock-short'><p>Array of pre-constructors.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_PROGBITS.html" title='goblin::elf::section_header::SHT_PROGBITS constant'>SHT_PROGBITS</a></td><td class='docblock-short'><p>Program data.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_REL.html" title='goblin::elf::section_header::SHT_REL constant'>SHT_REL</a></td><td class='docblock-short'><p>Relocation entries, no addends.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_RELA.html" title='goblin::elf::section_header::SHT_RELA constant'>SHT_RELA</a></td><td class='docblock-short'><p>Relocation entries with addends.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SHLIB.html" title='goblin::elf::section_header::SHT_SHLIB constant'>SHT_SHLIB</a></td><td class='docblock-short'><p>Reserved.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_STRTAB.html" title='goblin::elf::section_header::SHT_STRTAB constant'>SHT_STRTAB</a></td><td class='docblock-short'><p>String table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SUNW_COMDAT.html" title='goblin::elf::section_header::SHT_SUNW_COMDAT constant'>SHT_SUNW_COMDAT</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SUNW_MOVE.html" title='goblin::elf::section_header::SHT_SUNW_MOVE constant'>SHT_SUNW_MOVE</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SUNW_SYMINFO.html" title='goblin::elf::section_header::SHT_SUNW_SYMINFO constant'>SHT_SUNW_SYMINFO</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SYMTAB.html" title='goblin::elf::section_header::SHT_SYMTAB constant'>SHT_SYMTAB</a></td><td class='docblock-short'><p>Symbol table.</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.SHT_SYMTAB_SHNDX.html" title='goblin::elf::section_header::SHT_SYMTAB_SHNDX constant'>SHT_SYMTAB_SHNDX</a></td><td class='docblock-short'><p>Extended section indeces.</p>
</td></tr></table><h2 id='functions' class='section-header'><a href="#functions">Functions</a></h2>
<table><tr class='module-item'><td><a class="fn" href="fn.shf_to_str.html" title='goblin::elf::section_header::shf_to_str fn'>shf_to_str</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.sht_to_str.html" title='goblin::elf::section_header::sht_to_str fn'>sht_to_str</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "goblin";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>