diff options
author | 2015-08-26 14:27:43 +0300 | |
---|---|---|
committer | 2015-08-26 14:27:43 +0300 | |
commit | cdcc62972d42f009f55e6aeb2ca5c60c3acd75eb (patch) | |
tree | 5c3fef81ac01407a89740f2d9b8b01b0f3a47c7f /external_libs/python/dpkt-1.8.6.2/dpkt/ah.py | |
parent | 42053c95419042f36242b19d2416d112f7643e14 (diff) |
added dpkt package, initial stateless client implementation
Diffstat (limited to 'external_libs/python/dpkt-1.8.6.2/dpkt/ah.py')
-rw-r--r-- | external_libs/python/dpkt-1.8.6.2/dpkt/ah.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/external_libs/python/dpkt-1.8.6.2/dpkt/ah.py b/external_libs/python/dpkt-1.8.6.2/dpkt/ah.py new file mode 100644 index 00000000..5ad29ad5 --- /dev/null +++ b/external_libs/python/dpkt-1.8.6.2/dpkt/ah.py @@ -0,0 +1,35 @@ +# $Id: ah.py 34 2007-01-28 07:54:20Z dugsong $ +# -*- coding: utf-8 -*- + +"""Authentication Header.""" + +import dpkt + + +class AH(dpkt.Packet): + __hdr__ = ( + ('nxt', 'B', 0), + ('len', 'B', 0), # payload length + ('rsvd', 'H', 0), + ('spi', 'I', 0), + ('seq', 'I', 0) + ) + auth = '' + + def unpack(self, buf): + dpkt.Packet.unpack(self, buf) + self.auth = self.data[:self.len] + buf = self.data[self.len:] + import ip + + try: + self.data = ip.IP.get_proto(self.nxt)(buf) + setattr(self, self.data.__class__.__name__.lower(), self.data) + except (KeyError, dpkt.UnpackError): + self.data = buf + + def __len__(self): + return self.__hdr_len__ + len(self.auth) + len(self.data) + + def __str__(self): + return self.pack_hdr() + str(self.auth) + str(self.data) |