Removeint3breakpoint

int Removeint3breakpoint(ulong addr,ulong type);

Removes INT3 breakpoint of specified basic type(s) (BP_MANUAL, BP_ONESHOT, BP_TEMP or BP_TRACE).
Several types may be removed at once or in the separate calls to Removeint3breakpoint(). Code INT3 will be removed from the memory with the last removed basic type.

Manual breakpoints (BP_MANUAL) are usually set and removed on explicit user request. Plugins should not set, reset or otherwise modify breakpoints of type BP_TRACE. Plugins should not remove one-shot or temporary breakpoints (BP_ONESHOTBP_TEMP), even when they were set by plugin itself, because either debugging engine or other plugins may have set them, too.

Note that debugged application must be paused. It is paused when OllyDbg processes debug event or after call to Suspendallthreads(). OllyDbg automatically suspends application when user opens menu. Breakpoint is physically removed from the memory only after the call to Flushmemorycache(), but in all mentioned cases this function is called automatically.


Parameters:

addr
(in) Address of the breakpoint
type
(in) Basic type of the breakpoint, at least one is required:
BP_MANUAL - permanent breakpoint set by user
BP_ONESHOT - one-shot breakpoint set by debugging engine
BP_TEMP - temporary breakpoint set by debugging engine or plugins
BP_TRACE - used by hit trace


Return values:

Returns 0 if breakpoint was successfully removed and -1 on error


See also:
Breakpointsplugins, Confirmint3breakpoint(), Confirmint3breakpointlist(), Enableint3breakpoint()Setint3breakpoint()