From 1aca290d70b5f2dec16bc313111cca4155b80a23 Mon Sep 17 00:00:00 2001
From: Christoffer Stokbaek <christoffers@easyspeedy.com>
Date: Thu, 4 Aug 2016 16:30:18 +0200
Subject: Added support for pfSense

---
 lib/oxidized/pfsense.rb | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 lib/oxidized/pfsense.rb

(limited to 'lib')

diff --git a/lib/oxidized/pfsense.rb b/lib/oxidized/pfsense.rb
new file mode 100644
index 0000000..67a1a49
--- /dev/null
+++ b/lib/oxidized/pfsense.rb
@@ -0,0 +1,34 @@
+class PfSense < Oxidized::Model
+  
+  prompt /^\e\[0;1;33m\[\S*\e\[0;1;33m\]\e\[0;1;33m\e\[\S*\e\[0;1;31m@\S*\e\[0;1;33m\]\S*\e\[0;1;31m:\e\[0;0;0m\s$/
+  comment  '# '
+  
+  
+  #add a comment in the final conf
+  def add_comment comment
+    "\n###### #{comment} ######\n" 
+  end
+
+  cmd :all do |cfg|
+    cfg.each_line.to_a[1..-2].join
+  end
+  
+  #show the persistent configuration
+  pre do
+    cfg = add_comment 'Configuration'
+    cfg += cmd 'cat /cf/conf/config.xml'    
+  end
+  
+
+  cfg :telnet do
+    username /^Username:/
+    password /^Password:/
+  end
+
+  cfg :telnet, :ssh do
+    pre_logout 'exit'
+  end
+ 
+
+end
+
-- 
cgit v1.2.3