
    ~ g                     d    S SK JrJrJrJr   " S S\5      r " S S\\5      r " S S\\\5      rg)	    )PluginRedHatPluginDebianPluginUbuntuPluginc                   >   ^  \ rS rSrSrSrSrSrU 4S jrS r	Sr
U =r$ )	Ldap   zLDAP configurationldap)identitysysmgmtsystemz/etc/openldap/ldap.confc                 D   > [         TU ]  5         U R                  S5        g )N/etc/ldap.conf)supersetupadd_copy_specself	__class__s    9/usr/lib/python3/dist-packages/sos/report/plugins/ldap.pyr   
Ldap.setup   s    +,    c                 *    U R                  SSS5        g )Nr   (\s*bindpw\s*)\S+z\1******)do_file_sub)r   s    r   postprocLdap.postproc   s    )+?Mr    )__name__
__module____qualname____firstlineno__
short_descplugin_nameprofiles	ldap_confr   r   __static_attributes____classcell__r   s   @r   r   r      s(    %JK0H)I-N Nr   r   c                   <   ^  \ rS rSrSrSrU 4S jrU 4S jrSrU =r	$ )
RedHatLdap   )openldapznss-pam-ldapd)r   /etc/pam_ldap.confc                    > [         TU ]  5         U R                  / SQ5        U R                  U R                  SSSS/5        U R                  S5        g )N)z/etc/openldap/certs/passwordz/etc/openldap/certs/pwfile.txtz/etc/openldap/certs/pin.txtz/etc/openldap/certs/*passw*z/etc/openldap/certs/key3.dbz/etc/openldap/certs/cert8.dbz/etc/openldap/certs/secmod.db/etc/nslcd.confr.   zcertutil -L -d /etc/openldap)r   r   add_forbidden_pathr   r&   add_cmd_outputr   s    r   r   RedHatLdap.setup!   sX     !
 	 	NN*+ 
 	 	:;r   c                 Z   > [         TU ]  5         S H  nU R                  USS5        M     g )N)r0   r.   r   
\1********)r   r   r   )r   filer   s     r   r   RedHatLdap.postproc4   s/    =D$ >r   r   )
r   r    r!   r"   packagesfilesr   r   r'   r(   r)   s   @r   r+   r+      s    ,H4E<& r   r+   c                   <   ^  \ rS rSrSrSrU 4S jrU 4S jrSrU =r	$ )
DebianLdap>   z/etc/ldap/ldap.conf)slapdz
ldap-utilsc                    > [         TU ]  5         SnU R                  U R                  SSS/5        U R	                  S5        U R	                  US-   SS9  U R	                  US	-   S
S9  U R	                  US-   SS9  g )Nz,ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// z/etc/slapd.confz/etc/ldap/slapd.dr0   z+ldapsearch -x -b '' -s base 'objectclass=*'z/-b cn=config '(!(objectClass=olcSchemaConfig))'configuration_minus_schemas)suggest_filenamez-b cn=schema,cn=config dnloaded_schemasz0-b cn=config '(olcAccess=*)' olcAccess olcSuffixaccess_control_lists)r   r   r   r&   r2   )r   ldap_searchr   s     r   r   DebianLdap.setupC   s    DNN	
 	 	IJKK: 	 	< 	55- 	 	/ 	LL3 	 	5r   c                 n   > [         TU ]  5         U R                  SSS5        U R                  SSS5        g )Nr0   r   r5   
ldapsearchz(olcRootPW\: \s*)\S+)r   r   r   do_cmd_output_subr   s    r   r   DebianLdap.postprocZ   s>     	

 	#	
r   r   )
r   r    r!   r"   r&   r8   r   r   r'   r(   r)   s   @r   r;   r;   >   s    %I&H5.
 
r   r;   N)sos.report.pluginsr   r   r   r   r   r+   r;   r   r   r   <module>rJ      s;    P ON6 N | D'
|\ '
r   