U v`@sJdZddlmZddlZddlmZdZdZGdddejZ d d Z dS) zDynamic Trunking Protocol.)absolute_importN)dpktc@s$eZdZdZdZddZddZdS)DTPzDynamic Trunking Protocol. TODO: Longer class information.... Attributes: __hdr__: Header fields of DTP. TODO. ))vBrcCsptj|||j}g}|rftd|dd\}}|dd||d|d}}|||fq||_dS)N>HHr)rPacketunpackdatastructappend)selfbufZtvstZl_rr`/private/var/folders/0j/yyfkg7712236ncpm167bvylc27vst9/T/pip-unpacked-wheel-y9gppv54/dpkt/dtp.pyr s"z DTP.unpackcCsddd|jDS)NcSs&g|]\}}td|t||qS)r )r packlen).0rrrrr &sz!DTP.__bytes__..)joinr )rrrr __bytes__%sz DTP.__bytes__N)__name__ __module__ __qualname____doc__Z__hdr__r rrrrrr s  rcCst}|jdkstddlm}|d}t|}|jdks>tt|jdksPt|j}|d}|\}}|dksrt||dkstt||ddkstdS)Nr) unhexlifyZ04000100021234rrZ1234)rrAssertionErrorbinasciirrr bytes)Zdtp1rrZdtp2ZtlvsZtlvkeyvaluerrr test_creation)s  r%) r __future__rr rZ TRUNK_NAMEZMAC_ADDRr rr%rrrrs