Class: SSHKit::Backend::Netssh::KnownHosts

Inherits:
Object
  • Object
show all
Defined in:
lib/sshkit/backends/netssh/known_hosts.rb

Instance Method Summary collapse

Constructor Details

#initializeKnownHosts

Returns a new instance of KnownHosts.



114
115
116
117
118
# File 'lib/sshkit/backends/netssh/known_hosts.rb', line 114

def initialize
  super()
  @files = {}
  @mutex = Mutex.new
end

Instance Method Details

#add(*args) ⇒ Object



127
128
129
130
# File 'lib/sshkit/backends/netssh/known_hosts.rb', line 127

def add(*args)
  ::Net::SSH::KnownHosts.add(*args)
  @mutex.synchronize { @files = {} }
end

#search_for(host, options = {}) ⇒ Object



120
121
122
123
124
125
# File 'lib/sshkit/backends/netssh/known_hosts.rb', line 120

def search_for(host, options = {})
  keys = ::Net::SSH::KnownHosts.hostfiles(options).map do |path|
    known_hosts_file(path).keys_for(host)
  end.flatten
  ::Net::SSH::HostKeys.new(keys, host, self, options)
end