linux/security/selinux/include/objsec.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 *  Security-Enhanced Linux (SELinux) security module
 *
 *  This file contains the SELinux security data structures for kernel objects.
 *
 *  Author(s):  Stephen Smalley, <[email protected]>
 *		Chris Vance, <[email protected]>
 *		Wayne Salamon, <[email protected]>
 *		James Morris <[email protected]>
 *
 *  Copyright (C) 2001,2002 Networks Associates Technology, Inc.
 *  Copyright (C) 2003 Red Hat, Inc., James Morris <[email protected]>
 *  Copyright (C) 2016 Mellanox Technologies
 */

#ifndef _SELINUX_OBJSEC_H_
#define _SELINUX_OBJSEC_H_

#include <linux/list.h>
#include <linux/sched.h>
#include <linux/fs.h>
#include <linux/binfmts.h>
#include <linux/in.h>
#include <linux/spinlock.h>
#include <linux/lsm_hooks.h>
#include <linux/msg.h>
#include <net/net_namespace.h>
#include "flask.h"
#include "avc.h"

struct task_security_struct {} __randomize_layout;

enum label_initialized {};

struct inode_security_struct {};

struct file_security_struct {};

struct superblock_security_struct {};

struct msg_security_struct {};

struct ipc_security_struct {};

struct netif_security_struct {};

struct netnode_security_struct {};

struct netport_security_struct {};

struct sk_security_struct {};

struct tun_security_struct {};

struct key_security_struct {};

struct ib_security_struct {};

struct pkey_security_struct {};

struct bpf_security_struct {};

struct perf_event_security_struct {};

extern struct lsm_blob_sizes selinux_blob_sizes;
static inline struct task_security_struct *selinux_cred(const struct cred *cred)
{}

static inline struct file_security_struct *selinux_file(const struct file *file)
{}

static inline struct inode_security_struct *
selinux_inode(const struct inode *inode)
{}

static inline struct msg_security_struct *
selinux_msg_msg(const struct msg_msg *msg_msg)
{}

static inline struct ipc_security_struct *
selinux_ipc(const struct kern_ipc_perm *ipc)
{}

/*
 * get the subjective security ID of the current task
 */
static inline u32 current_sid(void)
{}

static inline struct superblock_security_struct *
selinux_superblock(const struct super_block *superblock)
{}

#endif /* _SELINUX_OBJSEC_H_ */