Lines Matching refs:ElfHandle

58 void* ELi_CopySectionToBuffer( ELHandle* ElfHandle, Elf32_Shdr* Shdr)  in ELi_CopySectionToBuffer()  argument
65 load_start = ELi_ALIGN( ((u32)(ElfHandle->buf_current)), 4); in ELi_CopySectionToBuffer()
70 ElfHandle->ELi_ReadStub( (void*)load_start, in ELi_CopySectionToBuffer()
71 ElfHandle->FileStruct, in ELi_CopySectionToBuffer()
72 (u32)(ElfHandle->ar_head), in ELi_CopySectionToBuffer()
73 (u32)(ElfHandle->elf_offset)+(u32)(Shdr->sh_offset), in ELi_CopySectionToBuffer()
77 ElfHandle->buf_current = (void*)(load_start + sh_size); in ELi_CopySectionToBuffer()
88 void* ELi_AllocSectionToBuffer( ELHandle* ElfHandle, Elf32_Shdr* Shdr) in ELi_AllocSectionToBuffer() argument
95 load_start = ELi_ALIGN( ((u32)(ElfHandle->buf_current)), 4); in ELi_AllocSectionToBuffer()
100 ElfHandle->buf_current = (void*)(load_start + sh_size); in ELi_AllocSectionToBuffer()
113 void ELi_GetShdr( ELHandle* ElfHandle, u32 index, Elf32_Shdr* Shdr) in ELi_GetShdr() argument
117 offset = (ElfHandle->CurrentEhdr.e_shoff) + ((u32)(ElfHandle->shentsize) * index); in ELi_GetShdr()
119 ElfHandle->ELi_ReadStub( Shdr, in ELi_GetShdr()
120 ElfHandle->FileStruct, in ELi_GetShdr()
121 (u32)(ElfHandle->ar_head), in ELi_GetShdr()
122 (u32)(ElfHandle->elf_offset) + offset, in ELi_GetShdr()
129 void ELi_GetSent( ELHandle* ElfHandle, u32 index, void* entry_buf, u32 offset, u32 size) in ELi_GetSent() argument
134 ELi_GetShdr( ElfHandle, index, &Shdr); in ELi_GetSent()
136 ElfHandle->ELi_ReadStub( entry_buf, in ELi_GetSent()
137 ElfHandle->FileStruct, in ELi_GetSent()
138 (u32)(ElfHandle->ar_head), in ELi_GetSent()
139 (u32)(ElfHandle->elf_offset) + (u32)(Shdr.sh_offset) + offset, in ELi_GetSent()
150 void ELi_GetEntry( ELHandle* ElfHandle, Elf32_Shdr* Shdr, u32 index, void* entry_buf) in ELi_GetEntry() argument
156 ElfHandle->ELi_ReadStub( entry_buf, in ELi_GetEntry()
157 ElfHandle->FileStruct, in ELi_GetEntry()
158 (u32)(ElfHandle->ar_head), in ELi_GetEntry()
159 (u32)(ElfHandle->elf_offset) + offset, in ELi_GetEntry()
169 void ELi_GetStrAdr( ELHandle* ElfHandle, u32 strsh_index, u32 ent_index, char* str, u32 len) in ELi_GetStrAdr() argument
172 ELi_GetSent( ElfHandle, strsh_index, str, ent_index, len); in ELi_GetStrAdr()
198 void ELi_RelocateSym( ELHandle* ElfHandle, u32 relsh_index) in ELi_RelocateSym() argument
223 ELi_GetShdr( ElfHandle, relsh_index, &RelOrRelaShdr); in ELi_RelocateSym()
226 ELi_GetShdr( ElfHandle, RelOrRelaShdr.sh_link, &(ElfHandle->SymShdr)); in ELi_RelocateSym()
227 SymShdr = &(ElfHandle->SymShdr); in ELi_RelocateSym()
234 TargetShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, RelOrRelaShdr.sh_info); in ELi_RelocateSym()
246 ELi_GetEntry( ElfHandle, SymShdr, i, &(CurrentSymEx->Sym)); in ELi_RelocateSym()
249 CurrentShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, CurrentSymEx->Sym.st_shndx); in ELi_RelocateSym()
259 ElfHandle->SymEx = DmySymEx.next; in ELi_RelocateSym()
263 CurrentSymEx = ElfHandle->SymEx; in ELi_RelocateSym()
266 CurrentSymEx->thumb_flag = (u16)(ELi_CodeIsThumb( ElfHandle, CurrentSymEx->Sym.st_shndx, in ELi_RelocateSym()
279 ELi_GetEntry( ElfHandle, &RelOrRelaShdr, i, &CurrentRela); in ELi_RelocateSym()
287 CurrentSymEx = ELi_GetSymExfromList( ElfHandle->SymEx, in ELi_RelocateSym()
304 … ELi_GetStrAdr( ElfHandle, SymShdr->sh_link, CurrentSymEx->Sym.st_name, sym_str, 128); in ELi_RelocateSym()
337 … CurrentShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, CurrentSymEx->Sym.st_shndx); in ELi_RelocateSym()
358 CurrentSymEx = ELi_GetSymExfromList( ElfHandle->SymEx, i); in ELi_RelocateSym()
369 ELi_GetStrAdr( ElfHandle, SymShdr->sh_link, CurrentSymEx->Sym.st_name, sym_str, 128); in ELi_RelocateSym()
375 CurrentShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, CurrentSymEx->Sym.st_shndx); in ELi_RelocateSym()
396 CurrentSymEx = ElfHandle->SymEx; in ELi_RelocateSym()
403 ElfHandle->SymEx = NULL; in ELi_RelocateSym()
409 ElfHandle->process = EL_RELOCATED; in ELi_RelocateSym()
418 void ELi_DiscriminateGlobalSym( ELHandle* ElfHandle, u32 symsh_index) in ELi_DiscriminateGlobalSym() argument
433 ELi_GetShdr( ElfHandle, symsh_index, &CurrentSymShdr); in ELi_DiscriminateGlobalSym()
445 ELi_GetEntry( ElfHandle, SymShdr, i, &(CurrentSymEx->Sym)); in ELi_DiscriminateGlobalSym()
448 CurrentShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, CurrentSymEx->Sym.st_shndx); in ELi_DiscriminateGlobalSym()
458 ElfHandle->SymEx = DmySymEx.next; in ELi_DiscriminateGlobalSym()
462 CurrentSymEx = ElfHandle->SymEx; in ELi_DiscriminateGlobalSym()
465 CurrentSymEx->thumb_flag = (u16)(ELi_CodeIsThumb( ElfHandle, CurrentSymEx->Sym.st_shndx, in ELi_DiscriminateGlobalSym()
475 CurrentSymEx = ELi_GetSymExfromList( ElfHandle->SymEx, i); in ELi_DiscriminateGlobalSym()
486 ELi_GetStrAdr( ElfHandle, SymShdr->sh_link, CurrentSymEx->Sym.st_name, sym_str, 128); in ELi_DiscriminateGlobalSym()
497 … CurrentShdrEx = ELi_GetShdrExfromList( ElfHandle->ShdrEx, CurrentSymEx->Sym.st_shndx); in ELi_DiscriminateGlobalSym()
520 CurrentSymEx = ElfHandle->SymEx; in ELi_DiscriminateGlobalSym()
527 ElfHandle->SymEx = NULL; in ELi_DiscriminateGlobalSym()
671 BOOL ELi_ShdrIsDebug( ELHandle* ElfHandle, u32 index) in ELi_ShdrIsDebug() argument
677 ELi_GetShdr( ElfHandle, index, &TmpShdr); in ELi_ShdrIsDebug()
678 ELi_GetStrAdr( ElfHandle, ElfHandle->CurrentEhdr.e_shstrndx, in ELi_ShdrIsDebug()
686 if( ELi_ShdrIsDebug( ElfHandle, TmpShdr.sh_info) == TRUE) { in ELi_ShdrIsDebug()
705 u32 ELi_CodeIsThumb( ELHandle* ElfHandle, u16 sh_index, u32 offset) in ELi_CodeIsThumb() argument
714 SymShdr = &(ElfHandle->SymShdr); in ELi_CodeIsThumb()
715 CurrentSymEx = ElfHandle->SymEx; in ELi_CodeIsThumb()
722 ELi_GetStrAdr( ElfHandle, SymShdr->sh_link, CurrentSymEx->Sym.st_name, str_adr, 3); in ELi_CodeIsThumb()