File: //lib/python3/dist-packages/samba/netcmd/__pycache__/fsmo.cpython-310.pyc
o
�/a�Q � @ s� d dl Z d dlmZ d dlZd dlmZ d dlmZmZ d dl m
Z
d dlZ d dlm
Z
mZmZmZ d dlmZ dd� Zd d
� Zdd� ZG d
d� de
�ZG dd� de
�ZG dd� de
�ZG dd� de�ZdS )� N)�LdbError)�drsuapi�misc)�system_session)�Command�CommandError�SuperCommand�Option)�SamDBc
C s� z| j |tjdgd�}W n ty) } z|j\}}|tjkr$td| ��� d}~ww d|d v rAt�| |d d d �d��}|S d}|S )znGets the owner of an FSMO role
:param roledn: The DN of the FSMO role
:param role: The FSMO role
�
fSMORoleOwner��scope�attrsz+The '%s' role is not present in this domainNr �utf8) �search�ldb�
SCOPE_BASEr �args�ERR_NO_SUCH_OBJECTr �Dn�decode)�samdb�roledn�role�res�e7�num�msg�master_owner� r �3/usr/lib/python3/dist-packages/samba/netcmd/fsmo.py�get_fsmo_roleowner$ s
�
���r! c
C s� |dkr
|� � }d| }n|dkrt�|�� �}d| }|�� }|j|dgtjdgd�} d| d v r|z*tt �
t�|| d d d �d ���
d
���}
tt�|| d d d �d ���}W n( ty{ } z|j\}
}td| d d d |f ��d}~ww | �d
| � dS |dkr�d|
|�� f }d|�� |�� f }n|dkr�d|
|�� f }d|�� |�� f }|�� }||k�rl|�� }|j|dd�}td| t� ||d�}t�� }t�||�|_t�|tjd�|d<