diff options
Diffstat (limited to 'lib/oxidized/model')
| -rw-r--r-- | lib/oxidized/model/edgeswitch.rb | 6 | ||||
| -rw-r--r-- | lib/oxidized/model/fortios.rb | 5 | ||||
| -rw-r--r-- | lib/oxidized/model/ipos.rb | 37 | ||||
| -rw-r--r-- | lib/oxidized/model/mtrlrfs.rb | 37 | ||||
| -rw-r--r-- | lib/oxidized/model/nos.rb | 2 | ||||
| -rw-r--r-- | lib/oxidized/model/xos.rb | 6 | 
6 files changed, 87 insertions, 6 deletions
| diff --git a/lib/oxidized/model/edgeswitch.rb b/lib/oxidized/model/edgeswitch.rb index 89a5690..31014da 100644 --- a/lib/oxidized/model/edgeswitch.rb +++ b/lib/oxidized/model/edgeswitch.rb @@ -7,12 +7,12 @@ class EdgeSwitch < Oxidized::Model    prompt /[(]\w*\s\w*[)][\s#>]*[\s#>]/    cmd 'show running-config' do |cfg| -    comment cfg.each_line.reject { |line| line.match /System Up Time.*/ or line.match /Current SNTP Synchronized Time.*/ }.join +    cfg.each_line.reject { |line| line.match /System Up Time.*/ or line.match /Current SNTP Synchronized Time.*/ }.join    end    cfg :telnet do      username /Username:\s/ -    passsword /^Password:\s/ +    password /^Password:\s/    end    cfg :telnet, :ssh do @@ -22,4 +22,4 @@ class EdgeSwitch < Oxidized::Model      pre_logout 'exit'    end -end
\ No newline at end of file +end diff --git a/lib/oxidized/model/fortios.rb b/lib/oxidized/model/fortios.rb index 3515b46..92add0e 100644 --- a/lib/oxidized/model/fortios.rb +++ b/lib/oxidized/model/fortios.rb @@ -4,6 +4,11 @@ class FortiOS < Oxidized::Model    prompt /^([-\w\.]+(\s[\(\w\-\.\)]+)?\~?\s?[#>]\s?)$/ +  expect /^--More--\s$/ do |data, re| +    send ' ' +    data.sub re, '' +  end +    cmd :all do |cfg, cmdstring|      new_cfg = comment "COMMAND: #{cmdstring}\n"      new_cfg << cfg.each_line.to_a[1..-2].map { |line| line.gsub(/(conf_file_ver=)(.*)/, '\1<stripped>\3') }.join diff --git a/lib/oxidized/model/ipos.rb b/lib/oxidized/model/ipos.rb new file mode 100644 index 0000000..1a77807 --- /dev/null +++ b/lib/oxidized/model/ipos.rb @@ -0,0 +1,37 @@ +class IPOS < Oxidized::Model + +  # Ericsson SSR (IPOS) +  # Redback SE (SEOS) + +  prompt /^([\[\]\w.@-]+[#>]\s?)$/ +  comment '! ' + +  cmd 'show chassis' do |cfg| +    comment cfg +  end + +  cmd 'show hardware detail' do |cfg| +    comment cfg +  end + +  cmd 'show release' do |cfg| +    comment cfg +  end + +  cmd 'show config' + +  cfg :telnet do +    username /^login:/ +    password /^\r*password:/ +  end + +  cfg :telnet, :ssh do +    post_login 'terminal length 0' +    pre_logout do +      send "exit\n" +      send "n\n" +    end +  end + +end + diff --git a/lib/oxidized/model/mtrlrfs.rb b/lib/oxidized/model/mtrlrfs.rb new file mode 100644 index 0000000..84bcfe1 --- /dev/null +++ b/lib/oxidized/model/mtrlrfs.rb @@ -0,0 +1,37 @@ +class mtrlrfs < Oxidized::Model + +  # Motorola RFS/Extreme WM + +  comment  '# ' + +  cmd :all do |cfg| +    # xos inserts leading \r characters and other trailing white space. +    # this deletes extraneous \r and trailing white space. +    cfg.each_line.to_a[1..-2].map{|line|line.delete("\r").rstrip}.join("\n") + "\n" +  end + +  cmd 'show version' do |cfg| +    comment cfg +  end + +  cmd 'show licenses' do |cfg| +    comment cfg +  end + +  cmd 'show running-config' + +  cfg :telnet do +    username /^login:/ +    password /^\r*password:/ +  end + +  cfg :telnet, :ssh do +    post_login 'terminal length 0' +    pre_logout do +      send "exit\n" +      send "n\n" +    end +  end + +end + diff --git a/lib/oxidized/model/nos.rb b/lib/oxidized/model/nos.rb index 18ca6a2..bd2cb0f 100644 --- a/lib/oxidized/model/nos.rb +++ b/lib/oxidized/model/nos.rb @@ -33,7 +33,7 @@ class NOS < Oxidized::Model    cfg :telnet do      username /^.* login: / -    username /^Password:/ +    password /^Password:/    end    cfg :telnet, :ssh do diff --git a/lib/oxidized/model/xos.rb b/lib/oxidized/model/xos.rb index de8ec39..6f1323f 100644 --- a/lib/oxidized/model/xos.rb +++ b/lib/oxidized/model/xos.rb @@ -36,8 +36,10 @@ class XOS < Oxidized::Model    cfg :telnet, :ssh do      post_login 'disable clipaging' -    pre_logout 'exit' -    pre_logout 'n' +    pre_logout do +      send "exit\n" +      send "n\n" +    end    end  end | 
