File: //proc/1233/root/usr/lib/python3/dist-packages/samba/__pycache__/remove_dc.cpython-310.pyc
o
�/a�H � @ s� d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlmZm Z d dl
mZmZm
Z
mZmZmZ G dd� de�Zd d
� Zddd
�Zdd� Z ddd�Z ddd�Zdd� Zdd� ZdS )� N)�LdbError)�werror)�
ndr_unpack)�misc�dnsp)�DNS_TYPE_NS�
DNS_TYPE_A�
DNS_TYPE_AAAA�DNS_TYPE_CNAME�DNS_TYPE_SRV�DNS_TYPE_PTRc @ s e Zd ZdZdd� Zdd� ZdS )�DemoteExceptionzBase element for demote errorsc C s
|| _ d S �N��value)�selfr � r �1/usr/lib/python3/dist-packages/samba/remove_dc.py�__init__ �
zDemoteException.__init__c C s
d| j S )NzDemoteException: r )r r r r �__str__# r zDemoteException.__str__N)�__name__�
__module__�__qualname__�__doc__r r r r r r r
s r
c
C s� | � � }dd| fD ]\}t�| |�}|�| �� �dkr%td|| �� f ��|�d�dkr2td| ��|�dd|� z|�d | � | � |� W q
tj
yf } z|j\}}|tjkr[n� W Y d }~q
d }~ww d
D ]^}t�| |�}|�| �
� �dkr�td|| �
� f ��|�d�dkr�td||f ��|�dd|� z|�d | � | � |� W qi tj
y� } z| j\}}|tjkr�n� W Y d } ~ qid } ~ ww d S )Nz3CN=Enterprise,CN=Microsoft System Volumes,CN=Systemz+CN=%s,CN=Microsoft System Volumes,CN=SystemFz+Failed constructing DN %s by adding base %szCN=Xz.Failed constructing DN %s by adding child CN=Xr �CNzRemoving Sysvol reference: %s)zMCN=Domain System Volumes (SYSVOL share),CN=File Replication Service,CN=SystemzDCN=Topology,CN=Domain System Volume,CN=DFSR-GlobalSettings,CN=SystemzAFailed constructing DN %s by adding child CN=X (soon to be CN=%s))�domain_dns_name�ldb�Dn�add_base�get_config_basednr
� add_child�
set_component�info�deleter �args�ERR_NO_SUCH_OBJECT�get_default_basedn)
�samdb�logger�dc_name�realm�s�dn�e�enum�estr�e1r r r �remove_sysvol_references'