Your IP : 216.73.216.209
3
�<�e��@s,ddlZddlZejj�ZGdd�d�ZdS)�Nc@seZdZdd�Zdd�ZdS)�polkitcCs4tj�|_|jjdddd�|_tj|jdd�|_dS)Nzorg.freedesktop.PolicyKit1z%/org/freedesktop/PolicyKit1/AuthorityT)Zfollow_name_owner_changesz$org.freedesktop.PolicyKit1.Authority)Zdbus_interface)�dbusZ SystemBus�_busZ
get_object�_proxyZ Interface�
_authority)�self�r�/usr/lib/python3.6/polkit.py�__init__s
zpolkit.__init__c
Cs�|dks|dkrdSi}d}d}dd|if}y|jj|||||�d}Wn�tjjtfk
r�}zhtjd|�y|jj |�} Wn2tjjk
r�}ztjd |�dSd}~XnX| dkr�d
SdSWYdd}~XnX|r�dSdS)
z�Check authorization, return codes:
1 - authorized
2 - polkit error, but authorized with fallback method
0 - unauthorized
-1 - polkit error and unauthorized by the fallback method
-2 - polkit error and unable to use the fallback method
NF��zsystem-bus-name�namerzerror querying polkit: %sz-error using fallback authorization method: %s�������)
rZCheckAuthorizationr�
exceptionsZ
DBusException�
ValueError�log�errorrZ
get_unix_user)
rZsenderZ action_idZdetails�flagsZcancellation_idZsubject�ret�eZuidrrr �check_authorizations& zpolkit.check_authorizationN)�__name__�
__module__�__qualname__r
rrrrr rsr)rZ
tuned.logsZtunedZlogs�getrrrrrr �<module>s
?>