)]}' { "commit": "dc7812ea479304c309456c08c0f50e26d0e83f6c", "tree": "58b48ef07b7084df0401738b4dd22de865600a11", "parents": [ "4d7a68e17ebd4c2d5ecb2c3a6b51030bb776b5e3" ], "author": { "name": "Mike Frysinger", "email": "vapier@chromium.org", "time": "Mon Apr 22 19:17:25 2013 -0400" }, "committer": { "name": "ChromeBot", "email": "chrome-bot@google.com", "time": "Wed May 01 13:19:27 2013 -0700" }, "message": "support parsing of dynamic ELFs w/out section headers\n\nAt runtime, ELFs do not use the section headers at all. Instead, only\nthe program segments and dynamic tags get used. This means you can\nstrip the section table completely from an ELF and have it still work.\n\nIn practice, people rarely do this, but it\u0027s not unheard of. Make the\nDynamic tags work even in these cases by loading the strings table the\nsame way the runtime loader does:\n- parse the symtab address from DT_STRTAB\n- locate the file offset via the program segments\n\nIn order to avoid circular deps (parsing a dyntag requires walking parsed\ndyntags), add a set of internal funcs for returning the raw values.\n\nBUG\u003dNone\nTEST\u003dlddtree w/build_image works on heavily stripped files (like netflix)\n\nChange-Id: Ia5dd61bcce701cb52a275c8cb67b274e4feda88f\nReviewed-on: https://gerrit.chromium.org/gerrit/49423\nReviewed-by: David James \u003cdavidjames@chromium.org\u003e\nCommit-Queue: Mike Frysinger \u003cvapier@chromium.org\u003e\nTested-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "a62ef169dc894717f33087a882549546908fb1cc", "old_mode": 33188, "old_path": "elftools/elf/dynamic.py", "new_id": "824cb78a9913268bd9d60d1cb7fdf5f2bf9a25d5", "new_mode": 33188, "new_path": "elftools/elf/dynamic.py" } ] }