From cdcc62972d42f009f55e6aeb2ca5c60c3acd75eb Mon Sep 17 00:00:00 2001 From: Dan Klein Date: Wed, 26 Aug 2015 14:27:43 +0300 Subject: added dpkt package, initial stateless client implementation --- external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py | 35 ++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py (limited to 'external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py') diff --git a/external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py b/external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py new file mode 100644 index 00000000..1be917d3 --- /dev/null +++ b/external_libs/python/dpkt-1.8.6.2/dpkt/aoeata.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +"""ATA over Ethernet ATA command""" + +import dpkt + +ATA_DEVICE_IDENTIFY = 0xec + + +class AOEATA(dpkt.Packet): + __hdr__ = ( + ('aflags', 'B', 0), + ('errfeat', 'B', 0), + ('scnt', 'B', 0), + ('cmdstat', 'B', ATA_DEVICE_IDENTIFY), + ('lba0', 'B', 0), + ('lba1', 'B', 0), + ('lba2', 'B', 0), + ('lba3', 'B', 0), + ('lba4', 'B', 0), + ('lba5', 'B', 0), + ('res', 'H', 0), + ) + + # XXX: in unpack, switch on ATA command like icmp does on type + + +def test_aoeata(): + s = '\x03\x0a\x6b\x19\x00\x00\x00\x00\x45\x00\x00\x28\x94\x1f\x00\x00\xe3\x06\x99\xb4\x23\x2b\x24\x00\xde\x8e\x84\x42\xab\xd1\x00\x50\x00\x35\xe1\x29\x20\xd9\x00\x00\x00\x22\x9b\xf0\xe2\x04\x65\x6b' + aoeata = AOEATA(s) + assert (str(aoeata) == s) + + +if __name__ == '__main__': + test_aoeata() + print 'Tests Successful...' -- cgit 1.2.3-korg