From 346152decc4aa3a5521047f3493127b64daa8098 Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Fri, 27 Nov 2015 16:27:13 +0000 Subject: [PATCH] ujail: DT_STRTAB uses d_ptr in d_un union (not d_val) see https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-42444/index.html Signed-off-by: Etienne CHAMPETIER --- jail/elf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jail/elf.c b/jail/elf.c index 7c52880..46c19df 100644 --- a/jail/elf.c +++ b/jail/elf.c @@ -182,7 +182,7 @@ static int elf32_scan_dynamic(const char *map, int dyn_offset, int dyn_size, int if (curr->d_tag != DT_STRTAB) continue; - strtab = map + (curr->d_un.d_val - load_offset); + strtab = map + (curr->d_un.d_ptr - load_offset); break; } @@ -216,7 +216,7 @@ static int elf64_scan_dynamic(const char *map, int dyn_offset, int dyn_size, int if (curr->d_tag != DT_STRTAB) continue; - strtab = map + (curr->d_un.d_val - load_offset); + strtab = map + (curr->d_un.d_ptr - load_offset); break; } -- 2.30.2