a >hj@s&ddlmZmZGdddeeZdS))Plugin RedHatPluginc@s8eZdZdZdZdZdZdZddZdd Z d d Z d S) DirectoryServerzDirectory ServerZds)identity) /etc/dirsrv/opt/redhat-ds)redhat-ds-base redhat-ds-7cCs4|ds|drdS|ds,|dr0dSdS)z Get Directory Server version rrds8r rds7F)Z is_installedZ path_exists)selfr 9/usr/lib/python3.9/site-packages/sos/report/plugins/ds.py check_versions  zDirectoryServer.check_versioncCs|gdzR|dD]B}|dddkr|d|}|d||d|dqWnty||d Yn0|s|d nDd |vr|gd | d dind|vr|ddg| ddS)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.confrrZslapdzcertutil -L -d zdsctl z healthcheckzcould not list /etc/dirsrvzDirectory 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/*/accessZ dirsrv_accessr z/opt/redhat-ds/slapd-*/configz/opt/redhat-ds/slapd-*/logsz/var/lib/dirsrv/slapd-*/db/*) Zadd_forbidden_pathlistdirZ path_joinZadd_cmd_outputOSErrorZ _log_warnrZ add_alertZ add_copy_specZ add_file_tagsZadd_dir_listing)r ZdsrvZcertpathr r rsetup&s,       zDirectoryServer.setupcCs,d}d}d}|d|||d||dS)Nz/(nsslapd-rootpw(\s)*:(\s)*)(\S+)([\r\n]\s.*)*\nz0(nsSymmetricKey(\s)*::(\s)*)(\S+)([\r\n]\s.*)*\nz \1********\nz /etc/dirsrv/*)Zdo_path_regex_sub)r Z regexppassZ regexpkeyreplr r rpostprocRs zDirectoryServer.postprocN) __name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesfilesZpackagesrrrr r r rrs ,rN)Zsos.report.pluginsrrrr r r r s