elf vocabulary - Factor Documentation (original) (raw)

Summary
Constants and structs related to the ELF object format.

Metadata

Tags: file formats
Authors: Erik Charlebois

Words

Tuple classes

Class Superclass Slots
Elf32_Dyn struct
Elf32_Ehdr struct
Elf32_Phdr struct
Elf32_Rel struct
Elf32_Rela struct
Elf32_Shdr struct
Elf32_Sym struct
Elf64_Dyn struct
Elf64_Ehdr struct
Elf64_Phdr struct
Elf64_Rel struct
Elf64_Rela struct
Elf64_Shdr struct
Elf64_Sym struct
elf tuple elf-header
section tuple name elf-header section-header data
segment tuple elf-header program-header data
symbol tuple name elf-header sym data

Union classes

Elf32/64_Ehdr
Elf32/64_Phdr
Elf32/64_Phdr-array
Elf32/64_Shdr
Elf32/64_Shdr-array
Elf32/64_Sym
Elf32/64_Sym-array

Generic words

Word Stack effect
sections ( obj -- sections )

Symbol words

Elf32_Addr
Elf32_Half
Elf32_Off
Elf32_Sword
Elf32_Word
Elf64_Addr
Elf64_Half
Elf64_Off
Elf64_Sxword
Elf64_Word
Elf64_Xword

Ordinary words

Word Stack effect
64-bit? ( elf: Elf32/64_Ehdr -- ? )
( c-ptr -- elf )
DT_ARM_PREEMPTYMAP ( -- value )
DT_ARM_RESERVED1 ( -- value )
DT_ARM_RESERVED2 ( -- value )
DT_ARM_SYMTABSZ ( -- value )
DT_BIND_NOW ( -- value )
DT_DEBUG ( -- value )
DT_ENCODING ( -- value )
DT_FINI ( -- value )
DT_FINI_ARRAY ( -- value )
DT_FINI_ARRAYSZ ( -- value )
DT_FLAGS ( -- value )
DT_HASH ( -- value )
DT_HIOS ( -- value )
DT_HIPROC ( -- value )
DT_INIT ( -- value )
DT_INIT_ARRAY ( -- value )
DT_INIT_ARRAYSZ ( -- value )
DT_JMPREL ( -- value )
DT_LOOS ( -- value )
DT_LOPROC ( -- value )
DT_NEEDED ( -- value )
DT_NULL ( -- value )
DT_PLTGOT ( -- value )
DT_PLTREL ( -- value )
DT_PLTRELSZ ( -- value )
DT_PREINIT_ARRAY ( -- value )
DT_PREINIT_ARRAYSZ ( -- value )
DT_REL ( -- value )
DT_RELA ( -- value )
DT_RELAENT ( -- value )
DT_RELASZ ( -- value )
DT_RELENT ( -- value )
DT_RELSZ ( -- value )
DT_RPATH ( -- value )
DT_RUNPATH ( -- value )
DT_SONAME ( -- value )
DT_STRSZ ( -- value )
DT_STRTAB ( -- value )
DT_SYMBOLIC ( -- value )
DT_SYMENT ( -- value )
DT_SYMTAB ( -- value )
DT_TEXTREL ( -- value )
EF_ARM_BE8 ( -- value )
EF_ARM_EABIMASK ( -- value )
EI_ABIVERSION ( -- value )
EI_CLASS ( -- value )
EI_DATA ( -- value )
EI_MAG0 ( -- value )
EI_MAG1 ( -- value )
EI_MAG2 ( -- value )
EI_MAG3 ( -- value )
EI_NIDENT ( -- value )
EI_OSABI ( -- value )
EI_PAD ( -- value )
EI_VERSION ( -- value )
ELFCLASS32 ( -- value )
ELFCLASS64 ( -- value )
ELFDATA2LSB ( -- value )
ELFDATA2MSB ( -- value )
ELFMAG0 ( -- value )
ELFMAG1 ( -- value )
ELFMAG2 ( -- value )
ELFMAG3 ( -- value )
ELFOSABI_AIX ( -- value )
ELFOSABI_ARM ( -- value )
ELFOSABI_ARM_AEABI ( -- value )
ELFOSABI_AROS ( -- value )
ELFOSABI_FREEBSD ( -- value )
ELFOSABI_HPUX ( -- value )
ELFOSABI_IRIX ( -- value )
ELFOSABI_LINUX ( -- value )
ELFOSABI_MODESTO ( -- value )
ELFOSABI_NETBSD ( -- value )
ELFOSABI_NSK ( -- value )
ELFOSABI_OPENBSD ( -- value )
ELFOSABI_OPENVMS ( -- value )
ELFOSABI_SOLARIS ( -- value )
ELFOSABI_STANDALONE ( -- value )
ELFOSABI_SYSV ( -- value )
ELFOSABI_TRU64 ( -- value )
EM_386 ( -- value )
EM_486 ( -- value )
EM_68HC05 ( -- value )
EM_68HC08 ( -- value )
EM_68HC11 ( -- value )
EM_68HC12 ( -- value )
EM_68HC16 ( -- value )
EM_68K ( -- value )
EM_860 ( -- value )
EM_88K ( -- value )
EM_960 ( -- value )
EM_ALPHA ( -- value )
EM_ARC ( -- value )
EM_ARCA ( -- value )
EM_ARC_A5 ( -- value )
EM_ARM ( -- value )
EM_AVR ( -- value )
EM_BLACKFIN ( -- value )
EM_COLDFIRE ( -- value )
EM_CR ( -- value )
EM_CRIS ( -- value )
EM_D10V ( -- value )
EM_D30V ( -- value )
EM_F2MC16 ( -- value )
EM_FIREPATH ( -- value )
EM_FR20 ( -- value )
EM_FR30 ( -- value )
EM_FX66 ( -- value )
EM_H8S ( -- value )
EM_H8_300 ( -- value )
EM_H8_300H ( -- value )
EM_H8_500 ( -- value )
EM_HUANY ( -- value )
EM_IA_64 ( -- value )
EM_IP2K ( -- value )
EM_JAVELIN ( -- value )
EM_M32 ( -- value )
EM_M32R ( -- value )
EM_MAX ( -- value )
EM_ME16 ( -- value )
EM_MIPS ( -- value )
EM_MIPS_RS3_LE ( -- value )
EM_MIPS_X ( -- value )
EM_MMA ( -- value )
EM_MMIX ( -- value )
EM_MN10200 ( -- value )
EM_MN10300 ( -- value )
EM_MSP430 ( -- value )
EM_NCPU ( -- value )
EM_NDR1 ( -- value )
EM_NONE ( -- value )
EM_NS32K ( -- value )
EM_OPENRISC ( -- value )
EM_PARISC ( -- value )
EM_PCP ( -- value )
EM_PDSP ( -- value )
EM_PJ ( -- value )
EM_PPC ( -- value )
EM_PPC64 ( -- value )
EM_PRISM ( -- value )
EM_RCE ( -- value )
EM_RH32 ( -- value )
EM_S370 ( -- value )
EM_S390 ( -- value )
EM_SEP ( -- value )
EM_SE_C33 ( -- value )
EM_SH ( -- value )
EM_SNP1K ( -- value )
EM_SPARC ( -- value )
EM_SPARC32PLUS ( -- value )
EM_SPARC64 ( -- value )
EM_SPARCV9 ( -- value )
EM_SPU ( -- value )
EM_ST100 ( -- value )
EM_ST19 ( -- value )
EM_ST200 ( -- value )
EM_ST7 ( -- value )
EM_ST9PLUS ( -- value )
EM_STARCORE ( -- value )
EM_SVX ( -- value )
EM_TINYJ ( -- value )
EM_TMM_GPP ( -- value )
EM_TPC ( -- value )
EM_TRICORE ( -- value )
EM_UNICORE ( -- value )
EM_V800 ( -- value )
EM_V850 ( -- value )
EM_VAX ( -- value )
EM_VIDEOCORE ( -- value )
EM_VPP500 ( -- value )
EM_X86_64 ( -- value )
EM_XTENSA ( -- value )
EM_ZSP ( -- value )
ET_CORE ( -- value )
ET_DYN ( -- value )
ET_EXEC ( -- value )
ET_HIOS ( -- value )
ET_HIPROC ( -- value )
ET_LOOS ( -- value )
ET_LOPROC ( -- value )
ET_NONE ( -- value )
ET_REL ( -- value )
EV_CURRENT ( -- value )
EV_NONE ( -- value )
PF_MASKOS ( -- value )
PF_MASKPROC ( -- value )
PF_R ( -- value )
PF_W ( -- value )
PF_X ( -- value )
PT_ARM_ARCHEXT ( -- value )
PT_ARM_ARCHEXT_ARCHMSK ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv4 ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv4T ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv5T ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv5TE ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv5TEJ ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6 ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6K ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6KZ ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6M ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6SM ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv6T2 ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv7 ( -- value )
PT_ARM_ARCHEXT_ARCH_ARCHv7EM ( -- value )
PT_ARM_ARCHEXT_ARCH_UNKN ( -- value )
PT_ARM_ARCHEXT_FMTMSK ( -- value )
PT_ARM_ARCHEXT_FMT_ABI ( -- value )
PT_ARM_ARCHEXT_FMT_OS ( -- value )
PT_ARM_ARCHEXT_PROFMSK ( -- value )
PT_ARM_ARCHEXT_PROF_ARM ( -- value )
PT_ARM_ARCHEXT_PROF_CLASSIC ( -- value )
PT_ARM_ARCHEXT_PROF_MC ( -- value )
PT_ARM_ARCHEXT_PROF_NONE ( -- value )
PT_ARM_ARCHEXT_PROF_RT ( -- value )
PT_ARM_EXIDX ( -- value )
PT_ARM_UNWIND ( -- value )
PT_DYNAMIC ( -- value )
PT_HIOS ( -- value )
PT_HIPROC ( -- value )
PT_INTERP ( -- value )
PT_LOAD ( -- value )
PT_LOOS ( -- value )
PT_LOPROC ( -- value )
PT_NOTE ( -- value )
PT_NULL ( -- value )
PT_PHDR ( -- value )
PT_SHLIB ( -- value )
PT_TLS ( -- value )
SHF_ALLOC ( -- value )
SHF_EXECINSTR ( -- value )
SHF_GROUP ( -- value )
SHF_INFO_LINK ( -- value )
SHF_LINK_ORDER ( -- value )
SHF_MASKOS ( -- value )
SHF_MASKPROC ( -- value )
SHF_MERGE ( -- value )
SHF_OS_NONCONFORMING ( -- value )
SHF_STRINGS ( -- value )
SHF_TLS ( -- value )
SHF_WRITE ( -- value )
SHN_ABS ( -- value )
SHN_COMMON ( -- value )
SHN_HIOS ( -- value )
SHN_HIPROC ( -- value )
SHN_LOOS ( -- value )
SHN_LOPROC ( -- value )
SHN_UNDEF ( -- value )
SHT_ARM_ATTRIBUTES ( -- value )
SHT_ARM_DEBUGOVERLAY ( -- value )
SHT_ARM_EXIDX ( -- value )
SHT_ARM_OVERLAYSECTION ( -- value )
SHT_ARM_PREEMPTMAP ( -- value )
SHT_CHECKSUM ( -- value )
SHT_DYNAMIC ( -- value )
SHT_DYNSYM ( -- value )
SHT_GNU_LIBLIST ( -- value )
SHT_GNU_verdef ( -- value )
SHT_GNU_verneed ( -- value )
SHT_GNU_versym ( -- value )
SHT_HASH ( -- value )
SHT_HIOS ( -- value )
SHT_HIPROC ( -- value )
SHT_HISUNW ( -- value )
SHT_HIUSER ( -- value )
SHT_LOOS ( -- value )
SHT_LOPROC ( -- value )
SHT_LOSUNW ( -- value )
SHT_LOUSER ( -- value )
SHT_NOBITS ( -- value )
SHT_NOTE ( -- value )
SHT_NULL ( -- value )
SHT_PROGBITS ( -- value )
SHT_REL ( -- value )
SHT_RELA ( -- value )
SHT_SHLIB ( -- value )
SHT_STRTAB ( -- value )
SHT_SUNW_COMDAT ( -- value )
SHT_SUNW_move ( -- value )
SHT_SUNW_syminfo ( -- value )
SHT_SYMTAB ( -- value )
STB_GLOBAL ( -- value )
STB_HIOS ( -- value )
STB_HIPROC ( -- value )
STB_LOCAL ( -- value )
STB_LOOS ( -- value )
STB_LOPROC ( -- value )
STB_WEAK ( -- value )
STN_UNDEF ( -- value )
STT_COMMON ( -- value )
STT_FILE ( -- value )
STT_FUNC ( -- value )
STT_HIOS ( -- value )
STT_HIPROC ( -- value )
STT_LOOS ( -- value )
STT_LOPROC ( -- value )
STT_NOTYPE ( -- value )
STT_OBJECT ( -- value )
STT_SECTION ( -- value )
STT_TLS ( -- value )
STV_DEFAULT ( -- value )
STV_HIDDEN ( -- value )
STV_INTERNAL ( -- value )
STV_PROTECTED ( -- value )
elf-header ( c-ptr -- elf: Elf32/64_Ehdr )
elf-loadable-segments ( headers: Elf32/64_Phdr-array -- headers: Elf32/64_Phdr-array )
elf-program-headers ( elf: Elf32/64_Ehdr -- headers: Elf32/64_Phdr-array )
elf-section-data ( elf: Elf32/64_Ehdr header: Elf32/64_Shdr -- uchar-array/f )
elf-section-data-by-index ( elf: Elf32/64_Ehdr index -- header/f uchar-array/f )
elf-section-data-by-name ( elf: Elf32/64_Ehdr name: string -- header/f uchar-array/f )
elf-section-headers ( elf: Elf32/64_Ehdr -- headers: Elf32/64_Shdr-array )
elf-section-name ( elf: Elf32/64_Ehdr header: Elf32/64_Shdr -- name: string )
elf-sections ( elf: Elf32/64_Ehdr -- sections )
elf-segment-data ( elf: Elf32/64_Ehdr header: Elf32/64_Phdr -- uchar-array/f )
elf-segment-sections ( segment: Elf32/64_Phdr sections: Elf32/64_Shdr-array -- sections )
elf-symbols ( elf: Elf32/64_Ehdr section-data: uchar-array -- symbols )
find-section ( sections name -- section/f )
find-section-symbol ( sections section symbol -- symbol/f )
find-symbol ( symbols name -- symbol/f )
segments ( elf -- segments )
symbol-data ( symbol -- data )
symbols ( section -- symbols )
virtual-address-section ( elf: Elf32/64_Ehdr address -- section-header/f )
virtual-address-segment ( elf: Elf32/64_Ehdr address -- program-header/f )
with-mapped-elf ( path quot -- )

Class predicate words

Word Stack effect
Elf32/64_Ehdr? ( object -- ? )
Elf32/64_Phdr-array? ( object -- ? )
Elf32/64_Phdr? ( object -- ? )
Elf32/64_Shdr-array? ( object -- ? )
Elf32/64_Shdr? ( object -- ? )
Elf32/64_Sym-array? ( object -- ? )
Elf32/64_Sym? ( object -- ? )
Elf32_Dyn? ( object -- ? )
Elf32_Ehdr? ( object -- ? )
Elf32_Phdr? ( object -- ? )
Elf32_Rel? ( object -- ? )
Elf32_Rela? ( object -- ? )
Elf32_Shdr? ( object -- ? )
Elf32_Sym? ( object -- ? )
Elf64_Dyn? ( object -- ? )
Elf64_Ehdr? ( object -- ? )
Elf64_Phdr? ( object -- ? )
Elf64_Rel? ( object -- ? )
Elf64_Rela? ( object -- ? )
Elf64_Shdr? ( object -- ? )
Elf64_Sym? ( object -- ? )
elf? ( object -- ? )
section? ( object -- ? )
segment? ( object -- ? )
symbol? ( object -- ? )

Files

resource:extra/elf/elf.factor
resource:extra/elf/elf-tests.factor

Metadata files

resource:extra/elf/authors.txt
resource:extra/elf/summary.txt
resource:extra/elf/tags.txt

Children from resource:extra

Vocabulary Summary
elf.nm UNIX nm-like utility.