File: //proc/1233/root/usr/lib/python3/dist-packages/samba/__pycache__/vgp_symlink_ext.cpython-310.pyc
o
�/a� � @ sD d dl Z d dlmZ d dlmZ d dlmZmZ G dd� de�ZdS )� N)�
gp_xml_ext)�NamedTemporaryFile)�Popen�PIPEc @ s$ e Zd Zdd� Zdd� Zdd� ZdS )�vgp_symlink_extc C s dS )Nz VGP/Unix Settings/Symbolic Links� )�selfr r �7/usr/lib/python3/dist-packages/samba/vgp_symlink_ext.py�__str__ s zvgp_symlink_ext.__str__c C s^ |D ]6\}}| j �|� t| �|v r3|t| � �� D ]\}}tj�|�r)t�|� | j �t| �|� q| j � � q|D ]q}|j
r�| j �|j� d}tj�|j
|�} | �
| �}
|
sYq;|
�d�}|�d�}|�d�D ]C}
|
�d�j}|
�d�j}d||f }| j �t| �|�}|s�tj�|�s�t�||� | j �t| �||� n| j�d| � | j � � qhq;d S ) N�*MACHINE/VGP/VTLA/Unix/Symlink/manifest.xml�
policysetting�data�file_properties�source�targetz%s:%szSymlink destination "%s" exists)�gp_db�set_guid�str�items�os�path�exists�unlink�delete�commit�
file_sys_path�name�join�parse�find�findall�text�retrieve�symlink�store�logger�warn)r �deleted_gpo_list�changed_gpo_list�guid�settings� attributer# �gpo�xmlr �xml_conf�policyr
�entryr r �old_valr r r �process_group_policy sB
���z$vgp_symlink_ext.process_group_policyc C s� i }d}|j rQtj�|j |�}| �|�}|s|S |�d�}|�d�}|�d�D ])}|�d�j} |�d�j}
t| �|� � vrCg |t| �<