
    ~ g	                     2    S SK Jr  S SKJr   " S S\5      rg)    )SoSCleanerParser)
SoSIPv6Mapc                   R   ^  \ rS rSrSrSrSrS/rSS/rSr	/ 4U 4S	 jjr
S
 rSrU =r$ )SoSIPv6Parser   z/Parser for handling IPv6 networks and addresseszIPv6 Parseripv6_mapz(?<![:\\.\\-a-z0-9])((([0-9a-f]{1,4})(:[0-9a-f]{1,4}){7})|(([0-9a-f]{1,4}(:[0-9a-f]{0,4}){0,5}))([^.])::(([0-9a-f]{1,4}(:[0-9a-f]{1,4}){0,5})?))(/\d{1,3})?(?![:\\a-z0-9])zetc/dnsmasq.conf.*z.*modinfo.*Fc                 B   > [        5       U l        [        TU ]  X5        g )N)r   mappingsuper__init__)selfconfigskip_cleaning_files	__class__s      A/usr/lib/python3/dist-packages/sos/cleaner/parsers/ipv6_parser.pyr   SoSIPv6Parser.__init__&   s    !|5    c                 B   U R                   R                  0 S.nU R                   R                  R                  5        H]  u  p#UR                  0 S.US   UR
                  '   UR                   H)  nUR                  U   nXQS   UR
                     S   U'   M+     M_     U$ )zcStructure the dataset contents properly so that they can be reloaded
on subsequent runs correctly.
)versionnetworks)
obfuscatedhostsr   r   )r
   r   r   itemsobfuscated_addressoriginal_addressr   )r   _d__nethost_ob_hosts         r   get_map_contentsSoSIPv6Parser.get_map_contents*   s    
 ||++
 ||,,224GA"555BzN4001 

::d+GO:t445g>tD # 5 	r   )r
   )__name__
__module____qualname____firstlineno____doc__namemap_file_keyregex_patternsparser_skip_filescompile_regexesr   r!   __static_attributes____classcell__)r   s   @r   r   r      sE    9DL	?N 	 O35 6 r   r   N)sos.cleaner.parsersr   sos.cleaner.mappings.ipv6_mapr   r    r   r   <module>r2      s    1 4,$ ,r   