Update of /cvsroot/wisp/wisp/users/dig
In directory sc8-pr-cvs1:/tmp/cvs-serv14967
Modified Files:
elfdump.py
Log Message:
cleanup
Index: elfdump.py
===================================================================
RCS file: /cvsroot/wisp/wisp/users/dig/elfdump.py,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- elfdump.py 15 Apr 2003 00:08:16 -0000 1.8
+++ elfdump.py 15 Apr 2003 00:14:22 -0000 1.9
@@ -13,7 +13,6 @@
from bindump import *
from elf import *
import bindump
-import struct
import sys
args = sys.argv[1:]
@@ -119,11 +118,8 @@
print 'No type flags addr offset size link info align each'
print '== ==== ======== ======== ====== ====== ==== ==== ===== ===='
for i in range(e_shnum):
- shentry = f.read(e_shentsize)
- sh_name, sh_type, sh_flags, sh_addr, sh_offset, sh_size, \
- sh_link, sh_info, sh_addralign, sh_entsize = \
- struct.unpack(bytesex + ' 10L', shentry[0:40])
print '%2x' % i,
+ sh_name = take('t')
try: print {SHT.NULL: 'null',
SHT.PROGBITS: 'prog',
SHT.SYMTAB: 'symt',
@@ -142,21 +138,22 @@
SHT.GROUP: 'grou',
SHT.GNU_verdef: 'verd',
SHT.GNU_verneed: 'vern',
- SHT.GNU_versym: 'vers'}[sh_type],
+ SHT.GNU_versym: 'vers'}[take('t')],
except: print '%4x' % sh_type,
- flags_shortly('oism?xaw', sh_flags)
- print '%8x' % sh_addr,
- print '%6x' % sh_offset,
- print '%6x' % sh_size,
- print '%4x' % sh_link,
- print '%4x' % sh_info,
- print '%5x' % sh_addralign,
- print '%4x' % sh_entsize,
+ flags_shortly('oism?xaw', take('t'))
+ print '%8x' % take('t'),
+ print '%6x' % take('t'),
+ print '%6x' % take('t'),
+ print '%4x' % take('t'),
+ print '%4x' % take('t'),
+ print '%5x' % take('t'),
+ print '%4x' % take('t'),
if shstr <> None:
name = asciiz(shstr, sh_name)
if name == '': name = '0x%x' % sh_name
print name,
print
+ f.read(e_shentsize - 40)
print
else:
print 'Usage: elfdump.py file ...'
|