Mercurial > crates > nonstick
diff src/lib.rs @ 69:8f3ae0c7ab92
Rework conversation data types and make safe wrappers.
This removes the old `Conversation` type and reworks the FFI types
used for PAM conversations.
This creates safe `TestResponse` and `BinaryResponse` structures in `conv`,
providing a safe way to pass response messages to PAM Conversations.
The internals of these types are allocated on the C heap, as required by PAM.
We also remove the Conversation struct, which was specific to the real PAM
implementation so that we can introduce a better abstraction.
Also splits a new `PamApplicationHandle` trait from `PamHandle`,
for the parts of a PAM handle that are specific to the application side
of a PAM transaction.
author | Paul Fisher <paul@pfish.zone> |
---|---|
date | Sun, 01 Jun 2025 01:15:04 -0400 |
parents | a674799a5cd3 |
children | 9f8381a1c09c |
line wrap: on
line diff
--- a/src/lib.rs Tue May 27 16:40:49 2025 -0400 +++ b/src/lib.rs Sun Jun 01 01:15:04 2025 -0400 @@ -35,6 +35,6 @@ #[doc(inline)] pub use crate::{ constants::{ErrorCode, Flags, Result}, - handle::{LibPamHandle, PamHandle, PamModuleHandle}, + handle::{LibPamHandle, PamApplicationHandle, PamHandle, PamModuleHandle}, module::PamModule, };