Commit cbfcfd7
Changed files (3)
spec
minbox
lib/minbox/client.rb
@@ -9,7 +9,7 @@ module Minbox
end
def handle(&block)
- write "220"
+ write "220 #{server.host} ESMTP"
while connected? && (line = read)
case line
when /^EHLO/i then ehlo(line)
@@ -63,9 +63,9 @@ module Minbox
def ehlo(line)
_ehlo, _client_domain = line.split(" ")
write "250-#{server.host}"
- #write "250 AUTH PLAIN LOGIN"
write "250-ENHANCEDSTATUSCODES"
- write "250 STARTTLS" if server.tls?
+ #write "250-STARTTLS"# if server.tls?
+ #write "250 AUTH PLAIN LOGIN"
write "250 OK"
end
@@ -80,10 +80,7 @@ module Minbox
@original_socket = @socket
@socket = OpenSSL::SSL::SSLSocket.new(@original_socket, server.ssl_context)
@socket.sync_close = true
- #begin
puts @socket.accept.inspect
- #rescue OpenSSL::SSL::SSLError => e
- #end
end
def reset
lib/minbox/server.rb
@@ -35,6 +35,17 @@ module Minbox
@server&.close
end
+ def ssl_context(key = OpenSSL::PKey::RSA.new(2048))
+ @ssl_context ||=
+ begin
+ ssl_context = OpenSSL::SSL::SSLContext.new
+ ssl_context.cert = certificate_for(key)
+ ssl_context.key = key
+ ssl_context.ssl_version = :SSLv23
+ ssl_context
+ end
+ end
+
private
def upgrade(tcp_server)
@@ -68,16 +79,5 @@ module Minbox
extensions.create_extension('keyUsage', 'keyEncipherment,digitalSignature', true)
)
end
-
- def ssl_context(key = OpenSSL::PKey::RSA.new(2048))
- @ssl_context ||=
- begin
- ssl_context = OpenSSL::SSL::SSLContext.new
- ssl_context.cert = certificate_for(key)
- ssl_context.key = key
- ssl_context.ssl_version = :SSLv23
- ssl_context
- end
- end
end
end
spec/minbox/server_spec.rb
@@ -100,7 +100,7 @@ RSpec.describe Minbox::Server do
let(:result) do
mail = create_mail
smtp = Net::SMTP.new(host, port)
- smtp.enable_starttls
+ #smtp.enable_autostarttls
smtp.start do |smtp|
smtp.send_message(mail.to_s, Faker::Internet.email, Faker::Internet.email)
end