Windows2000/private/windbg64/debugger/dm/bp.h
2020-09-30 17:12:32 +02:00

91 lines
1.6 KiB
C

/*
* Prototypes and structures for breakpoint handler
*/
BOOL
BPInRange(
HPRCX hprc,
HTHDX hthd,
PBREAKPOINT bp,
LPADDR paddrStart,
DWORD cb,
LPDWORD offset,
BP_UNIT * instr
);
extern BREAKPOINT* FindProcBP(HPRCX);
extern BREAKPOINT* FindThreadBP(HTHDX);
extern BREAKPOINT* FindIdBP(HDEP);
extern BOOL RemoveBP(BREAKPOINT*);
extern BOOL RemoveAllHprcBP(HPRCX);
extern void SetBPFlag(HTHDX, BREAKPOINT*);
extern BREAKPOINT* AtBP(HTHDX);
extern void ClearBPFlag(HTHDX);
extern void RestoreInstrBP(HTHDX, BREAKPOINT*);
extern BREAKPOINT* BPNextHprcPbp( HPRCX hprc, BREAKPOINT * pbp );
extern BREAKPOINT* BPNextHthdPbp( HTHDX hthd, BREAKPOINT * pbp );
PBREAKPOINT
SetBP(
HPRCX hprc,
HTHDX hthd,
BPTP bptype,
BPNS bpnotify,
LPADDR paddr,
HPID id
);
PBREAKPOINT
FindBP(
HPRCX hprc,
HTHDX hthd,
BPTP bptype,
BPNS bpnotify,
LPADDR paddr,
BOOL fExact
);
BOOL
SetBPEx(
HPRCX hprc,
HTHDX hthd,
HPID id,
DWORD Count,
ADDR *Addrs,
PBREAKPOINT *Bps,
DWORD ContinueStatus
);
BOOL
RemoveBPEx(
DWORD Count,
PBREAKPOINT *Bps
);
PBREAKPOINT
GetNewBp(
HPRCX hprc,
HTHDX hthd,
BPTP BpType,
BPNS BpNotify,
ADDR *AddrBp,
HPID id,
BREAKPOINT *BpUse
);
BOOL
WriteBreakPoint(
IN PBREAKPOINT Breakpoint
);
BOOL
RestoreBreakPoint(
IN PBREAKPOINT Breakpoint
);
void
AddBpToList(
PBREAKPOINT pbp
);