Home | History | Annotate | Download | only in libelf

Lines Matching refs:LIBELFBITS

48 #ifndef LIBELFBITS
49 # define LIBELFBITS 32
59 if ((*scna)->shdr.ELFW(e,LIBELFBITS)->sh_offset
60 < (*scnb)->shdr.ELFW(e,LIBELFBITS)->sh_offset)
63 if ((*scna)->shdr.ELFW(e,LIBELFBITS)->sh_offset
64 > (*scnb)->shdr.ELFW(e,LIBELFBITS)->sh_offset)
67 if ((*scna)->shdr.ELFW(e,LIBELFBITS)->sh_size
68 < (*scnb)->shdr.ELFW(e,LIBELFBITS)->sh_size)
71 if ((*scna)->shdr.ELFW(e,LIBELFBITS)->sh_size
72 > (*scnb)->shdr.ELFW(e,LIBELFBITS)->sh_size)
106 __elfw2(LIBELFBITS,updatemmap) (Elf *elf, int change_bo, size_t shnum)
111 ElfW2(LIBELFBITS,Ehdr) *ehdr = elf->state.ELFW(elf,LIBELFBITS).ehdr;
114 if ((elf->state.ELFW(elf,LIBELFBITS).ehdr_flags | elf->flags) & ELF_F_DIRTY)
118 assert (sizeof (ElfW2(LIBELFBITS,Ehdr))
119 == elf_typesize (LIBELFBITS, ELF_T_EHDR, 1));
126 fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_EHDR];
129 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_EHDR]
134 sizeof (ElfW2(LIBELFBITS,Ehdr)), 1);
138 sizeof (ElfW2(LIBELFBITS,Ehdr)));
140 elf->state.ELFW(elf,LIBELFBITS).ehdr_flags &= ~ELF_F_DIRTY;
144 previous_scn_changed = elf->state.ELFW(elf,LIBELFBITS).phdr == NULL;
152 if (elf->state.ELFW(elf,LIBELFBITS).phdr != NULL
153 && ((elf->state.ELFW(elf,LIBELFBITS).phdr_flags | elf->flags)
158 assert (sizeof (ElfW2(LIBELFBITS,Phdr))
159 == elf_typesize (LIBELFBITS, ELF_T_PHDR, 1));
172 fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_PHDR];
175 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_PHDR]
180 elf->state.ELFW(elf,LIBELFBITS).phdr,
181 sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum, 1);
185 elf->state.ELFW(elf,LIBELFBITS).phdr,
186 sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum);
188 elf->state.ELFW(elf,LIBELFBITS).phdr_flags &= ~ELF_F_DIRTY;
198 + MAX (elf_typesize (LIBELFBITS, ELF_T_EHDR, 1),
200 + elf_typesize (LIBELFBITS, ELF_T_PHDR, phnum));
208 Elf_ScnList *list = &elf->state.ELFW(elf,LIBELFBITS).scns;
215 xfct_t shdr_fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_SHDR];
218 # define shdr_fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_SHDR]
220 #define shdr_dest ((ElfW2(LIBELFBITS,Shdr) *) shdr_start)
231 if (!elf->state.ELFW(elf,LIBELFBITS).shdr_malloced
233 && scn->shdr.ELFW(e,LIBELFBITS) != &shdr_dest[scn->index])
236 < (char *) scn->shdr.ELFW(e,LIBELFBITS));
237 assert ((char *) scn->shdr.ELFW(e,LIBELFBITS)
241 void *p = alloca (sizeof (ElfW2(LIBELFBITS,Shdr)));
242 scn->shdr.ELFW(e,LIBELFBITS)
243 = memcpy (p, scn->shdr.ELFW(e,LIBELFBITS),
244 sizeof (ElfW2(LIBELFBITS,Shdr)));
259 + scn->shdr.ELFW(e,LIBELFBITS)->sh_offset)
287 ElfW2(LIBELFBITS,Shdr) *shdr = scn->shdr.ELFW(e,LIBELFBITS);
348 fctp = __elf_xfctstom[__libelf_version - 1][dl->data.d.d_version - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][dl->data.d.d_type];
351 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][dl->data.d.d_type]
413 scn->shdr.ELFW(e,LIBELFBITS),
414 sizeof (ElfW2(LIBELFBITS,Shdr)), 1);
417 scn->shdr.ELFW(e,LIBELFBITS),
418 sizeof (ElfW2(LIBELFBITS,Shdr)));
423 if (!elf->state.ELFW(elf,LIBELFBITS).shdr_malloced
425 scn->shdr.ELFW(e,LIBELFBITS) = &shdr_dest[scn->index];
492 __elfw2(LIBELFBITS,updatefile) (Elf *elf, int change_bo, size_t shnum)
499 ElfW2(LIBELFBITS,Ehdr) *ehdr = elf->state.ELFW(elf,LIBELFBITS).ehdr;
502 if ((elf->state.ELFW(elf,LIBELFBITS).ehdr_flags | elf->flags) & ELF_F_DIRTY)
504 ElfW2(LIBELFBITS,Ehdr) tmp_ehdr;
505 ElfW2(LIBELFBITS,Ehdr) *out_ehdr = ehdr;
509 assert (sizeof (ElfW2(LIBELFBITS,Ehdr))
510 == elf_typesize (LIBELFBITS, ELF_T_EHDR, 1));
517 fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_EHDR];
520 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_EHDR]
524 (*fctp) (&tmp_ehdr, ehdr, sizeof (ElfW2(LIBELFBITS,Ehdr)), 1);
532 LIBELFBITS,Ehdr)), 0)
533 != sizeof (ElfW2(LIBELFBITS,Ehdr))))
539 elf->state.ELFW(elf,LIBELFBITS).ehdr_flags &= ~ELF_F_DIRTY;
543 previous_scn_changed = elf->state.ELFW(elf,LIBELFBITS).phdr == NULL;
548 assert (sizeof (ElfW2(LIBELFBITS,Phdr))
549 == elf_typesize (LIBELFBITS, ELF_T_PHDR, 1));
556 if (elf->state.ELFW(elf,LIBELFBITS).phdr != NULL
557 && ((elf->state.ELFW(elf,LIBELFBITS).phdr_flags | elf->flags)
560 ElfW2(LIBELFBITS,Phdr) *tmp_phdr = NULL;
561 ElfW2(LIBELFBITS,Phdr) *out_phdr = elf->state.ELFW(elf,LIBELFBITS).phdr;
576 fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_PHDR];
579 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_PHDR]
583 tmp_phdr = (ElfW2(LIBELFBITS,Phdr) *)
584 malloc (sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum);
592 (*fctp) (tmp_phdr, elf->state.ELFW(elf,LIBELFBITS).phdr,
593 sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum, 1);
600 size_t phdr_size = sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum;
612 elf->state.ELFW(elf,LIBELFBITS).phdr_flags &= ~ELF_F_DIRTY;
622 if (elf->state.ELFW(elf,LIBELFBITS).phdr == NULL)
623 last_offset = elf_typesize (LIBELFBITS, ELF_T_EHDR, 1);
625 last_offset = (ehdr->e_phoff + sizeof (ElfW2(LIBELFBITS,Phdr)) * phnum);
631 + sizeof (ElfW2(LIBELFBITS,Shdr)))))
636 xfct_t shdr_fctp = __elf_xfctstom[__libelf_version - 1][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_SHDR];
639 # define shdr_fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][ELF_T_SHDR]
642 ElfW2(LIBELFBITS,Shdr) *shdr_data;
643 if (change_bo || elf->state.ELFW(elf,LIBELFBITS).shdr == NULL
645 shdr_data = (ElfW2(LIBELFBITS,Shdr) *)
646 alloca (shnum * sizeof (ElfW2(LIBELFBITS,Shdr)));
648 shdr_data = elf->state.ELFW(elf,LIBELFBITS).shdr;
652 Elf_ScnList *list = &elf->state.ELFW(elf,LIBELFBITS).scns;
667 ElfW2(LIBELFBITS,Shdr) *shdr = scn->shdr.ELFW(e,LIBELFBITS);
707 fctp = __elf_xfctstom[__libelf_version - 1][dl->data.d.d_version - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][dl->data.d.d_type];
710 # define fctp __elf_xfctstom[0][EV_CURRENT - 1][ELFW(ELFCLASS, LIBELFBITS) - 1][dl->data.d.d_type]
773 scn->shdr.ELFW(e,LIBELFBITS),
774 sizeof (ElfW2(LIBELFBITS,Shdr)), 1);
775 else if (elf->state.ELFW(elf,LIBELFBITS).shdr == NULL
777 memcpy (&shdr_data[scn->index], scn->shdr.ELFW(e,LIBELFBITS),
778 sizeof (ElfW2(LIBELFBITS,Shdr)));
795 sizeof (ElfW2(LIBELFBITS,Shdr))
797 != sizeof (ElfW2(LIBELFBITS,Shdr)) * shnum))