Module Async_smtp__.Client_raw
module Peer_info : sig ... endval create : ?flows:Async_smtp__.Mail_log.Flows.t -> emulate_tls_for_test:bool -> remote_address:Core.Host_and_port.t -> ?local_ip_address:Async.Socket.Address.Inet.t -> ?remote_ip_address:Async.Socket.Address.Inet.t -> Async.Reader.t -> Async.Writer.t -> Async_smtp__.Client_config.t -> tval create_bsmtp : ?flows:Async_smtp__.Mail_log.Flows.t -> Async.Writer.t -> Async_smtp__.Client_config.t -> tval config : t -> Async_smtp__.Client_config.tval info : t -> Peer_info.t optionval is_using_tls : t -> boolval with_session : t -> log:Async_smtp__.Mail_log.t -> component:Async_smtp__.Mail_log.Component.t -> credentials:Async_smtp__.Credentials.t -> f:(t -> 'a Async.Deferred.Or_error.t) -> 'a Async.Deferred.Or_error.tval do_helo : t -> log:Async_smtp__.Mail_log.t -> component:Async_smtp__.Mail_log.Component.t -> unit Async.Deferred.Or_error.tval send : t -> log:Async_smtp__.Mail_log.t -> ?flows:Async_smtp__.Mail_log.Flows.t -> component:Async_smtp__.Mail_log.Component.t -> here:Stdlib.Lexing.position -> Async_smtp.Smtp_command.t -> unit Async.Deferred.Or_error.tval receive : ?on_eof:(?partial:Async_smtp.Smtp_reply.partial -> unit -> Async_smtp.Smtp_reply.t Async.Deferred.Or_error.t) -> ?timeout:Core.Time.Span.t -> ?flows:Async_smtp__.Mail_log.Flows.t -> t -> log:Async_smtp__.Mail_log.t -> component:Async_smtp__.Mail_log.Component.t -> here:Stdlib.Lexing.position -> [ `Bsmtp | `Received of Async_smtp.Smtp_reply.t ] Async.Deferred.Or_error.tval send_receive : ?on_eof:(?partial:Async_smtp.Smtp_reply.partial -> unit -> Async_smtp.Smtp_reply.t Async.Deferred.Or_error.t) -> ?timeout:Core.Time.Span.t -> t -> log:Async_smtp__.Mail_log.t -> ?flows:Async_smtp__.Mail_log.Flows.t -> component:Async_smtp__.Mail_log.Component.t -> here:Stdlib.Lexing.position -> Async_smtp.Smtp_command.t -> [ `Bsmtp | `Received of Async_smtp.Smtp_reply.t ] Async.Deferred.Or_error.tval send_string : t -> log:Async_smtp__.Mail_log.t -> ?flows:Async_smtp__.Mail_log.Flows.t -> component:Async_smtp__.Mail_log.Component.t -> here:Stdlib.Lexing.position -> string -> unit Async.Deferred.Or_error.tval send_receive_string : ?on_eof:(?partial:Async_smtp.Smtp_reply.partial -> unit -> Async_smtp.Smtp_reply.t Async.Deferred.Or_error.t) -> ?timeout:Core.Time.Span.t -> t -> log:Async_smtp__.Mail_log.t -> ?flows:Async_smtp__.Mail_log.Flows.t -> component:Async_smtp__.Mail_log.Component.t -> here:Stdlib.Lexing.position -> string -> [ `Bsmtp | `Received of Async_smtp.Smtp_reply.t ] Async.Deferred.Or_error.tval writer : t -> Async.Writer.tval reader : t -> Async.Reader.t optionval remote_address : t -> Core.Host_and_port.t optionval local_ip_address : t -> Async.Socket.Address.Inet.t optionval remote_ip_address : t -> Async.Socket.Address.Inet.t option