|
Server : LiteSpeed System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64 User : nandedex ( 1060) PHP Version : 8.1.33 Disable Function : NONE Directory : /opt/cppython/lib/python3.8/site-packages/nacl/bindings/__pycache__/ |
U
O��g� � @ s� d dl mZ d dlmZmZ d dl mZ eeed�dd�Z ee
ed�dd �Zee
ed�d
d�Zeed�d
d�Z
eeed�dd�ZdS )� N)�ffi�lib)�ensure)�inp1�inp2�returnc C s� t t| t�tjd� t t|t�tjd� tt| �t|��}t�d|�}t�d|�}t� || t| �� t� ||t|�� t| �t|�k}t
�|||�dk}|o�|S )zA
Compare contents of two memory regions in constant time
�Zraisingzchar []r )r �
isinstance�bytes�exc� TypeError�max�lenr �new�memmover �
sodium_memcmp)r r �lnZbuf1Zbuf2ZeqLZeqC� r �@/opt/cppython/lib/python3.8/site-packages/nacl/bindings/utils.pyr s r )�s� blocksizer c C s� t t| t�tjd� t t|t�tjd� |dkr6tj�t| �}|| }t� d|�}t� dd�}t�
|| |� t�|||||�}t |dkdtj
d� t�||d �dd� S )z�
Pad the input bytearray ``s`` to a multiple of ``blocksize``
using the ISO/IEC 7816-4 algorithm
:param s: input bytes string
:type s: bytes
:param blocksize:
:type blocksize: int
:return: padded string
:rtype: bytes
r r �unsigned char []� size_t []� zPadding failureN)r r r
r r �int�
ValueErrorr r r r r �
sodium_pad�CryptoError�buffer)r r �s_lenZm_len�bufZp_len�rcr r r r ) s r c C sn t t| t�tjd� t t|t�tjd� t| �}t�dd�}t �
|| ||�}|dkr^t�d��| d|d � S )z�
Remove ISO/IEC 7816-4 padding from the input byte array ``s``
:param s: input bytes string
:type s: bytes
:param blocksize:
:type blocksize: int
:return: unpadded string
:rtype: bytes
r r r r zUnpadding failureN)r r r
r r r r r r r �sodium_unpadr )r r r Zu_lenr! r r r r"