cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

services.h (998B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * Implementation of the security services.
      4 *
      5 * Author : Stephen Smalley, <sds@tycho.nsa.gov>
      6 */
      7#ifndef _SS_SERVICES_H_
      8#define _SS_SERVICES_H_
      9
     10#include "policydb.h"
     11
     12/* Mapping for a single class */
     13struct selinux_mapping {
     14	u16 value; /* policy value for class */
     15	unsigned int num_perms; /* number of permissions in class */
     16	u32 perms[sizeof(u32) * 8]; /* policy values for permissions */
     17};
     18
     19/* Map for all of the classes, with array size */
     20struct selinux_map {
     21	struct selinux_mapping *mapping; /* indexed by class */
     22	u16 size; /* array size of mapping */
     23};
     24
     25struct selinux_policy {
     26	struct sidtab *sidtab;
     27	struct policydb policydb;
     28	struct selinux_map map;
     29	u32 latest_granting;
     30} __randomize_layout;
     31
     32void services_compute_xperms_drivers(struct extended_perms *xperms,
     33				struct avtab_node *node);
     34
     35void services_compute_xperms_decision(struct extended_perms_decision *xpermd,
     36					struct avtab_node *node);
     37
     38#endif	/* _SS_SERVICES_H_ */