Files
Sylvestre Ledru 8484d4be89 Rename shadow-rs project to shadow (repo was renamed)
The uutils/shadow-rs repo was renamed to uutils/shadow. Rename the page
(content/shadow.md, title=shadow), update the homepage row and nav, and
fix the repo/CONTRIBUTING/LICENSE links. Add a /shadow-rs alias so the
old URL still redirects.
2026-06-27 13:57:40 +02:00

1.3 KiB

+++

title = "shadow" template = "project.html" aliases = ["/shadow-rs"]

[extra] wip = true

+++

Memory-safe Rust reimplementation of Linux shadow-utils: useradd, userdel, usermod, passwd, pwck, chpasswd, chage, groupadd, groupdel, groupmod, grpck, chfn, chsh, and newgrp.

This project aims to be a drop-in replacement for the original commands, with the same flags, exit codes, and output format as GNU shadow-utils.

Goals

This project aims to be a drop-in replacement for the GNU shadow-utils, with a focus on:

  • Drop-in compatibility - same flags, same exit codes, same output format as GNU shadow-utils.
  • Memory safety - eliminating buffer overflows and use-after-free vulnerabilities through Rust's type system.
  • Security hardening - Landlock sandboxing and privilege dropping.
  • Comprehensive testing - unit tests, property-based tests, integration tests, and fuzz targets.

Contributing

To contribute to uutils shadow, please see CONTRIBUTING.

License

uutils shadow is licensed under the MIT License - see the LICENSE file for details.

GNU shadow-utils is licensed under the BSD 3-Clause License.