Skip to content

Commit 1c69a55

Browse files
Autorefresh Dev Documentation
1 parent 5bf1769 commit 1c69a55

37 files changed

+1070
-544
lines changed

dev/_modules/index.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -449,8 +449,8 @@ <h1>All modules for which code is available</h1>
449449
<li><a href="libdebug/architectures/syscall_hijacker.html">libdebug.architectures.syscall_hijacker</a></li>
450450
<li><a href="libdebug/builtin/antidebug_syscall_handler.html">libdebug.builtin.antidebug_syscall_handler</a></li>
451451
<li><a href="libdebug/builtin/pretty_print_syscall_handler.html">libdebug.builtin.pretty_print_syscall_handler</a></li>
452+
<li><a href="libdebug/commlink/buffer_data.html">libdebug.commlink.buffer_data</a></li>
452453
<li><a href="libdebug/commlink/libterminal.html">libdebug.commlink.libterminal</a></li>
453-
<li><a href="libdebug/commlink/logging_lexer.html">libdebug.commlink.logging_lexer</a></li>
454454
<li><a href="libdebug/commlink/pipe_manager.html">libdebug.commlink.pipe_manager</a></li>
455455
<li><a href="libdebug/commlink/std_wrapper.html">libdebug.commlink.std_wrapper</a></li>
456456
<li><a href="libdebug/data/breakpoint.html">libdebug.data.breakpoint</a></li>
@@ -461,7 +461,7 @@ <h1>All modules for which code is available</h1>
461461
<li><a href="libdebug/data/registers.html">libdebug.data.registers</a></li>
462462
<li><a href="libdebug/data/signal_catcher.html">libdebug.data.signal_catcher</a></li>
463463
<li><a href="libdebug/data/symbol.html">libdebug.data.symbol</a></li>
464-
<li><a href="libdebug/data/symbol_dict.html">libdebug.data.symbol_dict</a></li>
464+
<li><a href="libdebug/data/symbol_list.html">libdebug.data.symbol_list</a></li>
465465
<li><a href="libdebug/data/syscall_handler.html">libdebug.data.syscall_handler</a></li>
466466
<li><a href="libdebug/debugger/debugger.html">libdebug.debugger.debugger</a></li>
467467
<li><a href="libdebug/debugger/internal_debugger.html">libdebug.debugger.internal_debugger</a></li>

dev/_modules/libdebug/architectures/aarch64/aarch64_ptrace_register_holder.html

+11
Original file line numberDiff line numberDiff line change
@@ -444,6 +444,7 @@ <h1>Source code for libdebug.architectures.aarch64.aarch64_ptrace_register_holde
444444

445445
<span class="n">AARCH64_REGS</span> <span class="o">=</span> <span class="p">[</span><span class="sa">f</span><span class="s2">&quot;x</span><span class="si">{</span><span class="n">i</span><span class="si">}</span><span class="s2">&quot;</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">31</span><span class="p">)]</span> <span class="o">+</span> <span class="p">[</span><span class="s2">&quot;sp&quot;</span><span class="p">,</span> <span class="s2">&quot;xzr&quot;</span><span class="p">,</span> <span class="s2">&quot;pc&quot;</span><span class="p">]</span>
446446

447+
<span class="n">AARCH64_SPECIAL_REGS</span> <span class="o">=</span> <span class="p">[</span><span class="s2">&quot;pstate&quot;</span><span class="p">]</span>
447448

448449
<span class="k">def</span> <span class="nf">_get_property_64</span><span class="p">(</span><span class="n">name</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">property</span><span class="p">:</span>
449450
<span class="k">def</span> <span class="nf">getter</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Aarch64Registers</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">int</span><span class="p">:</span>
@@ -612,6 +613,13 @@ <h1>Source code for libdebug.architectures.aarch64.aarch64_ptrace_register_holde
612613
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_vector_fp_registers</span></div>
613614

614615

616+
<div class="viewcode-block" id="Aarch64PtraceRegisterHolder.provide_special_regs">
617+
<a class="viewcode-back" href="../../../../libdebug.architectures.aarch64.html#libdebug.architectures.aarch64.aarch64_ptrace_register_holder.Aarch64PtraceRegisterHolder.provide_special_regs">[docs]</a>
618+
<span class="k">def</span> <span class="nf">provide_special_regs</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Aarch64PtraceRegisterHolder</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">list</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
619+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Provide the list of special registers, which are not intended for general-purpose use.&quot;&quot;&quot;</span>
620+
<span class="k">return</span> <span class="n">AARCH64_SPECIAL_REGS</span></div>
621+
622+
615623
<div class="viewcode-block" id="Aarch64PtraceRegisterHolder.apply_on_regs">
616624
<a class="viewcode-back" href="../../../../libdebug.architectures.aarch64.html#libdebug.architectures.aarch64.aarch64_ptrace_register_holder.Aarch64PtraceRegisterHolder.apply_on_regs">[docs]</a>
617625
<span class="k">def</span> <span class="nf">apply_on_regs</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Aarch64PtraceRegisterHolder</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Aarch64Registers</span><span class="p">,</span> <span class="n">target_class</span><span class="p">:</span> <span class="nb">type</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
@@ -631,6 +639,9 @@ <h1>Source code for libdebug.architectures.aarch64.aarch64_ptrace_register_holde
631639
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_64</span><span class="p">,</span> <span class="n">_get_property_64</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
632640
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_32</span><span class="p">,</span> <span class="n">_get_property_32</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
633641

642+
<span class="k">for</span> <span class="n">reg</span> <span class="ow">in</span> <span class="n">AARCH64_SPECIAL_REGS</span><span class="p">:</span>
643+
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">reg</span><span class="p">,</span> <span class="n">_get_property_64</span><span class="p">(</span><span class="n">reg</span><span class="p">))</span>
644+
634645
<span class="c1"># setup the floating point registers</span>
635646
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">32</span><span class="p">):</span>
636647
<span class="n">name_v</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;v</span><span class="si">{</span><span class="n">i</span><span class="si">}</span><span class="s2">&quot;</span>

dev/_modules/libdebug/architectures/amd64/amd64_ptrace_register_holder.html

+22
Original file line numberDiff line numberDiff line change
@@ -468,6 +468,18 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
468468
<span class="s2">&quot;rip&quot;</span><span class="p">,</span>
469469
<span class="p">]</span>
470470

471+
<span class="n">AMD64_SPECIAL_REGS</span> <span class="o">=</span> <span class="p">[</span>
472+
<span class="s2">&quot;eflags&quot;</span><span class="p">,</span>
473+
<span class="s2">&quot;cs&quot;</span><span class="p">,</span>
474+
<span class="s2">&quot;ss&quot;</span><span class="p">,</span>
475+
<span class="s2">&quot;ds&quot;</span><span class="p">,</span>
476+
<span class="s2">&quot;es&quot;</span><span class="p">,</span>
477+
<span class="s2">&quot;fs&quot;</span><span class="p">,</span>
478+
<span class="s2">&quot;gs&quot;</span><span class="p">,</span>
479+
<span class="s2">&quot;fs_base&quot;</span><span class="p">,</span>
480+
<span class="s2">&quot;gs_base&quot;</span><span class="p">,</span>
481+
<span class="p">]</span>
482+
471483

472484
<span class="k">def</span> <span class="nf">_get_property_64</span><span class="p">(</span><span class="n">name</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">property</span><span class="p">:</span>
473485
<span class="k">def</span> <span class="nf">getter</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Amd64Registers</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">int</span><span class="p">:</span>
@@ -722,6 +734,13 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
722734
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_vector_fp_registers</span></div>
723735

724736

737+
<div class="viewcode-block" id="Amd64PtraceRegisterHolder.provide_special_regs">
738+
<a class="viewcode-back" href="../../../../libdebug.architectures.amd64.html#libdebug.architectures.amd64.amd64_ptrace_register_holder.Amd64PtraceRegisterHolder.provide_special_regs">[docs]</a>
739+
<span class="k">def</span> <span class="nf">provide_special_regs</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Amd64PtraceRegisterHolder</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">list</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
740+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Provide the list of special registers, which are not intended for general-purpose use.&quot;&quot;&quot;</span>
741+
<span class="k">return</span> <span class="n">AMD64_SPECIAL_REGS</span></div>
742+
743+
725744
<div class="viewcode-block" id="Amd64PtraceRegisterHolder.apply_on_regs">
726745
<a class="viewcode-back" href="../../../../libdebug.architectures.amd64.html#libdebug.architectures.amd64.amd64_ptrace_register_holder.Amd64PtraceRegisterHolder.apply_on_regs">[docs]</a>
727746
<span class="k">def</span> <span class="nf">apply_on_regs</span><span class="p">(</span><span class="bp">self</span><span class="p">:</span> <span class="n">Amd64PtraceRegisterHolder</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Amd64Registers</span><span class="p">,</span> <span class="n">target_class</span><span class="p">:</span> <span class="nb">type</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
@@ -771,6 +790,9 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
771790
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_16</span><span class="p">,</span> <span class="n">_get_property_16</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
772791
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_8l</span><span class="p">,</span> <span class="n">_get_property_8l</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
773792

793+
<span class="k">for</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">AMD64_SPECIAL_REGS</span><span class="p">:</span>
794+
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">_get_property_64</span><span class="p">(</span><span class="n">name</span><span class="p">))</span>
795+
774796
<span class="c1"># setup special registers</span>
775797
<span class="n">target_class</span><span class="o">.</span><span class="n">rip</span> <span class="o">=</span> <span class="n">_get_property_64</span><span class="p">(</span><span class="s2">&quot;rip&quot;</span><span class="p">)</span>
776798

dev/_modules/libdebug/architectures/amd64/compat/i386_over_amd64_ptrace_register_holder.html

+4
Original file line numberDiff line numberDiff line change
@@ -445,6 +445,7 @@ <h1>Source code for libdebug.architectures.amd64.compat.i386_over_amd64_ptrace_r
445445
<span class="kn">from</span> <span class="nn">libdebug.architectures.i386.i386_ptrace_register_holder</span> <span class="kn">import</span> <span class="p">(</span>
446446
<span class="n">I386_BASE_REGS</span><span class="p">,</span>
447447
<span class="n">I386_GP_REGS</span><span class="p">,</span>
448+
<span class="n">I386_SPECIAL_REGS</span><span class="p">,</span>
448449
<span class="n">I386PtraceRegisterHolder</span><span class="p">,</span>
449450
<span class="p">)</span>
450451

@@ -505,6 +506,9 @@ <h1>Source code for libdebug.architectures.amd64.compat.i386_over_amd64_ptrace_r
505506
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_16</span><span class="p">,</span> <span class="n">_get_property_16</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
506507
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_8l</span><span class="p">,</span> <span class="n">_get_property_8l</span><span class="p">(</span><span class="n">name_64</span><span class="p">))</span>
507508

509+
<span class="k">for</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">I386_SPECIAL_REGS</span><span class="p">:</span>
510+
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">_get_property_32</span><span class="p">(</span><span class="n">name</span><span class="p">))</span>
511+
508512
<span class="c1"># setup special registers</span>
509513
<span class="n">target_class</span><span class="o">.</span><span class="n">eip</span> <span class="o">=</span> <span class="n">_get_property_32</span><span class="p">(</span><span class="s2">&quot;rip&quot;</span><span class="p">)</span>
510514

0 commit comments

Comments
 (0)