
    `fM                     f    d Z ddlZddlmZ ddlZddlmZ ddlm	Z	m
Z
 dZddZedd
            ZdS )z1Utilities used by the message signing serializer.    N)contextmanager)hashes)SecurityErrorreraise)get_digest_algorithmreraise_errorssha256c                 h    | J  t          t          |                                                       S )z6Convert string to hash object of cryptography library.)getattrr   upper)digests    G/var/www/html/env/lib/python3.11/site-packages/celery/security/utils.pyr   r      s.    *766<<>>**,,,    {0!r}c           	   #      K   |t           j        fn|}	 dV  dS # |$ rX}t          t          t          |                     |                    t          j                    d                    Y d}~dS d}~ww xY w)z8Context reraising crypto errors as :exc:`SecurityError`.N   )cryptography
exceptionsr   r   formatsysexc_info)msgerrorsexcs      r   r   r      s       ,2>l%''vF# # # #cjjoo..q!	# 	# 	# 	# 	# 	# 	# 	# 	##s    A8AA33A8)r	   )r   N)__doc__r   
contextlibr   cryptography.exceptionsr   cryptography.hazmat.primitivesr   celery.exceptionsr   r   __all__r   r    r   r   <module>r"      s    7 7 



 % % % % % %     1 1 1 1 1 1 4 4 4 4 4 4 4 4
5- - - - # # # # # #r   