2011-05-23 07:55:20 +08:00
|
|
|
"""
|
|
|
|
Wait (execute) for load target module
|
|
|
|
"""
|
|
|
|
|
|
|
|
from pykd import *
|
|
|
|
import fnmatch
|
|
|
|
import sys
|
|
|
|
|
2011-05-23 19:35:43 +08:00
|
|
|
class loadHandler(debugEvent):
|
2011-05-23 07:55:20 +08:00
|
|
|
def __init__(self, mask):
|
2011-05-23 19:35:43 +08:00
|
|
|
debugEvent.__init__(self)
|
2011-05-23 07:55:20 +08:00
|
|
|
self.mask = mask
|
|
|
|
|
2011-05-23 19:35:43 +08:00
|
|
|
def onLoadModule(self, module):
|
2011-05-23 07:55:20 +08:00
|
|
|
if fnmatch.fnmatch( module.name(), self.mask ):
|
|
|
|
return DEBUG_STATUS_BREAK
|
|
|
|
return DEBUG_STATUS_NO_CHANGE
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
if len(sys.argv) == 2:
|
2011-05-23 19:35:43 +08:00
|
|
|
loadHandler = loadHandler( sys.argv[1] )
|
2011-05-23 07:55:20 +08:00
|
|
|
go()
|
|
|
|
else:
|
|
|
|
dprintln( "Wait (execute) for load target module\nInvalid command line" )
|
|
|
|
dprintln( "Using" + sys.argv[0] + " <MOD_FILE_NAME>" )
|
|
|
|
dprintln( "\tMOD_FILE_NAME - name of target module with wildcard" )
|