Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
security
selinux
ss
mls.h
Go to the documentation of this file.
1
/*
2
* Multi-level security (MLS) policy operations.
3
*
4
* Author : Stephen Smalley, <
[email protected]
>
5
*/
6
/*
7
* Updated: Trusted Computer Solutions, Inc. <
[email protected]
>
8
*
9
* Support for enhanced MLS infrastructure.
10
*
11
* Copyright (C) 2004-2006 Trusted Computer Solutions, Inc.
12
*/
13
/*
14
* Updated: Hewlett-Packard <
[email protected]
>
15
*
16
* Added support to import/export the MLS label from NetLabel
17
*
18
* (c) Copyright Hewlett-Packard Development Company, L.P., 2006
19
*/
20
21
#ifndef _SS_MLS_H_
22
#define _SS_MLS_H_
23
24
#include "
context.h
"
25
#include "
policydb.h
"
26
27
int
mls_compute_context_len
(
struct
context
*
context
);
28
void
mls_sid_to_context
(
struct
context
*
context
,
char
**scontext);
29
int
mls_context_isvalid
(
struct
policydb
*
p
,
struct
context
*
c
);
30
int
mls_range_isvalid
(
struct
policydb
*
p
,
struct
mls_range
*
r
);
31
int
mls_level_isvalid
(
struct
policydb
*
p
,
struct
mls_level
*
l
);
32
33
int
mls_context_to_sid
(
struct
policydb
*
p
,
34
char
oldc,
35
char
**scontext,
36
struct
context
*
context
,
37
struct
sidtab
*
s
,
38
u32
def_sid);
39
40
int
mls_from_string
(
char
*
str
,
struct
context
*
context
,
gfp_t
gfp_mask
);
41
42
int
mls_range_set
(
struct
context
*
context
,
struct
mls_range
*
range
);
43
44
int
mls_convert_context
(
struct
policydb
*oldp,
45
struct
policydb
*newp,
46
struct
context
*
context
);
47
48
int
mls_compute_sid
(
struct
context
*scontext,
49
struct
context
*tcontext,
50
u16
tclass,
51
u32
specified,
52
struct
context
*newcontext,
53
bool
sock
);
54
55
int
mls_setup_user_range
(
struct
context
*fromcon,
struct
user_datum
*
user
,
56
struct
context
*usercon);
57
58
#ifdef CONFIG_NETLABEL
59
void
mls_export_netlbl_lvl(
struct
context
*
context
,
60
struct
netlbl_lsm_secattr
*secattr);
61
void
mls_import_netlbl_lvl(
struct
context
*
context
,
62
struct
netlbl_lsm_secattr
*secattr);
63
int
mls_export_netlbl_cat(
struct
context
*
context
,
64
struct
netlbl_lsm_secattr
*secattr);
65
int
mls_import_netlbl_cat(
struct
context
*
context
,
66
struct
netlbl_lsm_secattr
*secattr);
67
#else
68
static
inline
void
mls_export_netlbl_lvl(
struct
context
*
context
,
69
struct
netlbl_lsm_secattr
*secattr)
70
{
71
return
;
72
}
73
static
inline
void
mls_import_netlbl_lvl(
struct
context
*
context
,
74
struct
netlbl_lsm_secattr
*secattr)
75
{
76
return
;
77
}
78
static
inline
int
mls_export_netlbl_cat(
struct
context
*
context
,
79
struct
netlbl_lsm_secattr
*secattr)
80
{
81
return
-
ENOMEM
;
82
}
83
static
inline
int
mls_import_netlbl_cat(
struct
context
*
context
,
84
struct
netlbl_lsm_secattr
*secattr)
85
{
86
return
-
ENOMEM
;
87
}
88
#endif
89
90
#endif
/* _SS_MLS_H */
91
Generated on Thu Jan 10 2013 15:03:21 for Linux Kernel by
1.8.2