From c5e835ee282ef60aed54fd3a7d086724d5174aaf Mon Sep 17 00:00:00 2001 From: p-sherratt Date: Thu, 5 Sep 2013 21:31:16 +0100 Subject: filter mpls te bandwidth line from config if auto-bw is configured, and always attempt to enable if :enable password is configured --- lib/oxidized/model/ios.rb | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/oxidized/model/ios.rb b/lib/oxidized/model/ios.rb index 3fcc7ae..a216126 100644 --- a/lib/oxidized/model/ios.rb +++ b/lib/oxidized/model/ios.rb @@ -23,7 +23,11 @@ class IOS < Oxidized::Model cmd 'show running-config' do |cfg| cfg = cfg.each_line.to_a[3..-1].join + cfg.gsub! /^Current configuration : [^\n]*\n/, '' cfg.sub! /^(ntp clock-period).*/, '! \1' + cfg.gsub! /^\ tunnel\ mpls\ traffic-eng\ bandwidth[^\n]*\n*( + (?:\ [^\n]*\n*)* + tunnel\ mpls\ traffic-eng\ auto-bw)/mx, '\1' cfg end @@ -40,10 +44,12 @@ class IOS < Oxidized::Model post_login 'terminal length 0' post_login 'terminal width 0' # preferred way to handle additional passwords - #post_login do - # send "enable\n" - # send CFG.vars[:enable] + "\n" - #end + if CFG.vars[:enable] and CFG.vars[:enable] != '' + post_login do + send "enable\n" + send CFG.vars[:enable] + "\n" + end + end pre_logout 'exit' end -- cgit v1.2.1 From edaf887b86d84378c94ef02fe7200e70f93f9279 Mon Sep 17 00:00:00 2001 From: Paul Sherratt Date: Fri, 6 Sep 2013 15:19:21 +0100 Subject: more errors to rescue from --- lib/oxidized/input/ssh.rb | 2 +- lib/oxidized/input/telnet.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/oxidized/input/ssh.rb b/lib/oxidized/input/ssh.rb index c0594db..dc90354 100644 --- a/lib/oxidized/input/ssh.rb +++ b/lib/oxidized/input/ssh.rb @@ -39,7 +39,7 @@ module Oxidized disconnect_cli @ssh.loop @ssh.close if not @ssh.closed? - rescue Net::SSH::Disconnect + rescue Errno::ECONNRESET, Net::SSH::Disconnect end end diff --git a/lib/oxidized/input/telnet.rb b/lib/oxidized/input/telnet.rb index c4c8bab..26755ca 100644 --- a/lib/oxidized/input/telnet.rb +++ b/lib/oxidized/input/telnet.rb @@ -17,7 +17,7 @@ module Oxidized expect password @telnet.puts @node.auth[:password] expect @node.prompt - rescue Timeout::Error, Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::EHOSTUNREACH + rescue Timeout::Error, Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::EPIPE, Errno::EHOSTUNREACH return false end end -- cgit v1.2.1