a qéqe¼ ã@srddlZddlZddlmZmZddlmZddlmZddl m Z ddl m Z ddl mZGd d „d ee ƒZdS) éN)ÚIterableÚOptionalé)ÚCriteriaDescriptor)Ú MatchContext)ÚGenfscon)Ú PolicyQuery)Ú match_regexcsreZdZUdZdZeeed<edƒZ dZ e ed<edƒZ dZ e ed<ddœ‡fdd „ Zeedœd d „Z‡ZS) Ú GenfsconQueryaÞ Query genfscon statements. Parameter: policy The policy to query. Keyword Parameters/Class attributes: fs The criteria to match the file system type. fs_regex If true, regular expression matching will be used on the file system type. path The criteria to match the path. path_regex If true, regular expression matching will be used on the path. 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ÚfiletypeÚfs_regexFÚ path_regex)Ú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/genfsconquery.pyr9szGenfsconQuery.__init__ccsÄ|j d |¡¡|j d |¡¡|j d |¡¡|j d |¡¡| |j¡|j ¡D]`}|jr|t|j|j|j ƒs|q^|j r–t|j |j |j ƒs–q^|j rª|j |j ksªq^|  |j¡s¸q^|Vq^dS)z.Generator which yields all matching genfscons.z+Generating genfscon results from {0.policy}z!FS: {0.fs!r}, regex: {0.fs_regex}z'Path: {0.path!r}, regex: {0.path_regex}zFiletype: {0.filetype!r}N)rÚinfoÚformatÚdebugZ_match_context_debugrZ genfsconsÚfsr r Úpathr r Z_match_contextÚcontext)rZgenfsrrrÚresults=s. ýý zGenfsconQuery.results)rÚ __module__Ú __qualname__Ú__doc__r rÚintÚ__annotations__rrr Úboolrr rrrr!Ú __classcell__rrrrr s !  r )rÚreÚtypingrrZ descriptorsrZmixinsrZ policyreprÚqueryrÚutilr r rrrrÚs