diff options
Diffstat (limited to 'lib/oxidized')
| -rw-r--r-- | lib/oxidized/model/airos.rb | 20 | ||||
| -rw-r--r-- | lib/oxidized/model/powerconnect.rb | 13 | 
2 files changed, 29 insertions, 4 deletions
| diff --git a/lib/oxidized/model/airos.rb b/lib/oxidized/model/airos.rb new file mode 100644 index 0000000..316c4f0 --- /dev/null +++ b/lib/oxidized/model/airos.rb @@ -0,0 +1,20 @@ +class Airos < Oxidized::Model +  # Ubiquiti AirOS circa 5.x +   +  prompt /^[^#]+# / +   +  cmd 'cat /etc/board.info' do |cfg| +    cfg.split("\n").map { |line| "# #{line}" }.join("\n") + "\n" +  end +   +  cmd 'cat /tmp/system.cfg' +   +  cmd :secret do |cfg| +    cfg.gsub! /^(users\.\d+\.password|snmp\.community)=.+/, "# \\1=<hidden>" +    cfg +  end + +  cfg :ssh do +    exec true +  end +end diff --git a/lib/oxidized/model/powerconnect.rb b/lib/oxidized/model/powerconnect.rb index 4f90b77..1d0352e 100644 --- a/lib/oxidized/model/powerconnect.rb +++ b/lib/oxidized/model/powerconnect.rb @@ -19,7 +19,7 @@ class PowerConnect < Oxidized::Model    cmd 'show system' do |cfg|      cfg = cfg.each_line.take_while { |line| not line.match(/uptime/i) } -    comment cfg +    comment cfg.join "\n"    end    cmd 'show running-config' @@ -30,9 +30,14 @@ class PowerConnect < Oxidized::Model    end    cfg :telnet, :ssh do -    post_login 'terminal datadump' -    post_login 'enable' -    pre_logout 'exit' +    if vars :enable +      send "enable\n" +      send vars(:enable) + "\n" +    end + +    post_login "terminal length 0" +    pre_logout "logout" +        end  end | 
