diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/oxidized/input/ssh.rb | 7 | ||||
| -rw-r--r-- | lib/oxidized/model/ios.rb | 4 | ||||
| -rw-r--r-- | lib/oxidized/model/iosxr.rb | 2 | ||||
| -rw-r--r-- | lib/oxidized/model/masteros.rb | 33 | ||||
| -rw-r--r-- | lib/oxidized/version.rb | 2 | 
5 files changed, 28 insertions, 20 deletions
| diff --git a/lib/oxidized/input/ssh.rb b/lib/oxidized/input/ssh.rb index 69b36b0..e7296b5 100644 --- a/lib/oxidized/input/ssh.rb +++ b/lib/oxidized/input/ssh.rb @@ -79,11 +79,14 @@ module Oxidized      def shell_open ssh        @ses = ssh.open_channel do |ch|          ch.on_data do |_ch, data| -          @log.print data if Oxidized.config.input.debug? +          if Oxidized.config.input.debug? +            @log.print data +            @log.fsync +          end            @output << data            @output = @node.model.expects @output          end -        ch.request_pty do |_ch, success_pty| +        ch.request_pty (opts={:term=>'vt100'}) do |_ch, success_pty|            raise NoShell, "Can't get PTY" unless success_pty            ch.send_channel_request 'shell' do |_ch, success_shell|              raise NoShell, "Can't get shell" unless success_shell diff --git a/lib/oxidized/model/ios.rb b/lib/oxidized/model/ios.rb index f31303c..1f099c8 100644 --- a/lib/oxidized/model/ios.rb +++ b/lib/oxidized/model/ios.rb @@ -25,6 +25,10 @@ class IOS < Oxidized::Model    cmd :secret do |cfg|      cfg.gsub! /^(snmp-server community).*/, '\\1 <configuration removed>'      cfg.gsub! /username (\S+) privilege (\d+) (\S+).*/, '<secret hidden>' +    cfg.gsub! /^username \S+ password \d \S+/, '<secret hidden>' +    cfg.gsub! /^enable password \d \S+/, '<secret hidden>' +    cfg.gsub! /wpa-psk ascii \d \S+/, '<secret hidden>' +    cfg.gsub! /^tacacs-server key \d \S+/, '<secret hidden>'      cfg    end diff --git a/lib/oxidized/model/iosxr.rb b/lib/oxidized/model/iosxr.rb index 6887217..a622b66 100644 --- a/lib/oxidized/model/iosxr.rb +++ b/lib/oxidized/model/iosxr.rb @@ -2,7 +2,7 @@ class IOSXR < Oxidized::Model    # IOS XR model # -  prompt /^([\w.@:\/-]+[#>]\s?)$/ +  prompt /^(\r?[\w.@:\/-]+[#>]\s?)$/    comment  '! '    cmd :all do |cfg| diff --git a/lib/oxidized/model/masteros.rb b/lib/oxidized/model/masteros.rb index 3f5a2fc..587fdc4 100644 --- a/lib/oxidized/model/masteros.rb +++ b/lib/oxidized/model/masteros.rb @@ -2,35 +2,36 @@ class MasterOS < Oxidized::Model    # MRV MasterOS model # -comment '!'  +comment '!'    cmd :secret do |cfg|      cfg.gsub! /^(snmp-server community).*/, '\\1 <configuration removed>'      cfg.gsub! /username (\S+) password encrypted (\S+) class (\S+).*/, '<secret hidden>' -    cfg  -  end  +    cfg +  end    cmd :all do |cfg|      cfg.each_line.to_a[1..-2].join -  end  +    cfg.gsub /^(! Configuration ).*/, '!' +  end    cmd 'show inventory' do |cfg|      cfg = cfg.each_line.to_a[0..-2].join -    comment cfg  -  end  +    comment cfg +  end    cmd 'show plugins' do |cfg| -    comment cfg  -  end  +    comment cfg +  end    cmd 'show hw-config' do |cfg| -    comment cfg  -  end  +    comment cfg +  end    cmd 'show running-config' do |cfg|      cfg = cfg.each_line.to_a[3..-1].join -    cfg  -  end  +    cfg +  end    cfg :telnet, :ssh do      post_login 'no pager' @@ -38,9 +39,9 @@ comment '!'        post_login do          send "enable\n"          send vars(:enable) + "\n" -      end  -    end  +      end +    end      pre_logout 'exit' -  end  +  end -end
\ No newline at end of file +end diff --git a/lib/oxidized/version.rb b/lib/oxidized/version.rb index fc4a9f8..c06a14a 100644 --- a/lib/oxidized/version.rb +++ b/lib/oxidized/version.rb @@ -1,3 +1,3 @@  module Oxidized -  VERSION = '0.11.0' +  VERSION = '0.12.2'  end | 
