summaryrefslogtreecommitdiff
path: root/haircontrol/inspectors.py
diff options
context:
space:
mode:
Diffstat (limited to 'haircontrol/inspectors.py')
-rw-r--r--haircontrol/inspectors.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/haircontrol/inspectors.py b/haircontrol/inspectors.py
new file mode 100644
index 0000000..9b797fe
--- /dev/null
+++ b/haircontrol/inspectors.py
@@ -0,0 +1,21 @@
+import re
+
+class Inspector():
+ cmds = {}
+ fd = None
+
+ def parse(self):
+ return None #XXX Implement
+
+class LinuxInspector(Inspector):
+ cmds = {
+ 'ip-neigh': {
+ 'cmd': 'ip neigh',
+ # fe80::8300 dev eth1 lladdr 10:fe:ed:f1:e1:f3 router STALE
+ # 172.16.20.210 dev eth1 lladdr c0:4a:00:fe:1f:87 REACHABLE
+ 'kind': 'text',
+ 'fields': ['ip','ifname','mac'],
+ 're': re.compile("(?P<ip>[a-f0-9:.]+) dev (?P<ifname>.*) lladdr (?P<mac>[a-f0-9:]*)")
+ }
+ }
+