diff options
author | Dan Klein <danklei@csi-kiwi-03.cisco.com> | 2015-09-20 15:53:42 +0300 |
---|---|---|
committer | Dan Klein <danklei@csi-kiwi-03.cisco.com> | 2015-09-20 15:53:42 +0300 |
commit | 28fef018f75b5a54ac69ac7c919127bf47f5b61f (patch) | |
tree | c21c2af8dfe7c05bee170e96fc923458b8894be6 /scripts/external_libs/dpkt-1.8.6/dpkt/pim.py | |
parent | a78680a896f65dd6733d27d99e9cd8440eb185e9 (diff) | |
parent | 56dbd342eb97fc087611157ce8e965088b7f9bf8 (diff) |
Pushed Stateless progress (along with Packet Builder module)
Diffstat (limited to 'scripts/external_libs/dpkt-1.8.6/dpkt/pim.py')
-rw-r--r-- | scripts/external_libs/dpkt-1.8.6/dpkt/pim.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/scripts/external_libs/dpkt-1.8.6/dpkt/pim.py b/scripts/external_libs/dpkt-1.8.6/dpkt/pim.py new file mode 100644 index 00000000..fa340dd0 --- /dev/null +++ b/scripts/external_libs/dpkt-1.8.6/dpkt/pim.py @@ -0,0 +1,24 @@ +# $Id: pim.py 23 2006-11-08 15:45:33Z dugsong $ + +"""Protocol Independent Multicast.""" + +import dpkt + +class PIM(dpkt.Packet): + __hdr__ = ( + ('v_type', 'B', 0x20), + ('rsvd', 'B', 0), + ('sum', 'H', 0) + ) + def _get_v(self): return self.v_type >> 4 + def _set_v(self, v): self.v_type = (v << 4) | (self.v_type & 0xf) + v = property(_get_v, _set_v) + + def _get_type(self): return self.v_type & 0xf + def _set_type(self, type): self.v_type = (self.v_type & 0xf0) | type + type = property(_get_type, _set_type) + + def __str__(self): + if not self.sum: + self.sum = dpkt.in_cksum(dpkt.Packet.__str__(self)) + return dpkt.Packet.__str__(self) |