From 2a1a0570ec34c8e0169792f100857a3cfe129cce Mon Sep 17 00:00:00 2001 From: DocBot Date: Tue, 12 Aug 2025 11:29:57 +0000 Subject: [PATCH] Deployed 317cbf5 to dev with MkDocs 1.6.1 and mike 2.1.3 --- dev/contributing/setup-pwndbg-dev/index.html | 2 +- dev/feed_json_updated.json | 2 +- dev/feed_rss_created.xml | 2 +- dev/feed_rss_updated.xml | 2 +- .../pwndbg/aglib/disasm/arch/index.html | 6 +- .../pwndbg/aglib/disasm/x86/index.html | 8 +- dev/reference/pwndbg/lib/elftypes/index.html | 2 +- dev/search/search_index.json | 2 +- dev/sitemap.xml | 962 +++++++++--------- dev/sitemap.xml.gz | Bin 2947 -> 2947 bytes 10 files changed, 494 insertions(+), 494 deletions(-) diff --git a/dev/contributing/setup-pwndbg-dev/index.html b/dev/contributing/setup-pwndbg-dev/index.html index 8b58a0d62..eadd7cda0 100644 --- a/dev/contributing/setup-pwndbg-dev/index.html +++ b/dev/contributing/setup-pwndbg-dev/index.html @@ -10,7 +10,7 @@ Since the ./setup.sh script made it so you source Pwndbg from your ~/.gdbinit, Pwndbg will start up automatically any time you run gdb.

Running with LLDB¤

Pwndbg requires LLDB 19 or later. You can get it like this on Ubuntu 24.04:

sudo apt install -y lldb-19 liblldb-19-dev
 
but it will be added to your PATH as lldb-19 so you should either alias it or export it in your shell:
export PATH=/usr/lib/llvm-19/bin/:$PATH
 
so you can invoke it as lldb. Also export this environment variable:
export LLDB_DEBUGSERVER_PATH=/usr/lib/llvm-19/bin/lldb-server
-
Pwndbg doesn't use the lldb driver binary directly, it drives its own REPL and interacts with LLDB through liblldb. You can run Pwndbg with LLDB by running:
uv run python pwndbginit/pwndbg_lldb.py [binary-to-debug]
+
Pwndbg doesn't use the lldb driver binary directly, it drives its own REPL and interacts with LLDB through liblldb. You can run Pwndbg with LLDB by running:
uv run pwndbg-lldb [binary-to-debug]
 

The development environment¤

After installing Pwndbg like described above, there are a few ways to set up the development environment. The simplest one is by running:

./setup-dev.sh
 
but you can also use the docker container or develop using nix.

Note

For a proper development environment you must be able to run Pwndbg with both GDB and LLDB, otherwise you won't be able to use some important development features (like doc generation).

Development from docker¤

You can create a Docker image with everything already installed for you. You can use docker compose

docker compose run -i main
 
or build and run the container with
docker build -t pwndbg .
diff --git a/dev/feed_json_updated.json b/dev/feed_json_updated.json
index c163bf911..8bc415775 100644
--- a/dev/feed_json_updated.json
+++ b/dev/feed_json_updated.json
@@ -1 +1 @@
-{"version": "https://jsonfeed.org/version/1", "title": "pwndbg Blog", "home_page_url": "https://pwndbg.re/pwndbg/latest/", "feed_url": "https://pwndbg.re/pwndbg/latest/feed_json_updated.json", "description": "pwndbg (/pa\u028an\u02c8di\u02ccb\u028c\u0261/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.", "icon": "https://pwndbg.re/pwndbg/assets/favicon.ico", "authors": [], "language": "en", "items": [{"id": "https://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/", "url": "https://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/", "title": "Pwndbg coding sprints report", "content_html": "Report of the two coding sprints with Pwndbg\n", "image": null, "date_modified": "2025-08-11T23:10:12+00:00", "authors": [{"name": "Disconnect3d"}], "tags": []}]}
\ No newline at end of file
+{"version": "https://jsonfeed.org/version/1", "title": "pwndbg Blog", "home_page_url": "https://pwndbg.re/pwndbg/latest/", "feed_url": "https://pwndbg.re/pwndbg/latest/feed_json_updated.json", "description": "pwndbg (/pa\u028an\u02c8di\u02ccb\u028c\u0261/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.", "icon": "https://pwndbg.re/pwndbg/assets/favicon.ico", "authors": [], "language": "en", "items": [{"id": "https://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/", "url": "https://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/", "title": "Pwndbg coding sprints report", "content_html": "Report of the two coding sprints with Pwndbg\n", "image": null, "date_modified": "2025-08-12T11:26:24+00:00", "authors": [{"name": "Disconnect3d"}], "tags": []}]}
\ No newline at end of file
diff --git a/dev/feed_rss_created.xml b/dev/feed_rss_created.xml
index 30956f8d3..7e4f586ed 100644
--- a/dev/feed_rss_created.xml
+++ b/dev/feed_rss_created.xml
@@ -1 +1 @@
- pwndbg Blogpwndbg (/paʊnˈdiˌbʌɡ/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.https://pwndbg.re/pwndbg/latest/https://github.com/pwndbg/pwndbg/en Mon, 11 Aug 2025 23:12:50 -0000 Mon, 11 Aug 2025 23:12:50 -0000 1440 MkDocs RSS plugin - v1.17.1  https://pwndbg.re/pwndbg/assets/favicon.ico pwndbg Bloghttps://pwndbg.re/pwndbg/latest/   Pwndbg coding sprints report Disconnect3d Report of the two coding sprints with Pwndbghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/ Sun, 21 Aug 2022 00:00:00 +0000pwndbg Bloghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/  
\ No newline at end of file
+ pwndbg Blogpwndbg (/paʊnˈdiˌbʌɡ/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.https://pwndbg.re/pwndbg/latest/https://github.com/pwndbg/pwndbg/en Tue, 12 Aug 2025 11:28:36 -0000 Tue, 12 Aug 2025 11:28:36 -0000 1440 MkDocs RSS plugin - v1.17.1  https://pwndbg.re/pwndbg/assets/favicon.ico pwndbg Bloghttps://pwndbg.re/pwndbg/latest/   Pwndbg coding sprints report Disconnect3d Report of the two coding sprints with Pwndbghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/ Sun, 21 Aug 2022 00:00:00 +0000pwndbg Bloghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/  
\ No newline at end of file
diff --git a/dev/feed_rss_updated.xml b/dev/feed_rss_updated.xml
index 0efa3a1fe..3a4373726 100644
--- a/dev/feed_rss_updated.xml
+++ b/dev/feed_rss_updated.xml
@@ -1 +1 @@
- pwndbg Blogpwndbg (/paʊnˈdiˌbʌɡ/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.https://pwndbg.re/pwndbg/latest/https://github.com/pwndbg/pwndbg/en Mon, 11 Aug 2025 23:12:50 -0000 Mon, 11 Aug 2025 23:12:50 -0000 1440 MkDocs RSS plugin - v1.17.1  https://pwndbg.re/pwndbg/assets/favicon.ico pwndbg Bloghttps://pwndbg.re/pwndbg/latest/   Pwndbg coding sprints report Disconnect3d Report of the two coding sprints with Pwndbghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/ Mon, 11 Aug 2025 23:10:12 +0000pwndbg Bloghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/  
\ No newline at end of file
+ pwndbg Blogpwndbg (/paʊnˈdiˌbʌɡ/) is a GDB plug-in that makes debugging with GDB suck less, with a focus on features needed by low-level software developers, hardware hackers, reverse-engineers and exploit developers.https://pwndbg.re/pwndbg/latest/https://github.com/pwndbg/pwndbg/en Tue, 12 Aug 2025 11:28:36 -0000 Tue, 12 Aug 2025 11:28:36 -0000 1440 MkDocs RSS plugin - v1.17.1  https://pwndbg.re/pwndbg/assets/favicon.ico pwndbg Bloghttps://pwndbg.re/pwndbg/latest/   Pwndbg coding sprints report Disconnect3d Report of the two coding sprints with Pwndbghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/ Tue, 12 Aug 2025 11:26:24 +0000pwndbg Bloghttps://pwndbg.re/pwndbg/latest/blog/2022/08/21/pwndbg-coding-sprints-report/  
\ No newline at end of file
diff --git a/dev/reference/pwndbg/aglib/disasm/arch/index.html b/dev/reference/pwndbg/aglib/disasm/arch/index.html
index 836a686fe..0fbd0252f 100644
--- a/dev/reference/pwndbg/aglib/disasm/arch/index.html
+++ b/dev/reference/pwndbg/aglib/disasm/arch/index.html
@@ -24,9 +24,9 @@
   
       module-attribute
    (pwndbg.aglib.disasm.arch.DO_NOT_EMULATE)" href=#pwndbg.aglib.disasm.arch.DO_NOT_EMULATE>DO_NOT_EMULATE

DEBUG_ENHANCEMENT module-attribute ¤

DEBUG_ENHANCEMENT = False
-

groups module-attribute ¤

groups = {v: _Mfor (k, v) in items() if startswith('CS_GRP_')}
-

ops module-attribute ¤

ops = {v: _vfor (k, v) in items() if startswith('CS_OP_')}
-

access module-attribute ¤

access = {v: _vfor (k, v) in items() if startswith('CS_AC_')}
+

groups module-attribute ¤

groups = {v: _Afor (k, v) in items() if startswith('CS_GRP_')}
+

ops module-attribute ¤

ops = {v: _Ofor (k, v) in items() if startswith('CS_OP_')}
+

access module-attribute ¤

access = {v: _9for (k, v) in items() if startswith('CS_AC_')}
 

DO_NOT_EMULATE module-attribute ¤

DO_NOT_EMULATE = {CS_GRP_INT, CS_GRP_INVALID, CS_GRP_IRET}
 

DisassemblyAssistant ¤

DisassemblyAssistant(architecture: X86_MATH_INSTRUCTIONS

groups module-attribute ¤

groups = {v: _Yfor (k, v) in items() if startswith('X86_GRP_')}
-

ops module-attribute ¤

ops = {v: _gfor (k, v) in items() if startswith('X86_OP_')}
-

regs module-attribute ¤

regs = {v: _5for (k, v) in items() if startswith('X86_REG_')}
-

access module-attribute ¤

access = {v: _Xfor (k, v) in items() if startswith('CS_AC_')}
+   (pwndbg.aglib.disasm.x86.X86_MATH_INSTRUCTIONS)" href=#pwndbg.aglib.disasm.x86.X86_MATH_INSTRUCTIONS>X86_MATH_INSTRUCTIONS

groups module-attribute ¤

groups = {v: _Tfor (k, v) in items() if startswith('X86_GRP_')}
+

ops module-attribute ¤

ops = {v: _Mfor (k, v) in items() if startswith('X86_OP_')}
+

regs module-attribute ¤

regs = {v: _Sfor (k, v) in items() if startswith('X86_REG_')}
+

access module-attribute ¤

access = {v: _8for (k, v) in items() if startswith('CS_AC_')}
 

X86_MATH_INSTRUCTIONS module-attribute ¤

X86_MATH_INSTRUCTIONS = {
     X86_INS_ADD: "+",
     X86_INS_SUB: "-",
diff --git a/dev/reference/pwndbg/lib/elftypes/index.html b/dev/reference/pwndbg/lib/elftypes/index.html
index 734dcdd03..f2b2028c0 100644
--- a/dev/reference/pwndbg/lib/elftypes/index.html
+++ b/dev/reference/pwndbg/lib/elftypes/index.html
@@ -135,7 +135,7 @@
     47: "AT_L3_CACHEGEOMETRY",
     51: "AT_MINSIGSTKSZ",
 }
-

AT_CONSTANT_NAMES module-attribute ¤

AT_CONSTANT_NAMES = {v: _xfor (k, v) in items()}
+

AT_CONSTANT_NAMES module-attribute ¤

AT_CONSTANT_NAMES = {v: _ufor (k, v) in items()}
 

constants ¤

Attributes: