[Wisp-cvs] wisp/users/dig make-pe-exe.py,1.55,1.56
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2003-05-16 10:13:31
|
Update of /cvsroot/wisp/wisp/users/dig In directory sc8-pr-cvs1:/tmp/cvs-serv2162 Modified Files: make-pe-exe.py Log Message: generate hint-name table too Index: make-pe-exe.py =================================================================== RCS file: /cvsroot/wisp/wisp/users/dig/make-pe-exe.py,v retrieving revision 1.55 retrieving revision 1.56 diff -u -d -r1.55 -r1.56 --- make-pe-exe.py 15 May 2003 22:08:10 -0000 1.55 +++ make-pe-exe.py 16 May 2003 10:13:29 -0000 1.56 @@ -267,12 +267,20 @@ imports.align(4) import_table_start = imports.memsz() for dll in imports_by_dlls.keys(): - imports[::4] = 0, 0 # hint-name pointer, timestamp + imports[::4] = '&.imports/%s/hint-name #rva' % dll + imports[::4] = 0 # timestamp imports[::4] = '#.imports/%s/forwarder-chain' % dll imports[::4] = '&.imports/%s/dll-name #rva' % dll imports[::4] = '&.imports/%s/first-thunk #rva' % dll imports.place_symbol('#.imports/' + dll + '/forwarder-chain', 0) imports.emit_string('\0' * 20) +# emit hint/name lists +for dll in imports_by_dlls.keys(): + imports.align(4) + imports.place_symbol('&.imports/%s/hint-name' % dll) + for sym in imports_by_dlls[dll].keys(): + imports[::4] = '&.imports/thunk/%s@%s #rva' % (sym, dll) + imports.emit_tetra(0) # emit thunk lists for dll in imports_by_dlls.keys(): imports.align(4) |