comparison src/lib.rs @ 73:ac6881304c78

Do conversations, along with way too much stuff. This implements conversations, along with all the memory management brouhaha that goes along with it. The conversation now lives directly on the handle rather than being a thing you have to get from it and then call manually. It Turns Out this makes things a lot easier! I guess we reorganized things again. For the last time. For real. I promise. This all passes ASAN, so it seems Pretty Good!
author Paul Fisher <paul@pfish.zone>
date Thu, 05 Jun 2025 03:41:38 -0400
parents 47eb242a4f88
children c7c596e6388f
comparison
equal deleted inserted replaced
72:47eb242a4f88 73:ac6881304c78
25 // Temporary until everything is fully wired up. 25 // Temporary until everything is fully wired up.
26 #![allow(dead_code)] 26 #![allow(dead_code)]
27 27
28 pub mod constants; 28 pub mod constants;
29 mod conv; 29 mod conv;
30 mod items;
31 pub mod module; 30 pub mod module;
32 31
33 mod handle; 32 pub mod handle;
34 mod pam_ffi; 33 mod pam_ffi;
35 34
36 #[doc(inline)] 35 #[doc(inline)]
37 pub use crate::{ 36 pub use crate::{
38 constants::{ErrorCode, Flags, Result}, 37 constants::{ErrorCode, Flags, Result},
39 conv::{Conversation, DemuxedConversation, Response}, 38 conv::{Conversation, ConversationMux, DemuxedConversation, Response},
40 handle::{PamApplicationHandle, PamHandle, PamModuleHandle}, 39 handle::{PamHandleApplication, PamHandleModule, PamShared},
41 module::PamModule, 40 module::PamModule,
42 pam_ffi::{LibPamHandle, Message}, 41 pam_ffi::{LibPamHandle, OwnedLibPamHandle},
43 }; 42 };