Module Pam
Pam
contains functions that interface to the PAM library.
module Pam_conv : sig ... end
module Pam_auth : sig ... end
module Pam_acct : sig ... end
module Pam_cred : sig ... end
module Pam_authtok : sig ... end
module Pam_item_type : sig ... end
module Pam_session : sig ... end
val pam_start : service:string -> user:string -> conv:((Pam_conv.Message.t, string) Core.Result.t list -> Pam_conv.Result.t) -> t Core.Or_error.t
pam_start
initiates a pam transaction. This function works like its C-version except that it callspam_end
on a failure. This should make it easier to chain pam operations in the caller code.
val pam_end : t -> unit Core.Or_error.t
val pam_authenticate : t -> flags:Pam_auth.Flag.t list -> unit Core.Or_error.t
val pam_acct_mgmt : t -> flags:Pam_acct.Flag.t list -> unit Core.Or_error.t
val pam_setcred : ?silent:bool -> t -> flag:Pam_cred.Flag.t -> unit Core.Or_error.t
val pam_chauthtok : t -> flags:Pam_authtok.Flag.t list -> unit Core.Or_error.t
val pam_open_session : t -> flags:Pam_session.Flag.t list -> unit Core.Or_error.t
val pam_close_session : t -> flags:Pam_session.Flag.t list -> unit Core.Or_error.t
val pam_getenv : t -> key:string -> string Core.Or_error.t
val pam_putenv : t -> key:string -> data:string -> unit Core.Or_error.t
val pam_unsetenv : t -> key:string -> unit Core.Or_error.t
val pam_getenvlist : t -> string list Core.Or_error.t
val pam_get_item : t -> item_type:'a Pam_item_type.t -> 'a option Core.Or_error.t
val pam_set_item : t -> item_type:'a Pam_item_type.t -> item:'a -> unit Core.Or_error.t