4 releases

0.0.4 May 5, 2025
0.0.3 May 3, 2025
0.0.2 Apr 16, 2025
0.0.1 Apr 15, 2025

#347 in Authentication

Download history 56/week @ 2025-04-09 219/week @ 2025-04-16 222/week @ 2025-04-30 49/week @ 2025-05-07

546 downloads per month

MIT license

30KB
491 lines

🍳 nonstick

Nonstick lets you use PAM (Pluggable Authentication Modules) from Rust without having to deal with icky unsafe code.

Status

It is currently very incomplete. It only provides functionality for developing your own PAM authentication module (i.e., a backend that PAM calls to authenticate a user or do something similar). If you’re looking for a library to implement a PAM client (i.e., something that authenticates using PAM), consider the pam crate. At the moment, Linux-PAM is the only supported PAM implementation.

An earlier version of this suggested that I would try not to break APIs. This was optimistic on my part; it is likely APIs will break before v0.1.0, after which I will try to break things less.

Goals include:

  • Bindings for PAM clients.
  • Support for non–Linux-PAM implementations.

Credits

This is a direct fork of Anthony Nowell’s pam-rs/pam-bindings crate. pam-rs was in turn inspired by:

Dependencies

~0.5–1MB
~23K SLoC