From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-926208-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B4F2D139085 for <garchives@archives.gentoo.org>; Tue, 24 Jan 2017 20:39:51 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 023F521C097; Tue, 24 Jan 2017 20:39:51 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D23BD21C097 for <gentoo-commits@lists.gentoo.org>; Tue, 24 Jan 2017 20:39:50 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id BFA3A341675 for <gentoo-commits@lists.gentoo.org>; Tue, 24 Jan 2017 20:39:49 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 37A5C2E16 for <gentoo-commits@lists.gentoo.org>; Tue, 24 Jan 2017 20:39:48 +0000 (UTC) From: "Mike Frysinger" <vapier@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Mike Frysinger" <vapier@gentoo.org> Message-ID: <1485289493.277b33961e9e794ad039d22e1b9186d38d9e0aea.vapier@gentoo> Subject: [gentoo-commits] proj/pax-utils:master commit in: / X-VCS-Repository: proj/pax-utils X-VCS-Files: TODO X-VCS-Directories: / X-VCS-Committer: vapier X-VCS-Committer-Name: Mike Frysinger X-VCS-Revision: 277b33961e9e794ad039d22e1b9186d38d9e0aea X-VCS-Branch: master Date: Tue, 24 Jan 2017 20:39:48 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: b4aa87d4-0d76-4b8f-8735-0482c71bf993 X-Archives-Hash: ebfcfe7656a4bea8ac9fca17521f2749 commit: 277b33961e9e794ad039d22e1b9186d38d9e0aea Author: Mike Frysinger <vapier <AT> gentoo <DOT> org> AuthorDate: Tue Jan 24 20:24:53 2017 +0000 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org> CommitDate: Tue Jan 24 20:24:53 2017 +0000 URL: https://gitweb.gentoo.org/proj/pax-utils.git/commit/?id=277b3396 TODO: drop fixed issues and add some new ones TODO | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/TODO b/TODO index ded1158..3c9968c 100644 --- a/TODO +++ b/TODO @@ -9,17 +9,10 @@ care though ? this would be an issue if: - object being analyzed is 64bit - object has symbols which is larger than 32bits -scanelf does not check offsets of DT's when scanning PT_DYNAMIC ... if a bogus -ELF had a PHDR of type PT_DYNAMIC which claimed to be of size say 1 and had an -offset just shy of the end of the file, we'll probably crash ... - dumpelf does not do string checking in very very verbose mode. it assumes the strings are sane when dumping the sections. only way around this is to check everything single byte and print it out a character at a time ... sucks ... -we look at the section named ".text" for TEXTRELs when we should look at the -PT_LOAD program headers which are marked Executable. - we don't handle versioned symbols well. take an ELF with debugging and do: scanelf -s '' elf notice that glibc symbols generally have version info. then search for that: @@ -34,3 +27,7 @@ allow digging into ARM_ATTRIBUTES (.ARM.attributes) sections scanelf should look at the dynamic table for rpath/needed/soname entries instead of requiring section headers and looking up by section names. need to implement support for GNU_HASH first though so we can get the string table sizes. + +rewrite elf->e_shnum handling. if it's 0 (SH_UNDEF), then the size is +contained in the sh_size of the first section header at index 0. add a +source code check too.