
    gS                     R    S r SSKJr  SSKJr   " S S\5      r " S S\5      rS r	g	)
z+The main samba-tool command implementation.    )getopt)SuperCommandc                   .    \ rS rSrSrS rSS jrS rSrg)	cache_loader   z
We only load subcommand tools if they are actually used.
This significantly reduces the amount of time spent starting up
samba-tool
c                     [         R                  X5      nUcP  SUR                  SS5      -  nUS:X  a  SOUnUR                  SS5      n[        [	        SU-  U/S9U5      " 5       X'   [         R                  X5      $ )Nzcmd_%s-_timenettimezsamba.netcmd.%s)fromlist)dict__getitem__replacegetattr
__import__)selfattritemcmdpackages        3/usr/lib/python3/dist-packages/samba/netcmd/main.pyr   cache_loader.__getitem__   s    +<T\\#s33C#'6>itGooc3/G ,=,G69U"<=@B DDJ++    Nc                 0     X   $ ! [          a    Us $ f = fN)KeyError)r   r   defaults      r   getcache_loader.get)   s#    	: 	N	s    c              #   .   #    U  H  nXU   4v   M     g 7fr    )r   keys     r   itemscache_loader.items/   s     CS	"" s   r"   r   )	__name__
__module____qualname____firstlineno____doc__r   r   r$   __static_attributes__r"   r   r   r   r      s    
,#r   r   c                   F   \ rS rSrSrS\R                  0r\" 5       r	S\	S'   S\	S'   S\	S'   S\	S'   S\	S	'   S\	S
'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   S\	S'   Sr
g) cmd_sambatool4   zMain samba administration tool.versionoptsNcomputercontactdbcheck
delegationdnsdomaindrsdsaclforestfsmogpogroupldapcmpntaclrodcschemashellsitesspntestparmr   userou	processeszservice-account	visualizer"   )r&   r'   r(   r)   r*   optionsVersionOptionstakes_optiongroupsr   subcommandsr+   r"   r   r   r-   r-   4   s(   ) 	w-- .K"K
!K	!K	 $KK KKK KKKK!K	KK KKKK"K
KKK#K%)K!"#Kr   r-   c                       [        5       R                  " S/U Q70 UD6u  p#UR                  " U6 nU$ ! [         a  nUR                  n SnAU$ SnAf[
         a  nWR                  U5        Sn SnAU$ SnAff = f)z^A single function that runs samba-tool, returning an error code on
error, and None on success.z
samba-toolN   )r-   _resolve_run
SystemExitcode	Exceptionshow_command_error)argskwargsr   argvretes         r   
samba_toolrY   Y   s~    !O,,\KDKFK	hho J  ff J  q!Js    /3 
A:AA:A55A:N)
r*   sambar   rH   samba.netcmdr   r   r   r-   rY   r"   r   r   <module>r\      s.   $ 2 # %#4 #6"$L "$Jr   