`sig
type mechanism_return =
Mech_continue of OBus_auth.data
| Mech_ok of OBus_auth.data
| Mech_error of string
class virtual mechanism_handler :
object
method abort : unit
method data : OBus_auth.data -> OBus_auth.Client.mechanism_return Lwt.t
method virtual init : OBus_auth.Client.mechanism_return Lwt.t
end
type mechanism = {
mech_name : string;
mech_exec : unit -> OBus_auth.Client.mechanism_handler;
}
val mech_name : OBus_auth.Client.mechanism -> string
val mech_exec :
OBus_auth.Client.mechanism -> unit -> OBus_auth.Client.mechanism_handler
val mech_external : OBus_auth.Client.mechanism
val mech_anonymous : OBus_auth.Client.mechanism
val mech_dbus_cookie_sha1 : OBus_auth.Client.mechanism
val default_mechanisms : OBus_auth.Client.mechanism list
val authenticate :
?capabilities:OBus_auth.capability list ->
?mechanisms:OBus_auth.Client.mechanism list ->
stream:OBus_auth.stream ->
unit -> (OBus_address.guid * OBus_auth.capability list) Lwt.t
end`