class Net::IMAP::SASL::DigestMD5Authenticator
def initialize(user = nil, pass = nil, authz = nil,
* _optional_ +warn_deprecation+ — Set to +false+ to silence the warning.
For Net::IMAP, this defaults to "imap".
"smtp", "ldap", "xmpp".
* _optional_ #service — the registered service protocol. E.g. "imap",
replicated.
* _optional_ #service_name — The generic host name when the server is
Defaults to #realm.
* _optional_ #host — FQDN for requested service.
Defaults to the last realm in the server-provided realms list.
* _optional_ #realm — A namespace for the #username, e.g. a domain.
identity from the authentication identity.
When +authzid+ is not set, the server should derive the authorization
* _optional_ #authzid ― Authorization identity to act as or on behalf of.
* #password ― A password or passphrase associated with this #authcid.
#username ― An alias for +authcid+.
* #authcid ― Authentication identity that is associated with #password.
==== Parameters
Called by Net::IMAP#authenticate and similar methods on other clients.
Creates an Authenticator for the "+DIGEST-MD5+" SASL mechanism.
new(authcid:, password:, authzid: nil, **options) -> authenticator
new(username:, password:, authzid: nil, **options) -> authenticator
new(username, password, authzid = nil, **options) -> authenticator
:call-seq:
def initialize(user = nil, pass = nil, authz = nil, username: nil, password: nil, authzid: nil, authcid: nil, secret: nil, realm: nil, service: "imap", host: nil, service_name: nil, warn_deprecation: true, **) username = authcid || username || user or raise ArgumentError, "missing username (authcid)" password ||= secret || pass or raise ArgumentError, "missing password" authzid ||= authz if warn_deprecation warn("WARNING: DIGEST-MD5 SASL mechanism was deprecated by RFC6331.", category: :deprecated) end require "digest/md5" require "securerandom" require "strscan" @username, @password, @authzid = username, password, authzid @realm = realm @host = host @service = service @service_name = service_name @nc, @stage = {}, STAGE_ONE end