
    g                         S SK r S SKrS SKJrJrJrJr  S SKJrJ	r	  S SK
JrJr  S SKJr  S SKJr  S\l        S rS	 r " S
 S\\5      rg)    N)
gp_xml_extgp_misc_applierdrop_privilegesexpand_pref_variables)PopenPIPE)fetch_crontabinstall_user_crontab)log)gp_scripts_exta  
### autogenerated by samba
#
# This file is generated by the gp_drive_maps_user_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.
#

c                     [         R                  " SU 5        [        SSU /[        [        S9R	                  5       u  pU(       a  SU;  a  [        U5      eg g )NzMounting drivegiomount)stdoutstderrs   Location is already mounted)r   debugr   r   communicateSystemError)uriouterrs      </usr/lib/python3/dist-packages/samba/gp/gp_drive_maps_ext.pymount_driver   $   sU    II$eWc* //:{} C
)4c"" 5     c                 j    [         R                  " SU 5        [        SSU S/5      R                  5       $ )NzUnmounting driver   r   z	--unmount)r   r   r   wait)r   s    r   unmount_driver   ,   s.    II #&%#{3499;;r   c                   F   ^  \ rS rSrU 4S jrS rS rS rS rS r	Sr
U =r$ )	gp_drive_maps_user_ext0   c                    > [         TU ]  U5      nSUR                  5       ;   a  [        R                  " US   5      US'   SUR                  5       ;   a  [        R                  " US   5      US'   U$ )Npropsrun_once)superparse_valuekeysjsonloads)selfvalvals	__class__s      r   r%   "gp_drive_maps_user_ext.parse_value1   sa    w"3'diik! JJtG}5DM$#zz$z*:;Dr   c                 Z   U R                  U5      nSUR                  5       ;   a  US   S   S;   a  [        U5        [        U R                  5      u  pVSUR                  5       ;   a3  US   U;   a*  UR                  US   5        [        U R                  XV5        U R                  X5        g )Nr"   actionCRUcrontab)r%   r&   r   r	   usernameremover
   cache_remove_attribute)r)   guidr   r*   r+   othersentriess          r   unapplygp_drive_maps_user_ext.unapply9   s    $diik!Wh'?:#'6		#Y7(BNN4	?+ @##D.r   c                    U R                  X5      nU R                  [        R                  " U5      [        R                  " U5      US9nU(       a  U R	                  XU5        US   S;   a  [        U5        OUS   S:X  a  [        U5        U(       dC  [        U R                  5      u  pXY;  a'  U	R                  U5        [        U R                  X5        U R                  XU5        g )N)r"   r#   r4   r/   r0   D)cache_get_attribute_valuegenerate_valuer'   dumpsr;   r   r   r	   r5   appendr
   cache_add_attribute)
r)   r8   r   r"   r#   entryold_valr*   r9   r:   s
             r   applygp_drive_maps_user_ext.applyD   s    00;!!

5(9+/::h+?*/ " 1
 LLG,?o-8_##+DMM:OF#u%$T]]FD  C0r   c                     g)NzPreferences/Drives )r)   s    r   __str__gp_drive_maps_user_ext.__str__Y   s    #r   c           	         U HM  u  p4[        U 5      U;   d  M  U[        U 5         R                  5        H  u  pVU R                  X5U5        M     MO     U GH<  nUR                  (       d  M  Sn[        R
                  R                  UR                  U5      n	[        SU R                  U	5      n
U
(       d  Mc  U
R                  S5      n/ nU GH  nUR                  S5      nUc#  [        R                  " SUR                  5        M;  UR                  S   S:X  a#  [        R                  " SUR                  5        Mq  S	nUR                  S
5      nU(       a  UR                  S5      nUb  SnSR                  UR                  S   R                  SS5      5      n[        R
                  R                  UR                  S5      n [!        UUU R"                  U R$                  S9nUR+                  U5        SnU(       dI  UR                  S   S;   a  SR                  U5      nO$UR                  S   S:X  a  SR                  U5      nU R-                  UR.                  X^R                  UU5        GM     U R1                  UR.                  US9  GM?     g ! [&         a0  n[        R(                  " SU-  UR                  5         S nAGM  S nAff = f)N"USER/Preferences/Drives/Drives.xmlrootDrive
PropertieszDrive is missing Properties	thisDriveHIDEzDrive is hiddenFFiltersFilterRunOnceTsmb:{}path\/USER)r5   z(Failed to expand drive map variables: %s r/   r0   z@hourly gio mount {}r>   z@hourly gio mount {} --unmount)keep)stritemsr;   file_sys_pathosrV   joinr   parsefindallfindr   warningattribformatreplacer   lpr5   	NameErrorwarnrB   rF   nameclean)r)   deleted_gpo_listchanged_gpo_listr8   settingsr   r*   gpoxmlrV   xml_confdrivesattrsdrivepropr#   filtersrun_once_filtergptpatherD   s                        r   process_group_policy+gp_drive_maps_user_ext.process_group_policy\   sQ   .ND4yH$ (T 3 9 9 ;HCLLC0 !< /
 $C   :ww||C$5$5s;*64::tD!))'2#E ::l3D|$A5<<P {{;/69$5t{{C $H#jj3G*1,,*G*6'+H"//$++f*=*E*EdC*PQC !ggll3+<+<fEG!3C$''=A]]L LL%E#;;x0OC$:$A$A#$FE![[2c9$D$K$KC$PEJJsxxkk8UKK $L 

388%
0_ $< % ! !Ka!O!%. !s    J
K"$KKc                 t   0 nUR                   (       Ga#  Sn[        R                  R                  UR                   U5      nU R	                  U5      nU(       d  U$ UR                  S5      nU H  nUR                  S5      nUc  M  UR                  S   S:X  a  M.  SR                  UR                  S   R                  SS	5      5      n	UR                  S
   S;   a"  SR                  U	5      X(R                  S   '   M  UR                  S
   S:X  d  M  SR                  U	5      X(R                  S   '   M     U$ )NrM   rO   rP   rQ   rR   rU   rV   rW   rX   r/   r0   zgio mount {}labelr>   zgio mount {} --unmount)
r^   r_   rV   r`   ra   rb   rc   re   rf   rg   )
r)   rp   outputrq   rV   rr   rs   ru   rv   r   s
             r   rsopgp_drive_maps_user_ext.rsop   s   6C77<< 1 137Dzz$'H%%g.Fzz,/<;;{+v5oodkk&&9&A&A$&LM;;x(O;3A3H3H3MF;;w/0[[*c1077< ;;w/0   r   rI   )__name__
__module____qualname____firstlineno__r%   r;   rF   rJ   r{   r   __static_attributes____classcell__)r,   s   @r   r   r   0   s'    	/1*$51n r   r   )r_   r'   samba.gp.gpclassr   r   r   r   
subprocessr   r   samba.gp.gp_scripts_extr	   r
   samba.gp.util.loggingr   samba.gpr   intror   r   r   rI   r   r   <module>r      sG   " 
   " G % #	 #<xZ xr   