• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

docs/22-Nov-2023-6,0805,671

test/22-Nov-2023-1,087904

.gitignoreD22-Nov-202358 76

Android.mkD22-Nov-2023603 3221

COPYINGD22-Nov-20231.7 KiB3325

ChangeLogD22-Nov-20230

MakefileD22-Nov-20231 KiB5035

READMED22-Nov-20231.6 KiB7243

VERSIOND22-Nov-20234 21

secilc.8.xmlD22-Nov-20235.9 KiB11496

secilc.cD22-Nov-20239.8 KiB341285

README

1SELinux Common Intermediate Language (CIL) Compiler
2
3INTRODUCTION
4
5	The SELinux CIL Compiler is a compiler that converts the CIL language as
6	described on the CIL design wiki into a kernel binary policy file.
7	Please see the CIL Design Wiki at:
8	http://github.com/SELinuxProject/cil/wiki/
9	for more information about the goals and features on the CIL language.
10
11DEPENDENCIES
12
13	gcc >= 4.5.1
14	libsepol >= 2.4
15
16
17BUILD STEPS
18
19	Run "make" with one of the following targets:
20
21	make
22		Build the CIL compiler (secilc).
23
24	make test
25		Pass a sample policy to test with the compiler.
26
27	make install
28		Install the secilc compiler and man page to disk.
29
30	make clean
31		Remove temporary build files.
32
33	make man
34		Build the secilc man page.
35
36	make bare
37		Remove temporary build files and compile binaries.
38
39
40USAGE
41
42	Execute 'secilc' with any number of CIL files as arguments. A binary policy and
43	file_contexts file will be created.
44
45	Use the '--help' option for more details.
46
47
48DOCUMENTATION
49
50	There is a Docbook CIL Reference Guide in the docs directory, to build
51	this in HTML and PDF format change to the docs directory and run:
52		make html pdf
53
54	There is also an secilc man page that can be built with:
55		make man
56
57	The documents will be located in the docs/html, docs/pdf and docs/man8
58	directories.
59
60	To build the html and manpage the xmlto package is required.
61	To build the pdf document the xmlto and dblatex packages are required.
62
63
64KNOWN ISSUES
65
66	- Blocks inside of macros causes undefined behavior
67
68	- Policy must be well formed. For example, invalid usage of
69	  sensitivities/categories/levels may create an unloaded binary
70
71	- Recursive limits are not handled
72