diff --git a/CHANGELOG.md b/CHANGELOG.md index ba3b1dd34..8b836b2ac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -104,6 +104,7 @@ The table below shows which release corresponds to each branch, and what date th - [#2615][2615] tube/process: Fix redirecting stderr to stdout on Windows - [#2639][2639] ROP: Remove stdout and argv workaround in ROPgadget invocation - [#2630][2630] support `preexec_fn` in `debug()` +- [#2646][2646] fix(libcdb-cli): return early if no matched libc found [2638]: https://github.com/Gallopsled/pwntools/pull/2638 [2598]: https://github.com/Gallopsled/pwntools/pull/2598 @@ -134,6 +135,7 @@ The table below shows which release corresponds to each branch, and what date th [2615]: https://github.com/Gallopsled/pwntools/pull/2615 [2639]: https://github.com/Gallopsled/pwntools/pull/2639 [2630]: https://github.com/Gallopsled/pwntools/pull/2630 +[2646]: https://github.com/Gallopsled/pwntools/pull/2646 ## 4.15.0 (`stable`) diff --git a/pwnlib/commandline/libcdb.py b/pwnlib/commandline/libcdb.py index 949a46fae..5ff1d0d45 100644 --- a/pwnlib/commandline/libcdb.py +++ b/pwnlib/commandline/libcdb.py @@ -240,6 +240,9 @@ def main(args): symbols = {pairs[i]:pairs[i+1] for i in range(0, len(pairs), 2)} matched_libcs = libcdb.search_by_symbol_offsets(symbols, offline_only=args.offline_only, return_raw=True) + if not matched_libcs: + return + for libc in matched_libcs: print_libc_info(libc) if args.download_libc: