1*99451b44SJordan Rupprecht""" 2*99451b44SJordan RupprechtFuzz tests an object after the default construction to make sure it does not crash lldb. 3*99451b44SJordan Rupprecht""" 4*99451b44SJordan Rupprecht 5*99451b44SJordan Rupprechtimport lldb 6*99451b44SJordan Rupprecht 7*99451b44SJordan Rupprecht 8*99451b44SJordan Rupprechtdef fuzz_obj(obj): 9*99451b44SJordan Rupprecht obj.GetTarget() 10*99451b44SJordan Rupprecht obj.GetByteOrder() 11*99451b44SJordan Rupprecht obj.PutSTDIN("my data") 12*99451b44SJordan Rupprecht obj.GetSTDOUT(6) 13*99451b44SJordan Rupprecht obj.GetSTDERR(6) 14*99451b44SJordan Rupprecht event = lldb.SBEvent() 15*99451b44SJordan Rupprecht try: 16*99451b44SJordan Rupprecht obj.ReportEventState(event, None) 17*99451b44SJordan Rupprecht except Exception: 18*99451b44SJordan Rupprecht pass 19*99451b44SJordan Rupprecht obj.AppendEventStateReport(event, lldb.SBCommandReturnObject()) 20*99451b44SJordan Rupprecht error = lldb.SBError() 21*99451b44SJordan Rupprecht obj.RemoteAttachToProcessWithID(123, error) 22*99451b44SJordan Rupprecht obj.RemoteLaunch(None, None, None, None, None, None, 0, False, error) 23*99451b44SJordan Rupprecht obj.GetNumThreads() 24*99451b44SJordan Rupprecht obj.GetThreadAtIndex(0) 25*99451b44SJordan Rupprecht obj.GetThreadByID(0) 26*99451b44SJordan Rupprecht obj.GetSelectedThread() 27*99451b44SJordan Rupprecht obj.SetSelectedThread(lldb.SBThread()) 28*99451b44SJordan Rupprecht obj.SetSelectedThreadByID(0) 29*99451b44SJordan Rupprecht obj.GetState() 30*99451b44SJordan Rupprecht obj.GetExitStatus() 31*99451b44SJordan Rupprecht obj.GetExitDescription() 32*99451b44SJordan Rupprecht obj.GetProcessID() 33*99451b44SJordan Rupprecht obj.GetAddressByteSize() 34*99451b44SJordan Rupprecht obj.Destroy() 35*99451b44SJordan Rupprecht obj.Continue() 36*99451b44SJordan Rupprecht obj.Stop() 37*99451b44SJordan Rupprecht obj.Kill() 38*99451b44SJordan Rupprecht obj.Detach() 39*99451b44SJordan Rupprecht obj.Signal(7) 40*99451b44SJordan Rupprecht obj.ReadMemory(0x0000ffff, 10, error) 41*99451b44SJordan Rupprecht obj.WriteMemory(0x0000ffff, "hi data", error) 42*99451b44SJordan Rupprecht obj.ReadCStringFromMemory(0x0, 128, error) 43*99451b44SJordan Rupprecht obj.ReadUnsignedFromMemory(0xff, 4, error) 44*99451b44SJordan Rupprecht obj.ReadPointerFromMemory(0xff, error) 45*99451b44SJordan Rupprecht obj.GetBroadcaster() 46*99451b44SJordan Rupprecht obj.GetDescription(lldb.SBStream()) 47*99451b44SJordan Rupprecht obj.LoadImage(lldb.SBFileSpec(), error) 48*99451b44SJordan Rupprecht obj.UnloadImage(0) 49*99451b44SJordan Rupprecht obj.Clear() 50*99451b44SJordan Rupprecht obj.GetNumSupportedHardwareWatchpoints(error) 51*99451b44SJordan Rupprecht for thread in obj: 52*99451b44SJordan Rupprecht s = str(thread) 53*99451b44SJordan Rupprecht len(obj) 54