a qéqe˜ ã@s`ddlZddlmZddlmZmZddlmZddlm Z ddl m Z Gdd „d eee ƒZ dS) éN)ÚIterableé)Ú MatchContextÚ MatchName)ÚNetifcon)Ú PolicyQuery)Ú match_regexcs8eZdZdZddœ‡fdd„ Zeedœdd„Z‡ZS)Ú NetifconQueryaG Network interface context query. Parameter: policy The policy to query. Keyword Parameters/Class attributes: name The name of the network interface to match. name_regex If true, regular expression matching will be used for matching the name. user The criteria to match the context's user. user_regex If true, regular expression matching will be used on the user. role The criteria to match the context's role. role_regex If true, regular expression matching will be used on the role. type_ The criteria to match the context's type. type_regex If true, regular expression matching will be used on the type. range_ The criteria to match the context's range. range_subset If true, the criteria will match if it is a subset of the context's range. range_overlap If true, the criteria will match if it overlaps any of the context's range. range_superset If true, the criteria will match if it is a superset of the context's range. range_proper If true, use proper superset/subset operations. No effect if not using set operations. N)Úreturnc s(tt|ƒj|fi|¤Žt t¡|_dS)N)Úsuperr Ú__init__ÚloggingZ getLoggerÚ__name__Úlog)ÚselfÚpolicyÚkwargs©Ú __class__©ú;/usr/lib64/python3.9/site-packages/setools/netifconquery.pyr .szNetifconQuery.__init__ccsl|j d |¡¡| |j¡| |j¡|j ¡D]2}|jrRt|j |j|j ƒsRq4|  |j ¡s`q4|Vq4dS)z.Generator which yields all matching netifcons.z+Generating netifcon results from {0.policy}N) rÚinfoÚformatZ_match_name_debugZ_match_context_debugrZ netifconsÚnamerÚnetifZ name_regexZ_match_contextÚcontext)rrrrrÚresults2s  ý zNetifconQuery.results) rÚ __module__Ú __qualname__Ú__doc__r rrrÚ __classcell__rrrrr sr ) r ÚtypingrZmixinsrrZ policyreprÚqueryrÚutilrr rrrrÚs