
    g                     @    S SK r S SKJrJr  S SKJr   " S S\\5      rg)    N)
gp_xml_extgp_file_applier)logc                   &    \ rS rSrS rS rS rSrg)vgp_symlink_ext   c                     g)Nz VGP/Unix Settings/Symbolic Links )selfs    :/usr/lib/python3/dist-packages/samba/gp/vgp_symlink_ext.py__str__vgp_symlink_ext.__str__   s    1    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	U R                  U	5      n
U
(       d  M]  U
R                  S5      nUR                  S5      nUR                  S5       Hn  nUR                  S5      R                  nUR                  S5      R                  nUnU R                  U5      nS nU R                  UR                  UUUX5        Mp     GM     g )N*MACHINE/VGP/VTLA/Unix/Symlink/manifest.xmlpolicysettingdatafile_propertiessourcetargetc                     [         R                  R                  U5      (       d  [         R                  " X5        U/$ [        R
                  " SU5        / $ )NzSymlink destination exists)ospathexistssymlinkr   warn)r   r   s     r   applier_func:vgp_symlink_ext.process_group_policy.<locals>.applier_func2   s<    !ww~~f55JJv6$*8OHH%A6J!	r   )stritemsunapplyfile_sys_pathr   r   joinparsefindfindalltextgenerate_value_hashapplyname)r   deleted_gpo_listchanged_gpo_listguidsettings	attributer   gpoxmlr   xml_confpolicyr   entryr   r   
value_hashr   s                     r   process_group_policy$vgp_symlink_ext.process_group_policy   s&   .ND4yH$*23t9*=*C*C*E&ILL': +F /
 $C   Bww||C$5$5s;::d+!7{{6*!\\*;<E"ZZ166F"ZZ166F !'I "&!9!9&!AJ" JJsxxJ%/# = $r   c                 :   0 nSnUR                   (       Ga  [        R                  R                  UR                   U5      nU R	                  U5      nU(       d  U$ UR                  S5      nUR                  S5      nUR                  S5       H  nUR                  S5      R                  n	UR                  S5      R                  n
[        U 5      UR                  5       ;  a  / U[        U 5      '   U[        U 5         R                  SU	< SU
< 35        M     U$ )	Nr   r   r   r   r   r   zln -s  )r"   r   r   r#   r$   r%   r&   r'   r   keysappend)r   r0   outputr1   r   r2   r3   r   r4   r   r   s              r   rsopvgp_symlink_ext.rsop<   s    :77<< 1 137Dzz$'H]]?3F;;v&D&78H-22H-22t9FKKM1(*F3t9%s4y!((&&)IJ 9 r   r
   N)__name__
__module____qualname____firstlineno__r   r6   r=   __static_attributes__r
   r   r   r   r      s    2!/Fr   r   )r   samba.gp.gpclassr   r   samba.gp.util.loggingr   r   r
   r   r   <module>rF      s   " 
 8 %7j/ 7r   