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, <sds@epoch.ncsc.mil>
5
*/
6
/*
7
* Updated: Trusted Computer Solutions, Inc. <dgoeddel@trustedcs.com>
8
*
9
* Support for enhanced MLS infrastructure.
10
*
11
* Copyright (C) 2004-2006 Trusted Computer Solutions, Inc.
12
*/
13
/*
14
* Updated: Hewlett-Packard <paul@paul-moore.com>
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