PackageTrack
Sign in Get early access

landlock

Landlock LSM helpers

0.4.7 14M downloads/mo #2565 most downloaded on crates.io landlock-lsm/rust-landlock

What this package is like to depend on

Last release 27 days ago

27 Jul 2026

Release timing varies

gaps range from 2 months to 1.8 years

Nearly every release is documented

notes for 11 of 12 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

12 releases · first in 2021

5 releases in the last 12 months

see the full history below

Release timeline

12 releases · Apr 2021 to Jul 2026
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 12
  1. 0.4.7 27 Jul 2026
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    Full Changelog: v0.4.6...v0.4.7

    Open source →
    Release notes

    New API

    Open source →
  2. 0.4.6 25 Jul 2026
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    Full Changelog: v0.4.5...v0.4.6

    Open source →
    Release notes

    New API

    Open source →
  3. 0.4.5 22 May 2026
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    • Bump dependencies and add SoftRequirement test for scope() by @l0kod in #118
    • Update to Linux 6.15 and add errata interface by @l0kod in #119
    • Rename set_no_new_privs() to no_new_privs() by @l0kod in #122
    • Fix bare matches!() assertions in ruleset tests by @l0kod in #123
    • Improve errata test debuggability by @l0kod in #124
    • Bump GitHub actions by @l0kod in #125
    • Update dependencies by @l0kod in #126
    • Add ABI v7: log flags by @l0kod in #120
    • Bump to v0.4.5 by @l0kod in #127

    Full Changelog: v0.4.4...v0.4.5

    Open source →
    Release notes

    New API

    Deprecated API

    Deprecate the set_no_new_privs() method and replace it with no_new_privs() (PR #122).

    Dependencies

    • Bumped MSRV to Rust 1.71.

    Testing

    • Extended CI to test against Linux 6.15.
    • Added errata tests verifying the From<ABI> mapping matches CI kernel errata.
    • Added SoftRequirement test coverage for scope() and restrict_self flags.
    • Added try_compat_binary() unit tests for the binary compat dispatch.

    Example

    • Synced the sandboxer example with the kernel's sandboxer.c: added LL_FORCE_LOG environment variable for audit logging (PR #120).
    Open source →
  4. 0.4.4 20 Nov 2025
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    Full Changelog: v0.4.3...v0.4.4

    Open source →
    Release notes

    New API

    • Added support for all architectures (PR #111).
    • Added LandlockStatus type to query the running kernel and display information about available Landlock features (PR #103 and PR #113).

    Dependencies

    • Bumped MSRV to Rust 1.68 (PR #112).

    Testing

    • Extended CI to build and test on i686 architecture (PR #111).

    Example

    • Enhanced sandboxer example to print helpful hints about Landlock status (PR #103).
    Open source →
  5. 0.4.3 14 Sep 2025
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    • tests: add case for AccessFs::from_file by @n0toose in #92
    • docs: add more background to PathBeneath example by @n0toose in #94
    • docs: extend CONTRIBUTING.md file by @n0toose in #95
    • Implement common traits for public types by @l0kod in #108
    • Bump to v0.4.3 by @l0kod in #109

    New Contributors

    Full Changelog: v0.4.2...v0.4.3

    Open source →
    Release notes

    New API

    • Implemented common traits (e.g., Debug) for public types (PR #108).

    Documentation

    Testing

    • Added test case for AccessFs::from_file() method (PR #92).
    Open source →
  6. 0.4.2 29 Apr 2025
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    New Contributors

    Full Changelog: v0.4.1...v0.4.2

    Open source →
    Release notes

    New API

    Documentation

    • Added clarifying notes about AccessFs::WriteFile behavior and path_beneath_rules usage (PR #80).
    • Introduced CONTRIBUTING.md with testing workflow explanations (PR #76).

    Testing

    • Enhanced test coverage for new API and added testing against Linux 6.12 (PR #96).
    • Updated CI configuration to use the latest Ubuntu versions (PR #87 and PR #97).
    • Modified default LANDLOCK_CRATE_TEST_ABI to match the current kernel for more convenient local testing (PR #76).

    Example

    • Synchronized the sandboxer example with the C version (PR #101): improved error handling for inaccessible file paths and enhanced help documentation.
    Open source →
  7. 0.4.1 13 Sep 2024
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    New Contributors

    Full Changelog: v0.4.0...v0.4.1

    Open source →
    Release notes

    New API

    Add support for Landlock ABI 5: control IOCTL commands on character and block devices with the new AccessFs::IoctlDev right (PR #74).

    Testing

    Improved the CI to better test against different kernel versions (PR #72).

    Open source →
  8. 0.4.0 19 Jun 2024
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    • Improve PrivateRule trait by @l0kod in #65
    • Move from_read() and from_write() into AccessFs by @l0kod in #66
    • Update error priority and no_new_privs behavior by @l0kod in #67
    • Fix and test unsupported rule by @l0kod in #68
    • Add initial networking support by @l0kod in #55
    • Bump to 0.4.0 by @l0kod in #69

    Full Changelog: v0.3.1...v0.4.0

    Open source →
    Release notes

    New API

    Add support for Landlock ABI 4: control TCP binding and connection according to specified network ports. This is now possible with the AccessNet rights and the NetPort rule (PR #55).

    Breaking change

    The from_read() and from_write() methods moved from the Access trait to the AccessFs struct (commit 68f066eba571).

    Compatibility management

    Improve compatibility consistency and prioritize runtime errors against compatibility errors (PR #67).

    Fixed a corner case where a ruleset was created on a kernel not supporting Landlock, while requesting to add a rule with an access right handled by the ruleset (BestEffort). When trying to enforce this ruleset, this led to a runtime error (i.e. wrong file descriptor) instead of a compatibility error.

    To simplify compatibility management, always call prctl(PR_SET_NO_NEW_PRIVS, 1) by default (see set_no_new_privs()). This was required to get a consistent compatibility management and it should not be an issue given that this feature is supported by all LTS kernels (commit d99f75155bec).

    Open source →
  9. 0.3.1 26 Mar 2024
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    Full Changelog: v0.3.0...v0.3.1

    New Contributors

    Open source →
    Release notes Open source →
  10. 0.3.0 10 Oct 2023
    Release notes

    See crate's metadata and related documentation.

    What's Changed

    See summary in CHANGELOG.md

    • Run tests on all commits by @l0kod in #34
    • Test the merge commit when required by @l0kod in #35
    • Remove Ubuntu 18.04 from the CI by @l0kod in #39
    • Improve CI to test all meaningful kernels by @l0kod in #41
    • API compatibility improvements by @l0kod in #12
    • Add support for ABI 3 by @l0kod in #40
    • Make sure the same Cargo version is used for all tests by @l0kod in #45
    • Execute each restrict_self() test in a dedicated thread by @l0kod in #46
    • Run tests built with Rust MSRV by @l0kod in #47
    • Use Ruleset::default() instead of Ruleset::new() by @l0kod in #44
    • Test with Landlock ABI 3 by @l0kod in #49
    • ci: Update Ubunty 22.04.3 kernel by @l0kod in #51
    • Make AsMut unambiguous by @l0kod in #52
    • Improve the ABI documentation by @l0kod in #50
    • Bump to v0.3.0 by @l0kod in #54

    Full Changelog: v0.2.0...v0.3.0

    Reviews and tests

    Open source →
    Release notes

    New API

    Add support for Landlock ABI 3: control truncate operations with the new AccessFs::Truncate right (PR #40).

    Revamp the compatibility handling and add a new set_compatibility() method for Ruleset, RulesetCreated, and PathBeneath. We can now fine-tune the compatibility behavior according to the running kernel and then the supported features thanks to three compatible levels: best effort, soft requirement and hard requirement (PR #12).

    Add a new AccessFs::from_file() helper (commit 0b3238c6dd70).

    Deprecated API

    Deprecate the set_best_effort() method and replace it with set_compatibility() (PR #12).

    Deprecate Ruleset::new() and replace it with Ruleset::default() (PR #44).

    Breaking changes

    We now check that a ruleset really handles at least one access right, which can now cause Ruleset::create() to return an error if the ruleset compatibility level is HardRequirement or set_best_effort(false) (commit 95addc13b4a8).

    We now check that access rights passed to add_rule() make sense according to the file type. To handle most use cases, path_beneath_rules() now automatically check and downgrade access rights for files (i.e. remove superfluous directory-only access rights, commit 8e47940b3722).

    Testing

    Test coverage in the CI is greatly improved by running all tests on all relevant kernel versions: Linux 5.10, 5.15, 6.1, and 6.4 (PR #41).

    Run each test in a dedicated thread to avoid inconsistent behavior (PR #46).

    Open source →
  11. 0.2.0 30 Jan 2023
    Release notes

    This is the first major release of this crate. It brings a high-level interface to the Landlock kernel interface.

    Open source →
  12. 0.1.0 14 Apr 2021

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive