
    -_gj                     ,    d dl mZmZ  G d dee      Zy)    )PluginRedHatPluginc                   2    e Zd ZdZdZdZdZdZd Zd Z	d Z
y	)
DirectoryServerzDirectory Serverds)identity)/etc/dirsrv/opt/redhat-ds)redhat-ds-baseredhat-ds-7c                     | j                  d      s| j                  d      ry| j                  d      s| j                  d      ryy)z Get Directory Server version r   r	   ds8r   r
   ds7F)is_installedpath_exists)selfs    7/usr/lib/python3/dist-packages/sos/report/plugins/ds.pycheck_versionzDirectoryServer.check_version   sE    -.  /]+  !12    c                 D   | j                  g d       	 | j                  d      D ]F  }|dd dk(  s| j                  d|      }| j                  d|        | j                  d| d       H 	 | j                         s| j                  d
       n^d| j                         v r'| j                  g d       | j                  ddi       n%d| j                         v r| j                  ddg       | j                  d       y # t        $ r | j                  d	       Y w xY w)N)z/etc/dirsrv/slapd*/pin.txtz/etc/dirsrv/slapd*/key3.dbz/etc/dirsrv/slapd*/pwfile.txtz/etc/dirsrv/slapd*/*passw*z"/etc/dirsrv/admin-serv/key[3-4].dbz/etc/dirsrv/admin-serv/admpwz$/etc/dirsrv/admin-serv/password.confr	   r      slapdzcertutil -L -d zdsctl z healthcheckzcould not list /etc/dirsrvzDirectory Server not found.r   )z/etc/dirsrv/slapd*/cert8.dbz/etc/dirsrv/slapd*/certmap.confz/etc/dirsrv/slapd*/dse.ldifz#/etc/dirsrv/slapd*/dse.ldif.startOKz/etc/dirsrv/slapd*/secmod.dbz /etc/dirsrv/slapd*/schema/*.ldifz/etc/dirsrv/admin-servz/var/log/dirsrv/*z/var/log/dirsrv/*/accessdirsrv_accessr   z/opt/redhat-ds/slapd-*/configz/opt/redhat-ds/slapd-*/logsz/var/lib/dirsrv/slapd-*/db/*)add_forbidden_pathlistdir	path_joinadd_cmd_outputOSError	_log_warnr   	add_alertadd_copy_specadd_file_tagsadd_dir_listing)r   dsrvcertpaths      r   setupzDirectoryServer.setup&   s2    !
 		9]3 E!9'#~~mTBH''/((DE''&l(CD	E !!#NN89d((** 	  	 *O   d((**/-  
 	;<3  	9NN78	9s   D =D DDc                 \    d}d}d}| j                  d||       | j                  d||       y )Nz/(nsslapd-rootpw(\s)*:(\s)*)(\S+)([\r\n]\s.*)*\nz0(nsSymmetricKey(\s)*::(\s)*)(\S+)([\r\n]\s.*)*\nz\1********\nz/etc/dirsrv/*)do_path_regex_sub)r   
regexppass	regexpkeyrepls       r   postproczDirectoryServer.postprocR   s8     H
G	
DA	4@r   N)__name__
__module____qualname__
short_descplugin_nameprofilesfilespackagesr   r&   r,    r   r   r   r      s,    #JKH-E0H
*=XAr   r   N)sos.report.pluginsr   r   r   r5   r   r   <module>r7      s    4RAfl RAr   