Crates.io | pam-client2 |
lib.rs | pam-client2 |
version | 0.5.2 |
source | src |
created_at | 2024-10-20 21:46:47.160295 |
updated_at | 2024-10-20 22:06:39.009471 |
description | Application API wrapper to Pluggable Authentication Modules (PAM) (forked and fixed version of pam-client) |
homepage | |
repository | https://gitlab.com/LeChatP/rust-pam-client/ |
max_upload_size | |
id | 1416671 |
size | 156,555 |
[dependencies]
pam-client = "0.5"
The pam-client
crate a safe API to the application-faced parts of PAM.
This includes in detail:
std::process::Command
and nix::unistd::execve
std::io::Error
cli
: by default a conversation handler for command line applications is
included. Disable this feature if you don't need it to remove a dependency
on rpassword
.serde
: enable this feature to get serde
(de-)serialization support for
the error, flag and token types and the default conversation handlers.
Additionally EnvList
becomes serializable into [(OsStr, OsStr)]
.The minimum supported Rust toolchain version is Rust 1.46.0.
Currently tested up to version 1.64.0-nightly.
The pam-client
crate is currently only tested on Linux, but support is
implemented for Solaris and OpenPAM-based platforms like NetBSD.
This crate follows semantic versioning with the additional
promise that below 1.0.0
backwards-incompatible changes will not be
introduced with only a patch-level version number change.
This crate provides safe wrappers for the same library as pam
.
This crate aims to provide safe wrappers for different use cases at
the expense of a slightly more complex interface, while pam
provides
an easier interface, but restricts the order of operations to the
most common use cases.
Licensed under Mozilla Public License, Version 2.0 (LICENSE or https://www.mozilla.org/en-US/MPL/2.0/).
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be licensed as above including compatibility with secondary licenses, as defined by the MPL.