
    Kc;                     >   d dl Z d dlZd dlZ ej        ej        ej                   d dlmZ d dlZd dl	Z	d dl
Z
d dlT  G d de          Z	 e
j        Ze
j        Ze
j        Ze
j        Ze
j        Ze
j        Zn# e$ r exZxZZexZxZZY nw xY w G d d          ZdS )	    N)domain	localedir)Gtk)*c                       e Zd ZdS )_NoneN)__name__
__module____qualname__     )/usr/share/system-config-printer/pysmb.pyr   r   "   s        Dr   r   c                   0    e Zd ZddZd Zd Zd	dZd ZdS )
AuthContextN c                     d| _         d| _        d| _        d| _        d| _        || _        || _        || _        d| _        || _	        d S )Nr   F)
passes
has_failedauth_calledtried_guestcanceluse_useruse_passworduse_workgroupdialog_shownparent)selfr   	workgroupuserpasswds        r   __init__zAuthContext.__init__1   sQ      "&!r   c                 J   | xj         dz  c_         | j         dk    rdS | j        sdS t          d| j         z             | j        st          d           d| _        dS d| _        | j        r-| j        s&d| _        d| _        d| _        t          d	           dS d| _        | j        rt          j
        | j        ddt          j        j        t          j        j        
          }|                    t#          d                     |                    dt#          d          z   dz   t#          d          z              |                                 |                                 t          j        t#          d          | j        d          }|                    t          j        t          j        j        t          j        t          j        j                   |                    t          j        j                   |                    d           |                    d           t          j                             dd          }|                    d           t          j!                    }|"                    t          j#        t          j$        j%                   |&                    |ddd           t          j'        dd          }t          j(        dt#          d          | j)        z  z   dz             }|*                    d           |+                    dd           |,                    d           |&                    |ddd           t          j-                    }|.                    d           |/                    d           |0                    t          j(        t#          d                    dddd           t          j1                    }|0                    |dddd           |0                    t          j(        t#          d                    dddd           t          j1                    }|0                    |dddd           |0                    t          j(        t#          d                    dddd           t          j1                    }	|	2                    d           |	3                    d           |0                    |	dddd           |&                    |ddd           |&                    |ddd           |j4        &                    |ddd           d| _        |5                                 |6                                 | j        dk    rGto          j8        ts          j:                              d         | _        t          d| j        z             |;                    | j                   |;                    | j<                   |=                    d           |                                }
|
t          j        j        k    rd| _        |                                 dS |>                                | _        |	>                                | _        |>                                | _<        |                                 dS )N   r   zpysmb: authentication pass: %dz!pysmb: auth callback not called?!TFguestr   zpysmb: try auth as guest)transient_formodaldestroy_with_parentmessage_typebuttonszNot authorizedz"<span weight="bold" size="larger">z	</span>

zThe password may be incorrect.Authentication)titler%   r&         zYou must log in to access %s.z</span>)labelz	Username:zDomain:z	Password:   zpysmb: try as %s)?r   r   
debugprintr   r   r   r   r   r   r   MessageDialogr   MessageTypeERRORButtonsTypeCLOSE	set_title_
set_markuprundestroyDialogadd_buttonsSTOCK_CANCELResponseTypeCANCELSTOCK_OKOKset_default_responseset_border_widthset_resizableHBoxnewImageset_from_stockSTOCK_DIALOG_AUTHENTICATIONIconSizeDIALOG
pack_startVBoxLabel
for_serverset_use_markupset_alignmentset_line_wrapGridset_row_spacingset_column_spacingattachEntryset_activates_defaultset_visibilityvboxshow_allshow_nowpwdgetpwuidosgetuidset_textr   set_keep_aboveget_text)r   dhboximager[   r.   gridusername_entrydomain_entrypassword_entryresponses              r   perform_authenticationz"AuthContext.perform_authentication=   s   q;!1 	14t{BCCC 	;<<<DK1 	D$4 	#DM "D#D23331  
	!)-4030E+.?+@B B BA KK+,,---LL>,--.0=><==> ? ? ? EEHHHIILLL Ja 011&*k"$ $ $ 	
s')9)@s'7':	< 	< 	<	 0 3444	A	x||UB''q!!!	c=!l1	3 	3 	3ua000x##	 D<== O,!, %!% & & & 	d###Q"""T"""ua000xzza   ###SYQ{^^444aAqAAA^Q1a000SYQy\\222Aq!Q???y||\1aA...SYQ{^^444aAqAAA,,d333%%u---^Q1a000ueQ///ueQ///	4q111 	

	

=G##L"),,77:DM*T]:;;;///t1222	$5588s'...DKIILLL2&//22*3366)2255			qr   c                 V    	 t          j                    }|j        | _        d S #  Y d S xY wN)smbcContextr   r   )r   contexts     r   initial_authenticationz"AuthContext.initial_authentication   s3    	looG!(!2D	DDs   # (c                 H   d| _         t          dt          |          z             |ru| j        slt	          |          t
          t          t          t          t          fv s=t	          |          t          k    r)|j        d         t          j        t          j        fvr|d S d S d S )NTzpysmb: operation failed: %sr   )r   r1   reprr   typeNoEntryErrorExistsErrorNotEmptyErrorTimedOutErrorNoSpaceErrorRuntimeErrorargserrnoEACCESEPERM)r   excs     r   failedzAuthContext.failed   s    1D#JJ>??? 	 sk= -| = = =s|++hqkelEK%@@@I	 	 ,+@@r   c                     t          d           d| _        || _        || _        | j        dk    r|                                  | j        r| j        r| j        }|| j        | j        fS d}d}|||fS )Nzpysmb: got password callbackTr#   r   )	r1   r   rP   	for_sharer   rs   r   r   r   )r   serversharer   r   passwords         r   callbackzAuthContext.callback   s    2333 ;!''***= 	A! / .	t}d.?@@4**r   )Nr   r   r   ro   )r	   r
   r   r!   rm   rs   r   r   r   r   r   r   r   0   sm        
 
 
 
d d dL  
 
 
 
+ + + + +r   r   )r~   configgettextinstallPACKAGEr   gi.repositoryr   r`   r^   rp   debugr|   r   rw   PermissionErrorrx   ry   rz   r{   AttributeErrorr   r   r   r   <module>r      sQ  0    v~1A B B B B       				 



     	 	 	 	 	L 	 	 		9$L*O"K&M&M$LL 9 9 9388L8?[388M8MLLL9V+ V+ V+ V+ V+ V+ V+ V+ V+ V+s   *A9 9BB