HEX
Server: Apache
System: Linux pdx1-shared-a1-29 6.18.39-grsec-noble+ #4 SMP Thu Jul 23 07:53:29 UTC 2026 x86_64
User: dh_bj99yp (22285841)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/boto/s3/__pycache__/acl.cpython-312.pyc
�

ckF[T��Z�ddlmZgd�ZGd�de�ZGd�de�ZGd�de�Zy	)
�)�User)�privatezpublic-readzpublic-read-writezauthenticated-readzbucket-owner-readzbucket-owner-full-controlzlog-delivery-writec�,�eZdZdd�Zd�Zd�Zd�Zd�Zy)�PolicyNc�.�||_d|_d|_y�N)�parent�	namespace�acl)�selfr	s  �-/usr/lib/python3/dist-packages/boto/s3/acl.py�__init__zPolicy.__init__!s�����������c���g}|jjD]�}|j|jjk(r+|j	|j
�d|j����Q|jdk(r
|j
}n(|jdk(r
|j}n|j}|j	|�d|j�����ddj|�zS)Nz (owner) = �
CanonicalUser�Groupz = z<Policy: %s>z, )r�grants�id�owner�append�display_name�
permission�type�uri�
email_address�join)rr�g�us    r
�__repr__zPolicy.__repr__&s����������
	=�A��t�t�t�z�z�}�}�$��
�
�1�>�>�1�<�<�P�Q��6�6�_�,����A��V�V�w�&����A����A��
�
�1�a�l�l�;�<�
	=���	�	�&� 1�1�1rc���|dk(r|jdd�|_y|dk(rt|�|_|jS|dk(rt	|�|_|j
Sy)N�AccessControlPolicy�xmlns�Owner�AccessControlList)�getr
rr�ACLr�r�name�attrs�
connections    r
�startElementzPolicy.startElement5s\���(�(�"�Y�Y�w��5�D�N���7�?��d��D�J��:�:��
�(�
(��4�y�D�H��8�8�O�rc�6�|dk(ry|dk(ryt|||�y)Nr#r$��setattr�rr(�valuer*s    r
�
endElementzPolicy.endElementBs$���7�?��
�(�
(���D�$��&rc���|j�dj|j�}nd}||jj�z
}||jj�z
}|dz
}|S)Nz!<AccessControlPolicy xmlns="{0}">z<AccessControlPolicy>z</AccessControlPolicy>)r
�formatr�to_xmlr�r�ss  r
r4z
Policy.to_xmlJsa���>�>�%�3�:�:�4�>�>�J�A�'�A�	�T�Z�Z�
�
�
 � ��	�T�X�X�_�_�
���	�
%�%���rr)�__name__�
__module__�__qualname__rrr+r1r4�rr
rrs���

2��'�rrc�:�eZdZd	d�Zd�Zd�Zd	d�Zd�Zd�Zd�Z	y)
r&Nc� �||_g|_yr)�policyr)rr=s  r
rzACL.__init__Ws�������rc�:�|jj|�yr)rr)r�grants  r
�	add_grantz
ACL.add_grant[s�������5�!rc�V�t|d|��}|jj|�y)N�AmazonCustomerByEmail)rrr��Grantrr)rrrr?s    r
�add_email_grantzACL.add_email_grant^s&����2I�$1�3�������5�!rc�X�t|d||��}|jj|�y)Nr)rrrrrC)rr�user_idrr?s     r
�add_user_grantzACL.add_user_grantcs%����/�g�\h�i�������5�!rc�t�|dk(r3|jjt|��|jdSy)NrD���)rrrDr's    r
r+zACL.startElementgs0���7�?��K�K���u�T�{�+��;�;�r�?�"�rc�*�|dk(ryt|||�y)NrDr-r/s    r
r1zACL.endElementns���7�?���D�$��&rc�\�d}|jD]}||j�z
}�|dz
}|S)Nz<AccessControlList>z</AccessControlList>)rr4)rr6r?s   r
r4z
ACL.to_xmlts:��!���[�[�	 �E�
������A�	 �	�
#�#���rr)
r7r8r9rr@rErHr+r1r4r:rr
r&r&Us%���"�"�
"��'�rr&c�.�eZdZdZ		dd�Zd�Zd�Zd�Zy)rDz5xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"Nc�X�||_||_||_||_||_||_yr)rrrrrr)rrrrrrrs       r
rzGrant.__init__�s.��$������(������*�����	rc�"�|dk(r
|d|_y)N�Granteezxsi:type)rr's    r
r+zGrant.startElement�s���9���j�)�D�I�rc��|dk(r||_y|dk(r||_y|dk(r||_y|dk(r||_y|dk(ry|dk(r||_yt|||�y)N�ID�DisplayName�URI�EmailAddressrP�
Permission)rrrrrr.r/s    r
r1zGrant.endElement�sd���4�<��D�G�
�]�
"� %�D��
�U�]��D�H�
�^�
#�!&�D��
�Y�
��
�\�
!�#�D�O��D�$��&rc�R�d}|d|j�d|j�d�z
}|jdk(r%|d|jzz
}|d|jzz
}n4|jdk(r|d	|jzz
}n|d
|j
zz
}|dz
}|d|jzz
}|d
z
}|S)Nz<Grant>z	<Grantee z xsi:type="z">rz<ID>%s</ID>z<DisplayName>%s</DisplayName>rz
<URI>%s</URI>z<EmailAddress>%s</EmailAddress>z
</Grantee>z<Permission>%s</Permission>z</Grant>)�	NameSpacerrrrrrr5s  r
r4zGrant.to_xml�s�����	�T�^�^�T�Y�Y�
G�G���9�9��'�
�����(�(�A�
�0�4�3D�3D�D�D�A�
�Y�Y�'�
!�
��4�8�8�+�+�A�
�2�T�5G�5G�G�G�A�	�\���	�
*�T�_�_�
<�<��	�Z����r)NNNNNN)r7r8r9rXrr+r1r4r:rr
rDrD|s!��G�I�6:�<@���
'� 
rrDN)�boto.s3.userr�CannedACLStrings�objectrr&rDr:rr
�<module>r\s8��,�*��3�V�3�l$�&�$�N/�F�/r