
    ~ g	                     t    S SK JrJr  S SKJrJrJrJr   " S S\5      r " S S\\5      r	 " S S\\\5      r
g	)
    )joinnormpath)PluginRedHatPluginDebianPluginUbuntuPluginc                   :    \ rS rSrSrSrSrSr\rS r	S r
S rS	rg
)Named   zBIND named servernamed)systemservicesnetwork/etc/named.confc           	      N   U R                  SS/5        U R                   H  nU R                  U5      (       d  M  U R                  UU R                  U5      /5        U R	                  [        U R                  U5      S5      [        U R                  U5      S5      /5        M     g )Nz/etc/default/bindz/var/log/named*.logz
chroot/devzchroot/proc)add_copy_specconfig_filespath_existsget_dns_diradd_forbidden_pathr   )selfcfgs     :/usr/lib/python3/dist-packages/sos/report/plugins/named.pysetupNamed.setup   s    !
 	 $$C$$""$$S)$  ''))#.=))#.>)  %    c                 R    U R                  SU5      nU(       a  [        US   5      $ g)z2grab directory path from named{conf,boot}
        zdirectory\s+\"(.*)\"r    )do_regex_find_allr   )r   config_filedirectory_lists      r   r   Named.get_dns_dir&   s0     //0G0;=N1-..r   c                 D    SnSnU R                  U R                  X5        g )Nz(\s*arg \"password )[^\"]*z\1******)do_file_sub
named_conf)r   matchsubsts      r   postprocNamed.postproc0   s     -%7r    N)__name__
__module____qualname____firstlineno__
short_descplugin_nameprofilesr%   r   r   r   r(   __static_attributes__r*   r   r   r
   r
      s*    $JK0H"JL 8r   r
   c                   <   ^  \ rS rSrSrSr\S4rSrU 4S jrSr	U =r
$ )RedHatNamed6   r   )r   z/etc/named.boot/etc/sysconfig/named)bindc                    > [         TU ]  5         U R                  S5        U R                  S5        U R                  S5        U R	                  S5        g )Nz/etc/named/r6   zklist -ket /etc/named.keytabz/etc/named.keytab)superr   r   add_cmd_outputr   r   	__class__s    r   r   RedHatNamed.setup>   sG    =)12:; 34r   r*   )r+   r,   r-   r.   r%   r   filespackagesr   r2   __classcell__r<   s   @r   r4   r4   6   s)    "J'L/0EH5 5r   r4   c                   >   ^  \ rS rSrSrSrSr\SS4rU 4S jrSr	U =r
$ )	DebianNamedF   )/etc/bind/named.conf)bind9rE   z/etc/bind/named.conf.optionsz/etc/bind/named.conf.localc                 D   > [         TU ]  5         U R                  S5        g )Nz
/etc/bind/)r9   r   r   r;   s    r   r   DebianNamed.setupO   s    <(r   r*   )r+   r,   r-   r.   r>   r?   r%   r   r   r2   r@   rA   s   @r   rC   rC   F   s,    %EH'J202L) )r   rC   N)os.pathr   r   sos.report.pluginsr   r   r   r   r
   r4   rC   r*   r   r   <module>rK      s;    # O O&8F &8R5% 5 )%| )r   