File: //usr/lib/python3/dist-packages/samba/provision/__pycache__/__init__.cpython-310.pyc
o
f�0bӃ � 0 @ s^ d Z dZddlmZ ddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlmZmZ ddlmZ ddlZddlmZ ddlmZmZ dd lmZ dd
lmZ ddlmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z& ddl'm(Z(m)Z) dd
l*m+Z+m,Z, ddlm-Z-m.Z.m/Z/ ddl0m1Z1 ddl2m3Z3 ddl4m5Z5m6Z6m7Z7 ddl8m9Z9m:Z: ddl;m<Z< ddl=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQ ddlRmSZSmTZTmUZUmVZVmWZWmXZXmYZY ddlZm[Z[m\Z\m]Z]m^Z^ ddl_Zddl`ZddlambZb ddlcmdZd ddlemfZf ddlgmhZh ddlcmiZi dZjdZkdZldZmd ZnG d!d"� d"eo�ZpG d#d$� d$eo�Zqd%d&� Zrd�d(d)�Zsd*d+� Ztd,d-� Zud.d/� ZvG d0d1� d1eo�Zwd2d3� Zxd4d5� Zyd6d7� Zzd8d9� Z{d:d;� Z|d<d=� Z} 'd�d>d?�Z~ d�d@dA�ZdBdC� Z� ' d�dDdE�Z�dddddFe,fdGdH�Z�dIdJ� Z�dKdL� Z�dMdN� Z�dOdP� Z�dQdR� Z�dSdT� Z� d�dUdV�Z�dWdX� Z�dYdZ� Z�d[d\� Z�d]Z� ' 'd�d^d_�Z� ' d�d`da�Z�dbZ�dcZ�ddZ�e�fdedf�Z�dgdh� Z�didj� Z�dkdl� Z�dmdn� Z�dodp� Z�dqdr� Z�d�dsdt�Z�dudv� Z�ddeVdddwdddddddddddddd'dd'd'ddfdxdy�Z�dzd{d|d|d|d{d|d|d{dzdzd}�Z�d~d� Z�d�d�� Z�d�d�d��Z�d�d�d��Z�d�d�d��Z�ddeVddddddddddddwddddddddddddddddddddd'd'dd'd'ddd�d�d'ddd'f0d�d��Z� F 'd�d�d��Z�d�d�� Z�G d�d�� d�e��Z�G d�d�� d�e��Z�G d�d�� d�e��Z�dS )�z/Functions for setting up a Samba configuration.�restructuredText� )� b64encodeN)�system_session�
admin_session)�system_session_unix)�auth)�smbd�passdb)�param)�DS_DOMAIN_FUNCTION_2000) �Ldb�MAX_NETBIOS_NAME_LEN�check_all_substituted�is_valid_netbios_char�
setup_file�substitute_var�valid_netbios_name�version�is_heimdal_built)�security�misc)�SEC_CHAN_BDC�SEC_CHAN_WKSTA)�DS_DOMAIN_FUNCTION_2003�DS_DOMAIN_FUNCTION_2008_R2�
ENC_ALL_TYPES)�IDmapDB)�read_ms_ldif)�setntacl�getntacl�dsacl2fsacl)�ndr_pack�
ndr_unpack)�
LDBBackend)�get_empty_descriptor�get_config_descriptor� get_config_partitions_descriptor�get_config_sites_descriptor�!get_config_ntds_quotas_descriptor�'get_config_delete_protected1_descriptor�)get_config_delete_protected1wd_descriptor�'get_config_delete_protected2_descriptor�get_domain_descriptor�$get_domain_infrastructure_descriptor�get_domain_builtin_descriptor�get_domain_computers_descriptor�get_domain_users_descriptor�!get_domain_controllers_descriptor�'get_domain_delete_protected1_descriptor�'get_domain_delete_protected2_descriptor�get_dns_partition_descriptor�'get_dns_forest_microsoft_dns_descriptor�'get_dns_domain_microsoft_dns_descriptor�'get_managed_service_accounts_descriptor)�
setup_path�setup_add_ldif�setup_modify_ldif� FILL_FULL�FILL_SUBDOMAIN�FILL_NT4SYNC�FILL_DRS)�get_dnsadmins_sid�setup_ad_dns�create_dns_dir_keytab_link�create_dns_update_list)�Schema)�SamDB)�dbcheck)�create_kdc_conf)�get_default_backend_storez$31B2F340-016D-11D2-945F-00C04FB984F9z$6AC1786C-016F-11D2-945F-00C04FB984F9zDefault-First-Site-Name�lastProvisionUSN� c @ � e Zd Zdd� ZdS )�ProvisionPathsc C sj d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _ d | _
d | _d | _d | _
d | _d | _d | _d S �N)� shareconf�hklm�hkcu�hkcr�hku�hkpd�hkpt�samdb�idmapdb�secrets�keytab�
dns_keytab�dns�winsdb�private_dir�binddns_dir� state_dir��self� r` �:/usr/lib/python3/dist-packages/samba/provision/__init__.py�__init__� s"