a ì)gå ã@s\ddlmZmZmZeZddlmmm Z ddl m Z ddl mZGdd„deƒZdS)é)Úabsolute_importÚdivisionÚprint_functionN)Úto_text)ÚBaseFactCollectorc@s&eZdZdZeddgƒZddd„ZdS)ÚSystemCapabilitiesFactCollectorZcapsÚsystem_capabilitiesÚsystem_capabilities_enforcedNc Csd}dddœ}|rþ| d¡}|rzz|j|dgddd�\}}}Wn:ttfyx}z| d t|ƒ¡WYd}~n d}~00|d krþg} d } | ¡D]Z} t| ƒd kr¤q’|  d ¡r’|   d¡d   ¡dkrÊd} q’d} dd„|   d¡d   d¡Dƒ} q’| |d<| |d<|S)NéÿÿÿÿzN/A)r rZcapshz--printZsurrogate_then_replaceF)ÚerrorsZhandle_exceptionsz'Could not query system capabilities: %srZNAézCurrent:ú:z=epÚFalseÚTruecSsg|] }| ¡‘qS©)Ústrip)Ú.0ÚirrúJ/usr/lib/python3.9/site-packages/ansible/module_utils/facts/system/caps.pyÚ 9óz;SystemCapabilitiesFactCollector.collect..ú=ú,r r) Z get_bin_pathZ run_commandÚIOErrorÚOSErrorÚwarnÚstrÚ splitlinesÚlenÚ startswithÚsplitr) ÚselfÚmoduleZcollected_factsÚrcZ facts_dictZ capsh_pathÚoutÚerrÚeZ enforced_capsZenforcedÚlinerrrÚcollect s2ÿ (    z'SystemCapabilitiesFactCollector.collect)NN)Ú__name__Ú __module__Ú __qualname__ÚnameÚsetZ _fact_idsr(rrrrrs ÿr)Z __future__rrrÚtypeZ __metaclass__Z"ansible.module_utils.compat.typingZ module_utilsÚcompatÚtypingÚtZansible.module_utils._textrZ$ansible.module_utils.facts.collectorrrrrrrÚs