+\section{ACL enhancements}
+
+The following enhancements are made to the Bacula Filed with regards to
+Access Control Lists (ACLs)
+
+\begin{itemize}
+\item Added support for AIX 5.3 and later new aclx\_get interface which supports
+ POSIX and NFSv4 ACLs.
+\item Added support for new acl types on FreeBSD 8.1 and later which supports
+ POSIX and NFSv4 ACLs.
+\item Some generic cleanups for internal ACL handling.
+\item Fix for acl storage on OSX
+\item Cleanup of configure checks for ACL detection, now configure only
+ tests for a certain interface type based on the operating system
+ this should give less false possitives on detection. Also when acls
+ are detected no other acl checks are performed anymore.
+\end{itemize}
+
+\medskip
+This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
+and is available with Bacula Enterprise Edition and Community Edition.
+
+\section{XATTR enhancements}
+
+The following enhancements are made to the Bacula Filed with regards to
+Extended Attributes (XATTRs)
+
+\begin{itemize}
+\item Added support for IRIX extended attributes using the attr\_get interface.
+\item Added support for Tru64 (OSF1) extended attributes using the
+ getproplist interface.
+\item Added support for AIX extended attributes available in AIX 6.x
+ and higher using the listea/getea/setea interface.
+\item Added some debugging to generic xattr code so it easier to
+ debug.
+\item Cleanup of configure checks for XATTR detection, now configure only
+ tests for a certain interface type based on the operating system
+ this should give less false possitives on detection. Also when xattrs
+ are detected no other xattr checks are performed anymore.
+\end{itemize}
+
+\medskip
+This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
+and is available with Bacula Enterprise Edition and Community Edition.
+
+\section{Class Based Database Backend Drivers}
+
+The main Bacula Director code is independent of the SQL backend
+in version 5.2.0 and greater. This means that the Bacula Director can be
+packaged by itself, then each of the different SQL backends supported can
+be packaged separately. It is possible to build all the DB backends at the
+same time by including multiple database options at the same time.
+
+./configure can be run with multiple database configure options.
+\begin{verbatim}
+ --with-sqlite3
+ --with-mysql
+ --with-postgresql
+\end{verbatim}
+
+Order of testing for databases is:
+\begin{itemize}
+\item postgresql
+\item mysql
+\item sqlite3
+\end{itemize}
+
+Each configured backend generates a file named:
+\verb+libbaccats-<sql_backend_name>-<version>.so+
+A dummy catalog library is created named libbaccats-version.so
+
+At configure time the first detected backend is used as the so called
+default backend and at install time the dummy
+\verb+libbaccats-<version>.so+ is replaced with the default backend type.
+
+If you configure all three backends you get three backend libraries and the
+postgresql gets installed as the default.
+
+When you want to switch to another database, first save any old catalog you
+may have then you can copy one of the three backend libraries over the
+\verb+libbaccats-<version>.so+ e.g.
+
+An actual command, depending on your Bacula version might be:
+\begin{verbatim}
+ cp libbaccats-postgresql-5.2.2.so libbaccats-5.2.2.so
+\end{verbatim}
+
+where the \verb+5.2.2+ must be replaced by the Bacula release
+version number.
+
+Then you must update the default backend in the following files:
+
+\begin{verbatim}
+ create_bacula_database
+ drop_bacula_database
+ drop_bacula_tables
+ grant_bacula_privileges
+ make_bacula_tables
+ make_catalog_backup
+ update_bacula_tables
+\end{verbatim}
+
+And re-run all the above scripts. Please note, this means
+you will have a new empty database and if you had a previous
+one it will be lost.
+
+All current database backend drivers for catalog information are rewritten
+to use a set of multi inherited C++ classes which abstract the specific
+database specific internals and make sure we have a more stable generic
+interface with the rest of sql code. From now on there is a strict
+boundery between the SQL code and the low-level database functions. This
+new interface should also make it easier to add a new backend for a
+currently unsupported database. As part of the rewrite the SQLite 2 code
+was removed (e.g. only SQLite 3 is now supported). An extra bonus of the
+new code is that you can configure multiple backends in the configure and
+build all backends in one compile session and select the correct database
+backend at install time. This should make it a lot easier for packages
+maintainers.
+
+
+
+\medskip
+We also added cursor support for PostgreSQL backend, this improves memory
+usage for large installation.
+
+\medskip
+This project was implemented by Planets Communications B.V. and ELM
+Consultancy B.V. and Bacula Systems and is available with both the Bacula
+Enterprise Edition and the Community Edition.
+
+\section{Hash List Enhancements}
+
+The htable hash table class has been extended with extra hash functions for
+handling next to char pointer hashes also 32 bits and 64 bits hash keys.
+Also the hash table initialization routines have been enhanced with
+support for passing a hint as to the number of initial pages to use
+for the size of the hash table. Until now the hash table always used
+a fixed value of 10 Mb. The private hash functions of the mountpoint entry
+cache have been rewritten to use the new htable class with a small memory
+footprint.
+
+\medskip
+This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
+and Bacula Systems and is available with Bacula Enterprise Edition and
+Community Edition.
+
+%%
+%%
+%%% =====================================================================
+%%
+%%
+
+