summaryrefslogtreecommitdiff
path: root/ldso
diff options
context:
space:
mode:
Diffstat (limited to 'ldso')
-rw-r--r--ldso/ldso/ldso.c34
1 files changed, 16 insertions, 18 deletions
diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
index c4f0e0bc7..ce0b86406 100644
--- a/ldso/ldso/ldso.c
+++ b/ldso/ldso/ldso.c
@@ -636,28 +636,28 @@ static void _dl_get_ready_to_run(struct elf_resolve *tpnt, struct elf_resolve *a
{
elfhdr *epnt;
- elf_phdr *ppnt;
- int i;
+ elf_phdr *myppnt;
+ int j;
epnt = (elfhdr *) auxvt[AT_BASE].a_un.a_ptr;
tpnt->n_phent = epnt->e_phnum;
- tpnt->ppnt = ppnt = (elf_phdr *) (load_addr + epnt->e_phoff);
- for (i = 0; i < epnt->e_phnum; i++, ppnt++) {
- if (ppnt->p_type == PT_DYNAMIC) {
- tpnt->dynamic_addr = ppnt->p_vaddr + load_addr;
+ tpnt->ppnt = myppnt = (elf_phdr *) (load_addr + epnt->e_phoff);
+ for (j = 0; j < epnt->e_phnum; j++, myppnt++) {
+ if (myppnt->p_type == PT_DYNAMIC) {
+ tpnt->dynamic_addr = myppnt->p_vaddr + load_addr;
#if defined(__mips__)
{
- int i = 1;
+ int k = 1;
Elf32_Dyn *dpnt = (Elf32_Dyn *) tpnt->dynamic_addr;
while(dpnt->d_tag) {
dpnt++;
- i++;
+ k++;
}
- tpnt->dynamic_size = i * sizeof(Elf32_Dyn);
+ tpnt->dynamic_size = k * sizeof(Elf32_Dyn);
}
#else
- tpnt->dynamic_size = ppnt->p_filesz;
+ tpnt->dynamic_size = myppnt->p_filesz;
#endif
}
}
@@ -1008,8 +1008,6 @@ static void _dl_get_ready_to_run(struct elf_resolve *tpnt, struct elf_resolve *a
* dynamic linker.
*/
if (tpnt) {
- struct elf_resolve *tcurr;
-
tcurr = _dl_loaded_modules;
if (tcurr)
while (tcurr->next)
@@ -1099,16 +1097,16 @@ static void _dl_get_ready_to_run(struct elf_resolve *tpnt, struct elf_resolve *a
#ifdef DO_MPROTECT_HACKS
{
- int i;
- elf_phdr *ppnt;
+ int j;
+ elf_phdr *myppnt;
/* We had to set the protections of all pages to R/W for dynamic linking.
Set text pages back to R/O */
for (tpnt = _dl_loaded_modules; tpnt; tpnt = tpnt->next) {
- for (ppnt = tpnt->ppnt, i = 0; i < tpnt->n_phent; i++, ppnt++) {
- if (ppnt->p_type == PT_LOAD && !(ppnt->p_flags & PF_W) && tpnt->dynamic_info[DT_TEXTREL]) {
- _dl_mprotect((void *) (tpnt->loadaddr + (ppnt->p_vaddr & PAGE_ALIGN)),
- (ppnt->p_vaddr & ADDR_ALIGN) + (unsigned long) ppnt->p_filesz, LXFLAGS(ppnt->p_flags));
+ for (myppnt = tpnt->ppnt, j = 0; j < tpnt->n_phent; j++, myppnt++) {
+ if (myppnt->p_type == PT_LOAD && !(myppnt->p_flags & PF_W) && tpnt->dynamic_info[DT_TEXTREL]) {
+ _dl_mprotect((void *) (tpnt->loadaddr + (myppnt->p_vaddr & PAGE_ALIGN)),
+ (myppnt->p_vaddr & ADDR_ALIGN) + (unsigned long) myppnt->p_filesz, LXFLAGS(myppnt->p_flags));
}
}
}