Convert README to github markdown.

This commit is contained in:
Chris PeBenito 2015-03-31 10:02:43 -04:00
parent c6a280e79a
commit d6ea1014a0

View File

@ -1,25 +1,7 @@
SETools - Policy analysis tools for SELinux # SETools - Policy analysis tools for SELinux
setools@tresys.com, https://github.com/TresysTechnology/setools3/wiki https://github.com/TresysTechnology/setools/wiki
## Overview
TABLE OF CONTENTS
-----------------
1. Overview
2. Installation
2.1. building SETools
2.2. setup.py flags
3. Features
3.1. graphical tools
3.2. command-line tools
3.3. analysis libraries
4. Obtaining SETools
5. Reporting bugs
6. Copyright license
1. Overview
-----------
This file describes SETools, developed by Tresys Technology. SETools This file describes SETools, developed by Tresys Technology. SETools
is a collection of graphical tools, command-line tools, and libraries is a collection of graphical tools, command-line tools, and libraries
@ -27,115 +9,104 @@ designed to facilitate SELinux policy analysis. Please consult the
KNOWN-BUGS file prior to reporting bugs. KNOWN-BUGS file prior to reporting bugs.
2. Installation ## Installation
---------------
SETools uses the Python setuptools build system to build, and install. SETools uses the Python setuptools build system to build, and install.
As such it contains a setup.py script that will install the tools. As such it contains a setup.py script that will install the tools.
SETools requires the following development packages for building: SETools requires the following development packages for building:
Python 2.7 or 3.3+ * Python 2.7 or 3.3+
setuptools * setuptools
gcc * gcc
bison * bison
flex * flex
libselinux * libselinux
libsepol 2.4+ * libsepol 2.4+
libbz2 * libbz2
SWIG 2.0.12+ or 3.0+ * SWIG 2.0.12+ or 3.0+
To build SETools' graphical tools, the following packages are required: To build SETools' graphical tools, the following packages are required:
TBD TBD
To run SETools, the following packages are required: To run SETools, the following packages are required:
Python 2.7 or 3.3+ * Python 2.7 or 3.3+
NetworkX 1.8+ * NetworkX 1.8+
setuptools * setuptools
libselinux * libselinux
libsepol 2.4+ * libsepol 2.4+
libbz2 * libbz2
To run SETools unit tests, the following packages are required: To run SETools unit tests, the following packages are required:
Python 2.7 or 3.3+ * Python 2.7 or 3.3+
setuptools * setuptools
gcc * gcc
bison * bison
flex * flex
libselinux * libselinux
libsepol 2.4+ * libsepol 2.4+
checkpolicy 2.4+ * checkpolicy 2.4+
libbz2 * libbz2
SWIG 2.0.12+ or 3.0+ * SWIG 2.0.12+ or 3.0+
mock (on Python 2.7 only) * mock (on Python 2.7 only)
tox (optional) * tox (optional)
2.1. building SETools ### Building SETools
---------------------
Unpack the official distribution or check out the git repository, Unpack the official distribution or check out the git repository,
and perform the following: and perform the following:
```
$ cd setools $ cd setools
$ python setup.py build $ python setup.py build
$ python setup.py install $ python setup.py install
```
This will put the applications in /usr/bin, data files in /usr/share/setools, This will put the applications in /usr/bin, data files in /usr/share/setools,
and libraries in /usr/lib/pythonX.Y/site-packages/setools. and libraries in /usr/lib/pythonX.Y/site-packages/setools.
2.2. setup.py flags ### Installation Options
-------------------
Please see `python setup.py --help` or `python setup.py install --help` Please see `python setup.py --help` or `python setup.py install --help`
for up-to-date information on build and install options, respectively. for up-to-date information on build and install options, respectively.
2.3 unit tests ### Unit Tests
--------------
One goal for SETools is to provide confidence in the validity of the One goal for SETools is to provide confidence in the validity of the
output for the tools. The unit tests for SETools can be run with output for the tools. The unit tests for SETools can be run with
the following command the following command
```
$ python setup.py test $ python setup.py test
```
## Features
3. Features
-----------
SETools encompasses a number of tools, both graphical and command SETools encompasses a number of tools, both graphical and command
line, and libraries. Many of the programs have help files accessible line, and libraries. Many of the programs have help files accessible
during runtime. during runtime.
3.1. graphical tools ### Graphical tools
--------------------
TBD TBD
3.2. command-line tools ### Command-line tools
-----------------------
Some tools in the SETools suite may be run in a terminal Some tools in the SETools suite may be run in a terminal
environment. environment.
sedta: Tool Name | Description
A tool to perform domain transition analyses on an SELinux policy. ---------- | ------------------------------------------------------
sedta | A tool to perform domain transition analysis.
seinfo: seinfo | A tool to get a list of policy components.
A tool to quickly get a list of components from an SELinux policy. seinfoflow | A tool to perform information flow analysis.
sesearch | A tool to search rules (allow, type_transition, etc.)
seinfoflow:
A tool to perform information flow analyses on an SELinux policy.
sesearch:
A tool to search rules (allow, type_transition, etc.)
within an SELinux policy.
3.3. analysis libraries ### Analysis Libraries
-----------------------
The SETools support libraries are available for use in third-party The SETools support libraries are available for use in third-party
applications. Although they are not officially supported (and thus applications. Although they are not officially supported (and thus
@ -143,8 +114,7 @@ subject to change between SETools releases), we will do our best to
maintain API stability. maintain API stability.
4. Obtaining SETools ### Obtaining SETools
--------------------
Official releases of SETools may be freely downloaded from: Official releases of SETools may be freely downloaded from:
@ -153,26 +123,26 @@ https://github.com/TresysTechnology/setools/releases
SETools source code is maintained within a GitHub repository. SETools source code is maintained within a GitHub repository.
From the command line do: From the command line do:
```
$ git clone https://github.com/TresysTechnology/setools.git $ git clone https://github.com/TresysTechnology/setools.git
```
You may also browse the GitHub repository at You may also browse the GitHub repository at
https://github.com/TresysTechnology/setools. https://github.com/TresysTechnology/setools.
SETools included in most Linux distributions which enable SETools included in most Linux distributions which support
SELinux usage, such as Fedora, Red Hat Enterprise Linux, Gentoo, SELinux, such as Fedora, Red Hat Enterprise Linux, Gentoo,
and Debian. and Debian.
5. Reporting bugs ### Reporting bugs
-----------------
Bugs can be reported in the SETools GitHub issues tracker: Bugs can be reported in the SETools GitHub issues tracker:
https://github.com/TresysTechnology/setools/issues https://github.com/TresysTechnology/setools/issues
6. Copyright license ### Copyright license
--------------------
The intent is to allow free use of this source code. All programs' The intent is to allow free use of this source code. All programs'
source files are copyright protected and freely distributed under the source files are copyright protected and freely distributed under the