
    dX                          G d  de       Z G d de       Z G d de       Z G d de       Z G d d	e       Z G d
 de       Z G d de       Z G d de       Zy)c                       e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZd	Zd
Zd	Zd
ZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)d	Z*dZ+dZ,d
Z-dZ.dZ/dZ0dZ1d Z2dZ3dZ4d!Z5d	Z6d
Z7d"Z8e2Z9e3Z:e4Z;e5Z<e6Z=e7Z>e8Z?y#)$E_FLAGSz9 Flag values for the e_flags field of the ELF header
          ~ i   i   i   i   i   i@                i  @ i                 @            ` i   i    i   0i   @i   Pi   `i   p                    N)@__name__
__module____qualname____doc__EF_ARM_EABIMASKEF_ARM_EABI_VER1EF_ARM_EABI_VER2EF_ARM_EABI_VER3EF_ARM_EABI_VER4EF_ARM_EABI_VER5EF_ARM_GCCMASKEF_ARM_RELEXECEF_ARM_HASENTRYEF_ARM_SYMSARESORTEDEF_ARM_DYNSYMSUSESEGIDXEF_ARM_MAPSYMSFIRST
EF_ARM_LE8
EF_ARM_BE8EF_ARM_ABI_FLOAT_SOFTEF_ARM_ABI_FLOAT_HARDEF_PPC64_ABI_V0EF_PPC64_ABI_V1EF_PPC64_ABI_V2EF_MIPS_NOREORDEREF_MIPS_PICEF_MIPS_CPICEF_MIPS_XGOTEF_MIPS_64BIT_WHIRLEF_MIPS_ABI2EF_MIPS_ABI_ON32EF_MIPS_32BITMODEEF_MIPS_NAN2008EF_MIPS_ARCHEF_MIPS_ARCH_1EF_MIPS_ARCH_2EF_MIPS_ARCH_3EF_MIPS_ARCH_4EF_MIPS_ARCH_5EF_MIPS_ARCH_32EF_MIPS_ARCH_64EF_MIPS_ARCH_32R2EF_MIPS_ARCH_64R2EF_RISCV_RVCEF_RISCV_FLOAT_ABIEF_RISCV_FLOAT_ABI_SOFTEF_RISCV_FLOAT_ABI_SINGLEEF_RISCV_FLOAT_ABI_DOUBLEEF_RISCV_FLOAT_ABI_QUADEF_RISCV_RVEEF_RISCV_TSOEF_LOONGARCH_OBJABI_MASKEF_LOONGARCH_OBJABI_V0EF_LOONGARCH_OBJABI_V1EF_LOONGARCH_ABI_MODIFIER_MASKEF_LOONGARCH_ABI_SOFT_FLOATEF_LOONGARCH_ABI_SINGLE_FLOATEF_LOONGARCH_ABI_DOUBLE_FLOATEF_LARCH_OBJABI_MASKEF_LARCH_OBJABI_V0EF_LARCH_OBJABI_V1EF_LARCH_ABI_MODIFIER_MASKEF_LARCH_ABI_SOFT_FLOATEF_LARCH_ABI_SINGLE_FLOATEF_LARCH_ABI_DOUBLE_FLOAT     8/usr/lib/python3/dist-packages/elftools/elf/constants.pyr   r   
   sX   ONNOJJ$$OOOKLLLOLNNNNNOO  L!&((&LL'%%#-" *",!",! 4//!?9 = =rW   r   c                   $    e Zd ZdZdZdZdZdZdZy)E_FLAGS_MASKSzMasks to be used for convenience when working with E_FLAGS

    This is a simplified approach that is also used by GNU binutils
    readelf
    i          i 0   @  N)	r   r   r   r   EFM_MIPS_ABIEFM_MIPS_ABI_O32EFM_MIPS_ABI_O64EFM_MIPS_ABI_EABI32EFM_MIPS_ABI_EABI64rV   rW   rX   rZ   rZ   P   s&    
 L!!$$rW   rZ   c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
dZy)	SHN_INDICESz Special section indices
    r   i   i  i  i  i  N)r   r   r   r   	SHN_UNDEFSHN_LORESERVE
SHN_LOPROC
SHN_HIPROCSHN_ABS
SHN_COMMONSHN_HIRESERVE
SHN_XINDEXrV   rW   rX   rd   rd   ]   s/    IMJJGJMJrW   rd   c                   H    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZy)SH_FLAGSz; Flag values for the sh_flags field of section headers
    r   r   r   r	   r   r      r   r
   r      i  r   r   N)r   r   r   r   	SHF_WRITE	SHF_ALLOCSHF_EXECINSTR	SHF_MERGESHF_STRINGSSHF_INFO_LINKSHF_LINK_ORDERSHF_OS_NONCONFORMING	SHF_GROUPSHF_TLSSHF_COMPRESSED
SHF_MASKOSSHF_EXCLUDESHF_MASKPROCrV   rW   rX   rn   rn   j   sN    IIMIKMNIGNJKLrW   rn   c                   P    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZy)RH_FLAGSz= Flag values for the DT_MIPS_FLAGS dynamic table entries
    r   r   r   r   r   r	   r   r   ro   r   r
   r   rp   r[   r\   r]   N)r   r   r   r   RHF_NONERHF_QUICKSTART
RHF_NOTPOTRHF_NO_LIBRARY_REPLACEMENTRHF_NO_MOVERHF_SGI_ONLYRHF_GUARANTEE_INITRHF_DELTA_C_PLUS_PLUSRHF_GUARANTEE_START_INIT	RHF_PIXIERHF_DEFAULT_DELAY_LOADRHF_REQUICKSTARTRHF_REQUICKSTARTEDRHF_CORDRHF_NO_UNRES_UNDEFRHF_RLD_ORDER_SAFErV   rW   rX   r   r   }   s`    HNJ)KL!$'I%!H!!rW   r   c                   $    e Zd ZdZdZdZdZdZdZy)P_FLAGSz: Flag values for the p_flags field of program headers
    r   r   r   i   r   N)	r   r   r   r   PF_XPF_WPF_R	PF_MASKOSPF_MASKPROCrV   rW   rX   r   r      s     	D	D	DIKrW   r   c                   8    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZy)SUNW_SYMINFO_FLAGSzR Flags for the si_flags field of entries
        in the .SUNW_syminfo section
    r   r   r   r   r	   r   r   ro   r   r
   N)r   r   r   r   SYMINFO_FLG_DIRECTSYMINFO_FLG_FILTERSYMINFO_FLG_COPYSYMINFO_FLG_LAZYLOADSYMINFO_FLG_DIRECTBINDSYMINFO_FLG_NOEXTDIRECTSYMINFO_FLG_AUXILIARYSYMINFO_FLG_INTERPOSESYMINFO_FLG_CAPSYMINFO_FLG_DEFERREDrV   rW   rX   r   r      sD      OrW   r   c                       e Zd ZdZdZdZy)	VER_FLAGSr   r   r   N)r   r   r   VER_FLG_BASEVER_FLG_WEAKVER_FLG_INFOrV   rW   rX   r   r      s    LLLrW   r   N)	objectr   rZ   rd   rn   r   r   r   r   rV   rW   rX   <module>r      sh   D>f D>L
%F 
%
& 
v &"v "*f   rW   