Ejemplo n.º 1
0
        /// <summary>
        /// Creates a new instance with the default sections (null and a shadow program header table).
        /// </summary>
        public ElfObjectFile(ElfArch arch) : this(true)
        {
            Arch = arch;
            switch (arch)
            {
            case ElfArch.I386:
                FileClass = ElfFileClass.Is32;
                Encoding  = ElfEncoding.Lsb;
                break;

            case ElfArch.X86_64:
                FileClass = ElfFileClass.Is64;
                Encoding  = ElfEncoding.Lsb;
                break;

            case ElfArch.ARM:
                FileClass = ElfFileClass.Is32;
                Encoding  = ElfEncoding.Lsb;    // not 100% valid, but ok for a default
                break;

            case ElfArch.AARCH64:
                FileClass = ElfFileClass.Is64;
                Encoding  = ElfEncoding.Lsb;    // not 100% valid, but ok for a default
                break;

                // TODO: Add support for more arch
            }
            Version  = ElfNative.EV_CURRENT;
            FileType = ElfFileType.Relocatable;
        }
Ejemplo n.º 2
0
 public ElfRelocationType(ElfArch arch, uint value)
 {
     Arch  = arch;
     Value = value;
 }
Ejemplo n.º 3
0
 public ElfArchEx(ElfArch value)
 {
     Value = value;
 }