403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.206
Web Server : Apache/2.4.62 (Ubuntu)
System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64
User : www-data ( 33)
PHP Version : 8.4.22
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/xdg/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/xdg/__pycache__/IniFile.cpython-310.pyc
o

��_H5�@s~dZddlZddlZddlZddlZddlmZmZmZm	Z	m
Z
mZmZddl
ZddlmZddlZdd�ZGdd�d�ZdS)	z5
Base Class for DesktopEntry, IconTheme and IconData
�N)�ParsingError�DuplicateGroupError�NoGroupError�
NoKeyError�DuplicateKeyError�ValidationError�debug)�ucCs(z	|�dd�WdStyYdSw)z>Return True if a string consists entirely of ASCII characters.�ascii�strictTF)�encode�UnicodeError)�s�r�-/usr/lib/python3/dist-packages/xdg/IniFile.py�is_ascii
s�rc@seZdZdZdZdZdZdZd=dd�Zdd�Z	d=dd	�Z
d>dd�Zd
d�Zdd�Z
d=dd�Zd?dd�Zdd�Zdd�Zd@dd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�ZdAd*d+�ZdAd,d-�Zd.d/�Zd0d1�ZdBd3d4�Zd5d6�Zd7d8�Z d=d9d:�Z!d;d<�Z"dS)C�IniFile�NFcCst�|_|r
|�|�dSdS�N)�dict�content�parse)�self�filenamerrr�__init__s�zIniFile.__init__cCst|j|j�Sr)�cmpr)r�otherrrr�__cmp__#szIniFile.__cmp__cCs�|j}tj�|�std|��ztj|dddd�}Wnty0}ztr%|�WYd}~dSd}~ww|�}|D]r}|�	�}|s?q6|ddkrFq6|dd	kre|�
d	��d
�}tr`|�|�r`t
||��i||<q6z
|�dd�\}}	Wnty}td
||��w|�	�}ztr�|�||�r�t|||��|	�	�|||<Wq6ttfy�td|��wWd�n1s�wY||_d|_|r�|D]}
|
|vr�|
|_n
q�td|d|��|j�di�}|�d|�dd��|_dS)zyParse an INI file.
        
        headers -- list of headers the parser will try to select as a default header
        �File not found�r�utf-8�replace)�encoding�errorsNr�#�[�]�=�zInvalid line: z#Parsing error on key, group missingFz[%s]-Header missingz
Desktop EntryzX-GNOME-Gettext-DomainzX-Ubuntu-Gettext-Domain)r�os�path�isfiler�io�open�IOErrorr�strip�lstrip�rstrip�hasGroupr�split�
ValueError�hasKeyr�
IndexError�UnboundLocalErrorr�tainted�defaultGroup�get�gettext_domain)rr�headersr�fd�e�line�currentGroup�key�value�headerrrrr&sf
��

�
��� �

�z
IniFile.parse�stringc	Cs�|s|j}||jvr>||j|vr>|r6|�||�}|�d�s!|js)|j||}n5t�|j|j||�}n(|j||}n |sBtr\||jvrMt||j	��||j|vr[t
|||j	��nd}|dkrj|�|�}g}	n|g}|D]a}|dkr{|�|�}nI|dkr�zt
|�}Wn>ty�d}Yn4w|dkr�zt|�}Wn(ty�d}Ynw|d	kr�t�|�}n|d
kr�|�d�\}
}t
|
�t
|�f}|dkr�|	�|�qo|}	qo|	S)Nr&rT�boolean�integerr�numericg�regex�point�,)r9r�_IniFile__addLocale�endswithr;�gettext�dgettextrrrr�getList�_IniFile__getBoolean�intr4�float�re�compiler3�append)rrA�group�locale�type�listrrB�values�result�x�yrrrr:osX
�
��zIniFile.getcCslt�d|�r
t�d|�}nt�d|�rt�d|�}nt�d|�r't�d|�}n|g}|ddkr4|��|S)Nz	(?<!\\)\;z(?<!\\);z	(?<!\\)\|z(?<!\\),���r)rS�searchr3�pop)rrDrYrrrrO�szIniFile.getListcCs<|dks|dks|dkrdS|dks|dks|dkrdSdS)	Nr(�true�TrueTr�false�FalseFr)rrErrr�__getBoolean�s
zIniFile.__getBooleancCs>|s|j}tjjD]}d||f}||j|vr|Sq	|S)z3add locale to key according the current lc_messagesz%s[%s])r9�xdg�Locale�langsr)rrArV�lang�langkeyrrr�__addLocale�s�zIniFile.__addLocale�AllcCs�g|_g|_tj�|j�d|_|��|jD],}|�	|�|j|D]}|�
||j|||�|j||dkrB|j�d|�q#qd}|dksN|dkrZ|jD]}|d|7}qQ|dksb|dkrn|jD]}|d|7}qe|rvt||j��dS)	z�Validate the contents, raising :class:`~xdg.Exceptions.ValidationError`
        if there is anything amiss.
        
        report can be 'All' / 'Warnings' / 'Errors'
        r(rzValue of Key '%s' is emptyrl�Warningsz
- �ErrorsN)
�warningsr#r)r*�splitextr�
fileExtension�checkExtrasr�
checkGroup�checkKeyrUr)r�reportrVrA�msgr?rrr�validate�s,

��

�zIniFile.validatecC�dSrr�rrVrrrrs��zIniFile.checkGroupcCrxrr)rrArBrVrrrrt�rzzIniFile.checkKeycCs�|dkr
|�|�}n|g}|D]\}|dkr|�|�}|dkrq|dkr)|�|�}n'|dkr3|�|�}n|dkr=|�|�}n|dkrG|�|�}n	|dkrP|�|�}|d	kr_|j�d
||f�q|dkrk|j	�d|�qdS)
NTrD�localestringrErGrFrHrIr(z'%s' is not a valid %s�zValue of key '%s' is deprecated)
rO�checkString�checkBoolean�checkNumber�checkInteger�
checkRegex�
checkPointr#rUro)rrArBrXrYrZ�coderrr�
checkValue�s0

��zIniFile.checkValuecCrxrr�rrrrrrrzzIniFile.checkExtrascCs0|dks|dkr
dS|dks|dksdSdSdS)N�1�0r|rarcr(r�rrBrrrr~s
�zIniFile.checkBooleancC�zt|�WdSYdS�Nr()rRr�rrrr"�zIniFile.checkNumbercCr�r�)rQr�rrrr�)r�zIniFile.checkIntegercCst�d|�sdSdS)Nz^[0-9]+,[0-9]+$r()rS�matchr�rrrr�0s�zIniFile.checkPointcCst|�rdSdS)Nrr()rr�rrrr}4szIniFile.checkStringcCszt�|�WdSYdSr�)rSrTr�rrrr�7szIniFile.checkRegexc
Cs�|s
|js
tdd��|r||_n|j}tj�|�r,tj�tj�|��s,t�tj�|��tj|ddd��p}|r>|�	t
d��|jrj|�	t
d�|j�|j|j�
�D]\}}|�	t
d�||f�qS|�	t
d	��|j�
�D]-\}}||jkr�|�	t
d�|�|�
�D]\}}|�	t
d�||f�q�|�	t
d	��qoWd�n1s�wY|r�t�|�j}|tjBtjBtjB}	t�||	�d
|_dS)Nrr�wr )r"z#!/usr/bin/env xdg-open
z[%s]
z%s=%s
�
F)rrr)r*�dirname�isdir�makedirsr,r-�writer	r9r�items�stat�st_mode�S_IXUSR�S_IXGRP�S_IXOTH�chmodr8)
rr�trusted�fprArB�namerV�oldmode�moderrrr�>s:

 
���
z
IniFile.writecCs~|s|j}|dkrttjj�dkr|dtjjdd}z	||j||<Wn
ty3t||j��w||�	||�k|_
dS)NTrr%r&)r9�lenrfrgrhr�KeyErrorrrr:r8)rrArBrVrWrrr�setgs�zIniFile.setcCs2|�|�rtr
t||j��dSi|j|<d|_dS�NT)r2rrrrr8ryrrr�addGroupvs
�

zIniFile.addGroupcCs4||jv}|r|j|=d|_|Strt||j��|Sr�)rr8rrr)rrV�existedrrr�removeGroup~s
�zIniFile.removeGroupTc
Cs�|s|j}z2|r*t|j|�D]}t�d|tjjd|�r)||kr)|j||=q|j|�|�}d|_	|WSt
y]}ztrR||krKt||j
��t|||j
��WYd}~dSd}~ww)N�^�$Tr)r9rYrrSr�rfrgrHr`r8r�rrrr)rrArV�localesr�rBr>rrr�	removeKey�s&$���zIniFile.removeKeycCs
|j��Sr)r�keysr�rrr�groups��
zIniFile.groupscCs
||jvSr)rryrrrr2�r�zIniFile.hasGroupcCs|s|j}||j|vSr)r9r)rrArVrrrr5�szIniFile.hasKeycCs|jSr)rr�rrr�getFileName�szIniFile.getFileNamer)NFrDFF)rl)rDF)NFr�)#�__name__�
__module__�__qualname__r9rqrr;r8rrrr:rOrPrKrwrsrtr�rrr~rr�r�r}r�r�r�r�r�r�r�r2r5r�rrrrrsB


I;

(


)


r)�__doc__rSr)r�r,�xdg.Exceptionsrrrrrrr�
xdg.Localerf�xdg.utilr	rMrrrrrr�<module>s $

Youez - 2016 - github.com/yon3zu
LinuXploit