module Net::IMAP::SASL::ProtocolAdapters::Generic

def cancel_response; "*" end

The generic implementation returns "*".

exchange.
Returns the message used by the client to abort an authentication
def cancel_response;  "*" end

def command_name; "AUTHENTICATE" end

The generic implementation returns "AUTHENTICATE".

authentication exchange.
The name of the protocol command used to initiate a \SASL
def command_name;     "AUTHENTICATE" end

def decode(string) string.unpack1("m0") end

The generic implementation returns the Base64 decoding of +string+.

Decodes a server challenge string.
def decode(string)    string.unpack1("m0") end

def encode(string) [string].pack("m0") end

The generic implementation returns the Base64 encoding of +string+.

Encodes a client response string.
def encode(string)    [string].pack("m0") end

def encode_ir(string) string.empty? ? "=" : encode(string) end

"=" when +string+ is empty.
The generic implementation returns the result of #encode, or returns

Encodes an initial response string.
def encode_ir(string) string.empty? ? "=" : encode(string) end

def service; "host" end

generic GSSAPI host-based service name.
The generic implementation returns "host", which is the

registry}[https://www.iana.org/assignments/gssapi-service-names/gssapi-service-names.xhtml].
A service name from the {GSSAPI/Kerberos/SASL Service Names
def service;          "host" end