File: //usr/lib/python3/dist-packages/keyring/__pycache__/core.cpython-38.pyc
U
ܦ�\� � @ s� d Z ddlZddlZddlZddlmZmZ ddlmZ ddl m
Z
ddlmZ
ddlmZ e�e�Zdad d
� Zdd� Zd
d� Zdd� Zdd� Zdd� Zdd� Zdd� Zd%dd�Zdd� Zdd� Zdd � Zd!d"� Z d#d$� Z!e� dS )&z1
Core API functions and initialization routines.
� N� )�configparser�filter)�max��backend)� platform_)�failc C s t | tj�std��| adS )z!Set current keyring backend.
z0The keyring must be a subclass of KeyringBackendN)�
isinstancer ZKeyringBackend� TypeError�_keyring_backend)�keyring� r �./usr/lib/python3/dist-packages/keyring/core.py�set_keyring s r c C s t S )z!Get current keyring backend.
)r r r r r �get_keyring s r c C s� t �� } zt�| � W n tk
r* Y nX tj�| d�}tj�|�r\djf t � �}t
|��t|d��}|�d� W 5 Q R X dS )z4
Configure the null keyring as the default.
�
keyringrc.cfgz Refusing to overwrite {filename}�wz7[backend]
default-keyring=keyring.backends.null.KeyringN)
�platform�config_root�os�makedirs�OSError�path�join�exists�format�locals�RuntimeError�open�write)�root�filename�msg�filer r r �disable% s r% c C s t �| |�S )z-Get password from the specified service.
)r �get_password��service_name�usernamer r r r&