diff options
Diffstat (limited to 'haircontrol/inspectors.py')
-rw-r--r-- | haircontrol/inspectors.py | 21 |
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:]*)") + } + } + |