HEX
Server: LiteSpeed
System: Linux shams.tasjeel.ae 5.14.0-611.5.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 08:09:09 EST 2025 x86_64
User: infowars (1469)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //usr/lib/python3.9/site-packages/ipaplatform/debian/__pycache__/tasks.cpython-39.pyc
a

�N(iw�@s�dZddlmZddlZddlZddlZddlmZddlm	Z	ddl
mZddlm
Z
ddlmZdd	lmZdd
lmZe�e�ZGdd�de�Ze�ZdS)
zO
This module contains default Debian-specific implementations of system tasks.
�)�absolute_importN)�Path)�BaseTaskNamespace)�RedHatTaskNamespace)�paths)�directivesetter)�ipautil)�DNc@s�eZdZedd��Zedd��Zed&dd��Zed	d
��Zedd��Zed
d��Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%S)'�DebianTaskNamespacecCs.zt�gd��Wntjy(YdS0dS)N)�pam-auth-update�	--packagez--remove�	mkhomedirFT�r�runZCalledProcessError)�fstore�
statestoreZwas_sssd_installedZwas_sssd_configured�r�</usr/lib/python3.9/site-packages/ipaplatform/debian/tasks.py�$restore_pre_ipa_client_configurations
z8DebianTaskNamespace.restore_pre_ipa_client_configurationcCsdS�NTr)Z	nisdomainrrr�
set_nisdomain'sz!DebianTaskNamespace.set_nisdomainTFcCs:|r2zt�gd��Wntjy,YdS0dSdSdS)N)rrz--enabler
FTr)Zsssdr
rZsudoZsubidrrr�modify_nsswitch_pam_stack,sz-DebianTaskNamespace.modify_nsswitch_pam_stackcCsdSrr)rrrr�modify_pam_to_use_krb59sz*DebianTaskNamespace.modify_pam_to_use_krb5cCsdSrr��pathrrr�backup_auth_configuration>sz-DebianTaskNamespace.backup_auth_configurationcCsdSrrrrrr�restore_auth_configurationCsz.DebianTaskNamespace.restore_auth_configurationcCsdSrr��selfrrrr�migrate_auth_configurationHsz.DebianTaskNamespace.migrate_auth_configurationcCsdS�Nr�rrrr�configure_httpd_wsgi_confLsz-DebianTaskNamespace.configure_httpd_wsgi_confcCst�tjddd�dS)NZSSLProtocolzTLSv1.2F)rZ
set_directiverZHTTPD_SSL_CONFr!rrr�configure_httpd_protocolPs�z,DebianTaskNamespace.configure_httpd_protocolcCsdSr rr!rrr�setup_httpd_loggingVsz'DebianTaskNamespace.setup_httpd_loggingcCsdSr r�rrrrr�configure_pkcs11_modulesZsz,DebianTaskNamespace.configure_pkcs11_modulescCsdSr rr%rrr�restore_pkcs11_modules^sz*DebianTaskNamespace.restore_pkcs11_modulescCsPz|�tj|�fWnty0t�d�Yn0t|�tj|�|�	tj
�g�S)Nz�Could not create p11-kit anchor trust file. On Debian this file is not
used by ca-certificates and is provided for information only.)Zwrite_p11kit_certsr�IPA_P11_KIT�	Exception�logger�	exception�any�write_ca_certificates_dir�CA_CERTIFICATES_DIR�remove_ca_certificates_bundle�CA_CERTIFICATES_BUNDLE_PEM)r�ca_certsrrr�platform_insert_ca_certsas���z,DebianTaskNamespace.platform_insert_ca_certscCs�ddlm}t|�}z|jddd�Wn tyFt�d|��Yn0|D�]P\}}}}}	|sbqLt|j�}
t|j	�}|
�
��d|j�d�}||}
zt|
d	�}Wn ty�t�d|
��Yn0|��zt
�|��d
�Wn ty�t�d|
��Yn0zZ|�d|�d
|
�
��d|�
��d|j�d|jd�d��|�|jj��d�}|�|�Wn"t�y|t�d|
��Yn0Wd�qL1�s�0YqLdS)Nr)�x509i�T)�mode�exist_okzCould not create %s� z.crt�wi�zCould not set mode of %sz9This file was created by IPA. Do not edit.

Description: z

Subject: z	
Issuer: z
Serial Number (dec): z
Serial Number (hex): z#xz

�asciizCould not write to %s)Zipalibr3r�mkdirr)r*�errorr	�subject�issuerZ	ldap_textZ
serial_number�open�os�fchmod�fileno�writeZpublic_bytesZEncodingZPEM�decode)r�	directoryr1r3rZcertZnicknameZtrustedZ_ext_key_usageZ_serialr;r<�filenameZ	cert_path�fZpemrrrr-usV

�����
*z-DebianTaskNamespace.write_ca_certificates_dircCs&t|�tj�|�tj�|�tj�g�Sr )r,�remove_ca_certificates_dirrr.r/r(r0r!rrr�platform_remove_ca_certs�s

��z,DebianTaskNamespace.platform_remove_ca_certscCsJttj�}|��sdSzt�|�Wn tyDt�d|��Yn0dS)NFzCould not remove %sT)	rrr.�exists�shutil�rmtreer)r*r:)rrCrrrrrF�s
z.DebianTaskNamespace.remove_ca_certificates_dircCst�||�Sr )r�disable_ldap_automountrrrrrK�sz*DebianTaskNamespace.disable_ldap_automountN)TF)�__name__�
__module__�__qualname__�staticmethodrrrrrrrr"r#r$r&r'r2r-rGrFrKrrrrr
s2


�


C	r
)�__doc__Z
__future__rZloggingr>rI�pathlibrZipaplatform.base.tasksrZipaplatform.redhat.tasksrZipaplatform.pathsrZ	ipapythonrrZipapython.dnr	Z	getLoggerrLr*r
Ztasksrrrr�<module>s
8