summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/Model-Notes/ArbOS.md10
-rw-r--r--docs/Model-Notes/README.md1
-rw-r--r--docs/Supported-OS-Types.md2
-rw-r--r--lib/oxidized/model/arbos.rb27
4 files changed, 40 insertions, 0 deletions
diff --git a/docs/Model-Notes/ArbOS.md b/docs/Model-Notes/ArbOS.md
new file mode 100644
index 0000000..0f5b628
--- /dev/null
+++ b/docs/Model-Notes/ArbOS.md
@@ -0,0 +1,10 @@
+Arbor Networks ArbOS notes
+==========================
+
+If you are running ArbOS version 7 or lower then you may need to update the model to remove `exec true`:
+
+```
+ cfg :ssh do
+ pre_logout 'exit'
+ end
+```
diff --git a/docs/Model-Notes/README.md b/docs/Model-Notes/README.md
index 6a64058..9d7db32 100644
--- a/docs/Model-Notes/README.md
+++ b/docs/Model-Notes/README.md
@@ -12,6 +12,7 @@ Use the table below for more information on the Vendor/Model caveats.
Vendor | Model |Updated
----------------|-----------------|----------------
3COM|[Comware](Comware.md)|15 Feb 2018
+Arbor Networks|[ArbOS](ArbOS.md)|27 Feb 2018
Huawei|[VRP](VRP-Huawei.md)|17 Nov 2017
Juniper|[MX/QFX/EX/SRX/J Series](JunOS.md)|18 Jan 2018
Xyzel|[XGS4600 Series](XGS4600-Zyxel.md)|23 Jan 2018
diff --git a/docs/Supported-OS-Types.md b/docs/Supported-OS-Types.md
index a12f5ef..d6d718f 100644
--- a/docs/Supported-OS-Types.md
+++ b/docs/Supported-OS-Types.md
@@ -17,6 +17,8 @@
* [BreezeACCESS](/lib/oxidized/model/alvarion.rb)
* APC
* [AOS](/lib/oxidized/model/apc_aos.rb)
+ * Arbor Networks
+ * [ArbOS](/lib/oxidized/model/arbos.rb)
* Arista
* [EOS](/lib/oxidized/model/eos.rb)
* Arris
diff --git a/lib/oxidized/model/arbos.rb b/lib/oxidized/model/arbos.rb
new file mode 100644
index 0000000..389f3f6
--- /dev/null
+++ b/lib/oxidized/model/arbos.rb
@@ -0,0 +1,27 @@
+class ARBOS < Oxidized::Model
+
+ # Arbor OS model #
+
+ prompt /^[\S\s]+\n([\w.@-]+[:\/#>]+)\s?$/
+ comment '# '
+
+ cmd 'system hardware' do |cfg|
+ cfg.gsub! /^Boot\ time\:\s.+/, '' # Remove boot timer
+ cfg.gsub! /^Load\ averages\:\s.+/, '' # Remove CPU load info
+ cfg = cfg.each_line.to_a[2..-1].join
+ comment cfg
+ end
+
+ cmd 'system version' do |cfg|
+ comment cfg
+ end
+
+ cmd 'config show' do |cfg|
+ cfg
+ end
+
+ cfg :ssh do
+ exec true
+ pre_logout 'exit'
+ end
+end