
    gK                         S SK r S SKJrJr  S SKJr  S SKJrJr  S SK	J
r
  S rSr\" S\ R                  S	   < S
S< 3S9rS r " S S\\5      rg)    N)
gp_pol_extgp_file_applier)NamedTemporaryFile)PopenPIPE)logc                     UR                  [        R                  5      nU HJ  n[        R                  R	                  X05      n[        R                  R                  U5      (       d  MH  Us  $    g )N)splitospathseppathjoinisfile)
executabler   pathspfs        9/usr/lib/python3/dist-packages/samba/gp/gp_sudoers_ext.pyfind_executabler      sM    JJrzz"EGGLL'77>>!H      a
  
### autogenerated by samba
#
# This file is generated by the gp_sudoers_ext Group Policy
# Client Side Extension. To modify the contents of this file,
# modify the appropriate Group Policy objects which apply
# to this machine. DO NOT MODIFY THIS FILE DIRECTLY.
#

visudoPATH:z	/usr/sbin)r   c                    / nU GH$  n[         nUSU-  -  n[        5        n[        UR                  S5       nUR	                  U5        S S S 5        [
        c  [        S5      e[        [
        SSUR                  /[        [        S9 nUR                  5       nS S S 5        S S S 5        WS:X  ab  [        SS	U S
9 n[        UR                  S5       nUR	                  U5        S S S 5        UR                  UR                  5        S S S 5        GM  [        R                  " SU5        GM'     U$ ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       GM  = f)Nz%s
wz#visudo not found, please install itz-cz-f)stdoutstderrr   gp_F)prefixdeletedirzSudoers apply failed)intror   opennamewriter   FileNotFoundErrorr   r   waitappendr   error)	sudo_dirsudo_entriesretr   contentsr   r   procsudo_validations	            r   sudo_applier_funcr0   ,   s3   
CFQJ!Qaffc"a! #~'(MNNdAFF3"4148"&))+1 " a#5+0(0256!&&#&!GGH% '

166"2 2 II,a0' ( J! #"1 1 "! '&2 2s^   ED0
?E	EE;E4E#$#E40
D>:E
EE
E 	#
E1-E44
F	c                   ,    \ rS rSrS r SS jrS rSrg)gp_sudoers_extD   c                     g)NzUnix Settings/Sudo Rights )selfs    r   __str__gp_sudoers_ext.__str__E   s    *r   c           	      
   U HM  u  pE[        U 5      U;   d  M  U[        U 5         R                  5        H  u  pgU R                  XFU5        M     MO     U GH)  nUR                  (       d  M  Sn	Sn
[        R
                  R                  UR                  U
5      nU R                  U5      nU(       d  M_  / nUR                   HQ  nUR                  U	:X  d  M  UR                  R                  5       (       d  M6  UR                  UR                  5        MS     U R                  UR                  5      nU R                  " U6 nU R!                  UR                  Xo["        X=5        U R%                  UR                  U/S9  GM,     g )Nz1Software\Policies\Samba\Unix Settings\Sudo RightsMACHINE/Registry.pol)keep)stritemsunapplyfile_sys_pathr   r   r   parseentrieskeynamedatastripr(   generate_attributer$   generate_value_hashapplyr0   clean)r6   deleted_gpo_listchanged_gpo_listsdirguidsettings	attributesudoersgposectionpol_filer   pol_confr+   e
value_hashs                   r   process_group_policy#gp_sudoers_ext.process_group_policyH   s3   .ND4yH$*23t9*=*C*C*E&ILL': +F /
 $C   Q1ww||C$5$5x@::d+!!))AyyG+$++AFF3 *
 !33CHH=	 "55|D


388Y<M/ 

3889+
6+ $r   c                    0 nSnUR                   (       a  [        R                  R                  UR                   U5      nU R	                  U5      nU(       d  U$ UR
                   H  nUR                  R                  S5      S   nUR                  S5      (       d  M9  UR                  R                  5       (       d  MZ  XrR                  5       ;  a  / X''   X'   R                  UR                  5        M     U$ )Nr:   \zSudo Rights)r?   r   r   r   r@   rA   rB   r
   endswithrC   rD   keysr(   )r6   rP   outputrR   r   rS   rT   keys           r   rsopgp_sudoers_ext.rsopf   s    )77<< 1 18<Dzz$'H%%iiood+B/<<..166<<>>++-/&(K&&qvv. & r   r5   N)z/etc/sudoers.d)__name__
__module____qualname____firstlineno__r7   rV   r_   __static_attributes__r5   r   r   r2   r2   D   s    + "7<r   r2   )r   samba.gp.gpclassr   r   tempfiler   
subprocessr   r   samba.gp.util.loggingr   r   r"   environr   r0   r2   r5   r   r   <module>rk      sT   " 
 8 ' " %		 


6*K8
:00Z 0r   