OpenXDAS README
================

1 - Introduction
2 - Roadmap
3 - Build 
4 - Build for Linux Kernel
5 - Install 
6 - Users Guide
7 - Developers Guide
8 - FAQ

1 - Introduction
-----------------
OpenXDAS is an effort to create a world-class standards-based, portable, 
distributed auditing service. The initial distribution of the project will 
include a library with a C-language interface.

2 - Roadmap
------------

 - Add xdas.conf to /etc/xdas directory
 - Change xdasd to read /etc/xdas/xdas.conf
 - Change libxdas to gather correct time information
 - Add loadable back-end audit record storage facilities
 - Add filtering to xdasd

3 - Building OpenXDAS
----------------------
Building OpenXDAS from the Subversion repository source code requires the 
proper installation of automake, autoconf and libtool. Building OpenXDAS
from a distribution source tarball does NOT require Autotools or libtool 
to be installed.

To build OpenXDAS use the following steps:

   1) Unzip and untar the distribution openxdas-x.y.z.tar.bz2 source tarball:
   
      $ tar -jxvf arf-x.y.z.tar.bz2
      $ cd openxdas-x.y.z
 OR

   1) Use a Subversion client to retrieve the source code anonymously from
      the sf.net project site. Then run the autogen.sh script at the root of
      the libxdas directory to generate a configure script. Do not be alarmed
      if the script prints a few warnings. Some ports of autotools macro files
      haven't been upgraded properly yet, but the generated scripts usually
      work fine: 

      $ svn co https://svn.sourceforge.net/svnroot/openxdas/trunk openxdas
      $ cd openxdas/openxdas
      $ ./autogen.sh
          
   2) Run the configure script to create OpenXDAS Makefile's. If the configure
      script fails... now you have a problem.
     
      $ ./configure --help          # (for available configuration options)
      $ ./configure

      NOTE: You may also run configure from a different directory in order to
      keep your distribution clean, e.g.:

      $ mkdir build
      $ chdir build
      $ ../configure
          
   3) Run the top level Makefile:
    
      $ make
          
   4) If the make is successful, look for the following binaries:
      
      libxdas/.libs/libxdas.so
      test/.libs/xdastest

Additional build targets are listed in the top level Makefile.am. These
include:

      $ make doxygen                # builds Doxygen doc in ./doxygen/html
      $ make bindist                # builds a binary bzip2 distribution pkg
      $ make srcrpm                 # builds a standard source rpm
      $ make rpms                   # builds both source and binary rpms

4 - Building the xdas.ko Linux Kernel Module
--------------------------------------------
The xdas kernel module provides the XDAS Basic and Submit conformance levels,
granting the user the ability to instrument kernel code and kernel modules 
to the XDAS API. Event thrown through this interface are written to the LAF
(Lightweight Auditing Framework) interface. The event records will be set to
where ever LAF is configured to send audit records. The advantage of this 
approach over raw LAF records is the common event record format and event
taxonomy defined by the XDAS standard.
 
To build and install the xdas.ko Linux kernel module, following these steps:

      $ cd openxdas/libxdas/linux
      $ make
      $ su
      $ make install
      $ exit

This series of commands will produce a new kernel module (xdas.ko) in the 
/lib/modules/`uname -r`/updates directory. This module may be loaded with 
the following command sequence:

      $ su
      $ insmod /lib/modules/`uname -r`/updates/xdas.ko
      $ exit

The module may be removed with this sequence:

      $ su
      $ rmmod xdas
      $ exit

5 - Installing OpenXDAS
-----------------------
To install OpenXDAS build the install target in the top level Makefile
    
      $ make install
    
Installation of OpenXDAS creates the following files:
    
      /usr/lib/libxdas.so.x.x (and several appropriate links)
      /usr/sbin/xdasd

NOTE: This does NOT create a run-level control script. An appropriate script
for LSB compatible linux systems can be found in the top-level directory of 
the distribution package. It's called xdasd.init, however it may need to be 
modified and properly installed on your system for it to work correctly. To
install OpenXDAS completely on SuSE linux, build the rpms target from the 
top level Makefile, and then run rpm install on the resulting package:

      $ su
      $ rpm -U openxdas-x.y.z-r.arch.rpm

6 - OpenXDAS Users Guide 
-------------------------

[TBD]

7 - OpenXDAS Programmers Guide
-------------------------------

[TBD]
    
8 - FAQ
--------

[TBD]

