HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-31-18-78 6.17.0-1017-aws #17~24.04.1-Ubuntu SMP Tue May 26 21:09:53 UTC 2026 aarch64
User: ubuntu (1000)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/botocore/retries/__pycache__/special.cpython-312.pyc
�

P��e��x�dZddlZddlmZddlmZeje�ZGd�de�Z	Gd�de�Z
y)	z�Special cased retries.

These are additional retry cases we still have to handle from the legacy
retry handler.  They don't make sense as part of the standard mode retry
module.  Ideally we should be able to remove this module.

�N)�crc32)�BaseRetryableCheckerc��eZdZdZd�Zy)�RetryIDPCommunicationError�stsc��|jjj}||jk7ry|j	�}|dk(S)NF�IDPCommunicationError)�operation_model�
service_model�service_name�
_SERVICE_NAME�get_error_code)�self�contextr�
error_codes    �:/usr/lib/python3/dist-packages/botocore/retries/special.py�is_retryablez'RetryIDPCommunicationError.is_retryablesD���.�.�<�<�I�I���4�-�-�-���+�+�-�
��4�4�4�N)�__name__�
__module__�__qualname__r
r�rrrrs���M�5rrc��eZdZdZdZd�Zy)�RetryDDBChecksumErrorzx-amz-crc32�dynamodbc�r�|jjj}||jk7ry|j�y|jj
j
|j�}|�yt|jj�dz}|t|�k7rtjd||�yy)NFl��z@DynamoDB crc32 checksum does not match, expected: %s, actual: %sT)
r
rrr
�
http_response�headers�get�_CHECKSUM_HEADERr�content�int�logger�debug)rrr�checksum�actual_crc32s     rrz"RetryDDBChecksumError.is_retryable!s����.�.�<�<�I�I���4�-�-�-��� � �(���(�(�0�0�4�4�T�5J�5J�K������W�2�2�:�:�;�j�H���3�x�=�(��L�L�+���	
��)rN)rrrr r
rrrrrrs��$���M�rr)�__doc__�logging�binasciir�botocore.retries.baser�	getLoggerrr#rrrrr�<module>r,sA�����6�	��	�	�8�	$��
5�!5�5��0�r