ó
    ;šhj  ã                   ó\   • S r SrSSKrSSKJr  SSKJr  SrSrSr	S	r
S
 rSS jrSS jrS rg)z/Functions for setting up a Samba configuration.ÚrestructuredTexté    N)Úread_and_sub_file)Ú	setup_dirÚFULLÚ	SUBDOMAINÚNT4SYNCÚDRSc                 óº   • [         R                  R                  [        5       U 5      n[         R                  R	                  U5      (       d  [        SU-  5      eU$ )zHReturn an absolute path to the provision template file specified by filez>File [%s] not found. Please install samba-ad-provision package)ÚosÚpathÚjoinr   ÚexistsÚ	Exception)Úfiler   s     Ú8/usr/lib/python3/dist-packages/samba/provision/common.pyÚ
setup_pathr   (   sB   € ä�7‰7�<‰<œ	› TÓ*€DÜ�7‰7�>‰>˜$×ÑÜÐXÐ[_Ñ_Ó`Ð`Ø€Kó    c                 óv   • Uc  S/n[        U[        5      (       d   e[        X5      nU R                  XC5        g)a  Setup a ldb in the private dir.

:param ldb: LDB file to import data into
:param ldif_path: Path of the LDIF file to load
:param subst_vars: Optional variables to substitute in LDIF.
:param nocontrols: Optional list of controls, can be None for no controls
Núrelax:0)Ú
isinstanceÚstrr   Úadd_ldif©ÚldbÚ	ldif_pathÚ
subst_varsÚcontrolsÚdatas        r   Úsetup_add_ldifr   0   s:   € ð ÑØ�;ˆÜ�i¤×%Ñ%Ð%Ð%Ü˜YÓ3€DØ‡L�L�Õ r   c                 óH   • Uc  S/n[        X5      nU R                  XC5        g)z Modify a ldb in the private dir.

:param ldb: LDB object.
:param ldif_path: LDIF file path.
:param subst_vars: Optional dictionary with substitution variables.
Nr   )r   Úmodify_ldifr   s        r   Úsetup_modify_ldifr"   ?   s'   € ð ÑØ�;ˆÜ˜YÓ3€DØ‡O�O�DÕ#r   c                 ó”   • U c   eU R                  5          [        XU5        U R                  5         g!   U R                  5         e = f)a  Import a LDIF a file into a LDB handle, optionally substituting
variables.

:note: Either all LDIF data will be added or none (using transactions).

:param ldb: LDB file to import into.
:param ldif_path: Path to the LDIF file.
:param subst_vars: Dictionary with substitution variables.
N)Útransaction_startr   Útransaction_commitÚtransaction_cancel)r   r   r   s      r   Ú	setup_ldbr'   L   sM   € ð ‰?Ðˆ?Ø×ÑÔð!Ü�s zÔ2ð
 	×ÑÕ øð	Ø×ÑÔ Øús	   —4 ´A)NN)Ú__doc__Ú__docformat__r   Úsambar   Úsamba.paramr   Ú	FILL_FULLÚFILL_SUBDOMAINÚFILL_NT4SYNCÚFILL_DRSr   r   r"   r'   © r   r   Ú<module>r1      s@   ðñ4 6à"€ã 	Ý #Ý !à€	Ø€Ø€Ø€òô!ô
$ó!r   