File: //usr/lib/python3/dist-packages/nacl/bindings/__pycache__/crypto_generichash.cpython-38.pyc
U
�֫[J � @ s� d dl mZmZmZ d dlmZ d dlmZ d dl m
Z
mZ d dlm
Z
e�� Ze�� Ze�� Ze�� Ze�� Ze�� Ze�� Ze�� Ze�� ZdZ dZ!dd � Z"ed
d
d
fdd�Z#d
d
d
efd
d�Z$dd� Z%dd� Z&dd� Z'dS )� )�absolute_import�division�print_function)�
integer_types)�
exceptions)�ffi�lib)�ensurez!{0} length greater than {1} bytesz{0} greater than {1}c C s� t t|t�dtjd� t t|t�dtjd� t t|t�dtjd� t t| t�dtjd� t | tkt�dt�tj d� t t
|�tkt�dt�tj d� t t
|�t
kt�dt
�tj d� t t
|�tkt�d t�tj d� d
S )zCheck hash paramterszKey must be a bytes sequence�ZraisingzSalt must be a bytes sequencezPerson must be a bytes sequencez%Digest size must be an integer numberZDigest_sizeZKeyZSaltZPersonN)r �
isinstance�bytes�exc� TypeErrorr �crypto_generichash_BYTES_MAX�_TOOBIG�format�
ValueError�len�crypto_generichash_KEYBYTES_MAX� _OVERLONG�crypto_generichash_SALTBYTES� crypto_generichash_PERSONALBYTES)�digest_size�key�salt�person� r �B/usr/lib/python3/dist-packages/nacl/bindings/crypto_generichash.py�_checkparams'