@@ -683,6 +683,12 @@ <h1>Source code for libdebug.ptrace.ptrace_interface</h1><div class="highlight">
683
683
< span class ="k "> else</ span > < span class ="p "> :</ span >
684
684
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _global_state</ span > < span class ="o "> .</ span > < span class ="n "> handle_syscall_enabled</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span >
685
685
686
+ < span class ="c1 "> # Reset the event type</ span >
687
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> event_type</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
688
+
689
+ < span class ="c1 "> # Reset the breakpoint hit</ span >
690
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> breakpoint_hit</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
691
+
686
692
< span class ="n "> result</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> lib_trace</ span > < span class ="o "> .</ span > < span class ="n "> cont_all_and_set_bps</ span > < span class ="p "> (</ span >
687
693
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _global_state</ span > < span class ="p "> ,</ span >
688
694
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> process_id</ span > < span class ="p "> ,</ span >
@@ -705,6 +711,12 @@ <h1>Source code for libdebug.ptrace.ptrace_interface</h1><div class="highlight">
705
711
< span class ="k "> for</ span > < span class ="n "> bp</ span > < span class ="ow "> in</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> breakpoints</ span > < span class ="o "> .</ span > < span class ="n "> values</ span > < span class ="p "> ():</ span >
706
712
< span class ="n "> bp</ span > < span class ="o "> .</ span > < span class ="n "> _disabled_for_step</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span >
707
713
714
+ < span class ="c1 "> # Reset the event type</ span >
715
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> event_type</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
716
+
717
+ < span class ="c1 "> # Reset the breakpoint hit</ span >
718
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> breakpoint_hit</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
719
+
708
720
< span class ="n "> result</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> lib_trace</ span > < span class ="o "> .</ span > < span class ="n "> singlestep</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _global_state</ span > < span class ="p "> ,</ span > < span class ="n "> thread</ span > < span class ="o "> .</ span > < span class ="n "> thread_id</ span > < span class ="p "> )</ span >
709
721
< span class ="k "> if</ span > < span class ="n "> result</ span > < span class ="o "> ==</ span > < span class ="o "> -</ span > < span class ="mi "> 1</ span > < span class ="p "> :</ span >
710
722
< span class ="n "> errno_val</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> ffi</ span > < span class ="o "> .</ span > < span class ="n "> errno</ span >
@@ -727,6 +739,12 @@ <h1>Source code for libdebug.ptrace.ptrace_interface</h1><div class="highlight">
727
739
< span class ="k "> for</ span > < span class ="n "> bp</ span > < span class ="ow "> in</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> breakpoints</ span > < span class ="o "> .</ span > < span class ="n "> values</ span > < span class ="p "> ():</ span >
728
740
< span class ="n "> bp</ span > < span class ="o "> .</ span > < span class ="n "> _disabled_for_step</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span >
729
741
742
+ < span class ="c1 "> # Reset the event type</ span >
743
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> event_type</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
744
+
745
+ < span class ="c1 "> # Reset the breakpoint hit</ span >
746
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> breakpoint_hit</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
747
+
730
748
< span class ="n "> result</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> lib_trace</ span > < span class ="o "> .</ span > < span class ="n "> step_until</ span > < span class ="p "> (</ span >
731
749
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _global_state</ span > < span class ="p "> ,</ span >
732
750
< span class ="n "> thread</ span > < span class ="o "> .</ span > < span class ="n "> thread_id</ span > < span class ="p "> ,</ span >
@@ -750,6 +768,12 @@ <h1>Source code for libdebug.ptrace.ptrace_interface</h1><div class="highlight">
750
768
< span class ="sd "> thread (ThreadContext): The thread to step.</ span >
751
769
< span class ="sd "> heuristic (str): The heuristic to use.</ span >
752
770
< span class ="sd "> """</ span >
771
+ < span class ="c1 "> # Reset the event type</ span >
772
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> event_type</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
773
+
774
+ < span class ="c1 "> # Reset the breakpoint hit</ span >
775
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> breakpoint_hit</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
776
+
753
777
< span class ="k "> if</ span > < span class ="n "> heuristic</ span > < span class ="o "> ==</ span > < span class ="s2 "> "step-mode"</ span > < span class ="p "> :</ span >
754
778
< span class ="n "> result</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> lib_trace</ span > < span class ="o "> .</ span > < span class ="n "> stepping_finish</ span > < span class ="p "> (</ span >
755
779
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _global_state</ span > < span class ="p "> ,</ span >
@@ -810,6 +834,11 @@ <h1>Source code for libdebug.ptrace.ptrace_interface</h1><div class="highlight">
810
834
< a class ="viewcode-back " href ="../../../libdebug.ptrace.html#libdebug.ptrace.ptrace_interface.PtraceInterface.next "> [docs]</ a >
811
835
< span class ="k "> def</ span > < span class ="nf "> next</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> :</ span > < span class ="n "> PtraceInterface</ span > < span class ="p "> ,</ span > < span class ="n "> thread</ span > < span class ="p "> :</ span > < span class ="n "> ThreadContext</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
812
836
< span class ="w "> </ span > < span class ="sd "> """Executes the next instruction of the process. If the instruction is a call, the debugger will continue until the called function returns."""</ span >
837
+ < span class ="c1 "> # Reset the event type</ span >
838
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> event_type</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
839
+
840
+ < span class ="c1 "> # Reset the breakpoint hit</ span >
841
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _internal_debugger</ span > < span class ="o "> .</ span > < span class ="n "> resume_context</ span > < span class ="o "> .</ span > < span class ="n "> breakpoint_hit</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
813
842
814
843
< span class ="n "> opcode_window</ span > < span class ="o "> =</ span > < span class ="n "> thread</ span > < span class ="o "> .</ span > < span class ="n "> memory</ span > < span class ="o "> .</ span > < span class ="n "> read</ span > < span class ="p "> (</ span > < span class ="n "> thread</ span > < span class ="o "> .</ span > < span class ="n "> instruction_pointer</ span > < span class ="p "> ,</ span > < span class ="mi "> 8</ span > < span class ="p "> )</ span >
815
844
0 commit comments