Skip to content

Commit 5bf1769

Browse files
Autorefresh Dev Documentation
1 parent 96102e0 commit 5bf1769

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+5980
-59
lines changed

dev/_modules/index.html

+7
Original file line numberDiff line numberDiff line change
@@ -432,9 +432,16 @@ <h1>All modules for which code is available</h1>
432432
<li><a href="libdebug/architectures/amd64/amd64_ptrace_register_holder.html">libdebug.architectures.amd64.amd64_ptrace_register_holder</a></li>
433433
<li><a href="libdebug/architectures/amd64/amd64_registers.html">libdebug.architectures.amd64.amd64_registers</a></li>
434434
<li><a href="libdebug/architectures/amd64/amd64_stack_unwinder.html">libdebug.architectures.amd64.amd64_stack_unwinder</a></li>
435+
<li><a href="libdebug/architectures/amd64/compat/i386_over_amd64_ptrace_register_holder.html">libdebug.architectures.amd64.compat.i386_over_amd64_ptrace_register_holder</a></li>
436+
<li><a href="libdebug/architectures/amd64/compat/i386_over_amd64_registers.html">libdebug.architectures.amd64.compat.i386_over_amd64_registers</a></li>
435437
<li><a href="libdebug/architectures/breakpoint_validator.html">libdebug.architectures.breakpoint_validator</a></li>
436438
<li><a href="libdebug/architectures/call_utilities_manager.html">libdebug.architectures.call_utilities_manager</a></li>
437439
<li><a href="libdebug/architectures/call_utilities_provider.html">libdebug.architectures.call_utilities_provider</a></li>
440+
<li><a href="libdebug/architectures/i386/i386_breakpoint_validator.html">libdebug.architectures.i386.i386_breakpoint_validator</a></li>
441+
<li><a href="libdebug/architectures/i386/i386_call_utilities.html">libdebug.architectures.i386.i386_call_utilities</a></li>
442+
<li><a href="libdebug/architectures/i386/i386_ptrace_register_holder.html">libdebug.architectures.i386.i386_ptrace_register_holder</a></li>
443+
<li><a href="libdebug/architectures/i386/i386_registers.html">libdebug.architectures.i386.i386_registers</a></li>
444+
<li><a href="libdebug/architectures/i386/i386_stack_unwinder.html">libdebug.architectures.i386.i386_stack_unwinder</a></li>
438445
<li><a href="libdebug/architectures/ptrace_software_breakpoint_patcher.html">libdebug.architectures.ptrace_software_breakpoint_patcher</a></li>
439446
<li><a href="libdebug/architectures/register_helper.html">libdebug.architectures.register_helper</a></li>
440447
<li><a href="libdebug/architectures/stack_unwinding_manager.html">libdebug.architectures.stack_unwinding_manager</a></li>

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

+1-8
Original file line numberDiff line numberDiff line change
@@ -433,19 +433,12 @@ <h1>Source code for libdebug.architectures.aarch64.aarch64_registers</h1><div cl
433433
<span class="kn">from</span> <span class="nn">__future__</span> <span class="kn">import</span> <span class="n">annotations</span>
434434

435435
<span class="kn">from</span> <span class="nn">libdebug.data.registers</span> <span class="kn">import</span> <span class="n">Registers</span>
436-
<span class="kn">from</span> <span class="nn">libdebug.debugger.internal_debugger_instance_manager</span> <span class="kn">import</span> <span class="n">get_global_internal_debugger</span>
437436

438437

439438
<div class="viewcode-block" id="Aarch64Registers">
440439
<a class="viewcode-back" href="../../../../libdebug.architectures.aarch64.html#libdebug.architectures.aarch64.aarch64_registers.Aarch64Registers">[docs]</a>
441440
<span class="k">class</span> <span class="nc">Aarch64Registers</span><span class="p">(</span><span class="n">Registers</span><span class="p">):</span>
442-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;This class holds the state of the architectural-dependent registers of a process.&quot;&quot;&quot;</span>
443-
444-
<span class="k">def</span> <span class="fm">__init__</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="n">thread_id</span><span class="p">:</span> <span class="nb">int</span><span class="p">,</span> <span class="n">generic_regs</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="nb">str</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
445-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Initializes the Registers object.&quot;&quot;&quot;</span>
446-
<span class="bp">self</span><span class="o">.</span><span class="n">_internal_debugger</span> <span class="o">=</span> <span class="n">get_global_internal_debugger</span><span class="p">()</span>
447-
<span class="bp">self</span><span class="o">.</span><span class="n">_thread_id</span> <span class="o">=</span> <span class="n">thread_id</span>
448-
<span class="bp">self</span><span class="o">.</span><span class="n">_generic_regs</span> <span class="o">=</span> <span class="n">generic_regs</span></div>
441+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;This class holds the state of the architectural-dependent registers of a process.&quot;&quot;&quot;</span></div>
449442

450443
</pre></div>
451444

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

+6-6
Original file line numberDiff line numberDiff line change
@@ -780,11 +780,11 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
780780

781781
<span class="k">match</span> <span class="bp">self</span><span class="o">.</span><span class="n">fp_register_file</span><span class="o">.</span><span class="n">type</span><span class="p">:</span>
782782
<span class="k">case</span> <span class="mi">0</span><span class="p">:</span>
783-
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_fp_512</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
783+
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_vector_512</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
784784
<span class="k">case</span> <span class="mi">1</span><span class="p">:</span>
785-
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_fp_896</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
785+
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_vector_896</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
786786
<span class="k">case</span> <span class="mi">2</span><span class="p">:</span>
787-
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_fp_2696</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
787+
<span class="bp">self</span><span class="o">.</span><span class="n">_handle_vector_2696</span><span class="p">(</span><span class="n">target_class</span><span class="p">)</span>
788788
<span class="k">case</span><span class="w"> </span><span class="k">_</span><span class="p">:</span>
789789
<span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span>
790790
<span class="sa">f</span><span class="s2">&quot;Floating-point register file type </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">fp_register_file</span><span class="o">.</span><span class="n">type</span><span class="si">}</span><span class="s2"> not available.&quot;</span><span class="p">,</span>
@@ -828,14 +828,14 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
828828

829829
<span class="bp">self</span><span class="o">.</span><span class="n">_vector_fp_registers</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">name_mm</span><span class="p">,</span> <span class="n">name_st</span><span class="p">))</span>
830830

831-
<span class="k">def</span> <span class="nf">_handle_fp_512</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_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>
831+
<span class="k">def</span> <span class="nf">_handle_vector_512</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_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>
832832
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Handle the case where the xsave area is 512 bytes long, which means we just have the xmm registers.&quot;&quot;&quot;</span>
833833
<span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">16</span><span class="p">):</span>
834834
<span class="n">name_xmm</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;xmm</span><span class="si">{</span><span class="n">index</span><span class="si">}</span><span class="s2">&quot;</span>
835835
<span class="nb">setattr</span><span class="p">(</span><span class="n">target_class</span><span class="p">,</span> <span class="n">name_xmm</span><span class="p">,</span> <span class="n">_get_property_fp_xmm0</span><span class="p">(</span><span class="n">name_xmm</span><span class="p">,</span> <span class="n">index</span><span class="p">))</span>
836836
<span class="bp">self</span><span class="o">.</span><span class="n">_vector_fp_registers</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">name_xmm</span><span class="p">,))</span>
837837

838-
<span class="k">def</span> <span class="nf">_handle_fp_896</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_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>
838+
<span class="k">def</span> <span class="nf">_handle_vector_896</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_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>
839839
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Handle the case where the xsave area is 896 bytes long, which means we have the xmm and ymm registers.&quot;&quot;&quot;</span>
840840
<span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">16</span><span class="p">):</span>
841841
<span class="n">name_xmm</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;xmm</span><span class="si">{</span><span class="n">index</span><span class="si">}</span><span class="s2">&quot;</span>
@@ -846,7 +846,7 @@ <h1>Source code for libdebug.architectures.amd64.amd64_ptrace_register_holder</h
846846

847847
<span class="bp">self</span><span class="o">.</span><span class="n">_vector_fp_registers</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">name_xmm</span><span class="p">,</span> <span class="n">name_ymm</span><span class="p">))</span>
848848

849-
<span class="k">def</span> <span class="nf">_handle_fp_2696</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_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>
849+
<span class="k">def</span> <span class="nf">_handle_vector_2696</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_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>
850850
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Handle the case where the xsave area is 2696 bytes long, which means we have 32 zmm registers.&quot;&quot;&quot;</span>
851851
<span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">16</span><span class="p">):</span>
852852
<span class="n">name_xmm</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;xmm</span><span class="si">{</span><span class="n">index</span><span class="si">}</span><span class="s2">&quot;</span>

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

+2-9
Original file line numberDiff line numberDiff line change
@@ -426,26 +426,19 @@
426426
<h1>Source code for libdebug.architectures.amd64.amd64_registers</h1><div class="highlight"><pre>
427427
<span></span><span class="c1">#</span>
428428
<span class="c1"># This file is part of libdebug Python library (https://github.com/libdebug/libdebug).</span>
429-
<span class="c1"># Copyright (c) 2024 Gabriele Digregorio. All rights reserved.</span>
429+
<span class="c1"># Copyright (c) 2024 Gabriele Digregorio, Roberto Alessandro Bertolini. All rights reserved.</span>
430430
<span class="c1"># Licensed under the MIT license. See LICENSE file in the project root for details.</span>
431431
<span class="c1">#</span>
432432

433433
<span class="kn">from</span> <span class="nn">__future__</span> <span class="kn">import</span> <span class="n">annotations</span>
434434

435435
<span class="kn">from</span> <span class="nn">libdebug.data.registers</span> <span class="kn">import</span> <span class="n">Registers</span>
436-
<span class="kn">from</span> <span class="nn">libdebug.debugger.internal_debugger_instance_manager</span> <span class="kn">import</span> <span class="n">get_global_internal_debugger</span>
437436

438437

439438
<div class="viewcode-block" id="Amd64Registers">
440439
<a class="viewcode-back" href="../../../../libdebug.architectures.amd64.html#libdebug.architectures.amd64.amd64_registers.Amd64Registers">[docs]</a>
441440
<span class="k">class</span> <span class="nc">Amd64Registers</span><span class="p">(</span><span class="n">Registers</span><span class="p">):</span>
442-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;This class holds the state of the architectural-dependent registers of a process.&quot;&quot;&quot;</span>
443-
444-
<span class="k">def</span> <span class="fm">__init__</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="n">thread_id</span><span class="p">:</span> <span class="nb">int</span><span class="p">,</span> <span class="n">generic_regs</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="nb">str</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
445-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Initializes the Registers object.&quot;&quot;&quot;</span>
446-
<span class="bp">self</span><span class="o">.</span><span class="n">_internal_debugger</span> <span class="o">=</span> <span class="n">get_global_internal_debugger</span><span class="p">()</span>
447-
<span class="bp">self</span><span class="o">.</span><span class="n">_thread_id</span> <span class="o">=</span> <span class="n">thread_id</span>
448-
<span class="bp">self</span><span class="o">.</span><span class="n">_generic_regs</span> <span class="o">=</span> <span class="n">generic_regs</span></div>
441+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;This class holds the state of the architectural-dependent registers of a process.&quot;&quot;&quot;</span></div>
449442

450443
</pre></div>
451444

0 commit comments

Comments
 (0)