Sha256: 63fc91661ccd68c4f7becdca440cc809660737759d6e311d6dac9e1ff2ac4b4e
Contents?: true
Size: 1.13 KB
Versions: 293
Compression:
Stored size: 1.13 KB
Contents
require 'puppet/util/network_device' require 'puppet/util/network_device/transport' require 'puppet/util/network_device/transport/base' if Puppet.features.telnet? require 'net/telnet' class Puppet::Util::NetworkDevice::Transport::Telnet < Puppet::Util::NetworkDevice::Transport::Base def initialize(verbose = false) super() @verbose = verbose end def handles_login? false end def connect @telnet = Net::Telnet::new("Host" => host, "Port" => port || 23, "Timeout" => 10, "Prompt" => default_prompt) end def close @telnet.close if @telnet @telnet = nil end def expect(prompt) @telnet.waitfor(prompt) do |out| yield out if block_given? end end def command(cmd, options = {}) send(cmd) expect(options[:prompt] || default_prompt) do |output| yield output if block_given? end end def send(line) Puppet.debug("telnet: send #{line}") if @verbose @telnet.puts(line) end end end
Version data entries
293 entries across 293 versions & 3 rubygems