Python bindings for the Icicle emulator.
Project description
icicle-python
This project is an easy-to-use Python wrapper around icicle-emu. You can read more about Icicle in the paper: Icicle: A Re-designed Emulator for Grey-Box Firmware Fuzzing.
Installation
You can install the latest release from PyPI:
pip install icicle-emu
Development
Note: You need to install Rust 1.90 or higher to build from source.
Install uv
# On Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# On macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
Build the project
# Clone the repository with submodules
git clone --recursive https://github.com/icicle-emu/icicle-python
cd icicle-python
# Install dependencies and build
uv sync
uv run maturin develop
Running tests
The tests folder contains tests that double as standalone examples. Prefix a function with test_ to automatically run it:
uv run pytest -v
Alternatively you can uv run tests/example.py to run/debug the standalone example.
Building a wheel
uv build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file icicle_emu-0.0.11.tar.gz.
File metadata
- Download URL: icicle_emu-0.0.11.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4da97aee28959e4f3f64617eb4c8675758efc7757cd87a50ee1d18c5480b67ea
|
|
| MD5 |
225c5249179bd46dee187681de4d68ba
|
|
| BLAKE2b-256 |
4fb0a2efc55e93b05e9f734a93ce0287992695bdea1510c4ee0297bf48f1bad8
|
File details
Details for the file icicle_emu-0.0.11-cp38-abi3-win_amd64.whl.
File metadata
- Download URL: icicle_emu-0.0.11-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94e0da6502ae19ba89497ced98fe0f9e881b13deaf070caaca9a4a552e4e9aa6
|
|
| MD5 |
058c5fd19dd6ba15ad5706ec3309e5e9
|
|
| BLAKE2b-256 |
5c3d98030b959250f5223d697964d987dfa39c65fe4cd4671bb4c00d72738af6
|
File details
Details for the file icicle_emu-0.0.11-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: icicle_emu-0.0.11-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.2 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4baf4d20a158e5b7ec3cbebbdbc0745bd4b08a9d17674d14f84473e8280c948
|
|
| MD5 |
37e5e0976eb0c578e26e425bda43f5cf
|
|
| BLAKE2b-256 |
68c4da6271734229a11ebb90c69a5a63a3f6bf941055ca0e7e7535640536fde5
|
File details
Details for the file icicle_emu-0.0.11-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: icicle_emu-0.0.11-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45a269da9f644eda711430c192250db1ae0bd34f7b1d86b4363714306ce509f7
|
|
| MD5 |
6ef43292f128c8e37a27e1fdf1978ae7
|
|
| BLAKE2b-256 |
a3d729b808876441af7c9f4a39861d9a7a364cc1f4dbba71de9243267f6f20c6
|
File details
Details for the file icicle_emu-0.0.11-cp38-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: icicle_emu-0.0.11-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d41d4d7d69769e908cf2770971ad5651b4f807bb73a694e37d9634e2baaafbd
|
|
| MD5 |
0e2dfa5d3b443909c3a5f1e183cbad95
|
|
| BLAKE2b-256 |
741f295c69184c4f554244bdf7db55f19434b4340d95aeb5fb3a72b0c56e92d3
|
File details
Details for the file icicle_emu-0.0.11-cp38-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: icicle_emu-0.0.11-cp38-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.8+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8da50fc6f68c3c85644eabe2162f4ef7eab60a13cba731e2f60632fdcb0e9a9f
|
|
| MD5 |
89e48fa85bd246e54553c22bc53fb310
|
|
| BLAKE2b-256 |
518687fa33577643b47231f44d8cbff2218f3b50bb606b831516473d14c04227
|