HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/ipaplatform/debian/__pycache__/tasks.cpython-36.pyc
3

�d[en�@s�dZddlmZddlZddlZddlZddlmZddlm	Z	ddl
mZddlm
Z
ddlmZdd	lmZdd
lmZeje�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)'�DebianTaskNamespacecCs2ytjddddg�Wntjk
r,dSXdS)Nzpam-auth-updatez	--packagez--remove�	mkhomedirFT)r�run�CalledProcessError)�fstore�
statestoreZwas_sssd_installedZwas_sssd_configured�r�/usr/lib/python3.6/tasks.py�$restore_pre_ipa_client_configurationsz8DebianTaskNamespace.restore_pre_ipa_client_configurationcCsdS)NTr)Z	nisdomainrrr�
set_nisdomain'sz!DebianTaskNamespace.set_nisdomainTFcCs>|r6ytjddddg�Wntjk
r0dSXdSdSdS)Nzpam-auth-updatez	--packagez--enablerFT)rrr
)ZsssdrrZsudoZsubidrrr�modify_nsswitch_pam_stack,sz-DebianTaskNamespace.modify_nsswitch_pam_stackcCsdS)NTr)rrrr�modify_pam_to_use_krb59sz*DebianTaskNamespace.modify_pam_to_use_krb5cCsdS)NTr)�pathrrr�backup_auth_configuration>sz-DebianTaskNamespace.backup_auth_configurationcCsdS)NTr)rrrr�restore_auth_configurationCsz.DebianTaskNamespace.restore_auth_configurationcCsdS)NTr)�selfrrrr�migrate_auth_configurationHsz.DebianTaskNamespace.migrate_auth_configurationcCsdS)Nr)rrrr�configure_httpd_wsgi_confLsz-DebianTaskNamespace.configure_httpd_wsgi_confcCstjtjddd�dS)NZSSLProtocolzTLSv1.2F)rZ
set_directiverZHTTPD_SSL_CONF)rrrr�configure_httpd_protocolPsz,DebianTaskNamespace.configure_httpd_protocolcCsdS)Nr)rrrr�setup_httpd_loggingVsz'DebianTaskNamespace.setup_httpd_loggingcCsdS)Nr)rrrrr�configure_pkcs11_modulesZsz,DebianTaskNamespace.configure_pkcs11_modulescCsdS)Nr)rrrrr�restore_pkcs11_modules^sz*DebianTaskNamespace.restore_pkcs11_modulescCsRy|jtj|�fWntk
r2tjd�YnXt|jtj|�|j	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�loggerZ	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_certsc2Cs�ddlm}t|�}y|jddd�Wn"tk
rHtjd|��YnX�xJ|D�]@\}}}}|sfqRt|j�}	t|j	�}
|	j
��d|j�d�}||}yt|d	�}
Wn"tk
r�tjd|��YnX|
��yt
j|
j�d
�Wn$tk
�rtjd|��YnXyZ|
jd|�d
|	j
��d|
j
��d|j�d|jd�d��|j|jj�jd�}|
j|�Wn$tk
�r�tjd|��YnXWdQRXqRWdS)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)Zipalibr*r�mkdirr!r"�errorr	�subject�issuerZ	ldap_textZ
serial_number�open�os�fchmod�fileno�writeZpublic_bytesZEncodingZPEM�decode)r�	directoryr(r*rZcertZnicknameZtrustedZ_ext_key_usager2r3�filenameZ	cert_path�fZpemrrrr$usD

	4z-DebianTaskNamespace.write_ca_certificates_dircCs&t|jtj�|jtj�|jtj�g�S)N)r#�remove_ca_certificates_dirrr%r&r r')rrrr�platform_remove_ca_certs�s


z,DebianTaskNamespace.platform_remove_ca_certscCsLttj�}|j�sdSytj|�Wn"tk
rFtjd|��YnXdS)NFzCould not remove %sT)	rrr%�exists�shutilZrmtreer!r"r1)rr:rrrrr=�s
z.DebianTaskNamespace.remove_ca_certificates_dircCstj||�S)N)r�disable_ldap_automount)rrrrrrA�sz*DebianTaskNamespace.disable_ldap_automountN)TF)�__name__�
__module__�__qualname__�staticmethodrrrrrrrrrrrrr)r$r>r=rArrrrr
s&C	r
)�__doc__Z
__future__rZloggingr5r@ZpathlibrZipaplatform.base.tasksrZipaplatform.redhat.tasksrZipaplatform.pathsrZ	ipapythonrrZipapython.dnr	Z	getLoggerrBr"r
Ztasksrrrr�<module>s
8