HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/sos/cleaner/parsers/__pycache__/mac_parser.cpython-39.pyc
a

\��h�@s@ddlZddlmZddlmZdZdZdZGdd�de�ZdS)	�N)�SoSCleanerParser)�	SoSMacMapze((?<!([0-9a-fA-F\'\"]:)|::)([^:|-])?([0-9a-fA-F]{2}(:|-)){7}[0-9a-fA-F]{2}(\'|\")?(\/|\,|\-|\.|\s|$))z�((?<!(?:([.|^|\b]{5}\w|[.|^|\b]fe80:|fe80::)))(([0-9a-fA-F]{4}:){3}[0-9a-fA-F]{4})(?!\w))|((?<!\w)(([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{4})(?!\w))zW((?<!([0-9a-fA-F\'\"]:)|::)(([^:\-])?(([0-9a-fA-F]{2}([:\-\_])){5,6}([0-9a-fA-F]{2}))))csTeZdZdZdZeeegZdZ	dgZ
dZdZgf�fdd�	Z
d	d
�Zdd�Z�ZS)
�SoSMacParserz!Handles parsing for MAC addressesz
MAC Parser)z53:4f:53z534f:53zsos_commands/.*/modinfo.*Zmac_mapFcst|�|_t��||�dS)N)r�mapping�super�__init__)�selfZconfigZworkdirZskip_cleaning_files��	__class__��B/usr/lib/python3.9/site-packages/sos/cleaner/parsers/mac_parser.pyr8s
zSoSMacParser.__init__cCs<|ddvr|dd�}q|ddvr4|dd�}q|��S)z�Strips away leading and trailing non-alphanum characters from any
        matched string to leave us with just the bare MAC addr
        rZ0123456789abcdefABCDEF�N���)�strip)r�matchrrr�reduce_mac_match<s
zSoSMacParser.reduce_mac_matchcCs|d}|jD]h}dd�t�||tj�D�}|r
|t|�7}|D]4}|�|�}|�|j�rXq<|j�	|�}|�
||�}q<q
||fS)NrcSsg|]}|d�qS)rr)�.0�mrrr�
<listcomp>J�z,SoSMacParser._parse_line.<locals>.<listcomp>)�regex_patterns�re�findall�I�lenr�
startswith�obfuscated_patternsr�get�replace)r�line�count�pattern�matchesrZstripped_matchZ	new_matchrrr�_parse_lineGs

zSoSMacParser._parse_line)�__name__�
__module__�__qualname__�__doc__�name�
IPV6_REG_8HEX�
IPV6_REG_4HEX�IPV4_REGrrZparser_skip_filesZmap_file_keyZcompile_regexesrrr#�
__classcell__rrr	rr%s��r)	rZsos.cleaner.parsersrZsos.cleaner.mappings.mac_maprr)r*r+rrrrr�<module>s���