Lines Matching defs:phdr
43 Elf_Phdr **phdr);
68 Elf_Phdr *phdr;
102 hdr = get_elf_header(fd, path, sb, &phdr);
110 phsize = hdr->e_phnum * sizeof(phdr[0]);
111 phlimit = phdr + hdr->e_phnum;
122 while (phdr < phlimit) {
123 switch (phdr->p_type) {
125 phinterp = phdr;
129 segs[++nsegs] = phdr;
144 phdr_vaddr = phdr->p_vaddr;
145 phsize = phdr->p_memsz;
149 phdyn = phdr;
153 phtls = phdr;
157 stack_flags = phdr->p_flags;
161 if (phdr->p_offset > page_size ||
162 phdr->p_offset + phdr->p_filesz > page_size) {
163 note_map_len = rtld_round_page(phdr->p_offset +
164 phdr->p_filesz) -
165 rtld_trunc_page(phdr->p_offset);
168 rtld_trunc_page(phdr->p_offset));
176 phdr->p_offset -
177 rtld_trunc_page(phdr->p_offset));
180 phdr->p_offset;
182 note_end = note_start + phdr->p_filesz;
186 ++phdr;
312 obj->phdr = (const Elf_Phdr *)(obj->relocbase + phdr_vaddr);
314 obj->phdr = malloc(phsize);
315 if (obj->phdr == NULL) {
321 memcpy(__DECONST(char *, obj->phdr), (char *)hdr + hdr->e_phoff,
352 munmap(phdr, hdr->e_phnum * sizeof(phdr[0]));
396 Elf_Phdr *phdr;
421 phdr = (Elf_Phdr *)((char *)hdr + hdr->e_phoff);
423 phdr = mmap(NULL, hdr->e_phnum * sizeof(phdr[0]), PROT_READ,
425 if (phdr == MAP_FAILED) {
426 _rtld_error("%s: error mapping phdr: %s", path,
431 *phdr_p = phdr;
479 free(__DECONST(void *, obj->phdr));