a àMÒe$ ã@sHddlZddlZddlZddlZddlZejjGdd„dejjƒƒZ dS)éNcsXeZdZdZgd¢Z‡fdd„Zddd„Zedd d „ƒZdd d „Z eddd„ƒZ ‡Z S)ÚTLSABasez&Base class for TLSA and SMIMEA records)ÚusageÚselectorÚmtypeÚcertcsBtƒ ||¡| |¡|_| |¡|_| |¡|_| |¡|_dS©N)ÚsuperÚ__init__Z _as_uint8rrrZ _as_bytesr)ÚselfÚrdclassÚrdtyperrrr©Ú __class__©ú8/usr/lib/python3.9/site-packages/dns/rdtypes/tlsabase.pyr "s    zTLSABase.__init__NTcKs@| ¡}| dd¡}d|j|j|jtjj|jfd|i|¤ŽfS)NÚ chunksizeé€z %d %d %d %s) ÚcopyÚpoprrrÚdnsÚrdataZ_hexifyr)r ÚoriginÚ relativizeÚkwrrrrÚto_text)s üzTLSABase.to_textc Cs@| ¡}| ¡}| ¡} | ¡ ¡} t | ¡} |||||| | ƒSr)Z get_uint8Z!concatenate_remaining_identifiersÚencodeÚbinasciiZ unhexlify) Úclsr r ÚtokrrZ relativize_torrrrrrrÚ from_text3s   zTLSABase.from_textFcCs0t d|j|j|j¡}| |¡| |j¡dS)Nz!BBB)ÚstructÚpackrrrÚwriter)r ÚfileÚcompressrZ canonicalizeÚheaderrrrÚ_to_wire>s zTLSABase._to_wirecCs0| d¡}| ¡}||||d|d|d|ƒS)NZBBBréé)Z get_structZ get_remaining)rr r Úparserrr%rrrrÚfrom_wire_parserCs zTLSABase.from_wire_parser)NT)NTN)NNF)N) Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú __slots__r rÚ classmethodrr&r*Ú __classcell__rrr rrs  ÿ r) rr Z dns.immutablerZ dns.rdataZ dns.rdatatypeZ immutablerZRdatarrrrrÚs