1
  )   ˆl–Ðz¾”*ClÊq@‚àCq¦ÔÅ£¿19_†I|¥�+ÃÂ      #include <fcntl.h>
  "   ˆl–äY>”*C]Ši@¹p,ÜŠbÑ¿Áƒ@ÄÃ 	b    a
    qéqeÞ  ã                   @   sl   d dl Z d dlmZ ddlmZ ddlmZmZ ddlm	Z	 ddl
mZ ddlmZ G d	d
„ d
eeeƒZdS )é    N)ÚIterableé   )ÚCriteriaDescriptor)Ú
MatchAliasÚ	MatchName)ÚSensitivity)ÚPolicyQuery)Úmatch_levelc                       s\   e Zd ZU dZedd�ZdZeed< dZ	eed< ddœ‡ fd	d
„Z
ee dœdd„Z‡  ZS )ÚSensitivityQueryaÅ  
    Query MLS Sensitivities

    Parameter:
    policy       The policy to query.

    Keyword Parameters/Class attributes:
    name         The name of the category to match.
    name_regex   If true, regular expression matching will
                 be used for matching the name.
    alias        The alias name to match.
    alias_regex  If true, regular expression matching
                 will be used on the alias names.
    sens         The criteria to match the sensitivity by dominance.
    sens_dom     If true, the criteria will match if it dominates
                 the sensitivity.
    sens_domby   If true, the criteria will match if it is dominated
                 by the sensitivity.
    Zlookup_sensitivity)Zlookup_functionFÚsens_domÚ
sens_dombyN)Úreturnc                    s(   t t| ƒj|fi |¤Ž t t¡| _d S )N)Úsuperr
   Ú__init__ÚloggingZ	getLoggerÚ__name__Úlog)ÚselfÚpolicyÚkwargs©Ú	__class__© ú>/usr/lib64/python3.9/site-packages/setools/sensitivityquery.pyr   )   s    zSensitivityQuery.__init__c                 c   s¨   | j  d | ¡¡ |  | j ¡ |  | j ¡ | j  d | ¡¡ | j ¡ D ]\}|  |¡sVqF|  	|¡sbqF| j
rœ| jr|| j
|k rœqFn | jr�| j
|krœqFn| j
|krœqF|V  qFdS )z2Generator which yields all matching sensitivities.z.Generating sensitivity results from {0.policy}z:Sens: {0.sens!r}, dom: {0.sens_dom}, domby: {0.sens_domby}N)r   ÚinfoÚformatZ_match_name_debugZ_match_alias_debugÚdebugr   ZsensitivitiesZ_match_nameZ_match_aliasÚsensr   r   )r   Úsr   r   r   Úresults-   s&    




zSensitivityQuery.results)r   Ú
__module__Ú__qualname__Ú__doc__r   r   r   ÚboolÚ__annotations__r   r   r   r   r   Ú__classcell__r   r   r   r   r
      s   

r
   )r   Útypingr   Zdescriptorsr   Zmixinsr   r   Z	policyrepr   Úqueryr   Úutilr	   r
   r   r   r   r   Ú<module>   s     #   	ˆl–Ðz¾”*ClÊq@‚àCq§Å£ÂƒtÀÅÄ ‚    	/* net/if.h -- declarations for inquiring about network interfaces
   Copyright (C) 1997-2021 Free Software Foundation, Inc.
   This file is part of the GNU C Library.

   The GNU C Library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.

   The GNU C Library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with the GNU C Library; if not, see
   <https://www.gnu.org/licenses/>.  */

#ifndef _NET_IF_H
#define _NET_IF_H	1

#include <features.h>

#ifdef __USE_MISC
# include <sys/types.h>
# include <sys/socket.h>
#endif


/* Length of interface name.  */
#define IF_NAMESIZE	16

struct if_nameindex
  {
    unsigned int if_index;	/* 1, 2, ... */
    char *if_name;		/* null terminated name: "eth0", ... */
  };


#ifdef __USE_MISC
/* Standard interface flags. */
enum
  {
    IFF_UP = 0x1,		/* Interface is up.  */
# define IFF_UP	IFF_UP
    IFF_BROADCAST = 0x2,	/* Broadcast address valid.  */
# define IFF_BROADCAST	IFF_BROADCAST
    IFF_DEBUG = 0x4,		/* Turn on debugging.  */
# define IFF_DEBUG	IFF_DEBUG
    IFF_LOOPBACK = 0x8,		/*