Mercurial > crates > nonstick
comparison src/lib.rs @ 173:46e8ce5cd5d1
Miscellaneous doc and code cleanups.
| author | Paul Fisher <paul@pfish.zone> |
|---|---|
| date | Tue, 29 Jul 2025 16:52:32 -0400 |
| parents | e27c5c667a5a |
| children | 9e4ce1631bd3 |
comparison
equal
deleted
inserted
replaced
| 172:6727cbe56f4a | 173:46e8ce5cd5d1 |
|---|---|
| 8 //! 1. Create a `dylib` crate. | 8 //! 1. Create a `dylib` crate. |
| 9 //! 2. Implement a subset of the functions in the [`PamModule`] trait | 9 //! 2. Implement a subset of the functions in the [`PamModule`] trait |
| 10 //! corresponding to what you want your module to do. | 10 //! corresponding to what you want your module to do. |
| 11 //! In the simplest case (for a new password-based authenticator), | 11 //! In the simplest case (for a new password-based authenticator), |
| 12 //! this will be the [`PamModule::authenticate`] function. | 12 //! this will be the [`PamModule::authenticate`] function. |
| 13 //! 3. Export your PAM module using the [`pam_hooks!`] macro. | 13 //! 3. Export your PAM module using the [`pam_export!`] macro. |
| 14 //! 4. Build and install the dynamic library. | 14 //! 4. Build and install the dynamic library. |
| 15 //! This usually entails placing it at | 15 //! This usually entails placing it at |
| 16 //! <code>/usr/lib/security/pam_<var>your_module</var>.so</code>, | 16 //! <code>/usr/lib/security/pam_<var>your_module</var>.so</code>, |
| 17 //! or maybe | 17 //! or maybe |
| 18 //! <code>/usr/lib/<var>your-architecture</var>/security/pam_<var>your_module</var>.so</code>. | 18 //! <code>/usr/lib/<var>your-architecture</var>/security/pam_<var>your_module</var>.so</code>. |
| 59 #[cfg(feature = "link")] | 59 #[cfg(feature = "link")] |
| 60 pub mod libpam; | 60 pub mod libpam; |
| 61 pub mod logging; | 61 pub mod logging; |
| 62 | 62 |
| 63 #[cfg(feature = "link")] | 63 #[cfg(feature = "link")] |
| 64 #[doc(hidden)] | |
| 65 pub use crate::libpam::ModuleExporter; | |
| 66 #[cfg(feature = "link")] | |
| 67 #[doc(inline)] | 64 #[doc(inline)] |
| 68 pub use crate::libpam::{LibPamHandle, LibPamTransaction, TransactionBuilder}; | 65 pub use crate::libpam::{LibPamHandle, LibPamTransaction, TransactionBuilder}; |
| 69 #[doc(inline)] | 66 #[doc(inline)] |
| 70 pub use crate::{ | 67 pub use crate::{ |
| 71 constants::{ | 68 constants::{ |
