__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

���ge����SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK7 SSKJ	r	J
r
Jr SSKJ
r
 Sr\R"S5rSr\b/\R%S5(a\R'S5urr\S	-
r\\R*S'\	R,"S
5r\b\\R*S'SrSrSrSr S
r!Sr"Sr#Sr$Sr%Sr&Sr'Sr(Sr)Sr*Sr+Sr,Sr-Sr.Sr/Sr0S r1S!r2S"r3S#r4S$r5S%r6S&r7S'r8S(r9S)r:S*r;S+r<S,r=Sr>Sr?S[email protected]/rCS/rDSrES
rFSrGSrHSrISrJS-rKS.rLS0rMS1rNS2rOS3rPS4rQS5rRS6rSS7rTS8rUS9rVS:rWS;rXS<rYS=rZS>r[S?r\S@r]SAr^SBr_SCr`SDraSErbSFrcSGrdSHreSIrfSJrgSKrhSLriSMrjSNrkSOrlSPrmSQrnSRroSSrpSTrqSUrr\R�"SV\R�5ru\R�"SW\R�5rw\R�"SX\R�5rx\R�"SY\R�5rySZrzS[r{S\r|S�S]jr}S�S^jr~S_rS`r�Sar�Sbr�\R�"Sc\GR5r�/SdQr�\�"\
GRGR55H"r�Se\�-r�\�\�;dM\�GR\�5 M$ \�SSr�\�GR/SfQ5 Sgr�Shr�Sir�Sjr�Skr�Slr�S�Smjr�Snr�Sor�Spr�Sqr�Srr�Ssr�Str�Sur�Svr�Swr�Sxr�Syr�Szr�S{r�S�S|jr�S�S}jr�S~r�Sr�S�r�S�S�jr�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�S�r�g!\a= \R"S5(d"\R5S5 \R9S
5 GN�f=f)��N)�*)�utils�models�os_utils)�PY3z!~`!@#$%^&*()=+[]{}()\/,.<>?'";:| �LANG�C�.z.UTF-8�cupsext�HPLIP_BUILDz=CUPSEXT could not be loaded. Please check HPLIP installation.������d�e�f�g�h�i�j�k�l�m���i@i@i@i@i@i@i@i@i	@i
@i@i@i
@i@���iiiiiiiiiii	i
iii
iiiiiiiiiiiiiiiiiiii	i
iiz\*NickName:\s*\"(.*)"z/^loglevel\s?(debug|debug2|warn|info|error|none)z.*hp-(.*?)(-.*)*\.ppd.*z.*hp-(.*?)(_.*)*\.ppd.*c���[5n[R"5nURS5n/nUHnX;dM
X2SnM [RHnXT;dM
Us $ g)NFzfamily-class)�
getPPDPathr�	ModelData�read_all_files�FAMILY_CLASSES)�model�
models_dir�m�dict�family_type�fs      �/usr/share/hplip/prnt/cups.py�getFamilyClassNamer.�sd����J�����A�	
�	�	�%�	 �D��K�
���:��w�~�.�+���
"�
"�����8�#�c�~�[R"5nURS5nUH�nX;a�[SX!5 SnX2UR	5;aX!SS-nM:URS5(aUS-nMWURS5(aUR
SS5nUS-nM�SU-S-nM�M� W$)	ze
get ppds from models.dat for postscript printers
for pclm printers forming ppd name from model name
Fzdict[m]�ppd-name�.gz�apolloz.ppd.gz�hp_�hp-)rr$r%�print�keys�
startswith�replace)r'r)r*�key�ppd_name�model1s      r-�
getPpdNamer=�s���	����A�	
�	�	�%�	 �D�
���:�
�	�$�'�
"��#�
��G�L�L�N�
"��w�z�*�U�2�X�� � ��*�*��	�/���"�"�5�)�)����u�U�3�� ��*����+�i�/���)�*�Or/c��SnSn[US5nUH9nSU;dMURS5nXES-[U5S-
nUS:XdM7SnM; U$)Nr�/etc/hp/hplip.conf�rzclass-driver�=r
�yes��open�find�len)�ppds�family_check�filename_config�	file_conf�line�count�family_check_strs       r-�isfamilydrvrN�se���L�
+�O��_�S�)�I����T�!��I�I�c�N�E�#�!�G�C��I�a�K�8���5�(� ����r/c���Uc/n[RRS5U-nUHKn[RRUS5n[RR
U5(dMIUs $ g)zo
Returns the CUPS ppd path (not the foomatic one under /usr/share/ppd).
Usually this is /usr/share/cups/model.
N�;z
cups/model)�prop�ppd_search_path�split�os�path�join�exists)�addtional_paths�search_pathsrU�ppd_paths    r-r#r#�s`��
�����'�'�-�-�c�2�_�D�L����7�7�<�<��l�3��
�7�7�>�>�(�#�#��O�r/c��Sn[US5nUH/nSU;dMURS5nX4S-[U5S-
nM1 W$)z
return path for hplip ppds. 
r?r@zppd=rAr
rC)rXrIrJrKrLrZs      r-�getPPDPath1r\�sP��
+�O��_�S�)�I����T�>��I�I�c�N�E��!�G�C��I�a�K�0�H�	��Or/c���/n/n/n[RRS5(aURS5 [RRS5(aURS5 UH(nUR	[
R
"U55 M* UHnn[
US5nUHYnURS5(aM[U5S:�dM,UR5upxp�US;dMHURU5 M[ Mp URS	5 URS
5 URS5 URS5 U$![a M�f=f)
zW
Scan all /etc/cups/*.convs and /usr/share/cups/mime
files for allowable file formats.
z	/etc/cupsz/etc/cups/*.convsz/usr/share/cups/mimez/usr/share/cups/mime/*.convsr@�#r
)zapplication/octet-streamzapplication/vnd.cups-postscriptzimage/x-bmpztext/cppzapplication/x-pythonzapplication/hplip-fax)rTrUrW�append�extend�globrDr8rFrS�
ValueError)�paths�allowable_mime_types�filesrUr,�	conv_filerK�source�dest�cost�progs           r-�getAllowableMIMETypesrks/��

�E����E�	�w�w�~�~�k�"�"�
���(�)�	�w�w�~�~�,�-�-�
���3�4���
���T�Y�Y�t�_�%��
����C�L�	��D��?�?�3�'�'�C��I��M��04�
�
��,�F�$��!`�`�(�/�/��7��	����
�.����
�+���� 6�7���� 7�8����"����s�E�
E'�&E'c�D�URS5(a'[R"US5RS5nO[	US5RS5n[
R
URS55RS5nU$![a SnU$f=f)Nr2r@i�utf-8r
�)
�endswith�gzip�GzipFile�readrD�nickname_pat�search�decode�group�AttributeError)r,�nickname�descs   r-�getPPDDescriptionrz0s����z�z�%����=�=��C�(�-�-�d�3����3�<�$�$�T�*����"�"�8�?�?�7�#;�<�B�B�1�E���K�������K��s�3B�B�Bc��[5upn0nUS:Xa�US:a�[RSS5n[R	SU-5 [
R"USSS9HTn[U5nS	U;aMS
UR5;aM,S
U;aM4XcU'[R	U<SU<35 MV U$[R	S5 [R5n[5n[RSS
S5n	U	(a$[RRU	5(dSn	[R	SU-5 [R	SU	-5 UGH6n
U
(dM
SU
R5;d#SU
R5;dM7XzSS:XdMDXzSnS	UR5;aMaS
UR5;aMwS
U
;aM[RRU
5(aU
nO�[RRX�5n[RRU5(dG[RRX�5n[RRU5(dU
nOXcU'GM9 U$![ a U
nNf=f![ a U
nN+f=f)Nr
r�dirs�ppdz&(CUPS 1.1.x) Searching for PPDs in: %szHP*ppd*;hp*ppd*T��pattern�	abs_paths�foo2�
gutenprintz: z8(CUPS 1.2.x) Getting list of PPDs using CUPS_GET_PPDS...�ppdbasez/usr/share/ppdzCUPS PPD base path = %szFoomatic PPD base path = %sr5r4zppd-make�HPzppd-make-and-model)�getVersionTuple�sys_conf�get�log�debugr�	walkFilesrz�lowerr�
getPPDListr#rTrUrWrVrw)�major�minor�patchrG�ppd_dirr,ry�ppd_dict�
cups_ppd_path�foomatic_ppd_pathr}rUs            r-�
getSystemPPDsr�>sC��)�+��E�%�
�D���z�e�a�i��,�,�v�u�-���	�	�:�W�D�E�����2C�t�T�A�$�Q�'�D��d�N� �D�J�J�L�0� �A�%��Q���	�	�a��.�/�U�x�K�c	�	�	�L�M��%�%�'��"��
�$�L�L���<L�M�� ������7H�(I�(I� 0���	�	�+�m�;�<��	�	�/�2C�C�D��C�����	�	��#�u��	�	��';��
�j�)�T�1��}�%9�:���$�*�*�,�.�$��
�
��4�$��+��w�w�~�~�c�*�*�"��3�#%�7�7�<�<�0A�#G�D�$&�7�7�>�>�$�#7�#7�!3�+-�7�7�<�<�
�+K�D�,.�7�7�>�>�$�+?�+?�/2���$8�"&��J�G�L�K��(6�!/�+.�D�!/��
 .�'�#&�D�'�s$�
J2�J � J/�.J/�2K�Kc�T�[U5[U5p2X#:�aXpX2p2[[US-55n[SUS-5H]nXE/S/U--pF[SUS-5H=nXgS-XGS-
S-p�XgS-
n
XS-
XS-
:waU
S-n
[X�U
5XG'M? M_ XB$)zU
Calculates the Levenshtein distance between a and b.
Written by Magnus Lie Hetland.
r
r)rF�list�range�min)�a�b�nr)�current�i�previous�j�add�delete�changes           r-�levenshtein_distancer��s���
�q�6�3�q�6�q��u��!��!��5��1��:��G�
�1�Q�q�S�\��#�S�!��Q��Y�'��q��1���A�"�+�a�-��1���a�����c�]�F��1��v��Q�3����!����S�&�1�G�J����:�r/z.*?(\d+))z	foomatic:r5r4zhp r2z.ppdzdrv:z-pclz-pcl3z	-jetreadyz-zxsz-zjsz-psz-postscriptz-pdfz-jrz-lidlz-lidilz-ldlz-hpijsz-%s)z-seriesz series�_seriesc�d�UR5n[HnURUS5nM U$�Nrn)r��STRIP_STRINGS2r9�r'�xs  r-�stripModel2r��s.���K�K�M�E�
���
�
�a��$����Lr/c�d�UR5n[HnURUS5nM U$r�)r��
STRIP_STRINGSr9r�s  r-�
stripModelr��s.���K�K�M�E�
���
�
�a��$����Lr/c��[RS5 0n0n[Rn[RSU-5 UHjn[	[
RRU55n[X5X5'X5S:a[RSXcU4-5 [XCU5nMl [RSU-5 UH_nX5U:XdM
UHFn[
RRU5[
RRU5:XdME MW XX%'Ma [RU5 [U5S:�Ga�[RS5 [RU5RS5n[U5n[RSU-5 0n	[S	5GHHn
S
U
-n[RSU-5 [X�-5U-nSup�UH�n[R[
RRU55RS5n[U5n[RS
U-5 [X�-5U-n[RSU-5 [RSU-5 UU:Xa5[RS5 U
S-
n
XX�'[RU	5 [RS5 M� [U	5(dGMFU	n U$ U$U$![ a GM)["a GM6f=f![ a U$["a U$f=f)zA
Match up a model name to a PPD from a list of system PPD files.
z1st stage edit distance matchzFDetermining edit distance from %s (only showing edit distances < 4)...rzdist('%s') = %dzMin. dist = %dr
z$2nd stage matching with model numberzmodel_number=%dr�
zFactor = %d)rrnzmins_model_number= %dzmins_adj_model_number=%dzadj_model_number=%d�matchz***)r�r��sys�maxsizer�rTrU�basenamer�r�rF�
number_patr�rv�intr�rwrb)�stripped_modelrG�mins�eds�min_edit_distancer,�tr)�model_number�matchesr��factor�adj_model_number�number_matchingr��mins_model_number�mins_adj_model_numbers                 r-�
getPPDFiler��s����I�I�-�.�
�D�
�C������I�I�V�Yg�g�h�
���r�w�w�'�'��*�+��%�n�8����6�A�:��I�I�'�1�!�f�+�5�6�� 1�q�6�:����I�I��!2�2�3�
���6�&�&����7�7�#�#�A�&�"�'�'�*:�*:�1�*=�=����'���
��I�I�d�O�
�4�y�1�}��	�	�8�9�(	�%�+�+�N�;�A�A�!�D�L��|�,�L�
�I�I�'�,�6�7��G��1�X���Q����	�	�-�&�0�1�#&�|�':�#;�F�#B� �).�&���A�!�,6�,<�,<�R�W�W�=M�=M�a�=P�,Q�,W�,W�XY�,Z�)�,/�0A�,B�)��	�	�"9�<M�"M�N�-0�0A�0H�,I�&�,P�)��I�I�8�;P�P�Q��I�I�3�6F�F�G�,�0@�@��	�	�'�*�'�1�,��%)�W��
��	�	�'�*��I�I�e�$�)�,�w�<�<�"�D���K�A�@�K�4�K��+*�!� �%�!� �!��)�	��L�K�K�	��H�K�K	�s1�*/L/�9A$L�
L,�	L,�+L,�/
M	�<	M	�M	c	�2�[U5n[U5n[R"U5nUS:XaUR	SS5nOUR	SS5nUS:Xa[U5nO[U5n[RSU-5 /nUS:XGa	UGHn[RU5n	U	cMU	RS5U:XdM5[RSU-5 U	RS5RS5n
[R(aS	U;dD[R(aS	U
;d)[R(aS	U
;dS
U
;dSU
;dM�UR!X�Vs/sHo�(dMUS	:wdMUPM sn45 GM GOUGHn["RU5n	U	cMU	RS5U:XdM5[RSU-5 U	RS5RS5n
[R(aS	U;dD[R(aS	U
;d)[R(aS	U
;dS
U
;dSU
;dM�UR!X�Vs/sHo�(dMUS	:wdMUPM sn45 GM [RU5 [%U5nUS:XGa{[RSU-5 ['[)[+U5U5R-55n
[RU
5 [%U
5nU(a�U
H�up�[RU5n	U	cM[RSU-5 U	RS5RS5n
[R(aS	U;dD[R(aS	U
;d)[R(aS	U
;dS
U
;dSU
;dM�UR!X�Vs/sHo�(dMUS	:wdMUPM sn45 M� [RU5 [%U5nUS:Xa"[R/S
[+U5-5 gUS:Xa[RS5 USSS4$[RSU-5 [R0[R2[R4[R64HqnUHhunnUH\n[R8R	U[R05U:XdM7[RSU<SU<35 US4s s s $ Mj Ms [RSU-5 SH4nUH+unnX�;dM
[RSU-5 US4s s $ M6 [RS5 USSS4$![a /n
GN�f=fs snf![a /n
GN�f=fs snf![a /n
GN~f=fs snf)Nrr1z
family-ppdz!Matching PPD list to model  %s...r
zFound match: %sr�-�hpijs�ps�pdfzFNo PPD found for model %s using new algorithm. Trying old algorithm...z.No PPD found for model %s using old algorithm.zOne match found.rnzC%d matches found. Searching based on PDL: Host > PS,PDF > PCL/OtherzSelecting '-z' PPD: z<%d matches found. Searching based on Filters: HPCUPS > HPIJS)�hpcupsr�zSelecting PPD: %sz<No specific PDL located. Defaulting to first found PPD file.)rNr.r�normalizeModelNamer�r�r�r��ppd_patr�rvrSrwrQ�hpcups_build�hpijs_buildr_�ppd_pat1rFr�r�r��items�error�
PDL_TYPE_HOST�PDL_TYPE_PS�PDL_TYPE_PDF�PDL_TYPE_PCL�	PDL_TYPES)�mqr'rGrH�family_classr;r�r�r,r��pdls�p�num_matches�matches2�num_matches2�d�pdl_listr�s                  r-�getPPDFile2r�s����T�"�L�#�E�*�L��%�%�e�,�E��Q���&�&��A�&�x��&�&��a�(�x��1�}�$�U�+��$�X�.���I�I�1�N�B�C��G��a���A��M�M�!�$�E�� ��;�;�q�>�^�3��I�I�/�!�3�4�#�#�k�k�!�n�2�2�3�7�t��)�)�g�Q�.>��*�*�w�$��D�DU�DU�Za�im�Zm��$�,�E�T�M�!�.�.�!��-T��A��a�q�G�|�a��-T�)U�V���A��N�N�1�%�E�� ��;�;�q�>�\�1��I�I�/�!�3�4�#�#�k�k�!�n�2�2�3�7�t��)�)�g�Q�.>��*�*�w�$��D�DU�DU�Za�im�Zm��$�,�E�T�M�!�.�.�!��-T��A��a�q�G�|�a��-T�)U�V���I�I�g���g�,�K��a���	�	�Z�]k�k�l��
�:�n�#=�t�D�J�J�L�M���	�	�(���8�}��� ����
�
�a�(���$��I�I�/�!�3�4�"�$�{�{�1�~�3�3�C�8���)�)�g�Q�.>��)�)�g��o�4�CT�CT�Y`�hl�Yl����%�4�-�����t�+R�t�!�q�A�Q�'�\�A�t�+R�'S�T�!�	�	�	�'���'�l���a���	�	�B�Z�P^�E_�_�`��	��	��	�	�$�%���
�1�
�r�"�"��I�I�S�Va�a�b��"�"�F�$6�$6�v�7J�7J�F�L_�L_�
`��"�K�A�x����#�#�'�'��6�+?�+?�@�A�E��I�I�1�a�@�A��r�7�N�	�#�a��I�I�L�{�Z�[�
��"�K�A�x��v��	�	�-��3�4��2�w��#� ��I�I�L�M��A�J�q�M�2����U*�#� "��#��
.U��*�#� "��#��
.U��"*�"�!��"��,Ssl�& W�4
W$�W$�
W$�/ W)�=
W<�W<�W<�2 X�
X�X�X�W!� W!�)W9�8W9�X�Xc��SnSnSn[RSU[R4-5 [R(aaUR	S[
5nU[:XaSnSnO�U[:Xd
U[:XaSnSnO�U[:XaS	nS
nO�U[:XaSnSnO�SnSnO�UR	S[
5[:XaS
nSnUR	S[
5[:XdUR	S[
5[:XaSnSnUR	S[
5[:XaSnSnOSnSn/n[R"[R	SS5SSS9HnURU5 M [RSU-5 UHEnURU5S:�dM[!U5U:XdM+Un[RSU-5  O [R#SU-5 X$U4$!WWW4s s$=f)Nz
HP Fax hpcupsz
HP-Fax-hpcupsz4Searching for fax PPD for model %s  hpcups_build =%dzfax-typezHP-Fax3-hpcupszHP Fax3 hpcupszHP-Fax2-hpcupszHP Fax2 hpcupszHP-Fax4-hpcupszHP Fax4 hpcupszHP-Fax-CDM-hpcupszHP Fax CDM hpcupsz
HP-Fax3-hpijsz
HP Fax3 hpijsz
HP-Fax2-hpijsz
HP Fax2 hpijsz
HP-Fax4-hpijsz
HP Fax4 hpijszHP-Fax-hpijszHP Fax hpijsr|r}zHP-Fax*.ppd*Tr~zppds=%srzFound fax PPD: %sz8Unable to locate the HPLIP Fax PPD file: %s.ppd.gz file.)r�r�rQr�r��
FAX_TYPE_NONE�FAX_TYPE_MARVELL�
FAX_TYPE_SOAP�FAX_TYPE_LEDMSOAP�
FAX_TYPE_LEDM�FAX_TYPE_CDMrr�r�r_rErzr�)r�r'�fax_ppd�nick�expected_fax_ppd_name�faxTyperGr,s        r-�
getFaxPPDFiler��s���23����� /���	�	�H�E�RV�Rc�Rc�Kd�d�e�����f�f�Z��7�G��*�*�(8�%�'���M�)�W�8I�-I�(8�%�'���M�)�(8�%�'���L�(�(;�%�*��(7�%�&���v�v�j�-�0�4D�D�(7�%�&���v�v�j�-�0�M�A�R�V�V�J�Xe�Ef�j{�E{�(7�%�&���v�v�j�-�0�M�A�(7�%�&��(6�%�%����������f�e�!<�n�`d�e�A��K�K��N�f��	�	�)�D�.�!��A��v�v�+�,��1�6G��6J�d�6R����	�	�-��1�2��	�
�I�I�P�Qf�f�g��d�2�2��w�,�d�2�2�s�F!G2�'
G2�86G2�2G<c��Sn[US5nUHVn[RU5nUcMURS5R	5n[
R
SU-5 Us $ [
R
S5 g![a [
RSU-5 N:[a [
RSU-5 N]f=f)	Nz/etc/cups/cupsd.confr@r
zCUPS error_log LogLevel: %sz
%s not found.z%s: I/O error.z CUPS error_log LogLevel: unknown�unknown)
rD�pat_cups_error_logr�rvr�r�r��OSErrorr��IOError)�	cups_confr,�lr)�levels     r-�getErrorLogLevelr��s���&�I����C� ���A�"�(�(��+�A��}�����
�(�(�*���	�	�7�%�?�@�����I�I�0�1����/��	�	�/�I�-�.��0��	�	�"�Y�.�/�0�s�B�"C
�&!C
�	C
c��/nSU-nSn[US5nU[US5R5;a�[R"5nSnUR	5n	XI;asSn[U5(a1UR
UR55 [U5(aM1UR
U	R55 [U5U:�aO9O6U(a/URU	R55 [U5U:�aOM�SRU5$![[4a [RSU-5 gf=f)	Nz[Job %d]z/var/log/cups/error_logr@FT�
z*Could not open the CUPS error_log file: %srn)rDrrr�Queue�readlinerFr_r��strip�putrVr�r�r�r�)
�job_id�	max_lines�
cont_interval�ret�sr�r,�queue�	job_foundrKs
          r-�getPrintJobErrorLogr�s"��
�C��V��A�)�I�	� 	"��Y��$�A��D��C�(�-�-�/�/����
��!�	���:�:�<�D��y�$(�	�!�%�j�j��J�J�u�y�y�{�3�"�%�j�j��
�
�4�:�:�<�0��s�8�i�/�!�0�%�!�I�I�d�j�j�l�3�"�5�z�M�9� %�'�*�9�9�S�>�!��=��!�	��I�I�B�Y�N�O��	�s�D�(E
�	E
c�^�[R5nUc[RS5 U$)Nz$The CUPS default printer is not set.)r�getDefaultPrinterr�r�)r@s r-rrs'���!�!�#�A��y��	�	�8�9��Hr/c�p�[(a[US5n[S5 [R	U5$)NrmzOYou do not have permission to set the default printer. You need authentication.)r�str�setPasswordPromptr�setDefaultPrinter��printer_names r-rr	s-��
�s��,��0�|��g�h��$�$�\�2�2r/c�8�[S5 [U[5$)NzVYou do not have permission to accept jobs on a printer queue. You need authentication.)r�controlPrinter�CUPS_ACCEPT_JOBSrs r-�acceptr
����n�o��,�(8�9�9r/c�8�[S5 [U[5$)NzVYou do not have permission to reject jobs on a printer queue. You need authentication.)rr�CUPS_REJECT_JOBSrs r-�rejectrrr/c�8�[S5 [U[5$)NzMYou do not have permission to start a printer queue. You need authentication.)rr�IPP_RESUME_PRINTERrs r-�startrs���e�f��,�(:�;�;r/c�8�[S5 [U[5$)NzLYou do not have permission to stop a printer queue. You need authentication.)rr�IPP_PAUSE_PRINTERrs r-�stoprs���d�e��,�(9�:�:r/c�8�[S5 [U[5$)NzBYou do not have permission to purge jobs. You need authentication.)rr�IPP_PURGE_JOBSrs r-�purgers���Z�[��,��7�7r/c�l�U[[[[[4;a[
R
X5$g)Nr)rrrrrrr)r	�cups_ops  r-rr#s.���#�%5�7H�J\�^l�m�m��%�%�l�<�<�r/c�<�U(dg[RU5$�N)r�openPPD��printers r-rr)s�����?�?�7�#�#r/c�*�[R5$r)r�closePPD�r/r-r#r#/s������r/c�<�U(dg[RU5$r)r�getPPDr s r-r&r&2s�����>�>�'�"�"r/c�,�[RU5$r)r�getPPDOption��options r-r(r(8�������'�'r/c�*�[R5$r)r�getPPDPageSizer$r/r-r-r-;s���!�!�#�#r/c�*�[R5$r)r�getPrintersr$r/r-r/r/>s����� � r/c�,�[RX5$r�r�getJobs)�my_job�	completeds  r-r2r2Ms���?�?�6�-�-r/c�\�[RUS5[RUS5-$)Nrr
r1)r3s r-�
getAllJobsr6Ps#���?�?�6�1�%������(B�B�Br/c�*�[R5$r)r�
getVersionr$r/r-r8r8S�������r/c�*�[R5$r)rr�r$r/r-r�r�Vs���"�"�$�$r/c�*�[R5$r)r�	getServerr$r/r-r<r<Ys������r/c���[S5 Ub[RX5$[RSS5nUH5nURU:XdM[RUR
U5s $ g)NzDYou do not have permission to cancel a job. You need authentication.rF)rr�	cancelJobr2�idrh)�jobidrh�jobsr�s    r-r>r>\sc���\�]���� � ��-�-����q�!�$���A��t�t�u�}��(�(�����7�7��r/c�*�[R5$r)r�resetOptionsr$r/r-rCrCh������!�!r/c�,�[RU5$r)r�	addOptionr)s r-rFrFks�����V�$�$r/c�*�[R5$r)r�
getOptionsr$r/r-rHrHnr9r/c�,�[RU5$r)r�duplicateSection)�sections r-rJrJqs���#�#�G�,�,r/c���[RRU5(aT[(d3UR	S5nUR	S5nUR	S5n[
R
XU5$g)Nrm���)rTrUrWr�encoder�printFileWithOptions)r!�filename�titles   r-�	printFilerRts\��	�w�w�~�~�h����s��n�n�W�-�G����w�/�H��L�L��)�E��+�+�G�u�E�E�r/c�*�[S5 [RSU<SU<SU<SU<SU<SU<S3
5 U(a=[RRU5(d[R
SU-5 g[RXX#XE5$)NzEYou do not have permission to add a printer. You need authentication.zaddPrinter('z', 'z')zPPD file '%s' not found.)rMzPPD file not found)	rr�r�rTrUrWr�r�
addPrinter)r	�
device_uri�location�ppd_filer'�infos      r-rTrT�sl���]�^��I�I�
�
�H�h��t�E�F�������x�0�0��	�	�,�x�7�8�)����l��E�X�Xr/c�B�[S5 [RU5$)NzHYou do not have permission to delete a printer. You need authentication.)rr�
delPrinterrs r-rZrZ�s���`�a����l�+�+r/c��[S5 [R"SS5nU<SU<3n[R"U5$)NzHYou do not have permission to enable a printer. You need authentication.�
cupsenableT� )rr�whichr�execute)r	�
cmd_full_path�cmds   r-�
enablePrinterrb�s6���`�a��K�K��d�3�M�!�<�	0�C����C� � r/c�*�[R5$r)r�getGroupListr$r/r-rdrd�rDr/c�,�[RU5$r)r�getGroup�rvs r-rfrf�s�����E�"�"r/c�,�[RU5$r)r�
getOptionListrgs r-riri�s��� � ��'�'r/c�,�[RX5$r)r�	getOption�rvr*s  r-rkrk�s�����U�+�+r/c�,�[RX5$r)r�
getChoiceListrls  r-rnrn�s��� � ��/�/r/c�.�[RXU5$r)r�	getChoice)rvr*�choices   r-rprp�s�����U�F�3�3r/c�*�[R5$r)r�
setOptionsr$r/r-rsrs�r9r/c�,�[RU5$r)r�removeOptionr)s r-ruru�r+r/c�,�[RU5$r)r�setPasswordCallback)�funcs r-rwrw�s���&�&�t�,�,r/c�,�[RU5$r)rr)�prompts r-rr�s���$�$�V�,�,r/c�,�[RX5$r)r�findPPDAttribute)�name�specs  r-r|r|�s���#�#�D�/�/r/c�*�[R5$r)r�releaseCupsInstancer$r/r-r�r��s���&�&�(�(r/c��SnUS:a�US-
nU"U6upgU[:waXg4$[5 US:aPU[:Xa[R	S5 O0US:XaURS5 OSSKJn URUS5 US:aM�WW4$)Nrrr
zSCould not connect to CUPS Server due to insufficient privileges.Try with valid user�qt3z]<b>Could not connect to CUPS Server due to insufficient privileges.</b><p>Try with valid user)�ui_utils)�
IPP_FORBIDDENr��INTERACTIVE_MODEr�r��	FailureUI�ui4r�)	�operation_func�mode�
ui_toolkit�ui_obj�cups_op_args�cnt�result�
status_strr�s	         r-�cups_operationr��s���
�C�

��'��q���+�\�:����]�"�����
 �!��Q�w��+�+��I�I�s�t��5�(��$�$�&E�F�,��&�&�v�0O�P���'� �:��r/r)i�r)rr)r)�rT�os.pathrp�re�time�tempfilera�base.g�baserrr�base.sixextr�INVALID_PRINTER_NAME_CHARS�getenv�current_language�newlangrLrS�encoding�environ�
import_extr�ImportErrorr��warnr��exit�IPP_PRINTER_STATE_IDLE�IPP_PRINTER_STATE_PROCESSING�IPP_PRINTER_STATE_STOPPED�PPD_UI_BOOLEAN�PPD_UI_PICKONE�PPD_UI_PICKMANY�
UI_SPINNER�UI_UNITS_SPINNER�UI_BANNER_JOB_SHEETS�
UI_PAGE_RANGE�UI_JOB_STORAGE_MODE�UI_JOB_STORAGE_PIN�UI_JOB_STORAGE_USERNAME�UI_JOB_STORAGE_ID�UI_JOB_STORAGE_ID_EXISTS�UI_INFOrrr�CUPS_GET_DEFAULT�CUPS_GET_PRINTERS�CUPS_ADD_MODIFY_PRINTER�CUPS_DELETE_PRINTER�CUPS_GET_CLASSES�CUPS_ADD_MODIFY_CLASS�CUPS_DELETE_CLASSrr�CUPS_SET_DEFAULT�CUPS_GET_DEVICES�
CUPS_GET_PPDS�
CUPS_MOVE_JOB�CUPS_AUTHENTICATE_JOB�IPP_JOB_PENDING�IPP_JOB_HELD�IPP_JOB_PROCESSING�IPP_JOB_STOPPED�IPP_JOB_CANCELLED�IPP_JOB_ABORTED�IPP_JOB_COMPLETED�IPP_OK�IPP_OK_SUBST�IPP_OK_CONFLICT�IPP_OK_IGNORED_SUBSCRIPTIONS�IPP_OK_IGNORED_NOTIFICATIONS�IPP_OK_TOO_MANY_EVENTS�IPP_OK_BUT_CANCEL_SUBSCRIPTION�IPP_OK_EVENTS_COMPLETE�IPP_REDIRECTION_OTHER_SITE�IPP_BAD_REQUESTr��IPP_NOT_AUTHENTICATED�IPP_NOT_AUTHORIZED�IPP_NOT_POSSIBLE�IPP_TIMEOUT�
IPP_NOT_FOUND�IPP_GONE�IPP_REQUEST_ENTITY�IPP_REQUEST_VALUE�IPP_DOCUMENT_FORMAT�IPP_ATTRIBUTES�IPP_URI_SCHEME�IPP_CHARSET�IPP_CONFLICT�IPP_COMPRESSION_NOT_SUPPORTED�IPP_COMPRESSION_ERROR�IPP_DOCUMENT_FORMAT_ERROR�IPP_DOCUMENT_ACCESS_ERROR�IPP_ATTRIBUTES_NOT_SETTABLE�IPP_IGNORED_ALL_SUBSCRIPTIONS�IPP_TOO_MANY_SUBSCRIPTIONS�IPP_IGNORED_ALL_NOTIFICATIONS� IPP_PRINT_SUPPORT_FILE_NOT_FOUND�IPP_INTERNAL_ERROR�IPP_OPERATION_NOT_SUPPORTED�IPP_SERVICE_UNAVAILABLE�IPP_VERSION_NOT_SUPPORTED�IPP_DEVICE_ERROR�IPP_TEMPORARY_ERROR�IPP_NOT_ACCEPTING�IPP_PRINTER_BUSY�IPP_ERROR_JOB_CANCELLED�IPP_MULTIPLE_JOBS_NOT_SUPPORTED�IPP_PRINTER_IS_DEACTIVATED�CUPS_ERROR_BAD_NAME�CUPS_ERROR_BAD_PARAMETERS�compile�	MULTILINErs�Ir�r�r�r.r=rNr#r\rkrzr�r��
IGNORECASEr�r�r��TECH_CLASS_PDLS�valuesr��ppr_r�r`r�r�r�r�r�r�rrrr
rrrrrrr#r&r(r-r/r2r6r8r�r<r>rCrFrHrJrRrTrZrbrdrfrirkrnrprsrurwrr|r�r�r$r/r-�<module>r�s���.
���	�����(�(��F����y�y��(���G��#�(8�(>�(>�s�(C�(C�,�2�2�3�7�����8��� �B�J�J�v�����y�)�G��#�-��
�
�6���� �����������
������
�����������

������������ �������������������
��
�����������������
������$��$����!&����"�����
����������
����������������� &����"��"��$�� &��#�� &��#)� ���$�� ��"���������� ��"(��#����"���z�z�6����E���Z�Z� V�XZ�X\�X\�]��
�*�*�3�R�T�T�
:��
�:�:�4�b�d�d�;����B� 
�� " �J�D�P�4�Z�Z�����
7�
�=��
�f�$�$�+�+�-�	.�A�	���B�	������b�!�
/��q�!�
�
���6�7���J�Zk�n33�p�(("�^
�3�:�:�<�;�8��$��#�(�$�
!�.�C� �%��
�"�%� �-�
�	Y�,�!�"�#�(�,�0�4� �(�-�-�0�)���y��
�9�9�]�#�#����P�Q��������s�A9L	�	?M�M

Filemanager

Name Type Size Permission Actions
__init__.cpython-313.pyc File 194 B 0644
colorcal.cpython-313.pyc File 6.75 KB 0644
cups.cpython-313.pyc File 37.69 KB 0644
ldl.cpython-313.pyc File 16.51 KB 0644
pcl.cpython-313.pyc File 3.39 KB 0644
Filemanager