HEX
Server: Apache/2.4.65 (Unix) OpenSSL/3.5.5
System: Linux cpanel.ns-taberra.com 5.14.0-681.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Feb 11 20:19:22 UTC 2026 x86_64
User: asif201 (1002)
PHP: 8.3.0
Disabled: NONE
Upload Files
File: //usr/share/system-config-printer/__pycache__/pysmb.cpython-39.pyc
a

$x];�@s�ddlZddlZddlZejejejd�ddlmZddlZddl	Z	ddl
Z
ddlTGdd�de�Z
z(e
jZe
jZe
jZe
jZe
jZe
jZWn*ey�e
ZZZe
ZZZYn0Gdd�d�ZdS)	�N)�domain�	localedir)�Gtk)�*c@seZdZdS)�_NoneN)�__name__�
__module__�__qualname__�r
r
�)/usr/share/system-config-printer/pysmb.pyr"src@s8eZdZd
dd�Zdd�Zdd�Zdd	d
�Zdd�ZdS)�AuthContextN�cCs@d|_d|_d|_d|_d|_||_||_||_d|_||_	dS)NrF)
�passes�
has_failed�auth_called�tried_guest�cancel�use_user�use_password�
use_workgroup�dialog_shown�parent)�selfr�	workgroup�user�passwdr
r
r�__init__1szAuthContext.__init__cCs�|jd7_|jdkrdS|js&dStd|j�|jsLtd�d|_dSd|_|jr||js|d|_d|_d|_td	�dSd|_|jr�t	j
|jddt	jj
t	jjd
�}|�td��|�dtd�d
td��|��|��t	jtd�|jdd�}|�t	jt	jjt	jt	jj�|�t	jj�|�d�|�d�t	j� dd�}|�d�t	�!�}|�"t	j#t	j$j%�|�&|ddd�t	�'dd�}t	j(dtd�|j)dd�}|�*d�|�+dd�|�,d�|�&|ddd�t	�-�}|�.d�|�/d�|�0t	j(td�d�dddd�t	�1�}|�0|dddd�|�0t	j(td�d�dddd�t	�1�}|�0|dddd�|�0t	j(td�d�dddd�t	�1�}	|	�2d�|	�3d�|�0|	dddd�|�&|ddd�|�&|ddd�|j4�&|ddd�d|_|�5�|�6�|jdk�r t7�8t9�:��d|_td|j�|�;|j�|�;|j<�|�=d�|��}
|
t	jjk�rjd|_|��dS|�>�|_|	�>�|_|�>�|_<|��dS)N�rzpysmb: authentication pass: %dz!pysmb: auth callback not called?!TFZguestr
zpysmb: try auth as guest)�
transient_for�modalZdestroy_with_parentZmessage_typeZbuttonszNot authorizedz"<span weight="bold" size="larger">z	</span>

zThe password may be incorrect.ZAuthentication)�titlerr��zYou must log in to access %s.z</span>)�labelz	Username:zDomain:z	Password:�zpysmb: try as %s���)?rr�
debugprintrrrrrrrZ
MessageDialogrZMessageTypeZERRORZButtonsTypeZCLOSEZ	set_title�_Z
set_markup�runZdestroyZDialogZadd_buttonsZSTOCK_CANCELZResponseTypeZCANCELZSTOCK_OKZOKZset_default_responseZset_border_widthZ
set_resizableZHBox�newZImageZset_from_stockZSTOCK_DIALOG_AUTHENTICATIONZIconSizeZDIALOGZ
pack_startZVBoxZLabel�
for_serverZset_use_markupZ
set_alignmentZ
set_line_wrapZGridZset_row_spacingZset_column_spacingZattachZEntryZset_activates_defaultZset_visibility�vboxZshow_allZshow_now�pwd�getpwuid�os�getuidZset_textrZset_keep_aboveZget_text)r�dZhboxZimager+r#ZgridZusername_entryZdomain_entryZpassword_entryZresponser
r
r�perform_authentication=s�
����
�
�


����









z"AuthContext.perform_authenticationcCs&zt��}|j|_WnYn0dS)N)�smbcZContextrr)r�contextr
r
r�initial_authentication�s
z"AuthContext.initial_authenticationcCs`d|_tdt|��|r\|jsXt|�ttttt	fvsXt|�t
kr\|jdtj
tjfvr\|�dS)NTzpysmb: operation failed: %sr)rr&�reprr�type�NoEntryError�ExistsError�
NotEmptyError�
TimedOutError�NoSpaceError�RuntimeError�args�errnoZEACCES�EPERM)r�excr
r
r�failed�s��
��zAuthContext.failedcCs^td�d|_||_||_|jdkr,|��|jrL|jr>|j}||j|jfSd}d}|||fS)Nzpysmb: got password callbackTrr
)	r&rr*Z	for_sharerr4rrr)rZserverZsharerr�passwordr
r
r�callback�s
zAuthContext.callback)Nr
r
r
)N)rrr	rr1r4rArCr
r
r
rr0s

f
r)r>Zconfig�gettext�installZPACKAGErZ
gi.repositoryrr.r,r2�debugr<rr7�PermissionErrorr8r9r:r;�AttributeErrorrr
r
r
r�<module>s(