This release adds 2 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Summary
AI summaryCritical bugfixes in hash, TCP, and core subsystems; SPDX compliance added.
Full changelog
LiME v1.12.0
16 commits since v1.11.0 (March 23–24, 2026)
Bug Fixes (kernel module)
Hash / digest subsystem (hash.c)
- Fix multi-page vmalloc digest corruption — only the last page was being hashed
- Fix
crypto_digest_updatepassing byte length instead ofnsgcount - Fix memory leak:
digest_valuewas never freed inldigest_clean - Fix uninitialized
digestsizeon kernels 2.6.11–2.6.18 - Fix NULL dereference in
ldigest_cleanwhencrypto_allocfails - Add NULL checks on
outputanddigest_valueallocations
TCP subsystem (tcp.c)
- Fix
sizeof(struct iovec)used on astruct kvecvariable - Fix socket leak: pre-allocated socket was overwritten by
kernel_accept
Core module (main.c)
- Fix
ldigest_cleanextern return type mismatch (intvsvoid) - Fix wrong format specifier
%zufor signedssize_t - Fix missing
__get_free_pageandkmallocNULL checks - Fix resource leaks in
init()error paths - Fix
no_overlapset even when digest init fails
Code Quality
- Centralize all
externdeclarations inlime.h - Remove redundant includes and duplicate externs across files
- Extract
create_tcp_sock()helper to deduplicate socket creation intcp.c - Replace
strcpy/strcatchain withsnprintfinhash.c - Refactor
init()error paths to goto-based cleanup pattern - Fix
()vs(void)inconsistencies, declaration-after-statement issues, mixed indentation
REUSE / SPDX Compliance
- Add SPDX license headers to all source and script files
- Add
REUSE.tomlfor machine-readable license metadata - Replace monolithic
LICENSEfile withLICENSES/GPL-2.0-only.txt
Documentation
- Rename
doc/→docs/ - Rewrite and clarify
README.md(updated usage examples, parameter descriptions, sidecar digest naming) - Add
docs/test-architecture.mddescribing the CI and test framework design - Fix missing "padded" label in
docs/README.mdparameter description
CI / Testing
- Add GitHub Actions multi-kernel compile-test workflow (
build-test.yml) covering multiple kernel versions - Add sparse static analysis and QEMU smoke tests
- Add pre-commit hooks (trailing whitespace, markdown lint, flawfinder, codespell, REUSE)
- Add
test/directory with Dockerfile, kernel prep scripts, initramfs builder, and smoke-test harness - Update
actions/cacheto v5; fix objtool preservation during kernel tree stripping - Remove kernel 4.15 from CI matrix after extensive attempts to fix its toolchain incompatibilities
Full Changelog: https://github.com/jtsylve/LiME/compare/v1.11.0...v1.12.0
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About LiME
Loadable Kernel Module (LKM), which allows the acquisition of volatile memory from Linux and Linux-based devices, formerly called DMD.
Related context
Related tools
Beta — feedback welcome: [email protected]