Conecte-se ao host não certificado via FTP sobre TLS / SSL

Um fornecedor do qual pego um arquivo está mudando de FTP para FTP sobre SS

Estou tentando atualizar meu código denet/ftp paranet/ftptls

O novo host ao qual preciso me conectar não é certificado e meu script relata esse err

hostname não foi compatível com o certificado do servidor

O fornecedor não corrigirá isso.

Olhando para/usr/lib/ruby/1.8/net/ftptls.rb Pensei que não seria muito difícil corrigir o FTPTLS para ignorar o host não confiáve

Eu tentei mudarverify_mode paraOpenSSL::SSL::VERIFY_NONE e comentando a linha post_connection_check

nem funciono

Alguma ideia de como fazer isso

require 'socket'
require 'openssl'
require 'net/ftp'

module Net
  class FTPTLS < FTP
    def connect(host, port=FTP_PORT)
      @hostname = host
      super
    end

    def login(user = "anonymous", passwd = nil, acct = nil)
       store = OpenSSL::X509::Store.new
       store.set_default_paths
       ctx = OpenSSL::SSL::SSLContext.new('SSLv23')
       ctx.cert_store = store
       ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER
       ctx.key = nil
       ctx.cert = nil
       voidcmd("AUTH TLS")
       @sock = OpenSSL::SSL::SSLSocket.new(@sock, ctx)
       @sock.connect
       @sock.post_connection_check(@hostname)
       super(user, passwd, acct)
       voidcmd("PBSZ 0")
    end
  end
end

questionAnswers(4)

yourAnswerToTheQuestion