Lines 607-617
static char *scanelf_file_textrels(elfobj *elf, char *found_textrels, char *foun
Link Here
|
607 |
} \ |
607 |
} \ |
608 |
switch (EGET(dpltrel->d_un.d_val)) { \ |
608 |
switch (EGET(dpltrel->d_un.d_val)) { \ |
609 |
case DT_REL: \ |
609 |
case DT_REL: \ |
|
|
610 |
if (!VALID_RANGE(elf, EGET(drel->d_un.d_val), sizeof (drel->d_un.d_val))) { \ |
611 |
rel = NULL; \ |
612 |
rela = NULL; \ |
613 |
warn("%s: DT_REL is out of file range", elf->filename); \ |
614 |
break; \ |
615 |
} \ |
610 |
rel = REL##B(elf->vdata + EGET(drel->d_un.d_val)); \ |
616 |
rel = REL##B(elf->vdata + EGET(drel->d_un.d_val)); \ |
611 |
rela = NULL; \ |
617 |
rela = NULL; \ |
612 |
pltrel = DT_REL; \ |
618 |
pltrel = DT_REL; \ |
613 |
break; \ |
619 |
break; \ |
614 |
case DT_RELA: \ |
620 |
case DT_RELA: \ |
|
|
621 |
if (!VALID_RANGE(elf, EGET(drel->d_un.d_val), sizeof (drel->d_un.d_val))) { \ |
622 |
rel = NULL; \ |
623 |
rela = NULL; \ |
624 |
warn("%s: DT_RELA is out of file range", elf->filename); \ |
625 |
break; \ |
626 |
} \ |
615 |
rel = NULL; \ |
627 |
rel = NULL; \ |
616 |
rela = RELA##B(elf->vdata + EGET(drel->d_un.d_val)); \ |
628 |
rela = RELA##B(elf->vdata + EGET(drel->d_un.d_val)); \ |
617 |
pltrel = DT_RELA; \ |
629 |
pltrel = DT_RELA; \ |
618 |
- |
|
|