bionic: add machine type check

android linker doesn't check machine type, it may load some
libraries which it doesn't support sometimes.

Author: Zhenghua Wang <zhenghua.wang@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
This commit is contained in:
Zhenghua Wang 2011-10-19 00:29:14 +08:00 committed by Jean-Baptiste Queru
parent faa7c1d29f
commit 897815a1fe

View file

@ -707,7 +707,11 @@ verify_elf_object(void *base, const char *name)
if (hdr->e_ident[EI_MAG3] != ELFMAG3) return -1;
/* TODO: Should we verify anything else in the header? */
#ifdef ANDROID_ARM_LINKER
if (hdr->e_machine != EM_ARM) return -1;
#elif defined(ANDROID_X86_LINKER)
if (hdr->e_machine != EM_386) return -1;
#endif
return 0;
}