diff options
Diffstat (limited to 'lib/oxidized/model')
-rw-r--r-- | lib/oxidized/model/aen.rb | 20 | ||||
-rw-r--r-- | lib/oxidized/model/coriantgroove.rb | 30 | ||||
-rw-r--r-- | lib/oxidized/model/fortios.rb | 1 | ||||
-rw-r--r-- | lib/oxidized/model/ftos.rb | 2 | ||||
-rw-r--r-- | lib/oxidized/model/ios.rb | 4 |
5 files changed, 55 insertions, 2 deletions
diff --git a/lib/oxidized/model/aen.rb b/lib/oxidized/model/aen.rb new file mode 100644 index 0000000..6d87433 --- /dev/null +++ b/lib/oxidized/model/aen.rb @@ -0,0 +1,20 @@ +class AEN < Oxidized::Model + # Accedian + + comment '# ' + + prompt /^([-\w.\/:?\[\]\(\)]+:\s?)$/ + + cmd 'configuration generate-script module all' do |cfg| + cfg + end + + cmd :all do |cfg| + cfg.each_line.to_a[1..-2].join + end + + cfg :ssh do + pre_logout 'exit' + end + +end
\ No newline at end of file diff --git a/lib/oxidized/model/coriantgroove.rb b/lib/oxidized/model/coriantgroove.rb new file mode 100644 index 0000000..4fc44b7 --- /dev/null +++ b/lib/oxidized/model/coriantgroove.rb @@ -0,0 +1,30 @@ +class CoriantGroove < Oxidized::Model + + comment '# ' + + prompt /^(\w+@.*>\s*)$/ + + cmd :all do |cfg| + cfg.each_line.to_a[1..-3].map{|line|line.delete("\r").rstrip}.join("\n") + "\n" + end + + cmd 'show inventory' do |cfg| + cfg = cfg.each_line.to_a[0..-2].join + comment cfg + end + + cmd 'show softwareload' do |cfg| + cfg = cfg.each_line.to_a[0..-2].join + comment cfg + end + + cmd 'show config | display commands' do |cfg| + cfg.each_line.to_a[1..-1].join + end + + cfg :ssh do + post_login 'set -f cli-config cli-columns 65535' + pre_logout 'quit -f' + end + +end diff --git a/lib/oxidized/model/fortios.rb b/lib/oxidized/model/fortios.rb index 2d15aae..605a596 100644 --- a/lib/oxidized/model/fortios.rb +++ b/lib/oxidized/model/fortios.rb @@ -17,6 +17,7 @@ class FortiOS < Oxidized::Model cmd :secret do |cfg| cfg.gsub! /(set (?:passwd|password|secondary-secret|rsso-secret|psksecret|secret|key ENC)).*/, '\\1 <configuration removed>' cfg.gsub! /(set private-key).*-+END ENCRYPTED PRIVATE KEY-*"$/m , '\\1 <configuration removed>' + cfg.gsub! /(IPS Malicious URL Database).*/, '\\1 <configuration removed>' cfg end diff --git a/lib/oxidized/model/ftos.rb b/lib/oxidized/model/ftos.rb index b465271..1c3b8b4 100644 --- a/lib/oxidized/model/ftos.rb +++ b/lib/oxidized/model/ftos.rb @@ -15,6 +15,8 @@ class FTOS < Oxidized::Model end cmd 'show inventory' do |cfg| + # Old versions of FTOS can occasionally return data that triggers encoding errors. + cfg.encode!("UTF-8", :invalid => :replace, :undef => :replace, :replace => "") comment cfg end diff --git a/lib/oxidized/model/ios.rb b/lib/oxidized/model/ios.rb index c3d5543..0cb2f3a 100644 --- a/lib/oxidized/model/ios.rb +++ b/lib/oxidized/model/ios.rb @@ -126,8 +126,8 @@ class IOS < Oxidized::Model end cfg :telnet do - username /^Username:/ - password /^Password:/ + username /^Username:/i + password /^Password:/i end cfg :telnet, :ssh do |