403Webshell
Server IP : 209.205.66.10  /  Your IP : 216.73.216.173
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux ammon 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
User :  ( 1006)
PHP Version : 8.5.8
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/cupshelpers/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/cupshelpers/__pycache__/openprinting.cpython-310.pyc
o

�vb�J�@s�ddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZddl
mZdgZ
dZdd	�ZGd
d�dej�ZGdd�d�Zd
d�ZdS)�N)�XML�)�Device��_debugprint�OpenPrintingg.@cCsH|��}|�dd�}|�d�}|dkr"|�dd�}|�d�}|dks|S)N�
� z  ���)�strip�replace�find)�text�result�i�r�:/usr/lib/python3/dist-packages/cupshelpers/openprinting.py�_normalize_space s

�rc@s&eZdZddd�Zdd�Zdd�ZdS)	�_QueryThreadNcCsDtj�|�||_||_||_||_d|_|�d�t	d|�dS)N�T�+%s)
�	threading�Thread�__init__�parent�
parameters�callback�	user_datar�	setDaemonr)�selfrrrrrrrr*s
z_QueryThread.__init__cC�td|�dS�Nz-%sr�rrrr�__del__5�z_QueryThread.__del__cCs�d}ddd�}dtj�|j�|jjd|jjdf}d|jj||f|_d|_d	}z*tj	j
|j|d
�}tj	j|td��}|�
�|_d}Wd�n1sNwYWn	t��|_Ytd|�|jdurt|�||j|j�dSdS)
Nz
/query.cgiz!application/x-www-form-urlencodedz
text/plain)zContent-type�Acceptz%s&uilanguage=%s&locale=%srzhttps://%s%s?%srr)�headers��timeoutz%s: query complete)�urllib�parse�	urlencoderr�language�base_url�urlr�request�Request�urlopen�
HTTPS_TIMEOUT�read�sys�exc_inforrr)r�
query_commandr&�params�status�req�resprrr�run8s4�

��
��
�z_QueryThread.run�N)�__name__�
__module__�__qualname__rr#r;rrrrr)s
rc@sDeZdZddd�Zdd�Zdd�Zddd	�Zdd
d�Zddd
�ZdS)rNcCsz|durddl}z|�|j�}Wn|jyd}Ynw||_d|_d|_d|_td|j|j|jf�td|�dS)z�
        @param language: language, as given by the first element of
        locale.setlocale().
        @type language: string
        Nr�Czwww.openprinting.orgrzOpenPrinting: Init %s %s %sr)	�locale�	getlocale�LC_MESSAGES�Errorr,r-�onlyfree�onlymanufacturerr)rr,rArrrrTs�zOpenPrinting.__init__cCr r!rr"rrrr#lr$zOpenPrinting.__del__cCszd|_WdSYdS)zU
        Cancel an operation.

        @param handle: query/operation handle
        N)r)r�handlerrr�cancelOperationoszOpenPrinting.cancelOperationcCst||||�}|��|S)ad
        Run a web query for a driver.

        @type parameters: dict
        @param parameters: URL parameters
        @type callback: function
        @param callback: callback function, taking (integer, user_data, string)
        parameters with the first parameter being the status code, zero for
        success
        @return: query handle
        )r�start)rrrr�
the_threadrrr�webQuery{szOpenPrinting.webQuerycCs6dd�}d|dd�}tdt|��|�||||f�S)an
        Search for printers using a search term.

        @type searchterm: string
        @param searchterm: search term
        @type callback: function
        @param callback: callback function, taking (integer, user_data, string)
        parameters with the first parameter being the status code, zero for
        success
        @return: query handle
        cSs^|\}}|dkr||||�dSd}i}z@t|�}|�d�D]4}|�d�}|�d�}	|�d�}
|durR|	durR|
durR|j}|	j}|
j}
|rR|rR|
rR|d|
||<qWn
d}t��}Ytdt|��z	||||�WdSt��\}}}tj	|dd	�}t
|�r�|dt
|�d�}t�||�}t�|�D]}t
|���q�t
|d���YdS)
Nr�printer�id�make�modelr	rz5searchPrinters/parse_result: OpenPrinting entries: %s)�limit)r�findallr
rr4r5r�repr�	traceback�
extract_tb�len�format_exception_only�	format_tb�printr)r8�datarrr�printers�rootrLrMrNrO�idtxt�maketxt�modeltxt�type�value�tb�tblast�extxt�linerrr�parse_result�sF


��

z1OpenPrinting.searchPrinters.<locals>.parse_resultrZ�xml)r_rL�formatz)searchPrinters: Querying OpenPrinting: %s)rrRrK)r�
searchtermrrrer7rrr�searchPrinters�s
)�zOpenPrinting.searchPrinterscCs�dd�}t|t�r|j}t��}|dkrt��ddkrd}dddd|dt|j�t|j�|d	d
�
}|r8|�	|�t
dt|��|�||||f�S)ah
        Obtain a list of printer drivers.

        @type model: string or cupshelpers.Device
        @param model: foomatic printer model string or a cupshelpers.Device
        object
        @type callback: function
        @param callback: callback function, taking (integer, user_data, string)
        parameters with the first parameter being the status code, zero for
        success
        @type extra_options: string -> string dictionary
        @param extra_options: Additional search options, see
        http://www.linuxfoundation.org/en/OpenPrinting/Database/Query
        @return: query handle
        c	Ss�|\}}|dkr||||��z�|jddd��d�}t|�}i}|�d�D�]�}|j�d�}|dur3q%i}	dD]}
|�|
�}|durN|jdurNt|j�|	|
<q7|�d�}|durb|jdurb|j|	d<d|	vsl|	ddur�|�d	�}|dur�|j}|dur�z#t	j
j|td
��}
|
�
��d�|	d<Wd�n1s�wYWn
td|�Yd
D]}|�|�du|	|<q�|	d|	d<g}|�d�}|dur�|�d�D]*}i}|jdur�t|j�|d<nd|d<|j�d�|d<|j�d�|d<|�|�q�|�r||	d<d|	v�sd|	v�rq%|�d�}|du�r5i}dD]}
|�|
�}|du�r+|j||
<�q|�r5||	|j<i}|�d�}|du�r�t|�D]M}i}|�d�D]=}i}dD]}
|�|
�}|du�re|j||
<�qT|�d�}|du�r�t|�D]
}|j|�di�|j<�qu|||jd<�qN|||j<�qE|�r�||	d<g}|�d�}|du�r�t|�D]	}|�|j��q�|�r�||	d<|	||<tdt|��q%|d||�WdS|d|t���YdS) NrzUTF-8r)�errors�driverrM)�namer.�supplier�license�shortdescription�licensetext�licenselinkr'zutf-8zCannot retrieve %s)�nonfreesoftware�recommended�patents�thirdpartysupplied�manufacturersuppliedrr�freesoftware�supportcontacts�supportcontactrl�r.�level�
functionality)r�lineart�graphics�photo�speed�packages�package)�realversion�version�releaser.�pkgsys�fingerprint�repositories�file�ppdsz2listDrivers/parse_result: OpenPrinting entries: %sr)�decode�encoderrQ�attrib�getr
rrr)r/r1r2r3r�append�tag�list�
setdefaultrRr4r5)r8rYrrrr[�driversrkrM�dict�	attribute�element�license_urlr:�booleanrx�	container�scryr|r��arch�rpmsr��rpmr�r�r��eachrrrre�s�+
�


���

�




�





�



z.OpenPrinting.listDrivers.<locals>.parse_result�x86_64r�32bit�i386r��1rf)
r_�moreinfo�
showprinterid�onlynewestdriverpackages�
architectures�noobsoletesrErFrLrgz&listDrivers: Querying OpenPrinting: %s)
�
isinstancerrM�platform�machine�architecture�strrErF�updaterrRrK)rrOrr�
extra_optionsrer�r7rrr�listDrivers�s,
"�

zOpenPrinting.listDriversr<)NN)	r=r>r?rr#rHrKrir�rrrrrSs


<csPddlm�ddlm�ddl����G���fdd�d�}|�}���dS)Nr��Gdk��GtkcsJeZdZ�fdd�Z�fdd�Z�fdd�Z��fdd�Z�fd	d
�ZdS)z_simple_gui.<locals>.QueryAppcs�t�|_�jdddd�|_|j��j�jjdddd�|j�d�|jj	�
d	��j�d
d�}|jj	�
|ddd�|�d����|_|�
|jd
d
d����}���|_|�|j�|�
|ddd�|j�d|j�|j��dS)
NzOpenPrinting query applicationT)�title�
transient_for�modal�Search�
�List���Fr�response)r�openprinting�Dialog�main�add_buttons�STOCK_CLOSE�ResponseType�CLOSE�set_border_width�vbox�set_spacing�VBox�new�
pack_start�Entry�entry�ScrolledWindow�TextView�tv�add�connectr��show_all)rr��swr�rrr�s*��


z&_simple_gui.<locals>.QueryApp.__init__csd|�jjks|�jjkr���|dkr|j�|j��|j�|dkr0|j�	|j��|j
�dSdS)Nr�r�)r�r��DELETE_EVENT�	main_quitr�rir��get_text�search_printers_callbackr��list_drivers_callback)r�dialogr�r�rrr��s���z&_simple_gui.<locals>.QueryApp.responsecsR|dkr|d�d}|��D]}||d7}q���|j���|����dS)Nrrrzr)�values�
threads_enterr��
get_buffer�set_text�
threads_leave)rr8rrZrrLr�rrr��sz6_simple_gui.<locals>.QueryApp.search_printers_callbackcs>|dkr|d���|�}���|j���|����dS)Nrr)�pformatr�r�r�r�r�)rr8rr�r)r��pprintrrr��s
z3_simple_gui.<locals>.QueryApp.list_drivers_callbackcs<���|j���t|��tdd��t|�����dS)Nz
result.xml�w)r�r�r�r�r��open�writer�)rr8rrr�rr�query_callback�sz,_simple_gui.<locals>.QueryApp.query_callbackN)r=r>r?rr�r�r�r�r�r�r�r�rr�QueryApp�s	r�)�
gi.repositoryr�r�r��threads_initr�)r��qrr�r�_simple_gui�s>r�)�urllib.requestr)�urllib.parse�urllib.errorr�rrSr4�xml.etree.ElementTreerrzrr�__all__r2rrrrr�rrrr�<module>s0	*B

Youez - 2016 - github.com/yon3zu
LinuXploit