class Net::SMTP::Authenticator
Attributes
smtp[R]
Public Class Methods
auth_class(type)
click to toggle source
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 13 def self.auth_class(type) type = type.to_s.upcase.tr(?_, ?-).to_sym Authenticator.auth_classes[type] end
auth_classes()
click to toggle source
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 4 def self.auth_classes @classes ||= {} end
auth_type(type)
click to toggle source
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 8 def self.auth_type(type) type = type.to_s.upcase.tr(?_, ?-).to_sym Authenticator.auth_classes[type] = self end
check_args(user_arg = nil, secret_arg = nil, *, **)
click to toggle source
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 18 def self.check_args(user_arg = nil, secret_arg = nil, *, **) unless user_arg raise ArgumentError, 'SMTP-AUTH requested but missing user name' end unless secret_arg raise ArgumentError, 'SMTP-AUTH requested but missing secret phrase' end end
new(smtp)
click to toggle source
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 29 def initialize(smtp) @smtp = smtp end
Public Instance Methods
base64_encode(str)
click to toggle source
@param str [String] @return [String] Base64 encoded string
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 51 def base64_encode(str) # expects "str" may not become too long [str].pack('m0') end
continue(arg)
click to toggle source
@param arg [String] message to server @return [String] message from server
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 35 def continue(arg) res = smtp.get_response arg raise res.exception_class.new(res) unless res.continue? res.string.split[1] end
finish(arg)
click to toggle source
@param arg [String] message to server @return [Net::SMTP::Response] response from server
# File net-smtp-0.5.0/lib/net/smtp/authenticator.rb, line 43 def finish(arg) res = smtp.get_response arg raise SMTPAuthenticationError.new(res) unless res.success? res end