pam_rs/
lib.rs

1#![allow(non_camel_case_types)]
2// We want to pass PamHandles by ref as they are opaque
3#![allow(clippy::trivially_copy_pass_by_ref)]
4
5//! Rustified API to the Linux-PAM authentication libary
6//!
7//! This library supports both PAM clients and modules through the respective
8//! cargo features. If you do not want to use any high-level API, wrappers
9//! for the raw PAM related functions from `pam_sys` are also exported at crate
10//! root.
11
12// Reexport pam_sys so downstream users don't need to depend on it
13pub use pam_sys as ffi;
14
15mod conv;
16mod enums;
17mod env;
18mod functions;
19mod types;
20
21pub use crate::{enums::*, functions::*, types::*};
22
23#[cfg(feature = "client")]
24pub mod client;
25#[cfg(feature = "module")]
26pub mod module;
27
28pub use crate::{
29    conv::{Conversation, PasswordConv},
30    enums::*,
31};
32
33#[cfg(feature = "client")]
34pub use client::Client;
35
36#[cfg(feature = "module")]
37pub use module::PamModule;