summaryrefslogtreecommitdiffstats
path: root/scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py')
-rw-r--r--scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py89
1 files changed, 0 insertions, 89 deletions
diff --git a/scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py b/scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py
deleted file mode 100644
index 83f29f62..00000000
--- a/scripts/external_libs/dpkt-1.8.6.2/dpkt/rip.py
+++ /dev/null
@@ -1,89 +0,0 @@
-# $Id: rip.py 23 2006-11-08 15:45:33Z dugsong $
-# -*- coding: utf-8 -*-
-"""Routing Information Protocol."""
-
-import dpkt
-
-# RIP v2 - RFC 2453
-# http://tools.ietf.org/html/rfc2453
-
-REQUEST = 1
-RESPONSE = 2
-
-
-class RIP(dpkt.Packet):
- __hdr__ = (
- ('cmd', 'B', REQUEST),
- ('v', 'B', 2),
- ('rsvd', 'H', 0)
- )
-
- def unpack(self, buf):
- dpkt.Packet.unpack(self, buf)
- l = []
- self.auth = None
- while self.data:
- rte = RTE(self.data[:20])
- if rte.family == 0xFFFF:
- self.auth = Auth(self.data[:20])
- else:
- l.append(rte)
- self.data = self.data[20:]
- self.data = self.rtes = l
-
- def __len__(self):
- len = self.__hdr_len__
- if self.auth:
- len += len(self.auth)
- len += sum(map(len, self.rtes))
- return len
-
- def __str__(self):
- auth = ''
- if self.auth:
- auth = str(self.auth)
- return self.pack_hdr() + auth + ''.join(map(str, self.rtes))
-
-
-class RTE(dpkt.Packet):
- __hdr__ = (
- ('family', 'H', 2),
- ('route_tag', 'H', 0),
- ('addr', 'I', 0),
- ('subnet', 'I', 0),
- ('next_hop', 'I', 0),
- ('metric', 'I', 1)
- )
-
-
-class Auth(dpkt.Packet):
- __hdr__ = (
- ('rsvd', 'H', 0xFFFF),
- ('type', 'H', 2),
- ('auth', '16s', 0)
- )
-
-
-__s = '\x02\x02\x00\x00\x00\x02\x00\x00\x01\x02\x03\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\xc0\xa8\x01\x08\xff\xff\xff\xfc\x00\x00\x00\x00\x00\x00\x00\x01'
-
-
-def test_rtp_pack():
- r = RIP(__s)
- assert (__s == str(r))
-
-
-def test_rtp_unpack():
- r = RIP(__s)
- assert (r.auth is None)
- assert (len(r.rtes) == 2)
-
- rte = r.rtes[1]
- assert (rte.family == 2)
- assert (rte.route_tag == 0)
- assert (rte.metric == 1)
-
-
-if __name__ == '__main__':
- test_rtp_pack()
- test_rtp_unpack()
- print 'Tests Successful...' \ No newline at end of file