Skip to main content

PyBFD3

This clone of PyBFD mainly adds support for Python 3.x while keeping compatibility with Python 2.x. To prevent conflicts and possible confusion, the name of the module/package has changed to pybfd3

Because it seems that pybfd is no longer maintained, I decided to create my own independent repository.

Changelog

Version 0.1.5

  • Remove legacy distutils usage (thanks to @Bidski)

Version 0.1.4

  • Update PyBFD3 to be compatible with binutils > 2.29 (thanks to @Bidski)

Requirements

  • The binutils-dev package must be installed first.

Install

Method 1: Via Python Package Index (PyPI).

$ pip install pybfd3

Method 2: Local installation.

$ git clone https://github.com/b-2-r/pybfd3.git
$ pip install ./pybfd3

Note:

Depending on your pip version, you may need to add pip's --egg install option to successfully complete the installation.

Sample Session

$ cd pybfd3/examples
$ chmod +x sample-session.py
$ ./sample-session.py
Usage : ./sample-session.py <binary>
$ ./sample-session.py `which sudo`
[+] Creating BFD instance...
[+] File format     : Linker/assembler/compiler output.
[+] Architecture    : Intel 386 (9)
[+] BFD target name : elf64-x86-64
[+] Entry point     : 0x403970
[+] Sections        : 27
[+] Selected section information:
	Name   : .text
	Index  : 13
	Length : 59 Kbytes
0x402B60 SZ=2 BD=0 IT=1	push   r15
0x402B62 SZ=2 BD=0 IT=1	push   r14
0x402B64 SZ=2 BD=0 IT=1	push   r13
0x402B66 SZ=2 BD=0 IT=1	push   r12
0x402B68 SZ=1 BD=0 IT=1	push   rbp
0x402B69 SZ=1 BD=0 IT=1	push   rbx
0x402B6A SZ=5 BD=0 IT=1	mov    ebx,0x63ec80
0x402B6F SZ=3 BD=0 IT=1	mov    rbp,rsi
0x402B72 SZ=7 BD=0 IT=1	sub    rsp,0xb8
[...]

TODOs

  • improve get_symbols to not throwing an error if no symbols are present
  • macOS testing

Metadata

Release files for pybfd3 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pybfd3 0.1.5
File Size Uploaded
pybfd3-0.1.5.tar.gz 48.2 kB Details

Release files / pybfd3-0.1.5.tar.gz

Download URL pybfd3-0.1.5.tar.gz
Size 48.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0a447537c0615a63e12ec65793edaef5d55b567b2c9fcb4eba8a03b094439a2a
BLAKE2b-256 checksum
How to use checksums
ba95a89b76ef4460d5fd00c30c3a408c0b9225e0c18b49677d6f2517e3e4f42f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.6

Release history Release notifications | RSS feed

This release

0.1.5 This release

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page