+
    	:iU  c                   sR    ^ RI t ^ RIt ! R R]4      t R tR tR tR tR tR	 t	R# )
i    Nc                   s0   a  ] tR t^t o R tRR ltRtV tR# )PathChooserc           	     s~   \        4       V n        \        P                  P	                  V4      '       g   R V n        RV P                  R&   R# Wn        \        P                  ! R4      p\        P                  ! R4      p\        VR4      ;_uu_ 4       p\        V4       F~  w  rVVP                  V4      '       d   K  VP                  V4      pV'       g   \        RW^,           3,          4      hVP                  ^4      V P                  VP                  ^4      &   K  	  RRR4       R#   + '       g   i     R# ; i)z
(defaults)zJ/usr/share/selinux/default:/usr/share/selinux/mls:/usr/share/selinux/develSELINUX_DEVEL_PATHNz^\s*(?:#.+)?$z^\s*(\w+)\s*=\s*(.+?)\s*$Zrz(%s:%d: line is not in key = value format)Zdictconfigospathexistsconfig_pathnamereZcompileZopenZ	enumerateZmatch
ValueErrorZgroup)selfZpathnameZignoreZconsiderZfdZlinenoZlineZmos   &&      6/usr/lib/python3.14/site-packages/sepolgen/defaults.py__init__ZPathChooser.__init__   s    fww~~h''#/D 0|DKK,-',-:::;(C  B )"<<%%x^^D)$%OS[de]eRf%fgg+-88A;BHHQK( !. !   s   AD+AD++D<	c                s   V P                   P                  VR 4      pVf   \        V: RV P                  : 24      hVP	                  R4      pV FK  p\
        P                  P                  WA4      p\
        P                  P                  V4      '       g   KI  Vu # 	  \
        P                  P                  V^ ,          V4      # )Nz was not in Z:)	r   Zgetr   r   Zsplitr   r   Zjoinr   )r	   ZtestfilenameZpathsetZpathsZpZtargets   &&&   r
   __call__ZPathChooser.__call__,   s    .=7D<P<PQRRC AWW\\!2Fww~~f%%f}  ww||E!Hl33    )r   r   N)r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r
   r    r       s     7$4 4r   r    c                  s    R # )z/var/lib/sepolgen r   r   r
   data_dirr   ;   s    r   c                  $    \        4       R ,           # )z	/perm_mapr   r   r   r
   perm_mapr   >   s    :##r   c                  r   )z/interface_infor   r   r   r
   interface_infor   A       :)))r   c                  r   )z/attribute_infor   r   r   r
   attribute_infor   D   r   r   c                  s    \        R 4      p V ! R4      p\        P                  P                  V4      '       g	   V ! R4      pV# )/etc/selinux/sepolgen.confZMakefilezinclude/Makefile)r    r   r   r   )chooserZresults     r
   refpolicy_makefiler   G   s:    67GZ F77>>&!!+,Mr   c                  s(    \        R 4      p V ! R4      # )r   Zinclude)r    )r   s    r
   headersr   N   s    67G9r   )
r   r   Zobjectr    r   r   r   r   r   r   r   r   r
   <module>r      s<   ( 
 	4& 4<$**r   