From dbcb3ad9255c71cbfeb4e9d65d56a8f49dcda6a6 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sat, 25 Aug 2012 17:31:59 -0400 Subject: clean up search_vec usage for vdso --- src/ldso/dynlink.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c index 7c1bd890..981288c3 100644 --- a/src/ldso/dynlink.c +++ b/src/ldso/dynlink.c @@ -613,6 +613,7 @@ void *__dynlink(int argc, char **argv) struct dso *const lib = builtin_dsos+1; struct dso *const vdso = builtin_dsos+2; char *env_preload=0; + size_t vdso_base; /* Find aux vector just past environ[] */ for (i=argc+1; argv[i]; i++) @@ -701,8 +702,7 @@ void *__dynlink(int argc, char **argv) decode_dyn(app); /* Attach to vdso, if provided by the kernel */ - if (search_vec(auxv, aux, AT_SYSINFO_EHDR)) { - size_t vdso_base = *aux; + if (search_vec(auxv, &vdso_base, AT_SYSINFO_EHDR)) { ehdr = (void *)vdso_base; phdr = (void *)(vdso_base + ehdr->e_phoff); for (i=ehdr->e_phnum; i; i--, phdr=(void *)((char *)phdr + ehdr->e_phentsize)) { -- cgit v1.2.1