예제 #1
0
  static void EndianSwap(Dyn& rDyn, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rDyn.d_tag);
    ::EndianSwap(rDyn.d_un.d_val);
  }
예제 #2
0
  static void EndianSwap(Rel& rRel, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rRel.r_offset);
    ::EndianSwap(rRel.r_info);
  }
예제 #3
0
  static void EndianSwap(Rela& rRela, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rRela.r_offset);
    ::EndianSwap(rRela.r_info);
    ::EndianSwap(rRela.r_addend);
  }
예제 #4
0
  static void EndianSwap(Sym& rSym, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rSym.st_name);
    ::EndianSwap(rSym.st_value);
    ::EndianSwap(rSym.st_size);
    ::EndianSwap(rSym.st_info);
    ::EndianSwap(rSym.st_other);
    ::EndianSwap(rSym.st_shndx);
  }
예제 #5
0
  static void EndianSwap(Phdr& rPhdr, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rPhdr.p_type);
    ::EndianSwap(rPhdr.p_flags);
    ::EndianSwap(rPhdr.p_offset);
    ::EndianSwap(rPhdr.p_vaddr);
    ::EndianSwap(rPhdr.p_paddr);
    ::EndianSwap(rPhdr.p_filesz);
    ::EndianSwap(rPhdr.p_memsz);
    ::EndianSwap(rPhdr.p_align);
  }
예제 #6
0
  static void EndianSwap(Shdr& rShdr, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rShdr.sh_name);
    ::EndianSwap(rShdr.sh_type);
    ::EndianSwap(rShdr.sh_flags);
    ::EndianSwap(rShdr.sh_addr);
    ::EndianSwap(rShdr.sh_offset);
    ::EndianSwap(rShdr.sh_size);
    ::EndianSwap(rShdr.sh_link);
    ::EndianSwap(rShdr.sh_info);
    ::EndianSwap(rShdr.sh_addralign);
    ::EndianSwap(rShdr.sh_entsize);
  }
예제 #7
0
  static void EndianSwap(Ehdr& rEhdr, EEndianness Endianness)
  {
    if (!TestEndian(Endianness))
      return;

    ::EndianSwap(rEhdr.e_type);
    ::EndianSwap(rEhdr.e_machine);
    ::EndianSwap(rEhdr.e_version);
    ::EndianSwap(rEhdr.e_entry);
    ::EndianSwap(rEhdr.e_phoff);
    ::EndianSwap(rEhdr.e_shoff);
    ::EndianSwap(rEhdr.e_flags);
    ::EndianSwap(rEhdr.e_ehsize);
    ::EndianSwap(rEhdr.e_phentsize);
    ::EndianSwap(rEhdr.e_phnum);
    ::EndianSwap(rEhdr.e_shentsize);
    ::EndianSwap(rEhdr.e_shnum);
    ::EndianSwap(rEhdr.e_shstrndx);
  }
예제 #8
0
/*************************************************
	Function: 		main
	Description: 	主函数
	Calls: 			scanf	printf
	Called By:		编译器
	Input: 			无
	Output: 		无
	Return: 		0
*************************************************/
int main(void)
{
	int a = TestEndian();
	printf("%d\n", a);
}