3Tfb\ddlmZddlZddlZddlmZddlmZddlm Z m Z GddejZ dd Z dd Z dd Z dd Z dd ZGddZGdde ZGdde ZGddZGdde ZGdde Zy)) annotationsN)utils)AlreadyFinalized)check_ansix923_paddingcheck_pkcs7_paddingcXeZdZejddZejddZy)PaddingContextcy)zR Pads the provided bytes and returns any available data as bytes. N)selfdatas H/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/padding.pyupdatezPaddingContext.updatecy)z6 Finalize the padding, returns bytes. Nr r s rfinalizezPaddingContext.finalizerrNr bytesreturnrrr)__name__ __module__ __qualname__abcabstractmethodrrr rrr r s4     rr ) metaclasscnd|cxkrdkstdtd|dzdk7r tdy)Nriz%block_size must be in range(0, 2041).z#block_size must be a multiple of 8.) ValueError) block_sizes r_byte_padding_checkr# sI  #t #@AA $@AAA~>??rc| tdtjd||t|z }t ||dzz}|d||dzz}|||dzzd}||fS)NContext was already finalized.r r )rr_check_byteslikerlenbuffer_r r"finished_blocksresults r_byte_padding_updater,(s{?@@ 64( uT{G'lzQ7O :*/: ;Foq9;   rNrHrrrrrrbr@rrr rrrFrFs ##  rrFc$eZdZddZddZddZy)ANSIX923c(t|||_yr=r>r?s rr@zANSIX923.__init__rArc,t|jSr=)_ANSIX923PaddingContextr"rs rrDzANSIX923.padders&t77rc,t|jSr=)_ANSIX923UnpaddingContextr"rs rrGzANSIX923.unpadders(99rNrHrJrKr rrrkrks%8:rrkc8eZdZUded<ddZd dZd dZd dZy) rnrMrNc ||_d|_yrPrQr?s rr@z _ANSIX923PaddingContext.__init__rRrcXt|j||j\|_}|Sr=rTrUs rrz_ANSIX923PaddingContext.updaterVrc@tdg|dz zt|gzS)Nrr2rXrYs rr[z _ANSIX923PaddingContext._paddings"aSzTAX&v66rcjt|j|j|j}d|_|Sr=r]r^s rrz _ANSIX923PaddingContext.finalizer_rNrHrr`rrar rrrnrns ##  7rrnc0eZdZUded<ddZddZd dZy) rprMrNc ||_d|_yrPrQr?s rr@z"_ANSIX923UnpaddingContext.__init__rRrcXt|j||j\|_}|Sr=rfrUs rrz _ANSIX923UnpaddingContext.updatergrc^t|j|jt}d|_|Sr=)r9rNr"rr^s rrz"_ANSIX923UnpaddingContext.finalizes+& LL OO "    rNrHrrrir rrrprps ##  rrp)r"rIrNone)r)rMr rr"rIrztyping.Tuple[bytes, bytes])r)rMr"rIr.ztyping.Callable[[int], bytes]rr)r)rMr"rIr7ztyping.Callable[[bytes], int]rr) __future__rrtyping cryptographyrcryptography.exceptionsr"cryptography.hazmat.bindings._rustrrABCMetar r#r,r0r4r9r;rCrFrkrnrpr rrrs # 4  s{{  @ #+0>A$ ) # ) )- ) ) #+0>A$ #+ ( 7 7>2^, : :n2r