Plasma GitLab Archive
Projects Blog Knowledge

Class Netsmtp.client

class client : Netchannels.in_obj_channel -> Netchannels.out_obj_channel -> object .. end

method helo : ?host:string -> unit -> string list
Sends an EHLO command to the server. The optional argument ?host defaults to the default hostname of the machine. This function returns the ESMTP lines returned by the server.

If EHLO is not supported, the method automatically falls back to HELO.

EHLO is specified in RFC 1869.

method helo_response : string list
The response from the last HELO or EHLO
method auth : Netsys_sasl.sasl_mechanism ->
string ->
string -> Netsys_sasl.credentials -> (string * string * bool) list -> unit
auth mech user authz creds params: Performs a SASL authentication using the AUTH command. See Netsys_sasl.Client.create_session for details.

Example:

client # auth
  (module Netmech_digest_sasl.DIGEST_MD5)
  "user"
  ""
  [ "password", "sEcReT", [] ]
  []
   

method authenticated : bool
Whether the auth command ran successfully
method mail : string -> unit
Performs a MAIL FROM command. The string argument is the mail address (without < >) of the sender.
method rcpt : string -> unit
Performs a RCPT TO command. the string argument is one of the mail address the mail has to be sent to. You have to use that function for each recipient of the mail.

If the server returns a 551 error (user relocated, see RFC 2821, section 3.4), the relocated adress is silently used, and the error is not raised

method data : Netchannels.in_obj_channel -> unit
This method really send the mail. Do not issue that command without having used mail once, and at least rcpt once too
method rset : unit -> unit
Reset the current transaction
method expn : string -> string list option
Expand command : expn list will try to expand the Mailing list list. If the list cannot be Expanded (reply 252) then None is returned.
method help : unit -> string list
Performs the Help command. Returns the server multiline answer.
method noop : unit -> unit
NOOP : does nothing, keeps the connection alive.
method quit : unit -> unit
Requests the server to end this session.
method close : unit -> unit
Closes the file descriptors
method starttls : peer_name:string option -> Netsys_crypto_types.tls_config -> unit
Sends STARTTLS, and negotiates a secure connection. This should only be done after EHLO, and only if "STARTTLS" is among the returned strings.

STARTTLS is specified in RFC 3207.

Note that it is meaningful to submit EHLO again after STARTTLS, as the server may now enable more options.

method command : string -> int * string list
Sends this command, and returns the status code and the status texts.
method tls_endpoint : Netsys_crypto_types.tls_endpoint option
Returns the TLS endpoint (after STARTTLS)
method tls_session_props : Nettls_support.tls_session_props option
Returns the TLS session properties (after STARTTLS)
method gssapi_props : Netsys_gssapi.client_props option
Returns GSSAPI properties, if available
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml