+
    4Ssi¢  ã                   ó„   € ^ RI t ^ RIt^ RIt^ RIHtHtHt ^ RIHt ^ RI	H
t
Ht ^ RIHt R tR tR t ! R	 R
]]4      tR# )é    N)Ú
gp_xml_extÚcheck_safe_pathÚgp_file_applier)ÚNamedTemporaryFile)ÚcopyfileÚmove)Úlogc                 óœ  € ^ pV P                  R4       EF3  pVP                  R4      pVR8X  dY   VP                  R4      e
   VR,          pVP                  R4      e
   V^€,          pVP                  R4      e   V^@,          pKr  Kt  VR8X  dY   VP                  R4      e
   V^ ,          pVP                  R4      e
   V^,          pVP                  R4      e   V^,          pKÑ  KÓ  VR	8X  g   KÜ  VP                  R4      e
   V^,          pVP                  R4      e
   V^,          pVP                  R4      f   EK*  V^,          pEK6  	  V# )
r   ÚpermissionsÚtypeÚuserÚreadé   ÚwriteÚexecuteÚgroupÚother)ÚfindallÚgetÚfind)ÚentryÚmoder   Úptypes   &   Ú8/usr/lib/python3/dist-packages/samba/gp/vgp_files_ext.pyÚ	calc_moder      s:  € Ø€DØ—}‘} ]×3ˆØ—‘ Ó'ˆØ�FŒ?Ø×Ñ Ó'Ò3Ø˜•�Ø×Ñ Ó(Ò4Ø˜•�Ø×Ñ 	Ó*Ò6Ø˜•’ñ 7à�gÔØ×Ñ Ó'Ò3Ø˜•�Ø×Ñ Ó(Ò4Ø˜•�Ø×Ñ 	Ó*Ò6Ø˜•’ñ 7à�gÖØ×Ñ Ó'Ò3Ø˜•�Ø×Ñ Ó(Ò4Ø˜•�Ø×Ñ 	Ó*Õ6Ø˜•“ñ- 4ð. €Kó    c                 óÎ   € R p\        ^RR4       FQ  p^R^R^R/pVP                  4        F2  pWV,          ,          '       d   WV,          ,          pK)  VR ,          pK4  	  KS  	  V# )Ú-ÚrÚwÚxéÿÿÿÿéýÿÿÿ)ÚrangeÚkeys)r   ÚstatÚiÚmaskr!   s   &    r   Ústat_from_moder)   2   sb   € Ø€DÜ�1�b˜"ÖˆØ�S˜#˜s C¨Ð-ˆØ—‘–ˆAØ˜A•v�ŒØ˜Q�•’à˜•’ó	 ñ ð €Kr   c                 óž   € \         P                  P                  V 4      '       d(   R \         P                  ! V 4      P                  ,          # R# )ó   %dN)ÚosÚpathÚexistsr&   Úst_ctime)Úfnames   &r   Úsource_file_changer1   =   s3   € Ü	‡w�w‡~�~�e×ÒØ”r—w’w˜u“~×.Ñ.Õ.Ð.ñ r   c                   ó2   a € ] tR t^At o R tR tR tRtV tR# )Úvgp_files_extc                ó   € R # )zVGP/Unix Settings/Files© )Úselfs   &r   Ú__str__Úvgp_files_ext.__str__B   s   € Ù(r   c                óø  € V FR  w  r4\        V 4      V9   g   K  V\        V 4      ,          P                  4        F  w  rVV P                  W5V4       K  	  KT  	  V EF  pVP                  '       g   K  R p\        P
                  P                  VP                  V4      p	V P                  V	4      p
V
'       g   K_  V
P                  R4      pVP                  R4      pVP                  R4       EFƒ  pV P                  P                  R4      pVP                  R4      P                  p\        P
                  P                  V\        P
                  P                  \        V	4      4      P                  4       VP                  4       4      p\        P
                  P!                  V4      '       g   \"        P$                  ! RV4       KÛ  VP                  R4      P                  pVP                  R4      P                  pVP                  R	4      P                  p\'        V4      pTpV P)                  \+        V4      VVR
V,          4      pR pV P-                  VP.                  VVVVVVVV4	       EK†  	  EK  	  R# )ú(MACHINE/VGP/VTLA/Unix/Files/manifest.xmlÚpolicysettingÚdataÚfile_propertiesÚ	gpo_cacheÚsourcezSource file does not existÚtargetr   r   r+   c           	      óü  € \        \        P                  P                  V4      R R7      ;_uu_ 4       p\	        WP
                  4       \        P                  ! VP
                  \        P                  ! V4      P                  \        P                  ! V4      P                  4       \        P                  ! VP
                  V4       \        VP
                  V4       RRR4       V.#   + '       g   i     T.# ; i)F)ÚdirÚdeleteN)r   r,   r-   Údirnamer   ÚnameÚchownÚpwdÚgetpwnamÚpw_uidÚgrpÚgetgrnamÚgr_gidÚchmodr   )Úsource_filer@   r   r   r   Úfs   &&&&& r   Úapplier_funcÚ8vgp_files_ext.process_group_policy.<locals>.applier_funck   s¨   € Ü/´B·G±G·O±OÀFÓ4KØ7<÷>õ >ØABÜ$ [·&±&Ô9ÜŸHšH Q§V¡V¬S¯\ª\¸$Ó-?×-FÑ-FÜ%(§\¢\°%Ó%8×%?Ñ%?ôAäŸHšH Q§V¡V¨TÔ2Ü  §¡¨Ô0÷>ð !'˜x˜÷>ö >ð !'˜x˜ús   ³B+C)Ã)C;	N)ÚstrÚitemsÚunapplyÚfile_sys_pathr,   r-   ÚjoinÚparser   r   ÚlpÚ
cache_pathÚtextrD   r   Úupperr.   r	   Úwarnr   Úgenerate_value_hashr1   ÚapplyrE   )r6   Údeleted_gpo_listÚchanged_gpo_listÚguidÚsettingsÚ	attributeÚ_ÚgpoÚxmlr-   Úxml_confÚpolicyr<   r   Ú
local_pathr?   rN   r@   r   r   r   Ú
value_hashrP   s   &&&                    r   Úprocess_group_policyÚ"vgp_files_ext.process_group_policyE   sê  € Û.‰NˆDÜ�4‹y˜HÖ$Ø$,¬S°«YÕ$7×$=Ñ$=Ö$?‘L�IØ—L‘L °)Ö<ó %@ñ /ô
 $ˆCØ× × Ò Ø@�Ü—w‘w—|‘| C×$5Ñ$5°sÓ;�ØŸ:™: dÓ+�ßÙØ!Ÿ™ Ó7�Ø—{‘{ 6Ó*�Ø!Ÿ\™\Ð*;×<�EØ!%§¡×!3Ñ!3°KÓ!@�JØ"ŸZ™Z¨Ó1×6Ñ6�FÜ"$§'¡'§,¡,¨zÜŸ™Ÿ™¬¸Ó(=Ó>×DÑDÓFØ(.¯©«ó#8�Kô Ÿ7™7Ÿ>™>¨+×6Ò6ÜŸšÐ!=¸{ÔKÙ Ø"ŸZ™Z¨Ó1×6Ñ6�FØ Ÿ:™: fÓ-×2Ñ2�DØ!ŸJ™J wÓ/×4Ñ4�EÜ$ UÓ+�Dð !'�Ið
 "&×!9Ñ!9Ü.¨{Ó;Ø  %¨°­ó"7�Jò(ð —J‘J˜sŸx™x¨°JÀØ*¨F°D¸%À÷GôA =ó $r   c           
     óö  € / pR pVP                   '       Edb   \        P                  P                  VP                   V4      pV P	                  V4      pV'       g   V# VP                  R4      pVP                  R4      pVP                  R4       Få  pVP                  R4      P                  p	VP                  R4      P                  p
VP                  R4      P                  pVP                  R4      P                  p\        V4      p\        V4      : RV: RV: RV
: R	V	: 2	p\        V 4      VP                  4       9  d   . V\        V 4      &   V\        V 4      ,          P                  V4       Kç  	  V# )
r:   r;   r<   r=   r?   r@   r   r   Ú	z -> )rU   r,   r-   rV   rW   r   r   rZ   r   r)   rR   r%   Úappend)r6   re   Úoutputrf   r-   rg   rh   r<   r   r?   r@   r   r   r   Úps   &&             r   ÚrsopÚvgp_files_ext.rsopw   s(  € ØˆØ8ˆØ××ÑÜ—7‘7—<‘< × 1Ñ 1°3Ó7ˆDØ—z‘z $Ó'ˆHßØ�Ø—]‘] ?Ó3ˆFØ—;‘;˜vÓ&ˆDØŸ™Ð&7Ö8�ØŸ™ HÓ-×2Ñ2�ØŸ™ HÓ-×2Ñ2�Ø—z‘z &Ó)×.Ñ.�ØŸ
™
 7Ó+×0Ñ0�Ü  Ó'�ä# DÖ)«4³»ÂðH�ä�t“9 F§K¡K£MÔ1Ø(*�Fœ3˜t›9Ñ%Ø”s˜4“yÕ!×(Ñ(¨Ö+ñ 9ð ˆr   r5   N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r7   rk   rr   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r3   r3   A   s   ø‡ € ò)ò0G÷dð r   r3   )r,   rG   rJ   Úsamba.gp.gpclassr   r   r   Útempfiler   Úshutilr   r   Úsamba.gp.util.loggingr	   r   r)   r1   r3   r5   r   r   Ú<module>r      s;   ð÷" Ó ß IÑ IÝ 'ß !Ý %òò6	ò/ôK�J ö Kr   