ITADN
hugsy/gef

版本发布 5

2025.01 - Muted Actor2025.01
? · 2025-01-13

# Changelog: 2025.01 - Muted Actor ## Highlights of `Muted Actor` - *Bug Fixes*: Resolved issues with scoped function calls, remote memory mappings, unicode encoding in non-ASCII locales, color swaps in heap/stack, excessive string reads, and typos across the codebase. - *New Features*: Added support for multiple filter flags in the `vmmap` command, a simplified `clear screen` command, and extended testing capabilities in CI/CD. - *Improvements*: Moved to a Python 3.10 baseline, enhanced the arch command documentation, and updated the way optional arguments are parsed. - *RISC-V Support*: Many refinements in handling core dumps and improvements for RISC-V instructions. - *Documentation update*: Removed obsolete documentation now covered by gef-extras. ## Contributors | Author | Number of commits | |:--|--:| | crazy hugsy | 10| | ValekoZ | 4| | Grazfather | 2| | arty-hlr | 1| | FunnyBiu | 1| | Gordon Messmer | 1| | Jörg Thalheim | 1| | Michael Krasnitski | 1| | Zion Leonahenahe Basque | 1| ### New Contributors * @fjh1997 made their first contribution in https://github.com/hugsy/gef/pull/1127 * @arty-hlr made their first contribution in https://github.com/hugsy/gef/pull/1136 * @ThePuzzlemaker made their first contribution in https://github.com/hugsy/gef/pull/1163 ## Closed Issues * 11 issues closed ( [1157](https://github.com/hugsy/gef/issues/1157) &bull; [1154](https://github.com/hugsy/gef/issues/1154) &bull; [1152](https://github.com/hugsy/gef/issues/1152) &bull; [1147](https://github.com/hugsy/gef/issues/1147) &bull; [1145](https://github.com/hugsy/gef/issues/1145) &bull; [1144](https://github.com/hugsy/gef/issues/1144) &bull; [1142](https://github.com/hugsy/gef/issues/1142) &bull; [1140](https://github.com/hugsy/gef/issues/1140) &bull; [1138](https://github.com/hugsy/gef/issues/1138) &bull; [1132](https://github.com/hugsy/gef/issues/1132) &bull; [1129](https://github.com/hugsy/gef/issues/1129) ) ## Closed Pull Requests * 19 PRs closed ( [1164](https://github.com/hugsy/gef/pull/1164) &bull; [1163](https://github.com/hugsy/gef/pull/1163) &bull; [1162](https://github.com/hugsy/gef/pull/1162) &bull; [1160](https://github.com/hugsy/gef/pull/1160) &bull; [1159](https://github.com/hugsy/gef/pull/1159) &bull; [1156](https://github.com/hugsy/gef/pull/1156) &bull; [1155](https://github.com/hugsy/gef/pull/1155) &bull; [1153](https://github.com/hugsy/gef/pull/1153) &bull; [1148](https://github.com/hugsy/gef/pull/1148) &bull; [1146](https://github.com/hugsy/gef/pull/1146) &bull; [1141](https://github.com/hugsy/gef/pull/1141) &bull; [1139](https://github.com/hugsy/gef/pull/1139) &bull; [1136](https://github.com/hugsy/gef/pull/1136) &bull; [1133](https://github.com/hugsy/gef/pull/1133) &bull; [1127](https://github.com/hugsy/gef/pull/1127) &bull; [1126](https://github.com/hugsy/gef/pull/1126) &bull; [1124](https://github.com/hugsy/gef/pull/1124) &bull; [1122](https://github.com/hugsy/gef/pull/1122) &bull; [1121](https://github.com/hugsy/gef/pull/1121) ) ## Commit details <details> <summary> 22 commits since <b>2024.06</b> </summary> ### Commit log * 2024-06-05 [0ca807b](https://github.com/hugsy/gef/commit/0ca807ba2144d201c0c59b3b500560517b9ed50a) &bull; *crazy hugsy* &bull; Reload settings if gef-extras scripts were loaded (#1118) * 2024-06-09 [c450a2d](https://github.com/hugsy/gef/commit/c450a2d5fdd6f3e58fcadf8fe97365c8a36c6172) &bull; *ValekoZ* &bull; Update `arch` command documentation (#1121) * 2024-06-24 [6ddd780](https://github.com/hugsy/gef/commit/6ddd7804453b563af28862a5bf85557bdfd3456e) &bull; *ValekoZ* &bull; [internal] Add a way to append values to optional arguments in `parse_arguments` decorator (#1122) * 2024-07-21 [d8c7723](https://github.com/hugsy/gef/commit/d8c77235a47f3289abfe5dd78823362d7bb5833c) &bull; *Zion Leonahenahe Basque* &bull; Fix an incorrect scoped function call (introduced in #1093) (#1124) * 2024-07-27 [d116cfb](https://github.com/hugsy/gef/commit/d116cfb9f5ae98e0015f98345106901193bfec30) &bull; *crazy hugsy* &bull; [License] 2023 -> 2024 (#1126) * 2024-07-27 [22d3ab0](https://github.com/hugsy/gef/commit/22d3ab06f7af39419817c6a404208011e8ef5a5d) &bull; *crazy hugsy* &bull; [CI] Add new runner: Ubuntu 2404 (#1115) * 2024-07-27 [8907935](https://github.com/hugsy/gef/commit/89079354ae80f8b7f43f2c04d70d5a741c927da9) &bull; *Gordon Messmer* &bull; Fix remote use of `gef.memory.maps` (#1109) * 2024-08-05 [674c74d](https://github.com/hugsy/gef/commit/674c74dbff8f7781f83ef9529999b2e7e934a066) &bull; *FunnyBiu* &bull; Fix python unicode encoding problem when installing gef in non-ascii locale (#1127) * 2024-09-16 [f298b7f](https://github.com/hugsy/gef/commit/f298b7fb27f967482718e7e8e0f14d1cd794fea9) &bull; *arty-hlr* &bull; [UI] Fixed color swap between heap/stack in `vmmap` legend (#1136) * 2024-09-25 [115137c](https://github.com/hugsy/gef/commit/115137cc05d6c90f589f0840009b116c633cb48a) &bull; *crazy hugsy* &bull; Move GEF to a Python 3.10 baseline (#1133) * 2024-09-29 [d8a3043](https://github.com/hugsy/gef/commit/d8a3043ed84ba2c74ec78ce0987b926d4ef53542) &bull; *ValekoZ* &bull; [memory] Fix read_cstring trying to read too far (#1112) * 2024-10-01 [f9f8045](https://github.com/hugsy/gef/commit/f9f80450dc17ffd573362b73fdff0a71044de503) &bull; *Grazfather* &bull; Remove ksymaddr docs (now in gef-extras) (#1141) * 2024-10-24 [ba70548](https://github.com/hugsy/gef/commit/ba70548a3ee24355c1c6daca0aa302d326dc2335) &bull; *ValekoZ* &bull; [cmd] Add support for flags specifying filters type in vmmap, and allow multiple filters (#1120) * 2024-10-29 [5376d78](https://github.com/hugsy/gef/commit/5376d781606b0b9fdce69bff332e8f5610a12b67) &bull; *Michael Krasnitski* &bull; Use shutil when looking for executables on the host system (#1146) * 2024-11-10 [4dccd78](https://github.com/hugsy/gef/commit/4dccd78686e1caa420eff17a34e97d3741405f66) &bull; *crazy hugsy* &bull; Simplified `clear_screen` command (#1148) * 2024-11-10 [0f21eea](https://github.com/hugsy/gef/commit/0f21eea18cb97b2db426ccd35811ac3a3c90f2dd) &bull; *crazy hugsy* &bull; Python 3.10 improvements (#1139) * 2024-11-11 [3bdba58](https://github.com/hugsy/gef/commit/3bdba586cb5639dfeb1ea3266a13eaa0c4a57f54) &bull; *crazy hugsy* &bull; Prevent duplicate panes in `context.layout` (#1153) * 2024-11-11 [9f2737a](https://github.com/hugsy/gef/commit/9f2737a04d22fedcfa78504f27682ca35345f6db) &bull; *crazy hugsy* &bull; Use `maint info sec` for coredumps (#1155) * 2024-11-13 [29884e3](https://github.com/hugsy/gef/commit/29884e31959575d96aa1c1e77cb9423d1f6f4d22) &bull; *crazy hugsy* &bull; [CI] Add extended testing capability (#1156) * 2024-12-08 [283a7f6](https://github.com/hugsy/gef/commit/283a7f63c28109f337bd830bc73e83bb282b73dd) &bull; *Grazfather* &bull; reset_architecture: Force arch to lower case (#1159) * 2024-12-27 [5225358](https://github.com/hugsy/gef/commit/522535864f84fc68eb3f4f3d5b04fc4f0f89c09c) &bull; *Jörg Thalheim* &bull; [Docs] Typos fixes (#1160) * 2025-01-09 [538c7c6](https://github.com/hugsy/gef/commit/538c7c6fdee623a7f56722e3ed0a84fb6f187495) &bull; *Wren [Undefined]* &bull; Fix bge/bgeu for RISC-V (#1163) * 2025-01-12 [ed10244](https://github.com/hugsy/gef/commit/ed10244b0fe4665e8ee03fa326b1b1c711b39563) &bull; *crazy hugsy* &bull; Fixes for release 2025.01 (#1164) ### File diff ```diff .github/workflows/coverage.yml | 16 +- .github/workflows/extended-tests.yml | 23 + .github/workflows/run-tests.yml | 69 -- .github/workflows/tests.yml | 92 +++ .gitignore | 1 + .pylintrc | 2 +- .python-version | 1 + LICENSE | 2 +- README.md | 4 +- docs/api/gef.md | 4 +- docs/commands/arch.md | 2 +- docs/commands/config.md | 2 +- docs/commands/dereference.md | 2 +- docs/commands/gef-remote.md | 2 +- docs/commands/gef.md | 2 +- docs/commands/heap-analysis-helper.md | 2 +- docs/commands/ksymaddr.md | 24 - docs/commands/memory.md | 2 +- docs/commands/vmmap.md | 20 +- docs/compat.md | 8 +- docs/faq.md | 16 +- docs/install.md | 7 +- gef.py | 1157 +++++++++++++++++++-------------- mkdocs.yml | 2 +- ruff.toml | 2 + scripts/gef.sh | 4 +- scripts/new-release.py | 2 +- tests/api/gef_memory.py | 41 ++ tests/base.py | 12 +- tests/commands/context.py | 23 +- tests/commands/gef_remote.py | 2 +- tests/commands/theme.py | 2 +- tests/commands/vmmap.py | 28 +- tests/extended/archlinux.sh | 13 + tests/extended/debian.sh | 11 + tests/extended/fedora.sh | 9 + tests/extended/run_pytest.sh | 10 + tests/utils.py | 4 +- 38 files changed, 968 insertions(+), 657 deletions(-) ``` </details>

2024.06 - Fresh Quantity2024.06
? · 2024-06-03

# Changelog: 2024.06 - Fresh Quantity ## Highlights of `Fresh Quantity` * Use `info proc mapping` by @hugsy in https://github.com/hugsy/gef/pull/1046 * Restore compatiblity with Python 3.6 by @hugsy in https://github.com/hugsy/gef/pull/1051 * Fixed 404 links in `docs/deprecated.md` by @hugsy in https://github.com/hugsy/gef/pull/1054 * Killing the last inconsistencies through type hints by @hugsy in https://github.com/hugsy/gef/pull/1052 * parse_arguments: Fix bool type by @Grazfather in https://github.com/hugsy/gef/pull/1056 * fix python version parsing by @samas69420 in https://github.com/hugsy/gef/pull/1058 * workflows: tests: Fix arg to check marks by @Grazfather in https://github.com/hugsy/gef/pull/1064 * Restore support for Python3.6 on LTS 18.04 by @hugsy in https://github.com/hugsy/gef/pull/1061 * Cleanup session managers to encapsulate & defer better by @Grazfather in https://github.com/hugsy/gef/pull/1066 * Fixed the install script - again by @hugsy in https://github.com/hugsy/gef/pull/1053 * Add a `source` post hook by @hugsy in https://github.com/hugsy/gef/pull/1059 * Fix recursive loop on architectures where `flags` register is a dynamic value by @hugsy in https://github.com/hugsy/gef/pull/1065 * Fix support for `rr` by @hugsy in https://github.com/hugsy/gef/pull/1047 * Support breakpoint.locations by @Angelo942 in https://github.com/hugsy/gef/pull/1068 * dereference_from: Use GEF_MAX_STRING_LENGTH by @Grazfather in https://github.com/hugsy/gef/pull/1075 * Update Documentation by @hugsy in https://github.com/hugsy/gef/pull/1069 * `flag_register_to_human` is not implemented on RISC-V architecture by @yuk1i in https://github.com/hugsy/gef/pull/1076 * Remove pyenv related code (closes #1078) by @mattzque in https://github.com/hugsy/gef/pull/1084 * add skipi to docs by @therealdreg in https://github.com/hugsy/gef/pull/1087 * Evaluate arguments passed to `vmmap` by @clubby789 in https://github.com/hugsy/gef/pull/1085 * add stepover command by @therealdreg in https://github.com/hugsy/gef/pull/1086 * Add `on_changed` setting hook by @hugsy in https://github.com/hugsy/gef/pull/1090 * Fix problems due to multiple matches in filename filters by @ValekoZ in https://github.com/hugsy/gef/pull/1083 * Avoid Python 3.8+ f-string debugging feature to restore 3.6+ compatibility by @Unactived in https://github.com/hugsy/gef/pull/1092 * add layout mapping API for external plugins by @therealdreg in https://github.com/hugsy/gef/pull/1093 * Supporting changes for the "got-audit" command. by @gordonmessmer in https://github.com/hugsy/gef/pull/1097 * Correctly parse offset from `info proc mappings` output (#1096) by @mjklbhvg in https://github.com/hugsy/gef/pull/1098 * update: gdb logging enable/disable command by @mtwoz in https://github.com/hugsy/gef/pull/1095 * [Docs] Fix typo by @hugsy in https://github.com/hugsy/gef/pull/1106 * [Docs] `pre-commit` setup and use by @hugsy in https://github.com/hugsy/gef/pull/1107 * Fix prompt length calculation by @ValekoZ in https://github.com/hugsy/gef/pull/1103 * Tests: Add more context benchmarks by @Grazfather in https://github.com/hugsy/gef/pull/1108 * Add an "--all" option to the got command by @gordonmessmer in https://github.com/hugsy/gef/pull/1101 * [cmd] Add a `arch` command for managing `gef.arch` by @ValekoZ in https://github.com/hugsy/gef/pull/1114 * [libc] Fix `find_libc_version` for checking each readable maps by @ValekoZ in https://github.com/hugsy/gef/pull/1110 ## Contributors | Author | Number of commits | |:--|--:| | crazy hugsy | 29| | Grazfather | 5| | ValekoZ | 4| | Dreg | 3| | Gordon Messmer | 2| | Angelo942 | 1| | clubby789 | 1| | Matthias Hecker | 1| | mjklbhvg | 1| | Saverio | 1| | Unactive | 1| | whoismz | 1| | Yuki | 1| ## Closed Issues * 8 issues closed ( [1104](https://github.com/hugsy/gef/issues/1104) &bull; [1102](https://github.com/hugsy/gef/issues/1102) &bull; [1099](https://github.com/hugsy/gef/issues/1099) &bull; [1096](https://github.com/hugsy/gef/issues/1096) &bull; [1091](https://github.com/hugsy/gef/issues/1091) &bull; [1088](https://github.com/hugsy/gef/issues/1088) &bull; [1078](https://github.com/hugsy/gef/issues/1078) &bull; [1077](https://github.com/hugsy/gef/issues/1077) ) ## Closed Pull Requests * 22 PRs closed ( [1114](https://github.com/hugsy/gef/pull/1114) &bull; [1110](https://github.com/hugsy/gef/pull/1110) &bull; [1108](https://github.com/hugsy/gef/pull/1108) &bull; [1107](https://github.com/hugsy/gef/pull/1107) &bull; [1106](https://github.com/hugsy/gef/pull/1106) &bull; [1103](https://github.com/hugsy/gef/pull/1103) &bull; [1101](https://github.com/hugsy/gef/pull/1101) &bull; [1098](https://github.com/hugsy/gef/pull/1098) &bull; [1097](https://github.com/hugsy/gef/pull/1097) &bull; [1095](https://github.com/hugsy/gef/pull/1095) &bull; [1094](https://github.com/hugsy/gef/pull/1094) &bull; [1093](https://github.com/hugsy/gef/pull/1093) &bull; [1092](https://github.com/hugsy/gef/pull/1092) &bull; [1090](https://github.com/hugsy/gef/pull/1090) &bull; [1087](https://github.com/hugsy/gef/pull/1087) &bull; [1086](https://github.com/hugsy/gef/pull/1086) &bull; [1085](https://github.com/hugsy/gef/pull/1085) &bull; [1084](https://github.com/hugsy/gef/pull/1084) &bull; [1083](https://github.com/hugsy/gef/pull/1083) &bull; [1082](https://github.com/hugsy/gef/pull/1082) &bull; [1081](https://github.com/hugsy/gef/pull/1081) &bull; [1076](https://github.com/hugsy/gef/pull/1076) &bull; [1058](https://github.com/hugsy/gef/pull/1058) ## New Contributors * @samas69420 made their first contribution in https://github.com/hugsy/gef/pull/1058 * @yuk1i made their first contribution in https://github.com/hugsy/gef/pull/1076 * @mattzque made their first contribution in https://github.com/hugsy/gef/pull/1084 * @Unactived made their first contribution in https://github.com/hugsy/gef/pull/1092 * @gordonmessmer made their first contribution in https://github.com/hugsy/gef/pull/1097 * @mjklbhvg made their first contribution in https://github.com/hugsy/gef/pull/1098 * @mtwoz made their first contribution in https://github.com/hugsy/gef/pull/1095 ## Commit details <details> <summary> 51 commits since <b>2024.01</b> </summary> ### Commit log * 2024-01-20 [c9a8b188](https://github.com/hugsy/gef/commit/c9a8b18808f06bb2e8c7fdb6de5a3dafcbfa7c56) &bull; *crazy hugsy* &bull; Use `info proc mapping` (#1046) * 2024-01-20 [219d46fe](https://github.com/hugsy/gef/commit/219d46fedcf3859a5509ef2ccacd3396dab28768) &bull; *crazy hugsy* &bull; Restore compatiblity with Python 3.6 (#1051) * 2024-01-24 [e604ab4f](https://github.com/hugsy/gef/commit/e604ab4fc2cbb1db204d97c2dfa45a1663831a1b) &bull; *crazy hugsy* &bull; Fixed 404 links in `docs/deprecated.md` (#1054) * 2024-01-25 [570cc039](https://github.com/hugsy/gef/commit/570cc039c2ca258e7e49e0ad3d076132e8fc0444) &bull; *crazy hugsy* &bull; Killing the last inconsistencies through type hints (#1052) * 2024-01-26 [13a93390](https://github.com/hugsy/gef/commit/13a93390123682363e7430cf4531f11cb3fe85ff) &bull; *Grazfather* &bull; parse_arguments: Fix bool type (#1056) * 2024-01-27 [ece57282](https://github.com/hugsy/gef/commit/ece572826a4364de340a7b0ff18afa89f5e76119) &bull; *Saverio* &bull; Fix python version parsing (#1058) * 2024-01-29 [e123b87a](https://github.com/hugsy/gef/commit/e123b87a4ef756ac57578cdbe5ba926d8487445e) &bull; *Grazfather* &bull; [CI] Fix arg to check marks (#1064) * 2024-01-29 [c17a0d22](https://github.com/hugsy/gef/commit/c17a0d22c9c6b3c07867eee2e83e8e705d6669ee) &bull; *crazy hugsy* &bull; Restore support for Python3.6 on LTS 18.04 (#1061) * 2024-01-30 [4b47c6d1](https://github.com/hugsy/gef/commit/4b47c6d11232f8706f0db54536ef0cb74fc2764a) &bull; *Grazfather* &bull; Cleanup session managers to encapsulate & defer better (#1066) * 2024-01-30 [32d1e91a](https://github.com/hugsy/gef/commit/32d1e91a7161d8aacbc6b8dd92507b6074616681) &bull; *crazy hugsy* &bull; Fixed the install script - again (#1053) * 2024-01-31 [06478bdd](https://github.com/hugsy/gef/commit/06478bdd70a9db55b06ba483deca26a964380734) &bull; *hugsy* &bull; [Bug] Fix broken install script after #1053. We now stop using 3rd party tool, only rely on bash and python3. * 2024-01-31 [4c307e65](https://github.com/hugsy/gef/commit/4c307e6509d9ec3a040592b62208e3a86e267556) &bull; *crazy hugsy* &bull; Add a `source` post hook (#1059) * 2024-02-01 [db5b7b8d](https://github.com/hugsy/gef/commit/db5b7b8d1784610d4577cf4137e453e974541aac) &bull; *crazy hugsy* &bull; Fix recursive loop on architectures where `flags` register is a dynamic value (#1065) * 2024-02-22 [0fca6988](https://github.com/hugsy/gef/commit/0fca69886b67ec5d8ea694fd4096eb13bb96a325) &bull; *crazy hugsy* &bull; Fix support for `rr` (#1047) * 2024-02-23 [cdaf158b](https://github.com/hugsy/gef/commit/cdaf158bc990cc8766f4817bbd7484ac6a9149b6) &bull; *Angelo942* &bull; Support breakpoint.locations (#1068) * 2024-03-09 [820d81f1](https://github.com/hugsy/gef/commit/820d81f13cc735870c6c917d18983584735265f7) &bull; *Grazfather* &bull; `dereference_from` Use GEF_MAX_STRING_LENGTH (#1075) * 2024-03-10 [dfd3868e](https://github.com/hugsy/gef/commit/dfd3868e353a00f4aa8215f2f00263ffb961d0db) &bull; *crazy hugsy* &bull; Update Documentation (#1069) * 2024-04-07 [429a0e58](https://github.com/hugsy/gef/commit/429a0e58843f2cc6a5d5ee1c38db72a64318387d) &bull; *Yuki* &bull; Add missing `flag_register_to_human()` for RISC-V architecture (#1076) * 2024-04-15 [d2116583](https://github.com/hugsy/gef/commit/d2116583f6763bdd5a7b02c43581cbe7b1ef4e6e) &bull; *Matthias Hecker* &bull; Remove pyenv related code (closes #1078) (#1084) * 2024-04-19 [399f457c](https://github.com/hugsy/gef/commit/399f457c50004f8eae8c95e6713522ab9d73bebc) &bull; *Dreg* &bull; add skipi to docs (#1087) * 2024-04-20 [6a2ecce5](https://github.com/hugsy/gef/commit/6a2ecce5122850a4c66e8ca4aa3c20dd08b4ad0f) &bull; *clubby789* &bull; Evaluate arguments passed to `vmmap` (#1085) * 2024-04-20 [13af3667](https://github.com/hugsy/gef/commit/13af3667fbf3184d922c5544e7be19efc08745a1) &bull; *Dreg* &bull; add stepover command (#1086) * 2024-04-22 [6667af61](https://github.com/hugsy/gef/commit/6667af61af46081e05eda607063f9345c366e020) &bull; *crazy hugsy* &bull; Add `on_changed` setting hook (#1090) * 2024-04-22 [8031fda8](https://github.com/hugsy/gef/commit/8031fda891522460af1d12b0e2e9968459ce08de) &bull; *ValekoZ* &bull; Fix problems due to multiple matches in filename filters (#1083) * 2024-04-23 [92f45ba1](https://github.com/hugsy/gef/commit/92f45ba14e2c477fcaf73ff11043cf60ca7acfd4) &bull; *Unactive* &bull; Avoid Python 3.8+ f-string debugging feature to restore 3.6+ compatibility (#1092) * 2024-04-26 [29fb74ef](https://github.com/hugsy/gef/commit/29fb74efa29ec54296016d963724315e743689fa) &bull; *Dreg* &bull; add layout mapping API for external plugins (#1093) * 2024-05-05 [18c1f7c4](https://github.com/hugsy/gef/commit/18c1f7c433e320066808e31797f18dae30830982) &bull; *Gordon Messmer* &bull; Supporting changes for the "got-audit" command. (#1097) * 2024-05-18 [13d1de2d](https://github.com/hugsy/gef/commit/13d1de2dc3db6d6524bc30683567edcba3e20791) &bull; *mjklbhvg* &bull; Correctly parse offset from `info proc mappings` output (#1096) (#1098) * 2024-05-18 [220611a8](https://github.com/hugsy/gef/commit/220611a812114542f0d629483816a07c9cdb64eb) &bull; *whoismz* &bull; update: gdb logging enable/disable command (#1095) * 2024-05-20 [c9bab34e](https://github.com/hugsy/gef/commit/c9bab34ecefdb07bcf9a9a19b43159da6a08187b) &bull; *crazy hugsy* &bull; [Docs] Fix typo (#1106) * 2024-05-20 [2c26e33f](https://github.com/hugsy/gef/commit/2c26e33fd29e6a9caa4bdc07a43ec7386f7cbf35) &bull; *crazy hugsy* &bull; [Docs] `pre-commit` setup and use (#1107) * 2024-05-25 [bdf82195](https://github.com/hugsy/gef/commit/bdf82195c99f863000c2a4820a727b217c853081) &bull; *ValekoZ* &bull; Fix prompt length calculation (#1103) * 2024-05-28 [757f5bbb](https://github.com/hugsy/gef/commit/757f5bbbbd364b6885962e54ad426aa66ee32a6a) &bull; *Grazfather* &bull; Tests: Add more context benchmarks (#1108) * 2024-06-01 [f0b6d1d3](https://github.com/hugsy/gef/commit/f0b6d1d3e3a8a367341fb17dbae5202f9f10d7d8) &bull; *Gordon Messmer* &bull; Add an "--all" option to the got command (#1101) * 2024-06-02 [85008e2c](https://github.com/hugsy/gef/commit/85008e2c497bc87c2ec99e968b1d28c1af226666) &bull; *crazy hugsy* &bull; restore completion for subcommands * 2024-06-02 [cfda9018](https://github.com/hugsy/gef/commit/cfda9018534aaffd650a88ffc690b6f604f2aa8a) &bull; *ValekoZ* &bull; [cmd] Add a `arch` command for managing `gef.arch` (#1114) * 2024-06-02 [ff185e6e](https://github.com/hugsy/gef/commit/ff185e6e00729a102099bbf33deb537dd37b7f2a) &bull; *ValekoZ* &bull; [libc] Fix `find_libc_version` for checking each readable maps (#1110) ### File diff ```diff .github/workflows/coverage.yml | 74 +- .github/workflows/run-tests.yml | 2 +- .github/workflows/validate.yml | 12 +- docs/api.md | 68 +- docs/api/gef.md | 1149 ++++++++++++------ docs/commands/arch.md | 17 + docs/commands/gef-remote.md | 47 + docs/commands/got.md | 13 +- docs/commands/stepover.md | 16 + docs/commands/vmmap.md | 4 + docs/deprecated.md | 13 +- docs/install.md | 1 + docs/testing.md | 41 + gef.py | 1480 +++++++++++++++--------- mkdocs.yml | 2 + scripts/gef-extras.sh | 4 +- scripts/gef.sh | 41 +- tests/api/gef_memory.py | 151 +++ tests/api/misc.py | 89 +- tests/base.py | 9 +- tests/binaries/Makefile | 3 + tests/binaries/collision.c | 16 + tests/commands/arch.py | 45 + tests/commands/entry_break.py | 9 +- tests/commands/gef.py | 4 +- tests/commands/gef_remote.py | 40 +- tests/commands/got.py | 33 + tests/commands/highlight.py | 14 +- tests/commands/pcustom.py | 2 +- tests/commands/stepover.py | 44 + tests/commands/vmmap.py | 3 + tests/config/__init__.py | 31 +- tests/perf/benchmark.py | 18 + tests/regressions/filename_collision_lookup.py | 27 + tests/requirements.txt | 1 + tests/scripts/__init__.py | 0 tests/scripts/test_gef.py | 45 + tests/utils.py | 59 +- 38 files changed, 2437 insertions(+), 1190 deletions(-) ``` </details> **Full Changelog**: https://github.com/hugsy/gef/compare/2024.01...2024.06

2024.01 - Evergreen Response2024.01
? · 2024-01-12

# Changelog: 2024.01 - Evergreen Response ## What's Changed in `Evergreen Response` * install curl coverage.yml by @therealdreg in https://github.com/hugsy/gef/pull/997 * gef-remote: Fix issue with remote path having a space by @Grazfather in https://github.com/hugsy/gef/pull/998 * Tiny cleanup by @Grazfather in https://github.com/hugsy/gef/pull/994 * Let GefSetting write hooks see value by @Grazfather in https://github.com/hugsy/gef/pull/1000 * Fix gdb.execute not quoting paths by @Grazfather in https://github.com/hugsy/gef/pull/999 * Do not quote paths when running 'source' by @Grazfather in https://github.com/hugsy/gef/pull/1005 * show basename in source: split line by @bartman in https://github.com/hugsy/gef/pull/1017 * [Installers] Use latest tag, not main by @hugsy in https://github.com/hugsy/gef/pull/1007 * Reorder reset_arch: param forced, elf header, gdb conf by @josx in https://github.com/hugsy/gef/pull/1004 * Run validate CI step with Python 3.11 by @Grazfather in https://github.com/hugsy/gef/pull/1022 * [target-remote] Basic support for the `target remote` command by @ValekoZ in https://github.com/hugsy/gef/pull/1020 * Coverage workflow should only be triggered by `pull_request` by @hugsy in https://github.com/hugsy/gef/pull/1023 * Dump memory usage when listing arenas, and add summary option in heap chunks command. by @r12f in https://github.com/hugsy/gef/pull/1024 * Memory map provider by @Grazfather in https://github.com/hugsy/gef/pull/1003 * Fix clear-screen timing when showing context by @r12f in https://github.com/hugsy/gef/pull/1026 * Add min-size and max-size filter to heap chunks command by @r12f in https://github.com/hugsy/gef/pull/1025 * Add c++ symbol support in xinfo. by @r12f in https://github.com/hugsy/gef/pull/1028 * Add config to override libc version. by @r12f in https://github.com/hugsy/gef/pull/1027 * Add option to resolve type when dumping heap summary. by @r12f in https://github.com/hugsy/gef/pull/1030 * Rename _target to debug_target for building test cases. by @r12f in https://github.com/hugsy/gef/pull/1031 * gef.sh: Fix `which: command not found` by @osalbahr in https://github.com/hugsy/gef/pull/1032 * [docs] document conditional context panes by @Ordoviz in https://github.com/hugsy/gef/pull/1035 * support 64 bit retval for stub by @Angelo942 in https://github.com/hugsy/gef/pull/1034 * Add count option in heap chunks command to limit the number of chunks to process / output. by @r12f in https://github.com/hugsy/gef/pull/1029 * correct parsing in gdb_get_location_from_symbol by @Angelo942 in https://github.com/hugsy/gef/pull/1037 * Migrate tests to RPyC by @hugsy in https://github.com/hugsy/gef/pull/1040 * Remove old context_times script + tuneup by @Grazfather in https://github.com/hugsy/gef/pull/1042 * Update rpyc example in `docs/testing.md` by @hugsy in https://github.com/hugsy/gef/pull/1041 ## Contributors | Author | Number of commits | |:--|--:| | Angelo942 | 2| | Bart Trojanowski | 1| | crazy hugsy | 4| | Dreg | 1| | Grazfather | 8| | José Luis Di Biase | 1| | Lennard Hofmann | 1| | Osama Albahrani | 1| | Riff | 8| | ValekoZ | 1| ## New Contributors 🎉 * @bartman made their first contribution in https://github.com/hugsy/gef/pull/1017 * @josx made their first contribution in https://github.com/hugsy/gef/pull/1004 * @ValekoZ made their first contribution in https://github.com/hugsy/gef/pull/1020 * @r12f made their first contribution in https://github.com/hugsy/gef/pull/1024 * @osalbahr made their first contribution in https://github.com/hugsy/gef/pull/1032 * @Ordoviz made their first contribution in https://github.com/hugsy/gef/pull/1035 * @Angelo942 made their first contribution in https://github.com/hugsy/gef/pull/1034 ## Closed Issues * 9 issues closed ( [1036](https://github.com/hugsy/gef/issues/1036) &bull; [1033](https://github.com/hugsy/gef/issues/1033) &bull; [1018](https://github.com/hugsy/gef/issues/1018) &bull; [1016](https://github.com/hugsy/gef/issues/1016) &bull; [1014](https://github.com/hugsy/gef/issues/1014) &bull; [1011](https://github.com/hugsy/gef/issues/1011) &bull; [1010](https://github.com/hugsy/gef/issues/1010) &bull; [1009](https://github.com/hugsy/gef/issues/1009) &bull; [1008](https://github.com/hugsy/gef/issues/1008) ) ## Closed Pull Requests * 21 PRs closed ( [1042](https://github.com/hugsy/gef/pull/1042) &bull; [1041](https://github.com/hugsy/gef/pull/1041) &bull; [1040](https://github.com/hugsy/gef/pull/1040) &bull; [1037](https://github.com/hugsy/gef/pull/1037) &bull; [1035](https://github.com/hugsy/gef/pull/1035) &bull; [1034](https://github.com/hugsy/gef/pull/1034) &bull; [1032](https://github.com/hugsy/gef/pull/1032) &bull; [1031](https://github.com/hugsy/gef/pull/1031) &bull; [1030](https://github.com/hugsy/gef/pull/1030) &bull; [1029](https://github.com/hugsy/gef/pull/1029) &bull; [1028](https://github.com/hugsy/gef/pull/1028) &bull; [1027](https://github.com/hugsy/gef/pull/1027) &bull; [1026](https://github.com/hugsy/gef/pull/1026) &bull; [1025](https://github.com/hugsy/gef/pull/1025) &bull; [1024](https://github.com/hugsy/gef/pull/1024) &bull; [1023](https://github.com/hugsy/gef/pull/1023) &bull; [1022](https://github.com/hugsy/gef/pull/1022) &bull; [1020](https://github.com/hugsy/gef/pull/1020) &bull; [1019](https://github.com/hugsy/gef/pull/1019) &bull; [1017](https://github.com/hugsy/gef/pull/1017) &bull; [1013](https://github.com/hugsy/gef/pull/1013) ) ## Commit details <details> <summary> 28 commits since <b>2023.08</b> </summary> ### Commit log * 2023-08-21 [d6ce056](https://github.com/hugsy/gef/commit/d6ce0564caffc056458b0217577c0909f7af1636) &bull; *Dreg* &bull; Install curl coverage.yml (#997) * 2023-08-25 [bba5f1c](https://github.com/hugsy/gef/commit/bba5f1cda306c28546ae2b6ff32e74cf5bbf2ebd) &bull; *Grazfather* &bull; gef-remote: Fix issue with remote path having a space (#998) * 2023-08-26 [46fba8b](https://github.com/hugsy/gef/commit/46fba8bdba532d64505e4714d444233c2421d372) &bull; *Grazfather* &bull; Tiny cleanup (#994) * 2023-08-26 [6a6e2a0](https://github.com/hugsy/gef/commit/6a6e2a05ca8e08ac6845dce655a432fc4e029486) &bull; *Grazfather* &bull; Let `GefSetting` write hooks see value (#1000) * 2023-09-09 [1247fe4](https://github.com/hugsy/gef/commit/1247fe4d41d4b746c9941a57274c56a8831ebae2) &bull; *Grazfather* &bull; Fix gdb.execute not quoting paths (#999) * 2023-09-11 [5927df4](https://github.com/hugsy/gef/commit/5927df4fb307124c444453b1cb85fa0ce79883c9) &bull; *Grazfather* &bull; Do not quote paths when running 'source' (#1005) * 2023-11-28 [788f56b](https://github.com/hugsy/gef/commit/788f56bec760216e95c3a8df9fc521b0d355776d) &bull; *Bart Trojanowski* &bull; show basename in source: split line (#1017) * 2023-11-28 [0f6255e](https://github.com/hugsy/gef/commit/0f6255ec7e31b395bba25785f72add142ed2043a) &bull; *crazy hugsy* &bull; [Installers] Use latest tag, not main (#1007) * 2023-11-29 [295cbf7](https://github.com/hugsy/gef/commit/295cbf7afa5fd59a88c066e478bd3ef22760a6de) &bull; *José Luis Di Biase* &bull; Reorder `reset_arch`: parameter forced, elf header, gdb conf (#1004) * 2023-12-13 [15b09cf](https://github.com/hugsy/gef/commit/15b09cfe8e1680a26a11db027d1feae4dce122d0) &bull; *Grazfather* &bull; Run validate CI step with Python 3.11 (#1022) * 2023-12-16 [f7a2105](https://github.com/hugsy/gef/commit/f7a2105e92743125915acbb4cbcb3239ce4f160e) &bull; *ValekoZ* &bull; [target-remote] Basic support for the `target remote` command (#1020) * 2023-12-16 [0eb7f5c](https://github.com/hugsy/gef/commit/0eb7f5cc3d4f5a5d20b9a25e96ebe30ef4071b32) &bull; *crazy hugsy* &bull; Coverage workflow should only be triggered by `pull_request` (#1023) * 2023-12-18 [17c496c](https://github.com/hugsy/gef/commit/17c496c3af636da6addf857c05676cf7e791937c) &bull; *Riff* &bull; Dump memory usage when listing arenas, and add summary option (#1024) * 2023-12-18 [4f20983](https://github.com/hugsy/gef/commit/4f209837af9b8c58683928361124b0584b906399) &bull; *Grazfather* &bull; Memory map provider (#1003) * 2023-12-20 [f0d2818](https://github.com/hugsy/gef/commit/f0d28180f4140b059fae19e0199fd61f6b70b070) &bull; *Riff* &bull; Fix clear-screen timing when showing context (#1026) * 2023-12-20 [fbda021](https://github.com/hugsy/gef/commit/fbda0214af906e597d7b03ec546c2bf78425c399) &bull; *Riff* &bull; Add min-size and max-size filter to heap chunks command (#1025) * 2023-12-20 [023b1a9](https://github.com/hugsy/gef/commit/023b1a9c476cf97d0aa541431374a461966b0647) &bull; *Riff* &bull; Add c++ symbol support in xinfo. (#1028) * 2023-12-22 [663d4a2](https://github.com/hugsy/gef/commit/663d4a251748c294f342974027ca9bd6ad7f8eb6) &bull; *Riff* &bull; Add config to override libc version. (#1027) * 2023-12-22 [e629f02](https://github.com/hugsy/gef/commit/e629f02fa36747d42763ce8651b8e80f4f34f148) &bull; *Riff* &bull; Add option to resolve type when dumping heap summary. (#1030) * 2023-12-22 [53c769c](https://github.com/hugsy/gef/commit/53c769c633d745f452b4a1c957cd9a2fb3ba5329) &bull; *Riff* &bull; Rename _target to debug_target for building test cases. (#1031) * 2023-12-26 [951872b](https://github.com/hugsy/gef/commit/951872bd965d8748ae94c75c619e396fbfc8e01b) &bull; *Osama Albahrani* &bull; [gef.sh] Replaced `which` with `command` (#1032) * 2023-12-30 [5cc4ef2](https://github.com/hugsy/gef/commit/5cc4ef22d0c588417586963778a7d6e9b4c9b933) &bull; *Lennard Hofmann* &bull; [docs] document conditional context panes (#1035) * 2023-12-30 [a2704c9](https://github.com/hugsy/gef/commit/a2704c90045e0659dd6328f6caac3d85d8344c8e) &bull; *Angelo942* &bull; Support 64 bit return value for stub (#1034) * 2024-01-02 [d4b849e](https://github.com/hugsy/gef/commit/d4b849ee691a33c9d6116151aac28f237ccb4b21) &bull; *Riff* &bull; Add count option in heap chunks command to limit the number of chunks to process / output. (#1029) * 2024-01-04 [deeab2f](https://github.com/hugsy/gef/commit/deeab2f6f679783b25ced3ef74c0582c3e2c8095) &bull; *Angelo942* &bull; Set correct parsing to `gdb_get_location_from_symbol` (#1037) * 2024-01-09 [bcaabff](https://github.com/hugsy/gef/commit/bcaabff1d87ecb70486c7508c556cea7bd546859) &bull; *crazy hugsy* &bull; Migrate tests to RPyC (#1040) * 2024-01-10 [8395f0b](https://github.com/hugsy/gef/commit/8395f0bb7749fba730d647489106dc55c618d2a4) &bull; *Grazfather* &bull; Remove old context_times script + tuneup (#1042) * 2024-01-10 [b56bf9d](https://github.com/hugsy/gef/commit/b56bf9dc48220aeab345722378e87abd9912c5a5) &bull; *crazy hugsy* &bull; Update rpyc example in `docs/testing.md` (#1041) ### File diff ```diff .github/workflows/coverage.yml | 72 ++- .github/workflows/generate-docs.yml | 1 + .github/workflows/validate.yml | 2 + .pylintrc | 20 +- docs/api.md | 3 +- docs/commands/context.md | 20 + docs/commands/gef-remote.md | 6 +- docs/commands/heap.md | 47 ++ docs/testing.md | 69 ++- gef.py | 741 ++++++++++++++++---------- scripts/gef-extras.sh | 6 +- scripts/gef.sh | 11 +- scripts/generate-coverage-docs.sh | 2 +- scripts/remote_debug.py | 36 ++ tests/api/deprecated.py | 30 +- tests/api/gef_arch.py | 45 +- tests/api/gef_disasemble.py | 30 -- tests/api/gef_disassemble.py | 51 ++ tests/api/gef_heap.py | 45 +- tests/api/gef_session.py | 98 ++-- tests/api/misc.py | 169 ++++-- tests/base.py | 108 ++++ tests/binaries/Makefile | 6 + tests/binaries/class.cpp | 29 + tests/commands/aliases.py | 54 +- tests/commands/aslr.py | 57 +- tests/commands/canary.py | 43 +- tests/commands/checksec.py | 53 +- tests/commands/context.py | 4 +- tests/commands/dereference.py | 74 +-- tests/commands/edit_flags.py | 68 +-- tests/commands/elf_info.py | 8 +- tests/commands/entry_break.py | 18 +- tests/commands/format_string_helper.py | 27 +- tests/commands/functions.py | 11 +- tests/commands/gef.py | 96 ++-- tests/commands/gef_remote.py | 74 ++- tests/commands/got.py | 26 +- tests/commands/heap.py | 314 +++++++---- tests/commands/heap_analysis.py | 24 +- tests/commands/hexdump.py | 23 +- tests/commands/highlight.py | 23 +- tests/commands/hijack_fd.py | 8 +- tests/commands/ksymaddr.py | 19 - tests/commands/memory.py | 118 ++-- tests/commands/name_break.py | 19 +- tests/commands/nop.py | 408 +++++++------- tests/commands/patch.py | 92 ++-- tests/commands/pattern.py | 83 +-- tests/commands/pcustom.py | 132 +++-- tests/commands/pie.py | 46 +- tests/commands/print_format.py | 61 ++- tests/commands/process_search.py | 52 +- tests/commands/process_status.py | 17 +- tests/commands/registers.py | 32 +- tests/commands/reset_cache.py | 11 +- tests/commands/scan.py | 24 +- tests/commands/search_pattern.py | 37 +- tests/commands/shellcode.py | 28 +- tests/commands/skipi.py | 67 ++- tests/commands/smart_eval.py | 14 +- tests/commands/stub.py | 49 +- tests/commands/theme.py | 20 +- tests/commands/trace_run.py | 19 +- tests/commands/version.py | 10 +- tests/commands/vmmap.py | 21 +- tests/commands/xfiles.py | 17 +- tests/commands/xinfo.py | 34 +- tests/commands/xor_memory.py | 26 +- tests/config/__init__.py | 89 +++- tests/functions/elf_sections.py | 97 ++-- tests/perf/benchmark.py | 50 +- tests/perf/context_times.sh | 75 --- tests/regressions/gdbserver_connection.py | 14 +- tests/regressions/registers_register_order.py | 90 +++- tests/requirements.txt | 1 + tests/utils.py | 303 ++++------- 77 files changed, 2888 insertions(+), 1939 deletions(-) ``` </details> **Full Changelog**: https://github.com/hugsy/gef/compare/2023.08...2024.01

2023.08 - Disguised Wedding2023.08
? · 2023-08-21

# Changelog: 2023.08 - Disguised Wedding **Important Note** GEF and GEF-Extras have both moved to using the `main` branch as the default. Therefore if you contribute to the code, make sure your PRs are made against the `main` branch. ## Highlights of `Disguised Wedding` * Fix typo in docs by @bkrl in https://github.com/hugsy/gef/pull/949 * Remove outdated sentence in docs by @bkrl in https://github.com/hugsy/gef/pull/948 * [docs] Regenerating `api/gef.md` by @hugsy in https://github.com/hugsy/gef/pull/951 * add nopi command it patchs full instructions by @therealdreg in https://github.com/hugsy/gef/pull/959 * nop: Fix off-by-one in unmap check by @Grazfather in https://github.com/hugsy/gef/pull/960 * Wrap docs by @Grazfather in https://github.com/hugsy/gef/pull/962 * add skipi command by @therealdreg in https://github.com/hugsy/gef/pull/964 * add site/ directory generated by mkdocs to .gitignore by @therealdreg in https://github.com/hugsy/gef/pull/968 * add new nop command features by @therealdreg in https://github.com/hugsy/gef/pull/967 * nop: Add force req when not already --f by @Grazfather in https://github.com/hugsy/gef/pull/970 * Small cleanup - sets by @Grazfather in https://github.com/hugsy/gef/pull/972 * Restore `autosave_breakpoints_file` behavior by @hugsy in https://github.com/hugsy/gef/pull/969 * Fix hardcoded NOP instructions for ARM/AARCH64 by @hugsy in https://github.com/hugsy/gef/pull/971 * reformat README by @Grazfather in https://github.com/hugsy/gef/pull/976 * Minor additions to the documentation by @hugsy in https://github.com/hugsy/gef/pull/975 * [Docs] Added linting for markdown files by @hugsy in https://github.com/hugsy/gef/pull/977 * fix issue link by @therealdreg in https://github.com/hugsy/gef/pull/979 * under license mit -> under mit license by @therealdreg in https://github.com/hugsy/gef/pull/980 * [CI] Upgrade notification actions by @hugsy in https://github.com/hugsy/gef/pull/981 * Restore `main` as the default branch by @hugsy in https://github.com/hugsy/gef/pull/983 * Switch dev refs to main by @hugsy in https://github.com/hugsy/gef/pull/982 * Setup `pre-commit` for GEF by @hugsy in https://github.com/hugsy/gef/pull/984 * add debugging instructions by @therealdreg in https://github.com/hugsy/gef/pull/985 * add forbidden words checks to coverage action by @therealdreg in https://github.com/hugsy/gef/pull/991 * [CI] Use `pull_request_target` for coverage trigger by @hugsy in https://github.com/hugsy/gef/pull/990 * Fix context regs regression that broke reg order by @Grazfather in https://github.com/hugsy/gef/pull/993 * Added docs to debug using VSCode by @hugsy in https://github.com/hugsy/gef/pull/995 ## Contributors | Author | Number of commits | |:--|--:| | hugsy | 28| | Dreg | 8| | Grazfather | 6| | Alexander Zhang | 2| ### New Contributors * @bkrl made their first contribution in https://github.com/hugsy/gef/pull/949 ## Closed Issues * 5 issues closed ( [986](https://github.com/hugsy/gef/issues/986) &bull; [978](https://github.com/hugsy/gef/issues/978) &bull; [974](https://github.com/hugsy/gef/issues/974) &bull; [973](https://github.com/hugsy/gef/issues/973) &bull; [965](https://github.com/hugsy/gef/issues/965) ) ## Closed Pull Requests * 25 PRs closed ( [995](https://github.com/hugsy/gef/pull/995) &bull; [993](https://github.com/hugsy/gef/pull/993) &bull; [992](https://github.com/hugsy/gef/pull/992) &bull; [991](https://github.com/hugsy/gef/pull/991) &bull; [990](https://github.com/hugsy/gef/pull/990) &bull; [989](https://github.com/hugsy/gef/pull/989) &bull; [988](https://github.com/hugsy/gef/pull/988) &bull; [987](https://github.com/hugsy/gef/pull/987) &bull; [985](https://github.com/hugsy/gef/pull/985) &bull; [984](https://github.com/hugsy/gef/pull/984) &bull; [983](https://github.com/hugsy/gef/pull/983) &bull; [982](https://github.com/hugsy/gef/pull/982) &bull; [981](https://github.com/hugsy/gef/pull/981) &bull; [980](https://github.com/hugsy/gef/pull/980) &bull; [979](https://github.com/hugsy/gef/pull/979) &bull; [977](https://github.com/hugsy/gef/pull/977) &bull; [976](https://github.com/hugsy/gef/pull/976) &bull; [975](https://github.com/hugsy/gef/pull/975) &bull; [972](https://github.com/hugsy/gef/pull/972) &bull; [971](https://github.com/hugsy/gef/pull/971) &bull; [970](https://github.com/hugsy/gef/pull/970) &bull; [969](https://github.com/hugsy/gef/pull/969) &bull; [968](https://github.com/hugsy/gef/pull/968) &bull; [967](https://github.com/hugsy/gef/pull/967) &bull; [966](https://github.com/hugsy/gef/pull/966) ) ## Commit details <details> <summary> 44 commits since <b>2023.06</b> </summary> ### Commit log * 2023-04-22 [a6f4cc1](https://github.com/hugsy/gef/commit/a6f4cc186a33baad62008e5bca3b558b78a41cf8) &bull; *Alexander Zhang* &bull; Fix typo in docs (#949) * 2023-04-24 [ac73217](https://github.com/hugsy/gef/commit/ac732170ba209473aff42413bc1d076f52bd4b87) &bull; *crazy hugsy* &bull; [ci] coverage use dedicated token * 2023-04-25 [102288f](https://github.com/hugsy/gef/commit/102288fd3e3be65e4a3b41579cb864dc2d4818c4) &bull; *Alexander Zhang* &bull; Update sentence about Python version in docs (#948) * 2023-05-27 [91f4d70](https://github.com/hugsy/gef/commit/91f4d708d6feab4a997866efac56121aecf6b4f9) &bull; *crazy hugsy* &bull; [docs] Regenerating `api/gef.md` (#951) * 2023-05-29 [0fd751e](https://github.com/hugsy/gef/commit/0fd751ec151952c4efbdcb5b2107b19b49256239) &bull; *crazy hugsy* &bull; Update README.md * 2023-07-13 [74e8626](https://github.com/hugsy/gef/commit/74e862628aa6fa887cabc9233157e81bbb9f00fe) &bull; *Dreg* &bull; Update `nop` command to patch entire instructions (#959) * 2023-07-13 [ca7418c](https://github.com/hugsy/gef/commit/ca7418c912f7bb3d250e1db6ade0b1bef54fffa8) &bull; *Grazfather* &bull; nop: Fix off-by-one in unmap check (#960) * 2023-07-18 [7fd94ab](https://github.com/hugsy/gef/commit/7fd94ab532b6edbb58a3f30f04b7f2a891db0873) &bull; *Grazfather* &bull; Wrap docs (#962) * 2023-07-19 [577ad02](https://github.com/hugsy/gef/commit/577ad02fd888d036f08d815a12547388e5788e3e) &bull; *Dreg* &bull; Add `skipi` command to skip N instructions (#964) * 2023-07-21 [b2d3edc](https://github.com/hugsy/gef/commit/b2d3edc4af75016160da05ae531e094cb6cbd77c) &bull; *crazy hugsy* &bull; Update coverage.yml * 2023-07-21 [b0f4fa9](https://github.com/hugsy/gef/commit/b0f4fa972d53ad1a8cf8d528be098d96eb9cb727) &bull; *Dreg* &bull; add `site/` directory generated by mkdocs to `.gitignore` (#968) * 2023-07-21 [99c59a9](https://github.com/hugsy/gef/commit/99c59a90573696843c4b901684d9b18ae6f3af96) &bull; *Dreg* &bull; adjust the behavior (and options) for the `nop` command (#967) * 2023-07-21 [9170ac0](https://github.com/hugsy/gef/commit/9170ac0a8d0c271a0524f6216a9ae5c222746227) &bull; *Grazfather* &bull; nop: Add force req when not already --f (#970) * 2023-07-22 [81ee52d](https://github.com/hugsy/gef/commit/81ee52d32009c912000f65052f289d38bd63cd71) &bull; *Grazfather* &bull; Small cleanup - sets (#972) * 2023-07-22 [e529fbc](https://github.com/hugsy/gef/commit/e529fbcb6ca23a6915683c639cb3d51d0242fd77) &bull; *crazy hugsy* &bull; Restore `autosave_breakpoints_file` behavior (#969) * 2023-07-22 [0461d6f](https://github.com/hugsy/gef/commit/0461d6fe6e3592f333e11ab39947905171ba9011) &bull; *crazy hugsy* &bull; Fix hardcoded NOP instructions for ARM/AARCH64 (#971) * 2023-07-30 [27a29d9](https://github.com/hugsy/gef/commit/27a29d9685bf243b393af0c6b3af85f1b1041221) &bull; *Grazfather* &bull; Reformat README (#976) * 2023-07-31 [b57e174](https://github.com/hugsy/gef/commit/b57e174deb79ebac7914be75c886974409a7b9ef) &bull; *crazy hugsy* &bull; Minor additions to the documentation (#975) * 2023-08-01 [5e23739](https://github.com/hugsy/gef/commit/5e237393629d861def1809b4bcbe4302ab31b726) &bull; *crazy hugsy* &bull; [Docs] Added linting for markdown files (#977) * 2023-08-02 [ea7ed49](https://github.com/hugsy/gef/commit/ea7ed49daa8ac1e79dde7af7ca142ab6bb7301e4) &bull; *Dreg* &bull; Fix link in testing docs (#979) * 2023-08-02 [51804c8](https://github.com/hugsy/gef/commit/51804c8b40f4d0d9136d508975b5b9cced70dcd0) &bull; *Dreg* &bull; Fixed phrasing in docs (#980) * 2023-08-05 [a825c84](https://github.com/hugsy/gef/commit/a825c8413d8a432b09f75132fe1d83803c2b906f) &bull; *crazy hugsy* &bull; [ci] Upgrade notification actions (#981) * 2023-08-06 [8f0f444](https://github.com/hugsy/gef/commit/8f0f4443bd01f82ec9f4151600ff226318467439) &bull; *crazy hugsy* &bull; Restore `main` as the default branch (#983) * 2023-08-07 [878cbf2](https://github.com/hugsy/gef/commit/878cbf2297de92c008e2d8269e9409c42da12f95) &bull; *crazy hugsy* &bull; Switch dev refs to main (#982) * 2023-08-07 [7c170cf](https://github.com/hugsy/gef/commit/7c170cf6be3d84b2672a22e43b9128a23fe53c3b) &bull; *crazy hugsy* &bull; Setup `pre-commit` for GEF (#984) * 2023-08-14 [d27efd3](https://github.com/hugsy/gef/commit/d27efd3b901c5f8ff3e7f91e95835ff76e94b962) &bull; *Dreg* &bull; Add debugging instructions (#985) * 2023-08-16 [371f273](https://github.com/hugsy/gef/commit/371f273017768cac7dd8f70e5ac9e1ba82712139) &bull; *Dreg* &bull; [CI] Add forbidden words checks to coverage action (#991) * 2023-08-16 [67c363d](https://github.com/hugsy/gef/commit/67c363dea3af49a7fe75d85bbd6a5d281c3f171f) &bull; *crazy hugsy* &bull; [CI] Use `pull_request_target` for coverage trigger (#990) * 2023-08-16 [9f79363](https://github.com/hugsy/gef/commit/9f7936389cf8df15e8459d38639ac715128ace3e) &bull; *Grazfather* &bull; Fix context regs regression that broke reg order (#993) * 2023-08-20 [7856b70](https://github.com/hugsy/gef/commit/7856b7059e58045622aa7102eaef876dc47dd930) &bull; *hugsy* &bull; Added docs to debug using VSCode * 2023-08-20 [cc3b0ca](https://github.com/hugsy/gef/commit/cc3b0cacf753e77131d3dc2d81d097192ac3b42f) &bull; *hugsy* &bull; Fixed un-ended comment tag in pr_template md file ### File diff ```diff .editorconfig | 3 + .github/CONTRIBUTING.md | 33 +- .github/FUNDING.yml | 1 - .github/ISSUE_TEMPLATE/bug_report.yaml | 6 +- .github/PULL_REQUEST_TEMPLATE.md | 31 +- .github/stale.yml | 2 +- .github/workflows/coverage.yml | 68 +- .github/workflows/docs-link-check.yml | Bin 998 -> 0 bytes .github/workflows/generate-docs.yml | 1 - .../workflows/{discord-notify.yml => notify.yml} | 55 +- .github/workflows/run-tests.yml | 7 - .github/workflows/validate.yml | 31 + .gitignore | 1 + .pre-commit-config.yaml | 25 + LICENSE | 2 +- README.md | 100 +- docs/.markdownlint.yaml | 256 + docs/api.md | 131 +- docs/api/gef.md | 23212 +++++++++++++++++++ docs/commands/aliases.md | 42 +- docs/commands/aslr.md | 15 +- docs/commands/canary.md | 10 +- docs/commands/checksec.md | 12 +- docs/commands/config.md | 39 +- docs/commands/context.md | 193 +- docs/commands/dereference.md | 44 +- docs/commands/edit-flags.md | 22 +- docs/commands/elf-info.md | 11 +- docs/commands/entry-break.md | 18 +- docs/commands/eval.md | 8 +- docs/commands/format-string-helper.md | 25 +- docs/commands/functions.md | 33 +- docs/commands/gef-remote.md | 61 +- docs/commands/gef.md | 77 +- docs/commands/got.md | 16 +- docs/commands/heap-analysis-helper.md | 55 +- docs/commands/heap.md | 171 +- docs/commands/help.md | 2 +- docs/commands/hexdump.md | 29 +- docs/commands/highlight.md | 24 +- docs/commands/hijack-fd.md | 15 +- docs/commands/ksymaddr.md | 10 +- docs/commands/memory.md | 45 +- docs/commands/name-break.md | 26 +- docs/commands/nop.md | 64 +- docs/commands/patch.md | 2 +- docs/commands/pattern.md | 42 +- docs/commands/pcustom.md | 108 +- docs/commands/pie.md | 67 +- docs/commands/print-format.md | 22 +- docs/commands/process-search.md | 32 +- docs/commands/process-status.md | 8 +- docs/commands/registers.md | 13 +- docs/commands/reset-cache.md | 2 +- docs/commands/scan.md | 22 +- docs/commands/search-pattern.md | 41 +- docs/commands/shellcode.md | 9 +- docs/commands/skipi.md | 18 + docs/commands/stub.md | 29 +- docs/commands/theme.md | 30 +- docs/commands/tmux-setup.md | 37 +- docs/commands/trace-run.md | 16 +- docs/commands/version.md | 15 +- docs/commands/vmmap.md | 13 +- docs/commands/xfiles.md | 6 +- docs/commands/xinfo.md | 15 +- docs/commands/xor-memory.md | 32 +- docs/compat.md | 8 +- docs/config.md | 25 +- docs/debugging.md | 131 + docs/deprecated.md | 27 +- docs/faq.md | 179 +- docs/functions/base.md | 11 +- docs/functions/bss.md | 8 +- docs/functions/got.md | 8 +- docs/functions/heap.md | 8 +- docs/functions/stack.md | 9 +- docs/index.md | 88 +- docs/install.md | 84 +- docs/obsolete/docs/index.md | 1 - docs/screenshots.md | 23 +- docs/testing.md | 34 +- gef.py | 223 +- mkdocs.yml | 4 +- scripts/gef-extras.sh | 2 +- scripts/gef.sh | 5 - scripts/generate-api-docs.sh | 2 +- scripts/vscode_debug.py | 7 + tests/api/deprecated.py | 1 - tests/api/gef_heap.py | 1 - tests/api/misc.py | 2 +- tests/binaries/nested.c | 2 +- tests/binaries/nested2.c | 2 +- tests/commands/functions.py | 1 - tests/commands/gef.py | 1 - tests/commands/gef_remote.py | 1 - tests/commands/got.py | 1 - tests/commands/heap.py | 1 - tests/commands/heap_analysis.py | 1 - tests/commands/hexdump.py | 3 - tests/commands/name_break.py | 1 - tests/commands/nop.py | 278 +- tests/commands/pattern.py | 1 - tests/commands/pie.py | 1 - tests/commands/process_status.py | 2 - tests/commands/registers.py | 1 - tests/commands/reset_cache.py | 2 - tests/commands/scan.py | 1 - tests/commands/search_pattern.py | 6 +- tests/commands/skipi.py | 62 + tests/commands/stub.py | 2 +- tests/config/__init__.py | 1 - tests/requirements.txt | 1 + 113 files changed, 25567 insertions(+), 1307 deletions(-) ``` </details>

2023.04 - Worst Dependent2023.06
? · 2023-04-17

# Changelog: 2023.04 - Worst Dependent ## Highlights of `Worst Dependent` The update includes various changes to the installation script, bug fixes, updates to documentation, and improvements to the `search-pattern` command. Some changes involve updating the GH Action runners, ARM improvement (fixing CPSR and pointer size calculation) and Safe-Linking support (for GLibc >= 2.32 compat) Code stability has been improved with an increased coverage check through test. Last, more documentation was added making it more accessible and easily searchable. ## Contributors | Author | Number of commits | |:--|--:| | hugsy | 85| | Dreg | 6| | clubby789 | 4| | Grazfather | 2| | theguy147 | 2| | Ananthu | 1| | Boris-Chengbiao Zhou | 1| | D4nnyLee | 1| | Jonathan Salwan | 1| | lain3d | 1| | liona24 | 1| | Roderick | 1| | Tramadol | 1| | Wadim Mueller | 1| | Zhi-Qiang Zhou | 1| ## Closed Issues * 19 issues closed ( [943](https://github.com/hugsy/gef/issues/943) &bull; [937](https://github.com/hugsy/gef/issues/937) &bull; [935](https://github.com/hugsy/gef/issues/935) &bull; [930](https://github.com/hugsy/gef/issues/930) &bull; [929](https://github.com/hugsy/gef/issues/929) &bull; [928](https://github.com/hugsy/gef/issues/928) &bull; [927](https://github.com/hugsy/gef/issues/927) &bull; [925](https://github.com/hugsy/gef/issues/925) &bull; [923](https://github.com/hugsy/gef/issues/923) &bull; [922](https://github.com/hugsy/gef/issues/922) &bull; [921](https://github.com/hugsy/gef/issues/921) &bull; [920](https://github.com/hugsy/gef/issues/920) &bull; [919](https://github.com/hugsy/gef/issues/919) &bull; [916](https://github.com/hugsy/gef/issues/916) &bull; [915](https://github.com/hugsy/gef/issues/915) &bull; [913](https://github.com/hugsy/gef/issues/913) &bull; [911](https://github.com/hugsy/gef/issues/911) &bull; [910](https://github.com/hugsy/gef/issues/910) &bull; [909](https://github.com/hugsy/gef/issues/909) ) ## Closed Pull Requests * 11 PRs closed ( [945](https://github.com/hugsy/gef/pull/945) &bull; [942](https://github.com/hugsy/gef/pull/942) &bull; [941](https://github.com/hugsy/gef/pull/941) &bull; [938](https://github.com/hugsy/gef/pull/938) &bull; [936](https://github.com/hugsy/gef/pull/936) &bull; [932](https://github.com/hugsy/gef/pull/932) &bull; [931](https://github.com/hugsy/gef/pull/931) &bull; [918](https://github.com/hugsy/gef/pull/918) &bull; [917](https://github.com/hugsy/gef/pull/917) &bull; [914](https://github.com/hugsy/gef/pull/914) &bull; [912](https://github.com/hugsy/gef/pull/912) ) ## Commit details <details> <summary> 109 commits since <b>2022.06</b> </summary> ### Commit log * 2022-06-27 [b2458d6](https://github.com/hugsy/gef/commit/b2458d6c760d1c5643f0f7de10642afe3857779e) &bull; *hugsy* &bull; Update `gef-extras.sh` installation script * 2022-06-27 [2b72f5d](https://github.com/hugsy/gef/commit/2b72f5d0d9f0f218a91cd1ca5148e45923b950d5) &bull; *hugsy* &bull; Quick fix on `__load_time_ms` since Py3.6 doesn't have `perf_counter_ns` * 2022-06-27 [885d71a](https://github.com/hugsy/gef/commit/885d71a96f219024f02b7060dcfb27ee1f94f268) &bull; *hugsy* &bull; [CI] Added Ubuntu-22.02 to GH Action runners * 2022-06-28 [290a984](https://github.com/hugsy/gef/commit/290a984b1f402a4b825e8e6aa9b1d68592487914) &bull; *hugsy* &bull; Fix AARCH64 CPSR and pointer size calculation (#855) * 2022-06-28 [dbcd859](https://github.com/hugsy/gef/commit/dbcd85986ef21d9edbc4813db431a18f57ef25c5) &bull; *hugsy* &bull; Update PULL_REQUEST_TEMPLATE.md * 2022-06-28 [091e298](https://github.com/hugsy/gef/commit/091e29847e86036e511dcf19505db8eb24227bd2) &bull; *hugsy* &bull; [pattern-search] Make sure pattern is correctly built (#858) * 2022-07-02 [35c115a](https://github.com/hugsy/gef/commit/35c115a8b3a8010cba8183fdae7fe8a2b04bdeef) &bull; *Dreg* &bull; --regex support for search-pattern command (#860) * 2022-07-02 [366237c](https://github.com/hugsy/gef/commit/366237ce78786be49d686d371537f05a822503fa) &bull; *Dreg* &bull; Slightly improve the code of `search-pattern` (#862) * 2022-07-02 [c2f87d9](https://github.com/hugsy/gef/commit/c2f87d9fc7afce2cf9509467fa552a0243116467) &bull; *hugsy* &bull; [CI] Adds `utils.find_symbol` to cleanly find PIE symbols * 2022-07-02 [7c0a1ee](https://github.com/hugsy/gef/commit/7c0a1ee7267b8762c968aa919420c162cb181507) &bull; *hugsy* &bull; Merge branch 'dev' of github.com:hugsy/gef into dev * 2022-07-02 [08c06b8](https://github.com/hugsy/gef/commit/08c06b8bd8a1b6cb36dc2d729034c71223c44843) &bull; *Dreg* &bull; Add a maximum size for preview to `print-format` config settings (#863) * 2022-07-02 [e422530](https://github.com/hugsy/gef/commit/e422530f22768484b6eefcec1621071c5d934812) &bull; *hugsy* &bull; Move `syscall-args` and `is-syscall` to gef-extras (#861) * 2022-07-02 [f54a622](https://github.com/hugsy/gef/commit/f54a622baf5b3b0010a5a1730f2ae92f7996ed79) &bull; *Dreg* &bull; missed return __init__ SearchPatternCommand (#864) * 2022-07-04 [17fa7f9](https://github.com/hugsy/gef/commit/17fa7f952664d05b0b8a75de854d42000c84e14e) &bull; *hugsy* &bull; Fixed TinyUrl links to point to main, not master (#868) * 2022-07-04 [1499023](https://github.com/hugsy/gef/commit/1499023ddea3cfab773762e88a8f0ea9e0b8c3dc) &bull; *hugsy* &bull; Added callback to `register_external_content_pane` to conditionally display pane (#866) * 2022-07-05 [819917d](https://github.com/hugsy/gef/commit/819917d5cf0591e892bcb890575fb3b300b08a49) &bull; *Dreg* &bull; Set `main` as the default branch for `gef-extras` / `gef` scripts for users (#870) * 2022-07-05 [c530aa5](https://github.com/hugsy/gef/commit/c530aa518ac96dff6fc810a5552ecf54fd1b3581) &bull; *Dreg* &bull; Add a proper argument parsing to `gef-extras.sh` (#872) * 2022-07-09 [e545378](https://github.com/hugsy/gef/commit/e5453781e56c2b4ed4c547b56f83d086f88afc13) &bull; *hugsy* &bull; Use templated YAML files for Github Issues (#875) * 2022-07-09 [ad1bfaf](https://github.com/hugsy/gef/commit/ad1bfaffe5c49001fe82850540d605c2fe0026d3) &bull; *hugsy* &bull; `Glibc*` class now rely on `ctypes.Structure` (#869) * 2022-07-09 [01da142](https://github.com/hugsy/gef/commit/01da1428b6c7844fc714634fdc848a7622cbb802) &bull; *lain3d* &bull; Fix `ptrsize` for ARM to not return 2 ever (#876) * 2022-07-09 [4d4e801](https://github.com/hugsy/gef/commit/4d4e8016e47954e2b1e8c29e36ac8ff1ef6929b7) &bull; *Wadim Mueller* &bull; Riscv/ble (#874) * 2022-07-10 [2e0115d](https://github.com/hugsy/gef/commit/2e0115d2e201dc3482a67301901205f3bf05a493) &bull; *hugsy* &bull; Doc update * 2022-08-09 [2830670](https://github.com/hugsy/gef/commit/2830670a9b0ff3ab73c3da8ec1451a6256a24cef) &bull; *crazy hugsy* &bull; Moved `GEF_DEFAULT_BRANCH` to the top of the script so the value is know when `update_gef` is taken * 2022-09-05 [41d2700](https://github.com/hugsy/gef/commit/41d27008097a4dd640f25b65c046d37b19ac9367) &bull; *crazy hugsy* &bull; Update bug_report.yaml * 2022-09-05 [942f6b9](https://github.com/hugsy/gef/commit/942f6b98bb8a78b9a3362e8d1271534c31af6a7f) &bull; *crazy hugsy* &bull; Update bug_report.yaml * 2022-09-05 [ed070ce](https://github.com/hugsy/gef/commit/ed070ced4f60ba7c7b2e19a4ce67e94da502019c) &bull; *crazy hugsy* &bull; Update bug_report.yaml * 2022-09-05 [bc419e4](https://github.com/hugsy/gef/commit/bc419e46e4b9c622b7d08906121db419b15eebfc) &bull; *crazy hugsy* &bull; Update bug_report.yaml * 2022-09-05 [4afae16](https://github.com/hugsy/gef/commit/4afae16f9e19230eb202508a561656130522075f) &bull; *crazy hugsy* &bull; Update bug_report.yaml * 2022-09-12 [237760d](https://github.com/hugsy/gef/commit/237760d1d1fb0318e226526fe8b9727a054c0057) &bull; *Grazfather* &bull; Remove deprecated use of checksec() (#888) * 2022-09-20 [2a4afa7](https://github.com/hugsy/gef/commit/2a4afa756e431250b1ad9ac21d24399c04d009a6) &bull; *D4nnyLee* &bull; Fix typo in docs/functions/base.md (#893) * 2022-09-20 [8406460](https://github.com/hugsy/gef/commit/8406460fd4a5894cafced2730da07f3130403902) &bull; *crazy hugsy* &bull; Update gef-remote.md * 2022-09-29 [2b52a43](https://github.com/hugsy/gef/commit/2b52a43393e78de9c458c23ecdb10280802d9eb9) &bull; *Roderick* &bull; get pty by tmux command and close pane when gdb exit (#881) * 2022-10-02 [1f49f8a](https://github.com/hugsy/gef/commit/1f49f8a9b8c3a0a612d2deedb3c7d9b2ba2689cd) &bull; *crazy hugsy* &bull; explicitly forcing `args : argparse.Namespace` as a result of `parse_arguments` (#856) * 2022-10-10 [3f3151c](https://github.com/hugsy/gef/commit/3f3151cb6c2c4dae15a14cfa0e2738aa17a6f991) &bull; *crazy hugsy* &bull; Update utils.py * 2022-10-10 [6f7b11a](https://github.com/hugsy/gef/commit/6f7b11a69fb10c7dfd68ce9dbf13d20bcc681a27) &bull; *crazy hugsy* &bull; Update run-tests.yml * 2022-10-11 [f2050af](https://github.com/hugsy/gef/commit/f2050afd732e7461fdb31971b77e000eda943ee4) &bull; *liona24* &bull; Explicitly close the remote session (#896) * 2022-10-12 [33fe436](https://github.com/hugsy/gef/commit/33fe4361f8f8f524002b4079d8317a26b32af3a1) &bull; *crazy hugsy* &bull; print warning messages when using `target remote` with gef (#899) * 2022-10-12 [1fd0f34](https://github.com/hugsy/gef/commit/1fd0f3404fb5e0a96f353e5a6284e9bc807763fb) &bull; *crazy hugsy* &bull; Remove the Makefile in the root folder (#898) * 2022-10-12 [b54508a](https://github.com/hugsy/gef/commit/b54508a4502102acbfd20229aae47fe9b69ea548) &bull; *crazy hugsy* &bull; [docs] fixed bad python version for coverage docs * 2022-10-12 [c3dbbe7](https://github.com/hugsy/gef/commit/c3dbbe722f1f1ce01258149fe68edd0a1e2b3615) &bull; *crazy hugsy* &bull; [docs] added install directive for coverage * 2022-10-12 [dd7f881](https://github.com/hugsy/gef/commit/dd7f88181ae772aa6f71c20735ab120b478a63a5) &bull; *crazy hugsy* &bull; [docs] coverage actions: missing packages * 2022-10-12 [a759262](https://github.com/hugsy/gef/commit/a759262511dc3f41cd5a3a90733b2fc202e24231) &bull; *crazy hugsy* &bull; [docs] adding link to coverage in docs navbar * 2022-10-12 [3af8221](https://github.com/hugsy/gef/commit/3af8221bc5db33f77a31c0e619ffd71e57c36d75) &bull; *crazy hugsy* &bull; [ci] Adding a new test to validate new code is tested * 2022-10-12 [5faeed2](https://github.com/hugsy/gef/commit/5faeed2ffa1e329086d2b36626ce9896024ea8fa) &bull; *crazy hugsy* &bull; [ci] Adding a new test to validate new code is tested * 2022-10-12 [ed9c01e](https://github.com/hugsy/gef/commit/ed9c01e73e57d8cba5203711d456ff8283737d78) &bull; *crazy hugsy* &bull; [ci] better bash * 2022-10-12 [26083dd](https://github.com/hugsy/gef/commit/26083dd76328d71fcba0b49d11fccbe064bff84d) &bull; *crazy hugsy* &bull; [ci] removing deprecated runner ubuntu-18.04 * 2022-10-13 [e9f3351](https://github.com/hugsy/gef/commit/e9f3351348bab0cb1cf450d7add3634480f0e5c1) &bull; *Zhi-Qiang Zhou* &bull; Fix Safe-Linking (GLIBC >= 2.32) and malloc_state struct (#878) * 2022-10-13 [0b17993](https://github.com/hugsy/gef/commit/0b179931d56f4d4bb80942b84319d750ffcb7b8c) &bull; *hugsy* &bull; [ci] increased coverage result precision * 2022-10-21 [a36ffbe](https://github.com/hugsy/gef/commit/a36ffbec735237f80f5ed00505f4e42ac092b571) &bull; *clubby789* &bull; Fix filesystem paths for debugging process in containers (#897) * 2022-10-21 [e48e2f3](https://github.com/hugsy/gef/commit/e48e2f3d6e009500b4944f3625c1c6544618db74) &bull; *hugsy* &bull; [ci] upgrade some actions, removed `set-output` directives * 2022-10-22 [be82d55](https://github.com/hugsy/gef/commit/be82d554f1565d50e97bb82bc7cd2de5e8b0b14a) &bull; *crazy hugsy* &bull; [ci] dummy typo * 2022-10-22 [850a45d](https://github.com/hugsy/gef/commit/850a45d1134ed2a9c0ac240727fb19d244a4b79d) &bull; *crazy hugsy* &bull; [CI] Fixed incorrect coverage check * 2022-10-25 [9edd73e](https://github.com/hugsy/gef/commit/9edd73e1e23cd4afd785f385ef0dbdb270ab6e22) &bull; *crazy hugsy* &bull; Update index.md * 2022-11-07 [50e54e0](https://github.com/hugsy/gef/commit/50e54e0f360c4b9e7baec4e776a82dd4f92c55b7) &bull; *crazy hugsy* &bull; [ci] restored `pytest-forked` in requirements for tests, removed old style envvar * 2022-11-07 [a1b4f00](https://github.com/hugsy/gef/commit/a1b4f009eb0fc8c19f8c6652997fb03d27b97a33) &bull; *crazy hugsy* &bull; [ci] added a margin for the coverage reduction test * 2022-11-07 [65eece7](https://github.com/hugsy/gef/commit/65eece71f4acaecfc9f3b49258b7cb8390d685e7) &bull; *Grazfather* &bull; reset_architecture: Return after setting arch to a specified arch (#914) * 2022-11-07 [b52b758](https://github.com/hugsy/gef/commit/b52b758c5af6fb7759063645bcfb0242e5010ce9) &bull; *Ananthu* &bull; Added support for GDBHISTFILE env variable (#912) * 2022-11-07 [c05d62a](https://github.com/hugsy/gef/commit/c05d62a560284380d93850c5d4f17d03aeb47439) &bull; *Boris-Chengbiao Zhou* &bull; Fix test command in documentation (#908) * 2022-11-07 [ea8273b](https://github.com/hugsy/gef/commit/ea8273b032284b451f25094931a7942a3176ffa8) &bull; *Jonathan Salwan* &bull; Fix shell-storm new API (#902) * 2022-11-07 [ec83f44](https://github.com/hugsy/gef/commit/ec83f445b7e8597616fbe6900d4c63f572cdabff) &bull; *crazy hugsy* &bull; fixed error from #902 * 2022-11-07 [1bf74a8](https://github.com/hugsy/gef/commit/1bf74a82a779ea7dd1d94f4fd2475520f5912536) &bull; *crazy hugsy* &bull; [CI] Refusing anything below 70% of coverage * 2022-11-11 [8713e3f](https://github.com/hugsy/gef/commit/8713e3f94570a21cf6eddde03e4ca2fde2aa3439) &bull; *hugsy* &bull; Merge branch 'dev' of github.com:hugsy/gef into dev * 2022-11-11 [af63b4d](https://github.com/hugsy/gef/commit/af63b4d36500020d03a87cee7f97a3d72c20c961) &bull; *hugsy* &bull; rewrite: generate settings documentation * 2022-11-12 [75c76fe](https://github.com/hugsy/gef/commit/75c76fec34d56bcfc46f05c1c79900f47ec8c5ab) &bull; *clubby789* &bull; Add option to disable buffering (#917) * 2022-11-17 [63ac481](https://github.com/hugsy/gef/commit/63ac481edd37b305afcd6cbd977f2ce70f82805b) &bull; *clubby789* &bull; Determine the actual canary location (#918) * 2022-11-17 [05b17d0](https://github.com/hugsy/gef/commit/05b17d0b6908acb8648ffd45217a0463db4784c7) &bull; *crazy hugsy* &bull; [ci] add delay to `gdbserver_session` * 2022-11-17 [4e89034](https://github.com/hugsy/gef/commit/4e8903400efa6abf3c80cd5a9d43420323936b35) &bull; *hugsy* &bull; [ci] increased delay to appease GHActions gods * 2022-11-22 [d1833d3](https://github.com/hugsy/gef/commit/d1833d3100f487f10dc806b6561ab8588e2b6274) &bull; *clubby789* &bull; Fix searching when connected to `qemu-system` instance (#906) * 2023-01-02 [174830a](https://github.com/hugsy/gef/commit/174830a86db426da9e63adc21d98199a3e370c84) &bull; *crazy hugsy* &bull; Fixed doc wording * 2023-03-12 [9590305](https://github.com/hugsy/gef/commit/95903054044326df72e77a7128bac100505c831f) &bull; *crazy hugsy* &bull; Don't error out if disassembling previous instructions fails (#931) * 2023-03-19 [8e3eba8](https://github.com/hugsy/gef/commit/8e3eba89a263c6311adff6baf29d1030ed9cfa28) &bull; *theguy147* &bull; fix: make sure that heap_addr is aligned (#936) * 2023-03-21 [0cf291d](https://github.com/hugsy/gef/commit/0cf291df014d72a09de63d18751a8a87e3cd6b83) &bull; *theguy147* &bull; fix: add capability to glibc heap commands for bruteforcing the main_arena (#932) * 2023-04-04 [0f477e7](https://github.com/hugsy/gef/commit/0f477e74e200d06fc6ad67ef71073875107e66df) &bull; *Tramadol* &bull; Add backwards memory examination for the dereference command (#942) * 2023-04-15 [9848239](https://github.com/hugsy/gef/commit/984823912452712ad74e004afc7202fbcac182f1) &bull; *crazy hugsy* &bull; Minor typo in docs/generate-settings-docs.sh * 2023-04-16 [b1a1b2a](https://github.com/hugsy/gef/commit/b1a1b2aa8b93945745ff0e0cabf63389ed9fcbe2) &bull; *crazy hugsy* &bull; [CI] Make coverage generate pull request comment instead of blocking validation (#938) * 2023-04-16 [18e2c9c](https://github.com/hugsy/gef/commit/18e2c9cdb76c74760dc286b9fe7137741b551b28) &bull; *hugsy* &bull; [docs] better formatting for settings page * 2023-04-16 [5040cbe](https://github.com/hugsy/gef/commit/5040cbe346bf4d88500401a496a3ed2df3310145) &bull; *hugsy* &bull; [scripts] add an explicit error message on failures in `new-release` ### File diff ```diff .github/ISSUE_TEMPLATE/bug_report.md | 64 - .github/ISSUE_TEMPLATE/bug_report.yaml | 90 + .github/ISSUE_TEMPLATE/feature_request.md | 21 - .github/ISSUE_TEMPLATE/feature_request.yaml | 50 + .github/PULL_REQUEST_TEMPLATE.md | 26 +- .github/workflows/coverage.yml | 50 + .github/workflows/generate-docs.yml | 10 +- .github/workflows/run-tests.yml | 37 +- Makefile | 42 - README.md | 4 +- docs/api/gef.md | 22909 -------------------------- docs/commands/aliases.md | 2 +- docs/commands/aslr.md | 2 +- docs/commands/canary.md | 2 +- docs/commands/checksec.md | 2 +- docs/commands/config.md | 2 +- docs/commands/context.md | 2 +- docs/commands/dereference.md | 15 +- docs/commands/edit-flags.md | 2 +- docs/commands/elf-info.md | 2 +- docs/commands/entry-break.md | 2 +- docs/commands/eval.md | 2 +- docs/commands/format-string-helper.md | 2 +- docs/commands/functions.md | 2 +- docs/commands/gef-remote.md | 2 +- docs/commands/gef.md | 2 +- docs/commands/got.md | 6 +- docs/commands/heap-analysis-helper.md | 2 +- docs/commands/heap.md | 24 +- docs/commands/help.md | 2 +- docs/commands/hexdump.md | 2 +- docs/commands/highlight.md | 2 +- docs/commands/hijack-fd.md | 2 +- docs/commands/is-syscall.md | 18 - docs/commands/ksymaddr.md | 2 +- docs/commands/memory.md | 2 +- docs/commands/name-break.md | 2 +- docs/commands/nop.md | 2 +- docs/commands/patch.md | 2 +- docs/commands/pattern.md | 6 +- docs/commands/pcustom.md | 2 +- docs/commands/pie.md | 2 +- docs/commands/print-format.md | 2 +- docs/commands/process-search.md | 2 +- docs/commands/process-status.md | 2 +- docs/commands/registers.md | 2 +- docs/commands/reset-cache.md | 2 +- docs/commands/scan.md | 2 +- docs/commands/search-pattern.md | 11 +- docs/commands/shellcode.md | 2 +- docs/commands/stub.md | 2 +- docs/commands/syscall-args.md | 49 - docs/commands/theme.md | 2 +- docs/commands/tmux-setup.md | 2 +- docs/commands/trace-run.md | 2 +- docs/commands/version.md | 2 +- docs/commands/vmmap.md | 2 +- docs/commands/xfiles.md | 2 +- docs/commands/xinfo.md | 2 +- docs/commands/xor-memory.md | 2 +- docs/deprecated.md | 2 + docs/faq.md | 8 + docs/functions/base.md | 2 +- docs/index.md | 6 +- docs/install.md | 6 +- docs/testing.md | 29 +- gef.py | 1573 +- mkdocs.yml | 3 +- scripts/gef-extras.sh | 35 +- scripts/generate-coverage-docs.sh | 24 + scripts/generate-settings-docs.sh | 40 + scripts/new-release.py | 21 +- tests/api/gef_disasemble.py | 30 + tests/api/gef_session.py | 40 +- tests/api/misc.py | 12 + tests/binaries/mmap-known-address.c | 50 + tests/binaries/set-permission.c | 34 - tests/binaries/syscall-args.c | 50 - tests/commands/canary.py | 15 +- tests/commands/dereference.py | 46 + tests/commands/gef.py | 5 +- tests/commands/heap.py | 29 +- tests/commands/nop.py | 13 +- tests/commands/pattern.py | 37 +- tests/commands/pie.py | 16 +- tests/commands/search_pattern.py | 15 +- tests/commands/syscall_args.py | 89 - pytest.ini => tests/pytest.ini | 5 +- tests/regressions/gdbserver_connection.py | 15 + tests/requirements.txt | 2 + tests/utils.py | 44 +- 91 files changed, 1663 insertions(+), 24149 deletions(-) ``` </details>