class Dandelion::Adapter::FTPS

Public Class Methods

new(config) click to toggle source
Calls superclass method Dandelion::Adapter::FTP::new
# File lib/dandelion/adapter/ftps.rb, line 11
def initialize(config)
  require 'double_bag_ftps'

  config[:auth_tls] = to_b(config[:auth_tls])
  config[:ftps_implicit] = to_b(config[:ftps_implicit])
  config[:inscecure] = to_b(config[:insecure])

  super(config)
end

Private Instance Methods

ftp_client() click to toggle source
# File lib/dandelion/adapter/ftps.rb, line 23
def ftp_client
  ftps = DoubleBagFTPS.new(@config['host'], nil, nil, nil, ftps_mode, {})

  if @config['insecure']
    ftps.ssl_context = DoubleBagFTPS.create_ssl_context(verify_mode: OpenSSL::SSL::VERIFY_NONE)
  end

  ftps.login(@config['username'], @config['password'], nil, ftps_auth)
  ftps.passive = @config[:passive]

  ftps
end
ftps_auth() click to toggle source
# File lib/dandelion/adapter/ftps.rb, line 36
def ftps_auth
  @config['auth_tls'] ? 'TLS' : nil
end
ftps_mode() click to toggle source
# File lib/dandelion/adapter/ftps.rb, line 40
def ftps_mode
  @config['ftps_implicit'] ? DoubleBagFTPS::IMPLICIT : DoubleBagFTPS::EXPLICIT
end