+
    4SsiWV                        R t Rt^ RIt^ RIt^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
HtHtHt ^ RIHt ^ RItR t ! R R	]P$                  4      t ! R
 R]4      t ! R R]R7      t ! R R]P.                  4      t ! R R]P0                  4      t ! R R]P2                  4      t ! R R]P6                  4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      tR t R  t! ! R! R"]4      t" ! R# R$]"4      t#R# )%z7Support for parsing Samba-related command-line options.restructuredTextN)ABCMetaabstractmethod)copy)CredentialsAUTO_USE_KERBEROSDONT_USE_KERBEROSMUST_USE_KERBEROS)get_burnt_commandlinec                0   R^RRRRRR/pVP                  RR4      pRpV'       d   VR,          P                  4       '       g   VR,          R	8X  d   WT^ ,          ,          pVR
,          pKM   \        V4      pTP                  4       P                  RR4      p YcT,          ,          #   \         d)    RP	                  T4      p\
        P                  ! T4      hi ; i  \         d-   p	RP	                  Y4      p\
        P                  ! T4      hRp	?	ii ; i)zCustom option type to allow the input of sizes using byte, kb, mb ...

units, e.g. 2Gb, 4KiB ...
   e.g. Option("--size", type="bytes", metavar="SIZE")
BKBi   MBGB  :       N.:r   NNzA{0} option requires a numeric value, with an optional unit suffixIz3{0} invalid suffix '{1}', should be B, Kb, Mb or GbNi   i   @)	replaceisdigitfloat
ValueErrorformatoptparseOptionValueErrorupperKeyError)
optionoptvaluemultipliersvdigitsmmsgsuffixks
   &&&       ./usr/lib/python3/dist-packages/samba/getopt.pycheck_bytesr*   &   s    +-K 	c2A F
#  AcFcMA$bE-&M WWYsB'F-v&&&  -./5vc{ 	'',,-  -+,2F3N 	'',,-s$   -B( C (3CD)'DDc                   0   a  ] tR t^Mt o RtR tR tRtV tR# )OptionMissingErrorz2One or more Options with required=True is missing.c                    Wn         R# )zjRaised when required Options are missing from the command line.

:param options: list of 1 or more option
Noptions)selfr/   s   &&r)   __init__OptionMissingError.__init__P   s	    
     c                    \        V P                  4      ^8X  d   V P                  ^ ,          pRV R2# \        V P                   Uu. uF  p\        V4      NK  	  up4      pRP	                  V4      pRV R2# u upi )r   z	Argument z is required.z, zThe arguments z are required.)lenr/   sortedstrjoin)r0   missingr   r/   s   &   r)   __str__OptionMissingError.__str__W   ss    t||!ll1oGwi}55Efc&kEFGii(G#G9N;; Fs   A9r.   N)	__name__
__module____qualname____firstlineno____doc__r1   r:   __static_attributes____classdictcell____classdict__s   @r)   r,   r,   M   s     << <r3   r,   c                       ] tR t^atRtRtR# )ValidationErrorz}ValidationError is the exception raised by validators.

Should be raised from the __call__ method of the Validator subclass.
 N)r<   r=   r>   r?   r@   rA   rG   r3   r)   rF   rF   a   s     	r3   rF   c                   4   a  ] tR t^it o Rt]R 4       tRtV tR# )	ValidatorzpBase class for Validators used by SambaOption.

Subclass this to make custom validators and implement __call__.
c                    R # NrG   )r0   fieldr!   s   &&&r)   __call__Validator.__call__o   s    r3   rG   N)	r<   r=   r>   r?   r@   r   rM   rA   rB   rC   s   @r)   rI   rI   i   s     
  r3   rI   )	metaclassc                      a a ] tR t^tt o]P
                  P                  RR.,           t]P
                  P                  R,           t]! ]P
                  P                  4      t	]
]	R&   R tV 3R ltRtVtV ;t# )Optionrequired
validatorsbytesc                T    \        V R4      ;'       g    . pV F  pV! W4       K  	  R# )z2Runs the list of validators on the current option.rS   N)getattr)r0   r    r!   rS   	validators   &&&  r)   run_validatorsOption.run_validatorsz   s(    T<066B
#Ic! $r3   c                H   < \         SV `  W4      pV P                  W4       V# )zOverride convert_value to run validators just after.

This can also be done in process() but there we would have to
replace the entire method.
)superconvert_valuerX   )r0   r    r!   	__class__s   &&&r)   r\   Option.convert_value   s'     %c1C'r3   rG   )rT   )r<   r=   r>   r?   r   rQ   ATTRSTYPESr   TYPE_CHECKERr*   rX   r\   rA   rB   __classcell__r]   rD   s   @@r)   rQ   rQ   t   s_     OO!!Z$>>EOO!!J.E445L'L" r3   rQ   c            
       j   a a ] tR t^t oRtRR]RRRRRRR3
V 3R lltV 3R ltR	V 3R lltRt	Vt
V ;t# )
OptionParserz@Samba OptionParser, adding support for required=True on Options.NerrorTc                0   < \         SV `  WW4WVVWV
4
       R# )z5
Ensure that option_class defaults to the Samba one.
N)r[   r1   )r0   usageoption_listoption_classversionconflict_handlerdescription	formatteradd_help_optionprogepilogr]   s   &&&&&&&&&&&r)   r1   OptionParser.__init__   s      	\)	(	8r3   c                   < . pV P                  4        FC  pVP                  '       g   K  \        WP                  4      pVe   K2  VP	                  V4       KE  	  V'       d   \        V4      h\        SV `  W4      # )zBLoop through required options if value is missing raise exception.)_get_all_optionsrR   rV   destappendr,   r[   check_values)r0   valuesargsr9   r   r!   r]   s   &&&   r)   rw   OptionParser.check_values   sc    ++-F4=NN6*	 . $W--w#F11r3   c                D  < \         P                  ! R 4      '       g   \        SV `  RR7      # \	        ^RRR4      p. pV P
                  '       d'   VP                  V P                  4       R,           4       V P                  '       d(   VP                  V P                  V4      R,           4       VP                  R4       VP                  V P                  V4      4       VP                  R4       VP                  V P                  V4      4       R	P                  V4      # )
SAMBATOOL_HELP_IS_XMLN)rn   i'  i  T
z<variablelist>
z</variablelist>
r   )osgetenvr[   format_helpSambaDocBookFormatterrh   rv   	get_usagerm   format_descriptionformat_option_helpformat_epilogr8   )r0   rn   resultr]   s   && r)   r   OptionParser.format_help   s     yy0117&&66)!T3=	:::MM$..*T12MM$11)<tCD()d--i89)*d((34wwvr3   rG   rK   )r<   r=   r>   r?   r@   rQ   r1   rw   r   rA   rB   rb   rc   s   @@r)   re   re      s<     J !$")!!%8$2 r3   re   c                   >   a  ] tR t^t o R tR tR tR tR tRt	V t
R# )r   c                6    R V P                   ,          V,           # )	)current_indent)r0   ss   &&r)   _indentSambaDocBookFormatter._indent   s    d)))A--r3   c                ,    V P                  R V R24      # )z
<constant>z</constant>
r   )r0   rh   s   &&r)   format_usage"SambaDocBookFormatter.format_usage   s    ||j}=>>r3   c                ,    V P                  R V R24      # )z<!--z-->
r   )r0   headings   &&r)   format_heading$SambaDocBookFormatter.format_heading   s    ||d7)5122r3   c                ,    V P                  RV R24      # )zi
Format a paragraph of free-form text for inclusion in the
help output at the current indentation level.
z<para>z</para>r   )r0   texts   &&r)   _format_text"SambaDocBookFormatter._format_text   s    
 ||fTF'233r3   c                ^   V P                  R 4      pV.pVP                  R4       V P                  V,          pVP                  V RV R24       VP                  '       d)   V P	                  V4      pVP                  V RV R24       VP                  V R24       RP                  V4      # )z  z<varlistentry>
z  <term>z</term>
z  <listitem><para>z</para></listitem>
z</varlistentry>
r   )r   rv   option_stringshelpexpand_defaultr8   )r0   r   indentr   opts	help_texts   &&    r)   format_option#SambaDocBookFormatter.format_option   s     d#()""6*i89;;;++F3IMMVH$6ykAUVW 123wwvr3   rG   N)r<   r=   r>   r?   r   r   r   r   r   rA   rB   rC   s   @r)   r   r      s#     .?34 r3   r   c                   <   a a ] tR t^t oRtV 3R ltR tRtVtV ;t	# )OptionGroupa
  Samba OptionGroup base class.

Provides a generic set_option method to be used as Option callback,
so that one doesn't need to be created for every available Option.

Also overrides the add_option method, so it correctly initialises
the defaults on the OptionGroup.
c                   < \         SV `  ! V/ VB pVP                  \        P                  8X  d   RMVP                  pV P                  W3P                  4       W@P                  4       V# )z>Override add_option so it applies defaults during constructor.N)r[   
add_optiondefaultr   
NO_DEFAULT
set_optionget_opt_stringparser)r0   ry   kwargsr    r   r]   s   &*,  r)   r   OptionGroup.add_option   sS    g $1&1++)<)<<$#++//17KKH
r3   c                    VP                   ;'       g+    VP                  ^ ,          R,          P                  RR4      p\        WV4       R# )z<Callback to set the attribute based on the Option dest name.:   NN-_N)ru   
_long_optsr   setattr)r0   r   opt_strargr   ru   s   &&&&& r)   r   OptionGroup.set_option   s:    {{HHf//226>>sCHC r3   rG   )
r<   r=   r>   r?   r@   r   r   rA   rB   rb   rc   s   @@r)   r   r      s     ! !r3   r   c                   Z   a a ] tR t^t oRtV 3R ltR tR tR tR t	R t
R tR	tVtV ;t# )
SambaOptionsz+General Samba-related command line options.c           
       < ^ RI Hp V! 4        \        \        P                  4      pVe    ^ RIpVP                  V4       ^ RI
Hp \        SV `5  VR4       V P                  RRR\        R	R
V P                   R7       V P                  RRR\        RRV P"                  R7       V P                  RR\        RRV P$                  R7       V P                  RR\        RRV P&                  R7       RV n        V! 4       V n        RV n        R#   \         dD    Rp\        P                  P                  T4       \        P                  P                  4         ELi ; i)r   )fault_setupNzWARNING: Using passwords on command line is insecure. Installing the setproctitle python module will hide these from shortly after program start.
)LoadParmzSamba Common Optionsz-sz--configfilecallbackFILEzConfiguration file)actiontypemetavarr   r   z-dz--debuglevel
DEBUGLEVELdebug levelz--optionOPTIONz%set smb.conf option from command linez--realmREALMzset the realm name)sambar   r
   sysargvsetproctitleModuleNotFoundErrorstderrwriteflushsamba.paramr   r[   r1   r   r7   _load_configfile_set_debuglevel_set_option
_set_realm_configfile_lprealm)r0   r   r   new_proctitler   r&   r   r]   s   &&     r)   r1   SambaOptions.__init__   sB   % .chh7$	##))-8 	)!78nZ &7K!%!6!6 	 	8 	nZ ,]!%!5!5 	 	7 	
: (D!%!1!1 	 	3 		* '8L!% 	 	2  :
1 ' #C 

  %

  "#s   D
 
A
EEc                    V P                   # )z?Return path to the smb.conf file specified on the command line.r   r0   s   &r)   get_loadparm_pathSambaOptions.get_loadparm_path&  s    r3   c                    W0n         R # rK   r   r0   r   r   r   r   s   &&&&&r)   r   SambaOptions._load_configfile*  s    r3   c                     V P                   P                  R V4       Y4P
                  n        R#   \         d    \        P                  ! RT R24      hi ; i)r   zinvalid -d/--debug value: ''N)r   setRuntimeErrorr   r   rx   
debuglevelr   s   &&&&&r)   r   SambaOptions._set_debuglevel-  sU    	6HHLL, $'   	6++-cU!46 6	6s	   0 &Ac                     V P                   P                  R V4       Y0n        R#   \         d    \        P                  ! RT R24      hi ; i)r   zinvalid --realm value: 'r   N)r   r   r   r   r   r   r   s   &&&&&r)   r   SambaOptions._set_realm5  sP    	3HHLL#& 
  	3++*3%q13 3	3s	   & &Ac                :   VP                  R 4      R8X  d   \        P                  ! R4      hVP                  R ^4      p V P                  P                  V^ ,          V^,          4       R#   \         d$   p\        P                  ! RT: RT: 24      hRp?ii ; i)=z&--option option takes a 'a=b' argumentzinvalid --option option value z: N)findr   r   splitr   r   	Exception)r0   r   r   r   r   aes   &&&&&  r)   r   SambaOptions._set_option=  s    88C=B++8: :IIc1	CHHLL1qt$ 	C++:=qAC C	Cs    *A, ,B7BBc                r   V P                   e2   V P                  P                  V P                   4       V P                  # \        P                  ! R4      e<   V P                  P                  \        P                  ! R4      4       V P                  # V P                  P                  4        V P                  # )z?Return loadparm object with data specified on the command line.SMB_CONF_PATH)r   r   loadr~   r   load_defaultr   s   &r)   get_loadparmSambaOptions.get_loadparmH  s    'HHMM$**+
 xx	 YY'3HHMM"))O45 xx HH!!#xxr3   )r   r   r   )r<   r=   r>   r?   r@   r1   r   r   r   r   r   r   rA   rB   rb   rc   s   @@r)   r   r      s2     5'R '	C r3   r   c                   6   a a ] tR tRt oRtV 3R ltRtVtV ;t# )Samba3OptionsiS  z<General Samba-related command line options with an s3 param.c                \   < \         SV `  V4       ^ RIHp VP	                  4       V n        R# )r   )paramN)r[   r1   samba.samba3r   get_contextr   )r0   r   s3paramr]   s   && r)   r1   Samba3Options.__init__V  s#     1&&(r3   )r   	r<   r=   r>   r?   r@   r1   rA   rB   rb   rc   s   @@r)   r   r   S  s     F) )r3   r   c                   6   a a ] tR tRt oRtV 3R ltRtVtV ;t# )HostOptionsi\  z?Command line options for connecting to target host or database.c                v   < \         SV `  VR 4       V P                  RRR\        RRV P                  RR7       R# )	zHost Optionsz-Hz--URLz%LDB URL for database or target serverURLr   H)r   r   r   r   r   ru   N)r[   r1   r   r7   r   r0   r   r]   s   &&r)   r1   HostOptions.__init___  s:    0gD %
!%s 	 	<r3   rG   r   rc   s   @@r)   r  r  \  s     I< <r3   r  c                   <   a a ] tR tRt oRtV 3R ltR tRtVtV ;t	# )VersionOptionsih  z/Command line option for printing Samba version.c           	        < \         SV `  VR 4       V P                  RRRV P                  R\        P
                   R2R7       R# )zVersion Optionsz-Vz	--versionr   zDisplay version number ())r   r   r   N)r[   r1   r   _display_versionr   rk   r  s   &&r)   r1   VersionOptions.__init__j  sD    !23k*!%!6!67aH 	 	Jr3   c                d    \        \        P                  4       \        P                  ! ^ 4       R# )r   N)printr   rk   r   exitr   s   &&&&&r)   r  VersionOptions._display_versionp  s    emmr3   rG   )
r<   r=   r>   r?   r@   r1   r  rA   rB   rb   rc   s   @@r)   r  r  h  s     9J r3   r  c                     V P                  4       R9   d   \        # V P                  4       R9   d   \        # V P                  4       R9   d   \        # \        P
                  ! RV: RV : 24      h)yesinvalid  option value: )r  true1)nofalse0)auto)lowerr	   r   r   r   r   r   r   s   &&r)   parse_kerberos_arg_legacyr  u  s]    
yy{**  	,	,  		   '')0#)7 8 	8r3   c                     V P                  4       R 8X  d   \        # V P                  4       R8X  d   \        # V P                  4       R8X  d   \        # \        P
                  ! RV: RV : 24      h)rR   desiredoffr  r  )r  r	   r   r   r   r   r  s   &&r)   parse_kerberos_argr!    s[    
yy{j   			!  		  '')0#)7 8 	8r3   c                      a a ] tR tRt oRtRV 3R lltR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tRR ltRtVtV ;t# )CredentialsOptionsi  z0Command line options for specifying credentials.c           
       < W n         Ve   RV,          V n        MRV n        RV n        R V n        RV n        \
        SV `  WP                  4       V P                  RRRV P                  \        RR	7       V P                  R
RRR\        V P                  R7       V P                  RRRR\        RV P                  R7       V P                  RRRR\        RV P                  R7       V P                  RRRRV P                  R7       V P                  RRRR\        RV P                  R7       V P                  RR RR!V P                  R7       V P                  R"R#R\        R$V P                   R7       V P                  R%R&R\        R'V P"                  R7       V P                  R(R)R*R\        R+V P$                  R7       V P                  R,R-R.R\        R/V P&                  R7       \)        4       V n        R # )0NzCredentials Options (%s)zCredentials OptionsTFz--simple-bind-dnDNr   DN to use for a simple bindr   r   r   r   r   z
--passwordPASSWORDPasswordr   r   r   r   r   z-Uz
--usernameUSERNAMEUsernamer   r   r   r   r   z-Wz--workgroup	WORKGROUP	Workgroupz-Nz	--no-passzDon't ask for a password)r   r   r   r   z--ipaddress	IPADDRESSzIP address of serverz-Pz--machine-passz#Use stored machine account passwordz--use-kerberosdesired|required|offUse Kerberos authenticationz--use-krb5-ccache
KRB5CCNAMEzKerberos Credentials cachez-Az--authentication-fileAUTHFILEzAuthentication filez-kz
--kerberosKERBEROSz%DEPRECATED: Migrate to --use-kerberos)special_namesectionask_for_password	ipaddressmachine_passr[   r1   _add_option_set_simple_bind_dnr7   _set_password_parse_username_parse_workgroup_set_no_password_set_ipaddress_set_machine_pass_set_kerberos_set_krb5_ccache_set_auth_file_set_kerberos_legacyr   creds)r0   r   r6  r]   s   &&&r)   r1   CredentialsOptions.__init__  s)   (#5DDL0DL $!.+T*"&":":; 	 	= 	z*(sT=O=O 	 	Q|Z *(43G3G 	 	I 	}k *)D4I4I 	 	K 	{:8"&"7"7 	 	9 	]K *4"&"5"5 	 	7 	/ *C"&"8"8 	 	: 	)3I *;dFXFX 	 	Z 	,l *:"&"7"7 	 	9 	6
 *3"&"5"5 	 	7 	|Z *EPTPiPi 	 	k !]
r3   c                   V P                   f   V P                  ! V/ VB # RpV FF  pVP                  R4      '       g   K  W4P                  RRV P                   ,          4      3,          pKH  	  V P                  ! V/ VB  R # )Nz--z--%s-rG   )r6  r   
startswithr   )r0   args1r   args2r   s   &*,  r)   r;  CredentialsOptions._add_option  sw    $??E4V44A<<%%iig0A0A&ABDDE  	)&)r3   c                J    V P                   P                  V4       R V n        R# FN)rG  parse_stringr:  r   s   &&&&&r)   r>  "CredentialsOptions._parse_username  s    

$!r3   c                <    V P                   P                  V4       R # rK   )rG  
set_domainr   s   &&&&&r)   r?  #CredentialsOptions._parse_workgroup  s    

c"r3   c                X    V P                   P                  V4       R V n        R V n        R# rO  )rG  set_passwordr8  r:  r   s   &&&&&r)   r=   CredentialsOptions._set_password  s$    

$ %!r3   c                    R V n         R# rO  )r8  r   s   &&&&&r)   r@  #CredentialsOptions._set_no_password  s
     %r3   c                    R V n         R# )TN)r:  r   s   &&&&&r)   rB  $CredentialsOptions._set_machine_pass  s
     r3   c                    W0n         R # rK   )r9  r   s   &&&&&r)   rA  !CredentialsOptions._set_ipaddress  s    r3   c                d    \        R 4       V P                  P                  \        W24      4       R# )z0WARNING: The option -k|--kerberos is deprecated!N)r  rG  set_kerberos_stater  r   s   &&&&&r)   rF  'CredentialsOptions._set_kerberos_legacy  s#    @A

%%&?&MNr3   c                N    V P                   P                  \        W24      4       R # rK   )rG  r_  r!  r   s   &&&&&r)   rC   CredentialsOptions._set_kerberos  s    

%%&8&FGr3   c                <    V P                   P                  V4       R # rK   )rG  set_bind_dnr   s   &&&&&r)   r<  &CredentialsOptions._set_simple_bind_dn  s    

s#r3   c                    R V n         V P                  P                  \        4       V P                  P	                  V4       R# rO  )r8  rG  r_  r	   set_named_ccacher   s   &&&&&r)   rD  #CredentialsOptions._set_krb5_ccache  s/     %

%%&78

##C(r3   c                    \         P                  P                  V4      '       d,   V P                  P	                  V4       R V n        R V n        R# R# rO  )r~   pathexistsrG  
parse_filer8  r:  r   s   &&&&&r)   rE  !CredentialsOptions._set_auth_file  s<    77>>#JJ!!#&$)D! %D r3   c                   V P                   P                  V4       V P                  '       d   V P                   P                  V4       M,V P                  '       d   V P                   P                  4        V'       dI   V P                   P                  4       '       g)    V P                   P                  V4       V P                   # V P                   #   \         d     T P                   # i ; i)zpObtain the credentials set on the command-line.

:param lp: Loadparm object to use.
:return: Credentials object
)rG  guessr:  set_machine_accountr8  set_cmdline_callbacksauthentication_requestedr   )r0   lpfallback_machines   &&&r)   get_credentials"CredentialsOptions.get_credentials  s     	

JJ**2."""JJ,,. DJJ$G$G$I$I

..r2 zztzz  zzs   C C+*C+)r8  rG  r9  r:  r7  r6  rK   )F)r<   r=   r>   r?   r@   r1   r;  r>  r?  r=  r@  rB  rA  rF  rC  r<  rD  rE  ru  rA   rB   rb   rc   s   @@r)   r#  r#    sV     :1#f	*"#"
&!OH$)
& r3   r#  c                   d   a a ] tR tRt oRtV 3R ltR tR tR tR t	R t
R	 tRR
 ltRtVtV ;t# )CredentialsOptionsDoublei  z?Command line options for specifying credentials of two servers.c           	     6  < \         SV `  V4       R V n        V P                  RRRV P                  \
        RR7       V P                  RRRR\
        V P                  R	7       V P                  R
RR\
        RV P                  R7       V P                  RRR\
        RV P                  R7       V P                  RRRR7       V P                  RRR\
        RV P                  R7       V P                  RRR\
        RV P                  R7       \        4       V n        R# )Tz--simple-bind-dn2DN2r   r&  r'  z--password2	PASSWORD2r)  r*  z--username2	USERNAME2zUsername for second serverr-  z--workgroup2
WORKGROUP2zWorkgroup for second serverz
--no-pass2
store_truez.Don't ask for a password for the second server)r   r   z--use-kerberos2r1  r2  z--kerberos2	KERBEROS2zUse KerberosN)r[   r1   no_pass2r   _set_simple_bind_dn2r7   _set_password2_parse_username2_parse_workgroup2_set_kerberos2_set_kerberos2_legacyr   creds2r  s   &&r)   r1   !CredentialsOptionsDouble.__init__  s*    +U:!%!:!:: 	 	< 	{:'c!%!4!4 	 	6 	{)9!%!6!6 	 	8 	):!%!7!7 	 	9 	\M 	 	O)3I):TEXEX 	 	Z
 	{)+d6P6P 	 	R "mr3   c                <    V P                   P                  V4       R # rK   )r  rP  r   s   &&&&&r)   r  )CredentialsOptionsDouble._parse_username2/  s      %r3   c                <    V P                   P                  V4       R # rK   )r  rS  r   s   &&&&&r)   r  *CredentialsOptionsDouble._parse_workgroup22  s    s#r3   c                J    V P                   P                  V4       R V n        R# rO  )r  rV  r  r   s   &&&&&r)   r  'CredentialsOptionsDouble._set_password25  s      %r3   c                N    V P                   P                  \        W24      4       R # rK   r  r_  r!  r   s   &&&&&r)   r  .CredentialsOptionsDouble._set_kerberos2_legacy9      &&'9#'GHr3   c                N    V P                   P                  \        W24      4       R # rK   r  r   s   &&&&&r)   r  'CredentialsOptionsDouble._set_kerberos2<  r  r3   c                <    V P                   P                  V4       R # rK   )r  rd  r   s   &&&&&r)   r  -CredentialsOptionsDouble._set_simple_bind_dn2?  s    $r3   c                .   V'       d   V P                   P                  V4       M:V P                   P                  4       '       g   V P                   P                  4        V P                  '       d   V P                   P                  4        V P                   # )zObtain the credentials set on the command-line.

:param lp: Loadparm object to use.
:param guess: Try guess Credentials from environment
:return: Credentials object
)r  ro  get_usernameset_anonymousr  rq  )r0   rs  ro  s   &&&r)   get_credentials2)CredentialsOptionsDouble.get_credentials2B  s_     KKb!))++KK%%'===KK--/{{r3   )r  r  )T)r<   r=   r>   r?   r@   r1   r  r  r  r  r  r  r  rA   rB   rb   rc   s   @@r)   rx  rx    s7     I$:&$II% r3   rx  )$r@   __docformat__r   r~   r   abcr   r   r   samba.credentialsr   r   r   r	   samba._gluer
   r   r*   r   r,   r   rF   rI   rQ   re   HelpFormatterr   r   r   r   r  r  r  r!  r#  rx  rG   r3   r)   <module>r     s  $ >"  	 
 '   . $-N<22 <(	i 	' X__ .48(( 4nH22 B!(&& !.V; Vr)L )	<+ 	<
[ 
	8	8 DA1 Ar3   