tizen 2.4 release
[external/buxton.git] / README
1 Buxton
2 ======
3
4 Buxton is a security-enabled configuration management system. It features a
5 layered approach to configuration storage, with each layer containing an
6 arbitrary number of groups, each of which may contain key-value pairs.
7 Mandatory Access Control (MAC) is implemented at the group level and at the
8 key-value level.
9
10 Buxton provides a C library (libbuxton) for client applications to use.
11 Internally, buxton uses a daemon (buxtond) for processing client requests and
12 enforcing MAC. Also, a CLI (buxtonctl) is provided for interactive use and for
13 use in shell scripts.
14
15
16 Build dependencies
17 ==================
18
19 - attr, to provide a required header file, xattr.h
20
21 - check, to build the unit tests
22
23 - gdbm, for key-value pair storage
24
25 - Linux kernel headers, for the inotify header
26
27 - systemd, for autodetection of service file locations, for socket activation
28   of buxtond, and the initialization of the Smack virtual filesystem
29
30
31 Additional runtime dependencies
32 ===============================
33
34 - Smack-enabled kernel, for MAC support
35   * CONFIG_SECURITY_SMACK=y
36
37
38 Note: if running a kernel without Smack enabled, buxton can still be used for
39 configuration management, but MAC will not be enforced.