From d1d1d5591c71fea470bf1601aaa0d5ad32451bda Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sat, 3 Jan 2015 17:47:46 +0100 Subject: [PATCH] Add license where none exists + minor tweaks --- bacula/autoconf/Make.common.in | 2 +- bacula/autoconf/acconfig.h | 5 + bacula/autoconf/bacula-macros/db.m4 | 2 +- bacula/autoconf/bacula-macros/db.m4.old | 1295 --------- bacula/autoconf/bacula-macros/os.m4 | 3 + bacula/autoconf/configure.in | 2 +- bacula/scripts/btraceback.in | 5 +- bacula/src/console/conio.c | 4 +- bacula/src/filed/Makefile.in | 3 +- bacula/src/stored/dircmd.c | 2 +- bacula/technotes | 3282 ----------------------- 11 files changed, 19 insertions(+), 4586 deletions(-) delete mode 100644 bacula/autoconf/bacula-macros/db.m4.old delete mode 100644 bacula/technotes diff --git a/bacula/autoconf/Make.common.in b/bacula/autoconf/Make.common.in index ac6e30dc50..ed157ba76a 100644 --- a/bacula/autoconf/Make.common.in +++ b/bacula/autoconf/Make.common.in @@ -1,5 +1,5 @@ # -# Author: Kern Sibbald +# Author: Kern Sibbald, 2002 # License: LGPLv3 # # This file is pulled in by all the Unix Bacula Makefiles diff --git a/bacula/autoconf/acconfig.h b/bacula/autoconf/acconfig.h index 4c5f8dd3c4..fdc1271b24 100644 --- a/bacula/autoconf/acconfig.h +++ b/bacula/autoconf/acconfig.h @@ -1,6 +1,11 @@ /* ------------------------------------------------------------------------- */ /* -- CONFIGURE SPECIFIED FEATURES -- */ /* ------------------------------------------------------------------------- */ + +/* + * Author: Kern Sibbald, 2002 + * License: LGPLv3 + */ /* Define if you want to use MySQL as Catalog database */ #undef USE_MYSQL_DB diff --git a/bacula/autoconf/bacula-macros/db.m4 b/bacula/autoconf/bacula-macros/db.m4 index 3250744087..4612e70b1e 100644 --- a/bacula/autoconf/bacula-macros/db.m4 +++ b/bacula/autoconf/bacula-macros/db.m4 @@ -1,5 +1,5 @@ # -# Author: Kern Sibbald +# Author: Kern Sibbald, 2008 # License: LGPLv3 # AC_DEFUN([BA_CHECK_DBI_DB], diff --git a/bacula/autoconf/bacula-macros/db.m4.old b/bacula/autoconf/bacula-macros/db.m4.old deleted file mode 100644 index 1eea0772f0..0000000000 --- a/bacula/autoconf/bacula-macros/db.m4.old +++ /dev/null @@ -1,1295 +0,0 @@ -AC_DEFUN([BA_CHECK_DBI_DB], -[ -db_found=no -AC_MSG_CHECKING(for DBI support) -AC_ARG_WITH(dbi, -AC_HELP_STRING([--with-dbi@<:@=DIR@:>@], [Include DBI support. DIR is the DBD base install directory, default is to search through a number of common places for the DBI files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/local/include/dbi/dbi.h; then - DBI_INCDIR=/usr/local/dbi/include - if test -d /usr/local/lib64; then - DBI_LIBDIR=/usr/local/lib64 - else - DBI_LIBDIR=/usr/local/lib - fi - DBI_BINDIR=/usr/local/bin - elif test -f /usr/include/dbi/dbi.h; then - DBI_INCDIR=/usr/include - if test -d /usr/lib64; then - DBI_LIBDIR=/usr/lib64 - else - DBI_LIBDIR=/usr/lib - fi - DBI_BINDIR=/usr/bin - elif test -f $prefix/include/dbi/dbi.h; then - DBI_INCDIR=$prefix/include - if test -d $prefix/lib64; then - DBI_LIBDIR=$prefix/lib64 - else - DBI_LIBDIR=$prefix/lib - fi - DBI_BINDIR=$prefix/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find dbi.h in standard locations) - fi - if test -d /usr/local/lib/dbd; then - DRIVERDIR=/usr/local/lib/dbd - if test -d /usr/local/lib64/dbd; then - DRIVERDIR=/usr/local/lib64/dbd - else - DRIVERDIR=/usr/local/lib/dbd - fi - elif test -d /usr/lib/dbd; then - DRIVERDIR=/usr/lib/dbd - if test -d /usr/lib64/dbd; then - DRIVERDIR=/usr/lib64/dbd - else - DRIVERDIR=/usr/lib/dbd - fi - elif test -d $prefix/lib/dbd; then - if test -d $prefix/lib64/dbd; then - DRIVERDIR=$prefix/lib64/dbd - else - DRIVERDIR=$prefix/lib/dbd - fi - elif test -d /usr/local/lib64/dbd; then - DRIVERDIR=/usr/local/lib64/dbd - elif test -d /usr/lib64/dbd; then - DRIVERDIR=/usr/lib64/dbd - elif test -d $prefix/lib64/dbd; then - DRIVERDIR=$prefix/lib64/dbd - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find DBD drivers in standard locations) - fi - else - if test -f $withval/dbi.h; then - DBI_INCDIR=$withval - DBI_LIBDIR=$withval - DBI_BINDIR=$withval - elif test -f $withval/include/dbi/dbi.h; then - DBI_INCDIR=$withval/include - if test -d $withval/lib64; then - DBI_LIBDIR=$withval/lib64 - else - DBI_LIBDIR=$withval/lib - fi - DBI_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid DBI directory $withval - unable to find dbi.h under $withval) - fi - if test -d $withval/dbd; then - DRIVERDIR=$withval/dbd - elif test -d $withval/lib/; then - if test -d $withval/lib64/dbd; then - DRIVERDIR=$withval/lib64/dbd - else - DRIVERDIR=$withval/lib/dbd - fi - elif test -d $withval/lib64/dbd; then - DRIVERDIR=$withval/lib64/dbd - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid DBD driver directory $withval - unable to find DBD drivers under $withval) - fi - fi - SQL_INCLUDE=-I$DBI_INCDIR - SQL_LFLAGS="-L$DBI_LIBDIR -ldbi" - SQL_BINDIR=$DBI_BINDIR - SQL_LIB=$DBI_LIBDIR/libdbi.a - DBI_DBD_DRIVERDIR="-D DBI_DRIVER_DIR=\\\"$DRIVERDIR\\\"" - - AC_DEFINE(HAVE_DBI, 1, [Set if you have the DBI driver]) - AC_MSG_RESULT(yes) - db_found=yes - support_dbi=yes - db_type=DBI - DB_TYPE=dbi - uncomment_dbi=" " - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) -AC_SUBST(SQL_BINDIR) -AC_SUBST(DBI_DBD_DRIVERDIR) -AC_SUBST(uncomment_dbi) - -]) - -AC_DEFUN([BA_CHECK_DBI_DRIVER], -[ -db_found=no -db_prog=no -AC_MSG_CHECKING(for DBI drivers support) -AC_ARG_WITH(dbi-driver, -AC_HELP_STRING([--with-dbi-driver@<:@=DRIVER@:>@], [Suport for DBI driver. DRIVER is the one DBI driver like Mysql, Postgresql, others. Default is to not configure any driver.]), -[ - if test "$withval" != "no"; then - case $withval in - "mysql") - db_prog="mysql" - if test -f /usr/local/mysql/bin/mysql; then - SQL_BINDIR=/usr/local/mysql/bin - if test -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=/usr/local/mysql/lib64/mysql - else - SQL_LIBDIR=/usr/local/mysql/lib/mysql - fi - elif test -f /usr/bin/mysql; then - SQL_BINDIR=/usr/bin - if test -f /usr/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/lib64/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=/usr/lib64/mysql - elif test -f /usr/lib/mysql/libmysqlclient_r.a \ - -o -f /usr/lib/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=/usr/lib/mysql - else - SQL_LIBDIR=/usr/lib - fi - elif test -f /usr/local/bin/mysql; then - SQL_BINDIR=/usr/local/bin - if test -f /usr/local/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/local/lib64/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=/usr/local/lib64/mysql - elif test -f /usr/local/lib/mysql/libmysqlclient_r.a \ - -o -f /usr/local/lib/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=/usr/local/lib/mysql - else - SQL_LIBDIR=/usr/local/lib - fi - elif test -f $withval/bin/mysql; then - SQL_BINDIR=$withval/bin - if test -f $withval/lib64/mysql/libmysqlclient_r.a \ - -o -f $withval/lib64/mysql/libmysqlclient_r.so; then - SQL_LIBDIR=$withval/lib64/mysql - elif test -f $withval/lib64/libmysqlclient_r.a \ - -o -f $withval/lib64/libmysqlclient_r.so; then - SQL_LIBDIR=$withval/lib64 - elif test -f $withval/lib/libmysqlclient_r.a \ - -o -f $withval/lib/libmysqlclient_r.so; then - SQL_LIBDIR=$withval/lib/ - else - SQL_LIBDIR=$withval/lib/mysql - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find mysql in standard locations) - fi - if test -f $SQL_LIBDIR/libmysqlclient_r.so; then - DB_PROG_LIB=$SQL_LIBDIR/libmysqlclient_r.so - else - DB_PROG_LIB=$SQL_LIBDIR/libmysqlclient_r.a - fi - ;; - "postgresql") - db_prog="postgresql" - PG_CONFIG=`which pg_config` - if test -n "$PG_CONFIG"; then - SQL_BINDIR=`"$PG_CONFIG" --bindir` - SQL_LIBDIR=`"$PG_CONFIG" --libdir` - elif test -f /usr/local/bin/psql; then - SQL_BINDIR=/usr/local/bin - if test -d /usr/local/lib64; then - SQL_LIBDIR=/usr/local/lib64 - else - SQL_LIBDIR=/usr/local/lib - fi - elif test -f /usr/bin/psql; then - SQL_BINDIR=/usr/local/bin - if test -d /usr/lib64/postgresql; then - SQL_LIBDIR=/usr/lib64/postgresql - elif test -d /usr/lib/postgresql; then - SQL_LIBDIR=/usr/lib/postgresql - elif test -d /usr/lib64; then - SQL_LIBDIR=/usr/lib64 - else - SQL_LIBDIR=/usr/lib - fi - elif test -f $withval/bin/psql; then - SQL_BINDIR=$withval/bin - if test -d $withval/lib64; then - SQL_LIBDIR=$withval/lib64 - else - SQL_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find psql in standard locations) - fi - if test -f $SQL_LIBDIR/libpq.so; then - DB_PROG_LIB=$SQL_LIBDIR/libpq.so - else - DB_PROG_LIB=$SQL_LIBDIR/libpq.a - fi - ;; - "sqlite") - db_prog="sqlite" - if test -f /usr/local/bin/sqlite; then - SQL_BINDIR=/usr/local/bin - if test -d /usr/local/lib64; then - SQL_LIBDIR=/usr/local/lib64 - else - SQL_LIBDIR=/usr/local/lib - fi - elif test -f /usr/bin/sqlite; then - SQL_BINDIR=/usr/bin - if test -d /usr/lib64; then - SQL_LIBDIR=/usr/lib64 - else - SQL_LIBDIR=/usr/lib - fi - elif test -f $withval/bin/sqlite; then - SQL_BINDIR=$withval/bin - if test -d $withval/lib64; then - SQL_LIBDIR=$withval/lib64 - else - SQL_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find sqlite in standard locations) - fi - if test -f $SQL_LIBDIR/libsqlite.so; then - DB_PROG_LIB=$SQL_LIBDIR/libsqlite.so - else - DB_PROG_LIB=$SQL_LIBDIR/libsqlite.a - fi - ;; - "sqlite3") - db_prog="sqlite3" - if test -f /usr/local/bin/sqlite3; then - SQL_BINDIR=/usr/local/bin - if test -d /usr/local/lib64; then - SQL_LIBDIR=/usr/local/lib64 - else - SQL_LIBDIR=/usr/local/lib - fi - elif test -f /usr/bin/sqlite3; then - SQL_BINDIR=/usr/bin - if test -d /usr/lib64; then - SQL_LIBDIR=/usr/lib64 - else - SQL_LIBDIR=/usr/lib - fi - elif test -f $withval/bin/sqlite3; then - SQL_BINDIR=$withval/bin - if test -d $withval/lib64; then - SQL_LIBDIR=$withval/lib64 - else - SQL_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find sqlite in standard locations) - fi - if test -f $SQL_LIBDIR/libsqlite3.so; then - DB_PROG_LIB=$SQL_LIBDIR/libsqlite3.so - else - DB_PROG_LIB=$SQL_LIBDIR/libsqlite3.a - fi - ;; - *) - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to set DBI driver. $withval is not supported) - ;; - esac - - AC_MSG_RESULT(yes) - DB_PROG=$db_prog - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SQL_BINDIR) -AC_SUBST(DB_PROG) -AC_SUBST(DB_PROG_LIB) - -]) - - -AC_DEFUN([BA_CHECK_MYSQL_DB], -[ -db_found=no -AC_MSG_CHECKING(for MySQL support) -AC_ARG_WITH(mysql, -AC_HELP_STRING([--with-mysql@<:@=DIR@:>@], [Include MySQL support. DIR is the MySQL base install directory, default is to search through a number of common places for the MySQL files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/local/mysql/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/mysql/include/mysql - if test -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/local/mysql/lib64/mysql - else - MYSQL_LIBDIR=/usr/local/mysql/lib/mysql - fi - MYSQL_BINDIR=/usr/local/mysql/bin - elif test -f /usr/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/include/mysql - if test -f /usr/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/lib64/mysql/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/lib64/mysql - elif test -f /usr/lib64/libmysqlclient_r.a \ - -o -f /usr/lib64/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/lib64 - elif test -f /usr/lib/mysql/libmysqlclient_r.a \ - -o -f /usr/lib/mysql/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/lib/mysql - else - MYSQL_LIBDIR=/usr/lib - fi - MYSQL_BINDIR=/usr/bin - elif test -f /usr/include/mysql.h; then - MYSQL_INCDIR=/usr/include - if test -f /usr/lib64/libmysqlclient_r.a \ - -o -f /usr/lib64/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/lib64 - else - MYSQL_LIBDIR=/usr/lib - fi - MYSQL_BINDIR=/usr/bin - elif test -f /usr/local/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/include/mysql - if test -f /usr/local/lib64/mysql/libmysqlclient_r.a \ - -o -f /usr/local/lib64/mysql/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/local/lib64/mysql - else - MYSQL_LIBDIR=/usr/local/lib/mysql - fi - MYSQL_BINDIR=/usr/local/bin - elif test -f /usr/local/include/mysql.h; then - MYSQL_INCDIR=/usr/local/include - if test -f /usr/local/lib64/libmysqlclient_r.a \ - -o -f /usr/local/lib64/libmysqlclient_r.so; then - MYSQL_LIBDIR=/usr/local/lib64 - else - MYSQL_LIBDIR=/usr/local/lib - fi - MYSQL_BINDIR=/usr/local/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find mysql.h in standard locations) - fi - else - if test -f $withval/include/mysql/mysql.h; then - MYSQL_INCDIR=$withval/include/mysql - if test -f $withval/lib64/mysql/libmysqlclient_r.a \ - -o -f $withval/lib64/mysql/libmysqlclient_r.so; then - MYSQL_LIBDIR=$withval/lib64/mysql - elif test -f $withval/lib64/libmysqlclient_r.a \ - -o -f $withval/lib64/libmysqlclient_r.so; then - MYSQL_LIBDIR=$withval/lib64 - elif test -f $withval/lib/libmysqlclient_r.a \ - -o -f $withval/lib/libmysqlclient_r.so; then - MYSQL_LIBDIR=$withval/lib - else - MYSQL_LIBDIR=$withval/lib/mysql - fi - MYSQL_BINDIR=$withval/bin - elif test -f $withval/include/mysql.h; then - MYSQL_INCDIR=$withval/include - if test -f $withval/lib64/libmysqlclient_r.a \ - -o -f $withval/lib64/libmysqlclient_r.so; then - MYSQL_LIBDIR=$withval/lib64 - else - MYSQL_LIBDIR=$withval/lib - fi - MYSQL_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval) - fi - fi - SQL_INCLUDE=-I$MYSQL_INCDIR - if test -f $MYSQL_LIBDIR/libmysqlclient_r.a \ - -o -f $MYSQL_LIBDIR/libmysqlclient_r.so; then - SQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqlclient_r -lz" - AC_DEFINE(HAVE_THREAD_SAFE_MYSQL) - fi - SQL_BINDIR=$MYSQL_BINDIR - SQL_LIB=$MYSQL_LIBDIR/libmysqlclient_r.a - - AC_DEFINE(HAVE_MYSQL, 1, [Set if you have an MySQL Database]) - AC_MSG_RESULT(yes) - db_found=yes - support_mysql=yes - db_type=MySQL - DB_TYPE=mysql - - else - AC_MSG_RESULT(no) - fi -] -) - -AC_ARG_WITH(embedded-mysql, -AC_HELP_STRING([--with-embedded-mysql@<:@=DIR@:>@], [Include MySQL support. DIR is the MySQL base install directory, default is to search through a number of common places for the MySQL files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/local/mysql/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/mysql/include/mysql - if test -d /usr/local/mysql/lib64/mysql; then - MYSQL_LIBDIR=/usr/local/mysql/lib64/mysql - else - MYSQL_LIBDIR=/usr/local/mysql/lib/mysql - fi - MYSQL_BINDIR=/usr/local/mysql/bin - elif test -f /usr/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/include/mysql - if test -d /usr/lib64/mysql; then - MYSQL_LIBDIR=/usr/lib64/mysql - else - MYSQL_LIBDIR=/usr/lib/mysql - fi - MYSQL_BINDIR=/usr/bin - elif test -f /usr/include/mysql.h; then - MYSQL_INCDIR=/usr/include - if test -d /usr/lib64; then - MYSQL_LIBDIR=/usr/lib64 - else - MYSQL_LIBDIR=/usr/lib - fi - MYSQL_BINDIR=/usr/bin - elif test -f /usr/local/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/include/mysql - if test -d /usr/local/lib64/mysql; then - MYSQL_LIBDIR=/usr/local/lib64/mysql - else - MYSQL_LIBDIR=/usr/local/lib/mysql - fi - MYSQL_BINDIR=/usr/local/bin - elif test -f /usr/local/include/mysql.h; then - MYSQL_INCDIR=/usr/local/include - if test -d /usr/local/lib64; then - MYSQL_LIBDIR=/usr/local/lib64 - else - MYSQL_LIBDIR=/usr/local/lib - fi - MYSQL_BINDIR=/usr/local/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find mysql.h in standard locations) - fi - else - if test -f $withval/include/mysql/mysql.h; then - MYSQL_INCDIR=$withval/include/mysql - if test -d $withval/lib64/mysql; then - MYSQL_LIBDIR=$withval/lib64/mysql - else - MYSQL_LIBDIR=$withval/lib/mysql - fi - MYSQL_BINDIR=$withval/bin - elif test -f $withval/include/mysql.h; then - MYSQL_INCDIR=$withval/include - if test -d $withval/lib64; then - MYSQL_LIBDIR=$withval/lib64 - else - MYSQL_LIBDIR=$withval/lib - fi - MYSQL_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval) - fi - fi - SQL_INCLUDE=-I$MYSQL_INCDIR - SQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqld -lz -lm -lcrypt" - SQL_BINDIR=$MYSQL_BINDIR - SQL_LIB=$MYSQL_LIBDIR/libmysqld.a - - AC_DEFINE(HAVE_MYSQL) - AC_DEFINE(HAVE_EMBEDDED_MYSQL) - AC_MSG_RESULT(yes) - db_found=yes - support_mysql=yes - db_type=MySQL - DB_TYPE=mysql - - else - AC_MSG_RESULT(no) - fi -] -) - - -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) -AC_SUBST(SQL_BINDIR) - -]) - - -AC_DEFUN([BA_CHECK_INGRES_DB], -[ -db_found=no -AC_MSG_CHECKING(for Ingres support) -AC_ARG_WITH(ingres, -AC_HELP_STRING([--with-ingres@<:@=DIR@:>@], [Include Ingres support. DIR is the Ingres base install directory, default is to search through a number of common places for the Ingres files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f ${II_SYSTEM}/files/eqdefc.h; then - INGRES_INCDIR=${II_SYSTEM}/files - INGRES_LIBDIR=${II_SYSTEM}/lib - INGRES_BINDIR=${II_SYSTEM}/bin - elif test -f ${II_SYSTEM}/ingres/files/eqdefc.h; then - INGRES_INCDIR=${II_SYSTEM}/ingres/files - INGRES_LIBDIR=${II_SYSTEM}/ingres/lib - INGRES_BINDIR=${II_SYSTEM}/ingres/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find eqdefc.h in standard locations) - fi - else - if test -f $withval/files/eqdefc.h; then - INGRES_INCDIR=$withval/files - INGRES_LIBDIR=$withval/lib - INGRES_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid Ingres directory $withval - unable to find Ingres headers under $withval) - fi - fi - SQL_INCLUDE=-I$INGRES_INCDIR - SQL_LFLAGS="-L$INGRES_LIBDIR -lq.1 -lcompat.1 -lframe.1" - SQL_BINDIR=$INGRES_BINDIR - SQL_LIB=$INGRES_LIBDIR/libingres.a - AC_DEFINE(HAVE_INGRES, 1, [Set if have Ingres Database]) - AC_MSG_RESULT(yes) - db_found=yes - support_ingres=yes - db_type=Ingres - DB_TYPE=ingres - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) - -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) -AC_SUBST(SQL_BINDIR) -]) - -AC_DEFUN([BA_CHECK_SQLITE3_DB], -[ -db_found=no -AC_MSG_CHECKING(for SQLite3 support) -AC_ARG_WITH(sqlite3, -AC_HELP_STRING([--with-sqlite3@<:@=DIR@:>@], [Include SQLite3 support. DIR is the SQLite3 base install directory, default is to search through a number of common places for the SQLite3 files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/local/include/sqlite3.h; then - SQLITE_INCDIR=/usr/local/include - if test -d /usr/local/lib64; then - SQLITE_LIBDIR=/usr/local/lib64 - else - SQLITE_LIBDIR=/usr/local/lib - fi - SQLITE_BINDIR=/usr/local/bin - elif test -f /usr/include/sqlite3.h; then - SQLITE_INCDIR=/usr/include - if test -d /usr/lib64; then - SQLITE_LIBDIR=/usr/lib64 - else - SQLITE_LIBDIR=/usr/lib - fi - SQLITE_BINDIR=/usr/bin - elif test -f $prefix/include/sqlite3.h; then - SQLITE_INCDIR=$prefix/include - if test -d $prefix/lib64; then - SQLITE_LIBDIR=$prefix/lib64 - else - SQLITE_LIBDIR=$prefix/lib - fi - SQLITE_BINDIR=$prefix/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find sqlite3.h in standard locations) - fi - else - if test -f $withval/sqlite3.h; then - SQLITE_INCDIR=$withval - SQLITE_LIBDIR=$withval - SQLITE_BINDIR=$withval - elif test -f $withval/include/sqlite3.h; then - SQLITE_INCDIR=$withval/include - if test -d $withval/lib64; then - SQLITE_LIBDIR=$withval/lib64 - else - SQLITE_LIBDIR=$withval/lib - fi - SQLITE_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid SQLite3 directory $withval - unable to find sqlite3.h under $withval) - fi - fi - SQL_INCLUDE=-I$SQLITE_INCDIR - SQL_LFLAGS="-L$SQLITE_LIBDIR -lsqlite3" - SQL_BINDIR=$SQLITE_BINDIR - SQL_LIB=$SQLITE_LIBDIR/libsqlite3.a - - AC_DEFINE(HAVE_SQLITE3) - AC_MSG_RESULT(yes) - db_found=yes - support_sqlite3=yes - db_type=SQLite3 - DB_TYPE=sqlite3 - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) -AC_SUBST(SQL_BINDIR) - -]) - - -AC_DEFUN([BA_CHECK_POSTGRESQL_DB], -[ -db_found=no -AC_MSG_CHECKING(for PostgreSQL support) -AC_ARG_WITH(postgresql, -AC_HELP_STRING([--with-postgresql@<:@=DIR@:>@], [Include PostgreSQL support. DIR is the PostgreSQL base install directory, @<:@default=/usr/local/pgsql@:>@]), -[ - if test "$withval" != "no"; then - if test "$db_found" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - if test "$withval" = "yes"; then - PG_CONFIG=`which pg_config` - if test -n "$PG_CONFIG";then - POSTGRESQL_INCDIR=`"$PG_CONFIG" --includedir` - POSTGRESQL_LIBDIR=`"$PG_CONFIG" --libdir` - POSTGRESQL_BINDIR=`"$PG_CONFIG" --bindir` - elif test -f /usr/local/include/libpq-fe.h; then - POSTGRESQL_INCDIR=/usr/local/include - if test -d /usr/local/lib64; then - POSTGRESQL_LIBDIR=/usr/local/lib64 - else - POSTGRESQL_LIBDIR=/usr/local/lib - fi - POSTGRESQL_BINDIR=/usr/local/bin - elif test -f /usr/include/libpq-fe.h; then - POSTGRESQL_INCDIR=/usr/include - if test -d /usr/lib64; then - POSTGRESQL_LIBDIR=/usr/lib64 - else - POSTGRESQL_LIBDIR=/usr/lib - fi - POSTGRESQL_BINDIR=/usr/bin - elif test -f /usr/include/pgsql/libpq-fe.h; then - POSTGRESQL_INCDIR=/usr/include/pgsql - if test -d /usr/lib64/pgsql; then - POSTGRESQL_LIBDIR=/usr/lib64/pgsql - else - POSTGRESQL_LIBDIR=/usr/lib/pgsql - fi - POSTGRESQL_BINDIR=/usr/bin - elif test -f /usr/include/postgresql/libpq-fe.h; then - POSTGRESQL_INCDIR=/usr/include/postgresql - if test -d /usr/lib64/postgresql; then - POSTGRESQL_LIBDIR=/usr/lib64/postgresql - else - POSTGRESQL_LIBDIR=/usr/lib/postgresql - fi - POSTGRESQL_BINDIR=/usr/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Unable to find libpq-fe.h in standard locations) - fi - elif test -f $withval/include/libpq-fe.h; then - POSTGRESQL_INCDIR=$withval/include - POSTGRESQL_LIBDIR=$withval/lib - POSTGRESQL_BINDIR=$withval/bin - elif test -f $withval/include/postgresql/libpq-fe.h; then - POSTGRESQL_INCDIR=$withval/include/postgresql - if test -d $withval/lib64; then - POSTGRESQL_LIBDIR=$withval/lib64 - else - POSTGRESQL_LIBDIR=$withval/lib - fi - POSTGRESQL_BINDIR=$withval/bin - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid PostgreSQL directory $withval - unable to find libpq-fe.h under $withval) - fi - AC_DEFINE(HAVE_POSTGRESQL) - AC_MSG_RESULT(yes) - POSTGRESQL_LFLAGS="-L$POSTGRESQL_LIBDIR -lpq" - AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt, [POSTGRESQL_LFLAGS="$POSTGRESQL_LFLAGS -lcrypt"])) - SQL_INCLUDE=-I$POSTGRESQL_INCDIR - SQL_LFLAGS=$POSTGRESQL_LFLAGS - SQL_BINDIR=$POSTGRESQL_BINDIR - SQL_LIB=$POSTGRESQL_LIBDIR/libpq.a - - db_found=yes - support_postgresql=yes - db_type=PostgreSQL - DB_TYPE=postgresql - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) -AC_SUBST(SQL_BINDIR) - -]) - - - -AC_DEFUN([BA_CHECK_SQL_DB], -[AC_MSG_CHECKING(Checking for various databases) -dnl# -------------------------------------------------------------------------- -dnl# CHECKING FOR VARIOUS DATABASES (thanks to UdmSearch team) -dnl# -------------------------------------------------------------------------- -dnl Check for some DBMS backend -dnl NOTE: we can use only one backend at a time -db_found=no -DB_TYPE=none - -if test x$support_mysql = xyes; then - cats=cats -fi - -AC_MSG_CHECKING(for Berkeley DB support) -AC_ARG_WITH(berkeleydb, -AC_HELP_STRING([--with-berkeleydb@<:@=DIR@:>@], [Include Berkeley DB support. DIR is the Berkeley DB base install directory, default is to search through a number of common places for the DB files.]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/include/db.h; then - BERKELEYDB_INCDIR=/usr/include - if test -d /usr/lib64; then - BERKELEYDB_LIBDIR=/usr/lib64 - else - BERKELEYDB_LIBDIR=/usr/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid Berkeley DB directory - unable to find db.h) - fi - else - if test -f $withval/include/db.h; then - BERKELEYDB_INCDIR=$withval/include - if test -d $withval/lib64; then - BERKELEYDB_LIBDIR=$withval/lib64 - else - BERKELEYDB_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid Berkeley DB directory - unable to find db.h under $withval) - fi - fi - SQL_INCLUDE=-I$BERKELEYDB_INCDIR - SQL_LFLAGS="-L$BERKELEYDB_LIBDIR -ldb" - - AC_DEFINE(HAVE_BERKELEY_DB) - AC_MSG_RESULT(yes) - have_db=yes - support_mysql=yes - DB_TYPE=BerkelyDB - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SQL_LFLAGS) -AC_SUBST(SQL_INCLUDE) - -if test x$support_berkleydb = xyes; then - cats=cats -fi - - - - -AC_MSG_CHECKING(for mSQL support) -AC_ARG_WITH(msql, -AC_HELP_STRING([--with-msql@<:@=DIR@:>@], [Include mSQL support. DIR is the mSQL base install directory @<:@default=/usr/local/Hughes@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - - if test "$withval" = "yes"; then - MSQL_INCDIR=/usr/local/Hughes/include - if test -d /usr/local/Hughes/lib64; then - MSQL_LIBDIR=/usr/local/Hughes/lib64 - else - MSQL_LIBDIR=/usr/local/Hughes/lib - fi - else - MSQL_INCDIR=$withval/include - if test -d $withval/lib64; then - MSQL_LIBDIR=$withval/lib64 - else - MSQL_LIBDIR=$withval/lib - fi - fi - MSQL_INCLUDE=-I$MSQL_INCDIR - MSQL_LFLAGS="-L$MSQL_LIBDIR -lmsql" - - AC_DEFINE(HAVE_MSQL) - AC_MSG_RESULT(yes) - have_db=yes - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(MSQL_LFLAGS) -AC_SUBST(MSQL_INCLUDE) - - -AC_MSG_CHECKING(for iODBC support) -AC_ARG_WITH(iodbc, -AC_HELP_STRING([--with-iodbc@<:@=DIR@:>], [Include iODBC support. DIR is the iODBC base install directory @<:@default=/usr/local@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval=/usr/local - fi - - if test "$withval" != "no"; then - if test -f $withval/include/isql.h; then - IODBC_INCDIR=$withval/include - if test -d $withval/lib64; then - IODBC_LIBDIR=$withval/lib64 - else - IODBC_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid iODBC directory - unable to find isql.h) - fi - IODBC_LFLAGS="-L$IODBC_LIBDIR -liodbc" - IODBC_INCLUDE=-I$IODBC_INCDIR - AC_DEFINE(HAVE_IODBC) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(IODBC_LFLAGS) -AC_SUBST(IODBC_INCLUDE) - - -AC_MSG_CHECKING(for unixODBC support) -AC_ARG_WITH(unixODBC, -AC_HELP_STRING([--with-unixODBC@<:@=DIR@:>], [Include unixODBC support. DIR is the unixODBC base install directory @<:@default=/usr/local@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval=/usr/local - fi - - if test "$withval" != "no"; then - if test -f $withval/include/sql.h; then - UNIXODBC_INCDIR=$withval/include - if test -d $withval/lib64; then - UNIXODBC_LIBDIR=$withval/lib64 - else - UNIXODBC_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid unixODBC directory - unable to find sql.h) - fi - UNIXODBC_LFLAGS="-L$UNIXODBC_LIBDIR -lodbc" - UNIXODBC_INCLUDE=-I$UNIXODBC_INCDIR - AC_DEFINE(HAVE_UNIXODBC) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(UNIXODBC_LFLAGS) -AC_SUBST(UNIXODBC_INCLUDE) - - -AC_MSG_CHECKING(for Solid support) -AC_ARG_WITH(solid, -AC_HELP_STRING([--with-solid@<:@=DIR@:>], [Include Solid support. DIR is the Solid base install directory @<:@default=/usr/local@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval=/usr/local - fi - - if test "$withval" != "no"; then - if test -f $withval/include/cli0cli.h; then - SOLID_INCDIR=$withval/include - if test -d $withval/lib64; then - SOLID_LIBDIR=$withval/lib64 - else - SOLID_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid Solid directory - unable to find cli0cli.h) - fi - SOLID_LFLAGS="-L$SOLID_LIBDIR -lsolcli" - SOLID_INCLUDE="-I$SOLID_INCDIR" - AC_DEFINE(HAVE_SOLID) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(SOLID_LFLAGS) -AC_SUBST(SOLID_INCLUDE) - -AC_MSG_CHECKING(for OpenLink ODBC support) -AC_ARG_WITH(openlink, -AC_HELP_STRING([--with-openlink@<:@=DIR@:>], [Include OpenLink ODBC support. DIR is the base OpenLink ODBC install directory]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - - if test -f /usr/local/virtuoso-ent/odbcsdk/include/isql.h; then - VIRT_INCDIR=/usr/local/virtuoso-ent/odbcsdk/include/ - if test -d /usr/local/virtuoso-ent/odbcsdk/lib64/; then - VIRT_LIBDIR=/usr/local/virtuoso-ent/odbcsdk/lib64/ - else - VIRT_LIBDIR=/usr/local/virtuoso-ent/odbcsdk/lib/ - fi - elif test -f /usr/local/virtuoso-lite/odbcsdk/include/isql.h; then - VIRT_INCDIR=/usr/local/virtuoso-lite/odbcsdk/include/ - if test -d /usr/local/virtuoso-lite/odbcsdk/lib64/; then - VIRT_LIBDIR=/usr/local/virtuoso-lite/odbcsdk/lib64/ - else - VIRT_LIBDIR=/usr/local/virtuoso-lite/odbcsdk/lib/ - fi - elif test -f /usr/local/virtuoso/odbcsdk/include/isql.h; then - VIRT_INCDIR=/usr/local/virtuoso/odbcsdk/include/ - if test -d /usr/local/virtuoso/odbcsdk/lib64/; then - VIRT_LIBDIR=/usr/local/virtuoso/odbcsdk/lib64/ - else - VIRT_LIBDIR=/usr/local/virtuoso/odbcsdk/lib/ - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h) - fi - else - if test -f $withval/odbcsdk/include/isql.h; then - VIRT_INCDIR=$withval/odbcsdk/include/ - if test -d $withval/odbcsdk/lib64/; then - VIRT_LIBDIR=$withval/odbcsdk/lib64/ - else - VIRT_LIBDIR=$withval/odbcsdk/lib/ - fi - elif test -f $withval/include/isql.h; then - VIRT_INCDIR=$withval/include/ - if test -d $withval/lib64/; then - VIRT_LIBDIR=$withval/lib64/ - else - VIRT_LIBDIR=$withval/lib/ - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h under $withval) - fi - fi - VIRT_INCLUDE=-I$VIRT_INCDIR - VIRT_LFLAGS="-L$VIRT_LIBDIR -liodbc" - - AC_DEFINE(HAVE_VIRT) - AC_MSG_RESULT(yes) - have_db=yes - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(VIRT_LFLAGS) -AC_SUBST(VIRT_INCLUDE) - - -AC_MSG_CHECKING(for EasySoft ODBC support) -AC_ARG_WITH(easysoft, -AC_HELP_STRING([--with-easysoft@<:@=DIR@:>], [Include EasySoft ODBC support. DIR is the base EasySoft ODBC install directory]), -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - - if test -f /usr/local/easysoft/oob/client/include/sql.h; then - EASYSOFT_INCDIR=/usr/local/easysoft/oob/client/include/ - if test -d /usr/local/easysoft/oob/client/lib64/; then - EASYSOFT_LFLAGS="-L/usr/local/easysoft/oob/client/lib64/ -L/usr/local/easysoft/lib64" - else - EASYSOFT_LFLAGS="-L/usr/local/easysoft/oob/client/lib/ -L/usr/local/easysoft/lib" - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h) - fi - else - if test -f $withval/easysoft/oob/client/include/sql.h; then - EASYSOFT_INCDIR=$withval/easysoft/oob/client/include/ - if test -d $withval/easysoft/oob/client/lib64/; then - EASYSOFT_LFLAGS="-L$withval/easysoft/oob/client/lib64/ -L$withval/easysoft/lib64" - else - EASYSOFT_LFLAGS="-L$withval/easysoft/oob/client/lib/ -L$withval/easysoft/lib" - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h under $withval) - fi - fi - EASYSOFT_INCLUDE=-I$EASYSOFT_INCDIR - EASYSOFT_LFLAGS="$EASYSOFT_LFLAGS -lesoobclient -lesrpc -lsupport -lextra" - - AC_DEFINE(HAVE_EASYSOFT) - AC_MSG_RESULT(yes) - have_db=yes - - else - AC_MSG_RESULT(no) - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(EASYSOFT_LFLAGS) -AC_SUBST(EASYSOFT_INCLUDE) - - - -AC_MSG_CHECKING(for InterBase support) -AC_ARG_WITH(ibase, -AC_HELP_STRING([--with-ibase@<:@=DIR@:>@], [Include InterBase support. DIR is the InterBase install directory @<:@default=/usr/interbase@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval=/usr/interbase - fi - - if test "$withval" != "no"; then - if test -f $withval/include/ibase.h; then - IBASE_INCDIR=$withval/include - if test -d $withval/lib64; then - IBASE_LIBDIR=$withval/lib64 - else - IBASE_LIBDIR=$withval/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid InterBase directory - unable to find ibase.h) - fi - IBASE_LFLAGS="-L$IBASE_LIBDIR -lgds" - IBASE_INCLUDE=-I$IBASE_INCDIR - AC_DEFINE(HAVE_IBASE) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(IBASE_LFLAGS) -AC_SUBST(IBASE_INCLUDE) - -AC_MSG_CHECKING(for Oracle8 support) -AC_ARG_WITH(oracle8, -AC_HELP_STRING([--with-oracle8@<:@=DIR@:>@], [Include Oracle8 support. DIR is the Oracle home directory @<:@default=$ORACLE_HOME or /oracle8/app/oracle/product/8.0.5@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval="$ORACLE_HOME" - if test "$withval" = ""; then - withval=/oracle8/app/oracle/product/8.0.5 - fi - fi - - if test "$withval" != "no"; then - if test -f $withval/rdbms/demo/oci.h; then - ORACLE8_INCDIR1=$withval/rdbms/demo/ - ORACLE8_INCDIR2=$withval/rdbms/public/: - ORACLE8_INCDIR3=$withval/network/public/ - ORACLE8_INCDIR4=$withval/plsql/public/ - if test -d $withval/lib64; then - ORACLE8_LIBDIR1=$withval/lib64 - else - ORACLE8_LIBDIR1=$withval/lib - fi - if test -d $withval/rdbms/lib64; then - ORACLE8_LIBDIR2=$withval/rdbms/lib64 - else - ORACLE8_LIBDIR2=$withval/rdbms/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid ORACLE directory - unable to find oci.h) - fi - if test -f $withval/lib64/libclntsh.so; then - ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2 $withval/lib64/libclntsh.so -lmm -lepc -lclient -lvsn -lcommon -lgeneric -lcore4 -lnlsrtl3 -lnsl -lm -ldl -lnetv2 -lnttcp -lnetwork -lncr -lsql" - else - ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2 $withval/lib/libclntsh.so -lmm -lepc -lclient -lvsn -lcommon -lgeneric -lcore4 -lnlsrtl3 -lnsl -lm -ldl -lnetv2 -lnttcp -lnetwork -lncr -lsql" - fi - ORACLE8_INCLUDE="-I$ORACLE8_INCDIR1 -I$ORACLE8_INCDIR2 -I$ORACLE8_INCDIR3 -I$ORACLE8_INCDIR4" - AC_DEFINE(HAVE_ORACLE8) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(ORACLE8_LFLAGS) -AC_SUBST(ORACLE8_INCLUDE) - - -AC_MSG_CHECKING(for Oracle7 support) -AC_ARG_WITH(oracle7, -AC_HELP_STRING([--with-oracle7@<:@=DIR@:>@], [Include Oracle 7.3 support. DIR is the Oracle home directory @<:@default=$ORACLE_HOME@:>@]), -[ - if test "$withval" != "no"; then - if test "$have_db" = "yes"; then - AC_MSG_RESULT(error) - AC_MSG_ERROR("You can configure for only one database."); - fi - fi - - if test "$withval" = "yes"; then - withval="$ORACLE_HOME" - fi - - if test "$withval" != "no"; then - if test -f $withval/rdbms/demo/ocidfn.h; then - ORACLE7_INCDIR=$withval/rdbms/demo/ - if test -d $withval/lib64; then - ORACLE7_LIBDIR1=$withval/lib64 - else - ORACLE7_LIBDIR1=$withval/lib - fi - if test -d $withval/rdbms/lib64; then - ORACLE7_LIBDIR2=$withval/rdbms/lib64 - else - ORACLE7_LIBDIR2=$withval/rdbms/lib - fi - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid ORACLE directory - unable to find ocidfn.h) - fi - - ORACLEINST_TOP=$withval - if test -f "$ORACLEINST_TOP/rdbms/lib/sysliblist" - then - ORA_SYSLIB="`cat $ORACLEINST_TOP/rdbms/lib/sysliblist`" - elif test -f "$ORACLEINST_TOP/rdbms/lib64/sysliblist" - then - ORA_SYSLIB="`cat $ORACLEINST_TOP/rdbms/lib64/sysliblist`" - elif test -f "$ORACLEINST_TOP/lib/sysliblist" - then - ORA_SYSLIB="`cat $ORACLEINST_TOP/lib/sysliblist`" - elif test -f "$ORACLEINST_TOP/lib64/sysliblist" - then - ORA_SYSLIB="`cat $ORACLEINST_TOP/lib64/sysliblist`" - else - ORA_SYSLIB="-lm" - fi - - ORACLE7_LFLAGS="-L$ORACLE7_LIBDIR1 -L$ORACLE7_LIBDIR2 \ - -lclient -lsqlnet -lncr -lsqlnet -lclient -lcommon \ - -lgeneric -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric \ - -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3 -lnlsrtl3 \ - $ORA_SYSLIB -lcore3 $ORA_SYSLIB" - ORACLE7_INCLUDE="-I$ORACLE7_INCDIR " - AC_DEFINE(HAVE_ORACLE7) - AC_MSG_RESULT(yes) - have_db=yes - fi -],[ - AC_MSG_RESULT(no) -]) -AC_SUBST(ORACLE7_LFLAGS) -AC_SUBST(ORACLE7_INCLUDE) -]) - - -AC_DEFUN([AM_CONDITIONAL], -[AC_SUBST($1_TRUE) -AC_SUBST($1_FALSE) -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi]) diff --git a/bacula/autoconf/bacula-macros/os.m4 b/bacula/autoconf/bacula-macros/os.m4 index 1af4f903ae..e5a568520a 100644 --- a/bacula/autoconf/bacula-macros/os.m4 +++ b/bacula/autoconf/bacula-macros/os.m4 @@ -1,5 +1,8 @@ dnl Check type of signal routines (posix, 4.2bsd, 4.1bsd or v7) +dln Author: Nicolas Boichat +dnl License: LGPLv3 + AC_DEFUN([SIGNAL_CHECK], [AC_REQUIRE([AC_TYPE_SIGNAL]) AC_MSG_CHECKING(for type of signal functions) diff --git a/bacula/autoconf/configure.in b/bacula/autoconf/configure.in index 8e505b92bc..b4780e2682 100644 --- a/bacula/autoconf/configure.in +++ b/bacula/autoconf/configure.in @@ -3,7 +3,7 @@ dnl dnl Process this file with autoconf to produce a configure script. dnl dnl Author: Kern Sibbald -dnl License: LGPLv2 +dnl License: LGPLv3 dnl dnl require a recent autoconf AC_PREREQ(2.61) diff --git a/bacula/scripts/btraceback.in b/bacula/scripts/btraceback.in index 18f8d72fdb..a066cee935 100755 --- a/bacula/scripts/btraceback.in +++ b/bacula/scripts/btraceback.in @@ -1,7 +1,10 @@ #!/bin/sh -# +# # Script to do a stackdump of a Bacula daemon/program. # +# Author: Kern Sibbald, 2002 +# License: LGPLv3 +# # We attempt to attach to running program # # Arguments to this script are diff --git a/bacula/src/console/conio.c b/bacula/src/console/conio.c index cfa5d66743..bf284da6a3 100755 --- a/bacula/src/console/conio.c +++ b/bacula/src/console/conio.c @@ -51,8 +51,8 @@ #include #include -#if defined(HAVE_SUN_OS) -#if !defined(_TERM_H) +#ifdef HAVE_SUN_OS +#ifndef _TERM_H extern "C" int tgetent(void *, const char *); extern "C" int tgetnum(const char *); extern "C" char *tgetstr (const char*, char**); diff --git a/bacula/src/filed/Makefile.in b/bacula/src/filed/Makefile.in index 69a7f71721..d99af04ed0 100644 --- a/bacula/src/filed/Makefile.in +++ b/bacula/src/filed/Makefile.in @@ -1,8 +1,7 @@ # # Bacula Makefile for the File daemon # -# -# Author: Kern Sibbald +# Author: Kern Sibbal, 2002 # License: LGPLv3 # @MCOMMON@ diff --git a/bacula/src/stored/dircmd.c b/bacula/src/stored/dircmd.c index 0043a61482..0d4a065fe4 100644 --- a/bacula/src/stored/dircmd.c +++ b/bacula/src/stored/dircmd.c @@ -1301,7 +1301,7 @@ static bool changer_cmd(JCR *jcr) } } else { /* error on scanf */ pm_strcpy(jcr->errmsg, dir->msg); - dir->fsend(_("3908 Error scanning autochanger drives/list/slots command: %s\n"), + dir->fsend(_("3909 Error scanning autochanger drives/list/slots command: %s\n"), jcr->errmsg); } dir->signal(BNET_EOD); diff --git a/bacula/technotes b/bacula/technotes deleted file mode 100644 index 2e29d30c6e..0000000000 --- a/bacula/technotes +++ /dev/null @@ -1,3282 +0,0 @@ - Technical notes for current GIT - -General: - -20Jan10 -kes Make missing plugin during backup fatal. -18Jan10 -kes Fix unserial to limit size. Fixes bug submitted by Graham. -11Jan10 -ebl Upgrade DB version from 11 to 12. -08Jan180 -kes Remove requirement for different storages for migrate, something - forgotten, but reminded by Jim Barber. -06Jan10 -ebl Add make_catalog_backup.pl script that uses env variables and - disk file to pass database password for backup -ebl Modify the sql query to get alphabetical order of clients when - selecting the most recent backup for a client. Thanks to - Holger Mueller for this suggestion. -03Jan10 -ebl Fix initgroups definition on aix >= 5 -27Dec09 -mvw Plugins are only build when libtool is used -22Dec09 -ebl Add bacula_config script for support issues -ebl Display a warning message if postgresql client libs <= 8.1 and - batch insert is enabled. -21Dec09 -ebl if batch insert is turned on when we try to open a connection and - thread safe is not enabled, we M_ABORT Bacula -ebl Add dbcheck -t option that test if the current backend is thread-safe -20Dec09 -kes Fix old way of detecting thread safe SQL in ./configure - We should really phase this out. -17Dec09 -ebl LSBize Debian init scripts -10Dec09 -ebl Update the lock manager to detect possible race condition - on the fly. You can activate it with USE_LOCKMGR_PRIORITY in - version.h -08Dec09 -ebl Fix bug #1431 about bad reload command. - Still an object to free in this case. -06Dec09 -kes Fix seg fault in new AllowCompression code -kes Add AllowCompression feature that turns off compression in Storage - resource. Submitted by: Steve Polyack -05Dec09 -ebl Fix #1403 about windows directory attributes not well restored -03Dec09 -ebl Remove SQLite2 scripts -ebl Apply Arno's patch for check_bacula nagios plugin -02Dec09 -ebl Rename bvfs brestore_ table -01Dec09 -kes Remove support for SQLite 2 -kes Fix rpm spec files bug #1420 -kes Fix include of MySQL libs to use shared object. Fixes bug #1427 -kes Fix search for libdbd in DBI option. Fixes bug #1422 -kes Fix RH spec files to use /etc/logwatch instead of /etc/log.d - Fixes bug #1428 -23Nov09 -ebl Apply Lorenzo's MacOSX patches -16Nov09 -ebl Add basic completion for restore mode -14Nov09 -kes Fix bug #1367 buy creating an empty query.sql file. The old query.sql - file is now in exmaples/sample-query.sql, but is unsupported. -13Nov09 -ebl Add .jobs type=B/C/R command to filter jobs listing -11Nov09 -ebl Fix basejob code for Mysql -ebl Fix segfault in basejob code -05Nov09 -ebl Display a message if catalog max_connections setting is too low -04Nov09 -kes Apply Victor Hugo dos Santos' Spanish translation patch -kes Fix double send of attributes introduced in 84aab... -kes Cleanup error handling in SD append to reduce spurious error messages -ebl Check pthread_mutex_lock return code in lockmgr -03Nov09 -kes Fix bug #1409: increase ls field width for file size from 10 to 12. - At some point we will need to make this totally variable. -02Nov09 -ebl Avoid orphan buffers in testls -01Nov09 -kes Fix DCR race condition in SD that could lead to seg faults. -kes Make many regress tests timeout after 30 mins. -30Nov09 -kes Fix Win32 bat so that it runs better. -kes Fix seg fault in bat. -29Nov09 -kes Make builds stop if any errors. -kes Revert James' Win32 make_defs fix -- it builds incorrect def files -27Oct09 -ebl Add readline completion support for bconsole. It gives help - on all commands, and complete job=, pool=, client=, fileset=, ... - It works with --disable-conio and --with-readline=/usr/include/readline -25Oct09 -mvw Add support for running tape mount and unmount commands -23Oct09 -kes When dequeuing messages, don't allow queuing more, but send them - to syslog. Fixes Eric's messages-test regression script. -kes Make queuing messages work on jcr local mutex. Improves concurrent - throughput. -20Oct09 -ebl Add dot functions for bat to list location, mediatype and volstatus -ebl Add bat screen to list Media in a table view (permits to search, filter - and sort media) -ebl Permits update slot(s) and label barcodes slot(s) commands. -19Oct09 -ebl Fix typo in disk-changer listall command -ebl Fix status slots command when slots are mixed -18Oct09 -kes Apply James' fix for some Exchange plugin crashes -17Oct09 -ebl Add ActionOnPurge pool parameter starting from Michael Stapelberg work. -mvw Fix bug #1361 where device was not unmounted. - One big warning however when you now set Requires Mount to yes for a file device - you NEED to define a mount and unmount command or the stored will scream. -16Oct09 -kes Fix switching read device reported by Nicolae Mihalache -mvw Merged xattr overhaul which implements the extattr interface for *BSD -15Oct09 -kes Fix bug #1391 Job status improperly set due to subtle variable overload problem -13Oct09 -ebl Fix #1352 about double free with regexp and big filenames on windows -11Oct09 -kes Apply Graham's idea for recovering from disk full by recursing - when doing fixup_write_error ... -kes Make fix for VirtualFull changing device based on suggestion by - Nicolae Mihalache -08Oct09 -ebl Add listall command to autochanger interface -ebl Tweak autochanger screen in bat with new commands -ebl Add listall and transfer command to disk-changer and mtx-changer -05Oct09 -kes Fix concurrent Job recycle bug #1288 -mvw Fix logic error in xattr code -ebl Apply Andreas's patch to remove ScratchPool ref from bat Media list screen. -03Oct09 -kes Add a MaxVolBytes test that create over 100 Vols -kes Fix bug #1382 newly created disk volumes -> file not found warning -02Oct09 -ebl Cleanup the console timeout code. -29Sep09 -kes Apply console timeout patch from Vitaly Kuznetsov -ebl Remove the inx4 index for SQLite2/3 (FilenameId, PathId) on - File table. - It is useless for common usage, and causes performance issues. - This index fragments over the time and the update cost grows - very quickly. (This index is not present on Mysql schema) -26Sep09 -kes Remove gnome-console -kes Implement store_size32 and store_size64 -25Sep09 -kes Fix Alpha ifdefing -- should fix bug #1359 -kes Add more smtp document -- resolves bug #1376 -22Sep09 -ebl Remove the file_fp_idx index for Postgresql (FilenameId, PathId) on - File table. - It is useless for common usage, and causes performance issues. - This index fragments over the time and the update cost grows - very quickly. (This index is not present on Mysql schema) -17Sep09 -kes Fix seg fault in ignoredir code -15Sep09 -ebl Update restore menu 12 explanation -14Sep09 -ebl Rename .lsdirs/.lsfiles/.update to .bvfs_xxx - to avoid confusion with future commands -11Sep09 -kes Set Volume Poll Interval to 5 mins by default. -kes Create an inline definition of bigendian(). -kes Apply Frank's patch to change / to - in cdash tests. - Hopefully it will fix some submit problems. -10Sep09 -kes Fix seg fault in SD bug #1371 -09Sep09 -ebl Fix problem when the top_level contains a Exclude Dir flag. -ebl Fix #1370 about the implementation of the "Exclude Dir Containing" - option on FD. -ebl Fix #1369 about a segfault when using ExcludeDirContaining option - before the Options{} block in fileset. -08Sep09 -ebl Apply Lorenz fix for minor issues in the osx installer package builder. -ebl Fix #1373 about typo in bscan manpages. Thanks to John Goerzen. -07Sep09 -ebl Make output of new commands .lsdir/.lsfile more usable. -kes Apply Marco's git format-patch patches for bugs #1365 and #1366 -06Sep09 -kes Increment minor version to avoid future conflict. -kes Increase default path/file length to 2048. This should fix - bug #1368. Too bad Mac OS programmers don't respect POSIX - standards. -04Sep09 -kes Implement BlockChecksum in Device to be able to turn off checksum - for performance reasons -ebl btape: Add speed command and test drive speed with Bacula blocks -03Sep09 -ebl Use MaxFileSize device configuration in btape -ebl Make less tweaks in random buffer in btape -ebl Fix #1364 and #1363 about compression buffer error. -01Sep09 -kes Many debug code fixes in regression scripts -kes Update tape tests for hardware certification - Add script for doing btape test command - Make btape return error status if test command fails -kes Eliminate xattr.c compiler warning -31Aug09 -ebl Prohibit copy and assignment in db_list_ctx. -mvw Exclude OSX resource forks from saving using the xattr code - Exclude OSX acl data from saving using the xattr code when - normal acl mode is also enabled. - Make excluding certain xattr in the generic functions somewhat - easier for certain OS specific attributes. -30Aug09 -kes Fix Win32/64 build -kes Fix bug #1355 Director crashes with double free in Accurate SQL query -ebl Prohibit copy and assignment in Bvfs. -28Aug09 -kes Fix bug #1357 Verify jobs fail when job has zero files -26Aug09 -kes Fix possible seg fault in db_get_int_handler in accurate code -kes Release orphanned buffers in accurate code. -25Aug09 -kes Suppress some error messages generated after cancelling a job. - This should reduce some of the unwanted error messages after - a job has been canceled as described in bug #1354. However, - there are many other places. -24Aug09 -kes Apply and commit Lorenz Schori patch for OSX - * Add platforms/osx/{build,dl,products,tools} to .gitignore - * Put configuration files into /Library/Preferences/bacula in order to - simplify access to the for Mac Users without Shell experience and to - prevent loss of configuration after upgrades. - * Complete Info.plist in order to prevent Installer.app on 10.4 from - displaying "My Great App" instead of "Bacula File Daemon x.y.z" in the - welcome screen. - * Add the README file to platforms/osx -kes Confirmation of procedure suggested for upgrading from SQLite2 - to SQLite3. This fixes bug #1351. Procedure is: - echo ".dump" | sqlite bacula.db >bacula.sql - mv bacula.db bacula.db.old - sed -i -e 's%INTEGER UNSIGNED AUTOINCREMENT,%INTEGER,%g' bacula.sql - (note: the above only works on Linux systems. On some systems - the -i option is not available. Adapt as necessary) - sqlite3 bacula.db - .quit - sqlite3 bacula.db -kes Add commas in num files for estimate command -19Aug09 -kes Fix bat crash due to alignment diff in bat and core code - In bsock.h, exact reason unknown. -kes Ensure timestamp put in SQL log -15Aug09 -kes Modify acquire alogrithm so jobs do not block during despooling - This can give significantly more parallelism -ebl Fix couple of segfault with new ACL/XATTR code -kes Apply Marco's branch with jcr structure cleanup -kes Apply Marco's branch with new acl/xattr code -13Aug09 -ebl update lock manager to display file:line all the time -kes Make SD lock tracing work again. Has not worked for some time. -ebl bat: Add a re-run button on job info page, that allows to - run the selected job with the same properties (level, pool, - etc...) -ebl bat: tweak the run job window to make it a bit more sexy -12Aug09 -kes Make new big-virtual-changer test. Test concurrency. -ebl Add .lsfiles, .lsdirs, .update command to interface user with bvfs object -10Aug09 -kes Pull Philipp Storz' bacula.spec changes for OpenSuSE build service -kes Implement MaximumConcurrentJobs for SD devices. - This should significantly help spread jobs among different drives. -09Aug09 -kes Fix bug #1344 show pool displayed wrong variable for maxvolbytes -kes Fix compiler warnings in acl and xattr code -kes Fix screw up with setting JobLevel and JobType -kes Change version -kes Apply Marco's acl/xattr rework code -08Aug09 -ebl bat: display a Warning icon when having Errors>0 and Status=T -07Aug09 -ebl bvfs: Add example to list files versions -ebl bvfs: Fix directory listing -ebl bvfs: Add limit/offset implementation to save resources on director -ebl bvfs: Create cache tables on the fly when using Bvfs object (for testing) -06Aug09 -ebl Document FT_DELETED FileIndex=0 special value in database Schema -ebl Add a new Bvfs class that implements brestore instant navigation - cache inside Bacula. Works for Mysql, Postgresql and Sqlite3 -kes bat: fix compiler warning for unreferenced argument -04Aug09 -ebl bat: Go to the media info panel when double-click on job page or media list -ebl bat: cleanup job and mediainfo panel -03Aug09 -ebl Add new media info panel to bat -02Aug09 -kes Remove old sqlite3 build from bacula.spec -kes Move bat from bacula.spec to bacula-bat.spec -kes Remove installing gconsole start script from Makefile.in -01Aug09 -ebl Add Job Info panel to bat -30Jul09 -ebl Add restore from multiple storage functionality with - a part of Graham's patch. -kes Add 'show disabled' command that lists the disabled jobs. -kes Modify enable/disable commands to show only appropriate Jobs. -29Jul09 -kes Add ACL check for client in estimate command -ebl Change time_t by utime_t in accurate function -kes Start reworking 3.0.2 bacula.spec file - - Add SuSE build codes - - Add depkgs-qt so bat can build on any system - - Reorganize defines -26Jul09 -kes Tweak RedHat spec files -24Jul09 -kes Add format to a fprintf -kes Attempt to fix SQLite seg fault problem -23Jul09 -kes Fix int/int32_t problem in accurate_add_file - reported by "Eli Shemer" -kes Remove Qt 4.4 code so it compiles on 4.3 (setHeaderHidden). -22Jul09 -kes Apply idea of part of Graham's tidy-bsr-source.patch, but modified -kes Fix bug #1337 Console tries to build with SSL when libssl-dev not installed. -21Jul09 -kes Add setJobStatus method to JCR class. -kes Modify setJobStatus so cancel has same priority as fatal errors -20Jul09 -kes Fix Solaris compiler warning in signal.c - -Release version 3.0.2: -18Jul09 -kes Fix bat command line input bug -17Jul09 -ebl Fix sql query for sqlite on suse10 on copy job -16Jul09 -ebl tweak some bat screens -ebl Replace info_msg by send_msg in status slots command. -ebl Fix #1323 about a problem when mounting a requested volume - during a restore. -15Jul09 -kes Make CONF::init header and .c file agree about types. - Reported by "Eli Shemer" -kes Fix Win64 build -kes Add more example SD Device configurations. -ebl Force the client_encoding to SQL_ASCII when database is already - using this mode. -ebl Fix #1335 about postgresql error message during copy session -ebl Cleanup old job records when starting the director - (Created/Running -> Failed) -14Jul09 -kes Tweak debug print in accurate -kes Apply patch in bug #1315 by McMichaeli that fixes scripts/logwatch -kes Add more output when spooling and no space left -ebl Fix postgresql driver bug that displayed rows from time to time. -kes More cleanup of bootstrap -ebl Implement the project 'restore' menu: enter a JobId, automatically - select dependents -ebl Should fix #1323 about verify accurate jobs and deleted files. -13Jul09 -kes Send bootstrap directly from DIR to SD -kes Create build scripts for Win64 somewhat equivalent to the Win32 ones. -10Jul09 -ebl Print correct JobId in bls, should fix #1331 -kes Apply python detect patch from Bastian Friedrich -09Jul09 -kes Add --with-hostname to ./configure -mvw Changed ACL_OTHER into ACL_OTHER_OBJ as IRIX doesn't seem to have - ACL_OTHER. Fixes bug #1333 -04Jul09 -mvw Change checking for acl and xattr support from first file to - job level. -mvw Call acl and xattr function only when requested for fileset - and filed has support for acl or xattr -mvw Fix typo introduces by fix for bug #1305 -03Jul09 -ebl Should fix the first part #1323 about the restore option - 'List Jobs where a given File is saved' which display deleted files -02Jul09 -kes Another fix for bug #1311 to get the correct last_full_time -ebl Make estimate command accurate compatible. Should fix #1318 -ebl Add estimate accurate=yes/no -ebl Change the code to check jcr->accurate and not jcr->job->accurate -01Jul09 -kes Fix bug #1317 Allow duplicate jobs = no does not work -kes Eliminate double job report when do_xxx_init() returns failure -kes Add debug code to MaxDiffInterval -29Jun09 -kes Change bacula-dir.conf default job name from Client1 to BackupClient1. -28Jun09 -mvw Fix missing case for NetBSD xattr restores. -27Jun09 -kes Fix Win32 build -- turn off lockmgr and remove lockmgr defs -25Jun09 -kes Modify xattr.c and acl.c not to fail the job on errors. This should - fix bug #1305. -23Jun09 -mvw Fix 2 rather big bugs in the xattr and acl code and fix a small - memory leak on a particular code path for Linux xattr/acl handling. -ebl Update FileSetId when initializing job. -ebl Fix compilation problem with message.c -ebl Add '*' when volume is online when displaying volume list in restore. Should - complete project 31. -21Jun09 -kes Re-fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded -18Jun09 -kes Add all Job Types to job_type_to_str() for bat. -kes Fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded -17Jun09 -kes Fix bug #1305 make errors obtaining acl during backup non-fatal -kes Fix bug #1309 inappropriate error message during btape fill command -kes Fix bug #1307 AllowHigherDuplicates=no prevents automatic job escalation -12Jun09 -kes Remove non-portable code referencing pthread_t fixes bug #1308. -kes Create patch that may fix bug #1298 and bug #1304, which causes - an SD crash after canceling a job. -08Jun09 -kes Attempt to get bat conf file installation to work with DESTDIR -05uun09 -kes Improve error messages when a migration sql query is used and correct - the problem identified in bug #1303 with starting Job names - containing spaces. -ebl Fix #1306 about a problem when building the static bconsole -26May09 -ebl Apply Steve Polyack patch to add DirSourceAddress and FDSourceAddress - directives. That permits to choose the outgoing interface. -25May09 -mvw Allow acl and xattr to be explicitly enabled and fail the configure - if we are asked to enable acl or xattr support and the OS doesn't support - acls or xattrs. -23May09 -kes Create Client record in database at startup -- makes bat work better. -kes Turn off useless End of file message during restore. -kes When doing a tree selection restore, look at the PurgedFiles column - in the first JobId, and if non-zero, the Job was purged, so do - not do selection. -kes Yet another try to get qmake to install bat correctly. It looks - like the trick is to have an executable bat file when qmake is - run during ./configure. -21May09 -kes Add Catalog = all to the default Messages resource. -19May09 -ebl Fix #1029 about IPV6/IPV4 address resolution order with help - of David Steinn Geirsson. -kes During jcr destruction hold jcr_chain lock only for minimum - time necessary. This should fix the SD deadlock in bug #1287. -18May09 -kes Simplify messages printed by SD when reserve fails. This - should fix bug #1285. -16May09 -kes Create archivedir. -15May09 -kes Yet another attempt to get qmake to generate valid Makefiles - that installs the binaries. It seems to require the binary to - exist at qmake time :-( -14May09 -kes Apply fix to sql_cmds.c suggested by - Ulrich Leodolter - which prevents restore by file selection from using - Copy jobs. -kes Add new nagios_plugin_check_bacula.tgz from - Masopust, Christian -kes Reduce bconsole help to fit in 80 columns -kes Add bconsole @help command -kes Fix Show FileSet command to handle spaces -kes Allow specification of base daemon resource name. - --with-basename= -kes Fix bat to automatically use installed bat.conf -kes bat was not installed even if configured. Fix by working - around apparent bug in qmake. -13May09 -ebl Turn on lockmanager when using DEVELOPER flag -07May09 -kes Fix typo in Solaris acl code. -kes Remove junk from configure.in -06May09 -kes Update projects file. -04May09 -kes Add --with-bsrdir and --with-logdir for placement of Bacula bsr - files and Bacula log files. - -Release Version 3.0.1: -29Apr09 -kes Fix bug #1282 Setting job.Priority in python crashes director by - checking if string addr is NULL. Not tested. -kes Fix bug #1281 allow all on restore command line to restore - pruned JobIds without prompting. -28Apr09 -dirk Correct bat Select dialog. Fixes bug #1276. -kes Check for job_canceled() in fd_plugin code. -kes Update Win32 table creation to have new DB version 11 format -kes Remove illegal Options in Exclude of default Win32/64 bacula-dir.conf -27Apr09 -ebl Fix bug #1274 where a migration job can be canceled like the - original job by the MaxRunTime directive. -mvw Added fix for bug #1275 where acl or xattr data is saved for - virtual filenames generated by filed plugins. -26Apr09 -ebl Remove 'Reposition' message when restoring -kes Fix platform scripts not to clean configured files during - 'make clean' use 'make distclean' to clean everything. Fixes - bug #1272. -kes Update projects file -21Apr09 -ebl Tweak version string to display versionid field at the end - and keep fields order. -16Apr09 -kes Add additional mysql connection debug code submitted by: - Chandranshu -14Apr09 -kes Fix bug #1246 Sometimes access denied with VSS enabled. UCS - conversion cache was not properly flushed at the end of a Job. -kes Fix bug #1268 Full Max Run Time cancels jobs (when Max Run Time = 0). -11Apr09 -kes Modify insertion of read Volumes in SD to be done before the - drive reservation. This ensures that a Volume to be read will not - be reserved for writing. Significant enhancement. - -Release Version 3.0.0 -06Apr09 -kes Change default plugins dir to /usr/lib. -05Apr09 -kes Fix Win32 make clean to clean correctly -kes Cleanup Win installer dialog messages a bit ... -04Apr09 -kes Separate object/binaries in Win32 and Win64 builds. More to be done. -kes Add bconsole to Win64 installer. -03Apr09 -kes Implement more automatic build of Win64 client. Note, there are still - lots of warning messages, but it seems to build a correct binary. -02Apr09 -kes Enhance Job messages from SD when the FD->SD protocol is incorrect - and the SD hangs up. Previously this looked like a comm error. -mvw Fixed problem in xattr and acl code trying to send empty acl or xattr - streams. -mvw Fix for bug #1261 where we send out a null stream when a file only an - acl and xattr support is also turned on. -mvw Added some warnings to configure when using libtool and static in - one configure. -30Mar09 -ebl Fix small memory leak in fileregexp bsr code -29Mar09 -kes Correct bacula32.def entry point as specified by James. -kes Add code to FD plugin driver to make a copy of the plugin - filename to be saved to avoid save_file from zaping it. -28Mar09 -kes Directly mark all files saved by plugin as being seen for Accurate. -kes Add checks on the plugin version and the plugin license. Currently - only implemented for FD plugins. -kes Add installation of /usr/share/doc/bacula -kes Modify plugin checkFile to return bRC_Seen to cause file - to remain. Previously was true/false. -27Mar09 -kes Implement installation of bat help files - The help files are installed in the htmldoc dir and can be set - by --htmldoc=xxx on the ./configure. Default is: - /usr/share/doc/bacula/html -kes Update projects file -kes Apply patch from Pasi Karkkainen that adds - Previous Job name to migrate job report. -26Mar09 -kes Apply bacula-autoconf-db-m4.patch from Kjetil Torgrim Homme - that doesn't *require* the static libraries - for the SQL database engine. Fixes a build problem if the static - libraries are not loaded. -25Mar09 -ebl Update Makefiles to compile win64 using 'make WIN64=yes' -kes Disable plugin options in ua_run.c -kes Added the following to provide solutions to the plugin/Accurate - problem -- bug #1236 Cannot restore incremental backups with - the Exchange plugin. - - New Bacula read-only variable bVarAccurate -- returns accurate flag - - New Bacula write-only variable bVarFileSeen -- marks a file as seen - - New plugin entry point -- checkFile that is called at the end - of an Accurate job and allows the plugin to mark a file as seen. -24Mar09 -kes Temporarly turn off comm timers because it causes bat to seg fault. - Must research making SIGUSR2 work with bat and Qt. -24Mar09 -ebl Use MTIMEONLY fileset option in accurate check -23Mar09 -ebl Tweak code to compile win64 version with mingw -21Mar09 -Kes Attempt to correct timing problems with starting bat and obtaining - lists. Maintain in_command counter to know when a list is coming. -20Mar09 -kes Convert seconds.seq separator into seconds_seq so that Bacula - editing of the Job name from the full Job name works. This fixes - bug #1255 'variable %n changed'. -kes Second half of proposed fix for bug #1227 that does not - mark virtual volumes for unloading. -kes Proposed fix for bug #1227 Job and labeling new tape. - -Beta release 2.5.42-b2 -16Mar09 -kes Increase timeout for unmounting DVD as suggested by reporter - of bug #1250. -15Mar09 -jh Fix by James Harper to print error code when attempting to - restore two databases (only one is permitted). This responds - to bug #1234. -kes Apply the nodump patch supplied by Frank Kardel that fixes - the NODUMP flag problem. This fixes bug #1221 -kes Add more output if a user attempts to clone a job but does not - uniquely specify the Job name. This responds to bug #1248 which - was not a bug, but improves user feedback. -14Mar09 -kes Fix problems with bug #1247 and 64 bit time_t OSes by not - editing (printf) time_t values. -12Mar09 -kes Install bacula (start/stop script) in sbindir in addition to - scripts dir. -ebl Tweak configure to remove bash specific code -ebl Remove TCABD reference -11Mar09 -ebl Free lock manager in when btape exits -09Mar09 -kes Apply patch from bug #1224, which fixes waiting on max Storage - jobs during migration. Submitted by Alexandre Simon. -kes On 03Mar08 (a year ago) applied patch from bug #1059 (kardel) - to implement the NODUMP flag on FreeBSD. -07Mar09 -kes When deleting a Volume by MediaId require the Id to be - prefixed by a * to avoid confusing with an integer volume - name. -kes Prevent bls from printing binary data when a plugin stream - encountered. This fixes bug #1238 -kes Prepare to add JS_Warnings termination status. -kes Attempt to resolve bwx-console Win32 crash. Not likely to - work. -06Mar09 -kes Move src/win32/dll to src/win32/lib, which is much more logical. -kes Fix the Win32 build. -kes Fix broken casting in src/compat/print.cpp. -kes Eliminate jcr Errors and always use jcr JobErrors. This should - ensure that SD and FD errors are correctly reported. Also add - JobErrors to SD returned values. This should fix bug #1242. -28Feb09 -mvw Implemented xattr support for Solaris 9 and above and extensible - attributes for OpenSolaris. -mvw Added some limits to the xattr code so that we don't blow up the - filed on big xattrs. -mvw Fixed some comments which changed due to xattrs being implemented. -mvw Changed xattr support checking in configure to test first for - generic solutions and when not found for specific OS functions. -25Feb09 -mvw Don't try to copy empty jobs (e.g. with jobbytes == 0) - which gives Unable to get Job Volume Parameters errors. - Which leads to copying the same job over and over again. -21Feb09 -kes Ensure that src/qt-console/.libs is cleaned properly -20Feb09 -mvw Use acl_data_len instead of seperate var for length - of acl stream. -ebl Add database update scripts to updatedb dir -19Feb09 -ebl Fix #1226 about bconsole segfault when using readline() -18Feb09 -kes Apply Eric's next-beta.patch that enables 64 bit FileIds and - adds new columns to the catalog. -kes Ensure that libtool directory always cleaned + reduce - unnecessary output during make clean. -15Feb09 -ebl Check postgresql database encoding that should be SQL_ASCII - and print a warning if it's something else. -08Feb09 -kes Free name item in guid_to_name.c when already in list. -kes Add more info to error message in ua_tree.c -05Feb09 -kes Make re-read last block fatal if block numbers differ by - more than one. -30Jan09 -ebl Try to disable _FORTIFY_SOURCE by default -29Jan09 -ebl Tweak compat.h for new mingw -28Jan09 -ebl Add new ScratchPool directive to Pool. Thanks to Graham -ebl Turn on db_get_file_list() single SQL because the failure - was due to a full FS. And the accurate test fails with the - other code. -27Jan09 -ebl Fix a bug that doesn't update RecyclePool all the time - during the first startup. -25Jan09 -kes Turn off db_get_file_list() giant SQL because if fails on - my production machine. -kes Fix bat.pro.in so that bat is properly installed rather - than just copied. -24Jan09 -kes Modify search for .conf file so that if one is given on - the command line, it will be used, otherwise it will use - the SYSCONF directory. It will no longer look in the current - directory unless explicitly requested on the command line. - This fixes bug #1189. -kes Fail a job that references a plugin if no Plugin Directory is - defined. -22Jan09 -kes Fix bug #1211 crash during reload with bad dird.conf file. -21Jan09 -ebl Add detection of intptr_t and uintptr_t to configure process -20Jan09 -ebl Change some cast to use intptr_t instead of long -18Jan09 -kes Apply acl_solaris_update.patch submitted by Marco (thanks). -kes Remove configure check for resolv.h -- it is apparently not needed - and causes build warnings on FreeBSD. -kes Ensure that the installer and newinstaller Makefiles are called - during a make clean. -12Jan09 -kes Apply Eric's fix for suppressing extended attributes error messages - when dealing with deleted files. -11Jan09 -kes Add src/win32/newinstaller -- single file installer -kes Attempt to explicitly call gmake when needed, or if not found - skip the calls. This should fix the FreeBSD regression/build. -10Jan09 -kes Fix bat.pro.in so that bat will install. -09Jan09 -kes Add more debug output to VSS init. -kes Attempt to correct win32 debug in berrno. -09Jan09 -kes Fix bug reported by Dan where make fails in clean of src/win32. -07Jan09 -kes Fix bug #1212, SD is unable to recycle purged volumes. fstat() - was broken. -06Jan09 -ebl Despool attributes directly from the director if attribute - spool file is present -Beta Release 2.5.28-b1 -05Jan09 -kes Fix bat install broken by $DESTDIR change. -02Jan09 -kes Fix annoying compiler warnings in console/conio.c -kes Fix win32 build (depended whether or not ./configure was run). -28Dec08 -kes Apply fix suggested by Bruno Friedmann to configure.in to - find python2.5 -26Dec08 -kes Turn on Eric's match_bsr tape block checking code. -kes Correct values used for tape block numbers in record.c. -23Dec08 -ebl Fix a problem with PoolUncopiedJobs option which was broken - by the new JT_JOB_COPY type. -kes Fix bug #1206 -- Error: sql_update.c:194, which was probably - caused by the user modifying the Bacula DB schema. -kes Remove rogue line of C code. -kes Fix bug #1208 - -Beta Release 2.5.16-b1 -20Dec08 -ebl Work on copy jobs - - Add 'list copies' command - - Add JT_JOB_COPY type for job copies - - Don't allow copy jobs in automatic restore - - Promote next copy job as backup when original job is deleted -kes Closed bug #1207 -- 2.4.4-b1 strange volume/device handling -kes Closed bug #1204 -- Undescriptive help options -kes Closed bug #1202 -- Revise documentation -kes Closed bug #1178 -- Bat 2.4.3 tries to double-purge volumes - unable to reproduce. -kes Closed bug #1166. Fixed by Eric -- Problem canceling job if - client looses connection while being backed up. -kes Fixed bug #1200 -- inconsistent auto purge documention -kes Fix documentation for Recyling ambiguity. Fixes bug #1200. -kes Remove old mmap code from compat.h/cpp -kes Update ChangeLog -kes Correct typo in Win32 Makefile editing -kes Correct typos in debug output. -kes Improved error detection in creating bsrs. -kes Add debug code to Win32 restore -19Dec08 -kes Fix Win32 build. -ebl Cleanup director VolParam struct -18Dec08 -ebl Replace File:Block in BSR by Address to fix #1190 -16Dec08 -kes Correct missing return in Darwin code. -15Dec08 -ebl Copy joblog after a Copy job -14Dec08 -kes Tweak block.c read to more closely simulate write for computing - block addresses and turn on disk block testing. -kes Implement a crude 'list joblog' mostly for debugging. -13Dec08 -kes Fix Migration bug #1206 sql error with NULL FileSetId when no jobs - to migrate. -kes Fix Migration JobLog bug #1171. Get the JobIds correct. -12Dec08 -ebl Fix segfault in bscan when using debug mode -11Dec08 -kes Fix configure to do minimum Win32 configure so that make clean - works. -kes Tweak modify FD header to use %ld instead of %d. -kes Remove hand scanning of FD header in SD and use Bacula's - sscanf, which is now OS independent. -kes Define new object (file/dir) begin and end Volume label records - in SD. -kes Use new method of defining XATTR #defines to avoid need for having - them in config.h.in -10Dec08 -ebl Rename all STREAM_ACL_..._T into STREAM_ACL_.. -09Dec08 -ebl Add a new lock manager that can detect deadlock situation - This new option is activated with a --enable-lockmgr configure - option. -ebl Add new Director->MaxConsoleConnections directive -03Dec08 -ebl Fix bacula-sd hanging after tape gets full + unload -02Dec08 -ebl Remove extra db_lock() in get_prune_list_for_volume() -ebl Apply 2.4.3-prune-deadlock.patch that fixes a problem when - using Catalog as message backend. -01Dec08 -kes Apply Marco's Darwin xattr patches. -28Nov08 -kes Fix Win32 build. -26Nov08 -kes Apply Marco's Extended attribute support patch. -kes Update projects file -25Nov08 -kes More changes to ensure that during thread switches the jcr - is removed from the TSD. -kes Ensure that consoles attach jcr to thread, and that only the - thread attached is removed from the TSD. -24Nov08 -kes Move definition of FileId_t to bc_types and define it once in the jcr. -22Nov08 -kes Remove all time_t from arguments in favor of utime_t, which is - machine independent. -kes Add more debug to match_bsr.c and use %u for unsigned debug editing. -20Nov08 -ebl Apply patch for bug #1182 about Recycle flag - that is not updated after a pool change. -kes Since the user has been warned, allow console purge command - to purge volumes that are in use. This is a fix for bug - #1191 before it was submitted. -kes Fix Win32 build to add new sd_plugins.c -ebl Apply patch from bug #1175 that reset the Slot and the Inchanger - flag in db_make_inchanger_unique(). -ebl Remove a Emsg() after recieving a Fatal signal that can lock - the catalog. -19Nov08 -kes Apply patch from bug #1187. It prints an error message if the - Maximum Block Size in the SD is too big. -kes Increase Maximum Block Size to 2,000,000 bytes. -kes Use doubly linked bsr list so that consumed bsrs may be - removed. Removing not yet implemented. -18Nov08 -kes Implement a fix that very likely fixes the undesired volume - purge reported by Graham Keeling. -kes Implement bsr block level checking for disk files. However, - it does not work correctly in accurate tests, and all the - migration and copy tests, so it is turned off. -ebl Make SD plugins work. -14Nov08 -ebl Apply Riccardo's patch to compile bacula+mysql on mandriva -13Nov08 -ebl Add more variables accessible through the director plugin - interface. -12Nov08 -ebl Do work on plugins - - fix compilation of the director plugins - - add plugin list to status dir output - - add director plugin dump after a fatal signal -ebl Apply Riccardo's patch that fix some win32 compilation errors - and a bug with bat version browser. -11Nov08 -ebl Add Plugin debug after a fatal signal. -ebl Add db and rwlock debug after a fatal signal. -10Nov08 -ebl Fix maxwaittime to fit documentation, this time is now counted - from the job start and group all wait periods. -ebl Add tips for postgresql to improve performance when having - multiple batch insert at the same time. -09Nov08 -ebl Remove extra debug for db lock. -07Nov08 -kes Apply Riccardo's second patch that cleans up the #include - file order + a few Win32 particularities to make bat work - on Win32. -ebl Add allow_transactions flag to mysql db backend. -kes Apply win32-fixes patch from Riccardo that makes the Win32 - bat more stable and faster (but still slow). -06Nov08 -kes Fix bug with job name duplication if more than 60 jobs created - during a minute. -kes Correct some bugs of cleanup in SD if the FD connection fails. -ebl Add code to get more information after a fatal signal. -05Nov08 -ebl Apply Bastian's patch that add spooldata=yes|no option - to run command. -04Nov08 -ebl Fix bash shell to sh shell in database creation script -02Nov08 -kes Fix orphaned jobs (possible deadlock) while pruning. -kes Use jcr stored in bsock rather than searching in getmsg.c. - This results in about a 5% speed improvement with four - concurrent jobs. -kes Implement win32_chmod that uses wide characters, if possible, - to get and set the file attributes. -29Oct08 -kes Apply pane freezing during updates patch from Riccardo Ghetta. -kes Rework next_vol and autoprune a bit due to failure in - recycle-test. prune_volumes() now returns no status, - but should prune at least one Volume, if possible. -kes Modify check_if_volume_valid_or_recyclable to reject a - volume with Recycle set off. -kes Modify prune_volumes() to continue if volume Recycle is off - or if the volume has expired. Add more debug. -28Oct08 -kes Fix bug #1046 VolumeToCatalog incorrectly reports mounted - filesystems as missing on the Volume. -kes Rewrite the set_jcr_job_status() code to include job status - priorities so that more important status changes occur but - lower priority status changes will not overwrite something - more serious. This could possibly cause reporting incorrect status - reporting in some cases. More testing is needed to ensure - I have the right priorities. This vastly simplifies the previous - contorted logic. - Verify Diff status should now be correctly reported, whereas it - was previously lost. -kes Reduce some debug output. -kes Apply Joao's patch to SQLite tables to make chars work. -27Oct08 -ebl Fix #1175 About update slots that don't reset InChanger flag when - slot is empty. -ebl Fix #1173 where prune_volume() returns a volume from the scratch. -25Oct08 -kes Remove jobq.c constraint that read and write SD must be - different. This may lead to more deadlocks in the SD, - but they should be resolved there. -kes Ensure that job report is always printed even if job is failed - in the director. -kes Don't print job report twice for failed VBackup jobs. -24Oct08 -kes Fix editing of retention time difference to use 64 bit - int instead of 64 bit unsigned. This should permit very - long retention periods. -kes Implement code to prohibit a write job from appending to a - Volume that will be used for a read operation. This is - new code and could possibly cause some conflicts. -23Oct08 -kes Integrate James Harper's Exchange Win32 plugin patch. -kes Apply patch from Marco van Wieringen that implements the new - Solaris libsec interface for ACLs so that Bacula can save and - restore both the new ACLs and old ACLs. -kes Marco's patch also corrects the file dependency generation code - so that it works properly both with shared libraries and static - libraries. -kes Marco's patch also includes a small cleanup of the cats Makefile - to remove some references to non-existent files. -22Oct08 -kes Modify win32 Makefiles to use full paths in most cases. - In particular add MAINDIR environment variable that points - to the main Bacula source directory. -21Oct08 -kes Add read volume list code to SD -- not yet used. -kes Add James' binutils patch -kes Split volume management code out of src/stored/reserve.c into - a new file vol_mgr.c -kes Modify configure to do an automatic make clean. This ensures - that any changes to ./configure options are handled correctly. - -Beta version 2.5.16 release: -20Oct08 -ebl Rename JobStat table to JobHistory -kes Ensure that only normally terminated jobs are migrated. -19Oct08 -kes Add Makefile dependency when using LIBTOOL_LINK so that any - change in ./configure options will be accounted for. -18Oct08 -kes Fix typo in the ACL patch that I overlooked. -kes Apply Marco's libtool include patch. -17Oct08 -kes Apply Bastian Friedrich's ACL patch to eliminate ACL - errors during restore. -kes Minor cleanup of create_restore_volume_list() code. -kes Fix typo in console Makefile.in -16Oct08 -ebl Fix #1110 about RunScript that can't execute a script with - Unicode characters in the path. -15Oct08 -kes Apply tray-monitor patch from Bastian Friedrich to make it - work with the new FD. -14Oct08 -kes Apply cleanup patch from Marco -kes Apply patch from Marco van Wieringen - that implements libtool to create shared objects out of - the Bacula libraries. -kes Fix tray-monitor so it will speak to new FD. -ebl Fix bug with ANSI label when volume name length < 6 -ebl Fix segfault in debug level > 50 with btape. -ebl Remove warning message in btape when command is empty. -kes Fix Win32 build to pull in new BACULA define. -13Oct08 -kes Change IncludeDir to Exclude Dir Containing. -kes Implement code to prohibit ExcludeDirContaining in an - Exclude section (same for Plugin and Options). A bit - of a kludge with RES_ITEM2 ... -ebl Add field to command list to restrict Runscript console - command. -ebl Use a separate JCR when running Console command with Runscript. -ebl Permit to mark version as Beta in some outputs -11Oct08 -kes Add plugin types in jcr.h to reduce need to cast. -kes Do better checking of plugin return values. -kes Free plugin context after calling pluginFree() as - requested by James. -kes Allow plugin to call JobMessage with NULL context. -kes Do not add plugin to global list if loadPlugin returns error. -kes Rework plugin.h a bit to reduce dependence on Bacula. -10Oct08 -kes Move generation of bsr file for Virtual Backup to run section - so that it is generated just before actually running. - Suggested by Graham Keeling. -09Oct08 -kes Add malloc and free Bacula entry points for plugins. Increment - FD plugin interface version. Create a Bacula plugin context - structure to keep track of whether or not the plugin is disabled. -kes Apply FileIndex fix for plugin name stream suggested by James. -kes List plugins in FD status report when debug > 0. -08Oct08 -ebl Add a new VerId variable that is printed in version command. -kes Fix migration SQL not to migrate a job that has not terminated. - This is a partial fix to bug #1164. -kes Sort JobIds returned from db_accurate_get_jobids() to fix Virtual - backup start time bug reported by Graham Keeling. -08Oct08 -ebl Fix possible bug in cancel_job() with job that are not - yet created. -07Oct08 -kes Fix bat build for Win32. -06Oct08 -kes Copy plugin link field into ffpkt. -05Oct08 -kes Integrate patch from Kjetil Torgrim Homme - It provides FileRegex in bsr files and code to collect regex - from the user during restore, an Allow Mixed Priorities feature, - and documentation for the above. -ebl Remove db Berkeley from configure process -kes Do dirty check on hostname (Linux only) and if not resolvable - use localhost as default. -kes Increase vtape max block to 20GB. -04Oct08 -kes Refactor restore code to create a close_previous_stream(). This - This may destabilize the source. -kes Implement planned startRestoreFile() plugin call. -ebl Remove missing Loaded information from status slots storage command. -ebl Fix Console command problem that cancels the job -kes Add more plugin restore debug code. -03Oct08 -kes Fix plugin_bwrite - plugin-blseek mixup pointed out by James. -kes Rewrite plugin restore interface a bit to correspond to how Bacula - creates and writes to the restored file. -kes Add some DebugMessage() calls to the bpipe-fd.c program. -30Sep08 -kes Apply Marco van Wieringen's set of patches, cleans up Migration/Copy - Implement 'Pool Uncopied Jobs', allow Solaris Compiler to build - Bat; allow add and delete in place of mark and unmark. -kes Another attempt to fix the endRestoreFile plugin bug noted below. -29Sep08 -kes Apply dbi driver patch from Joao. -kes Correct a bug in passing the context to the endRestoreFile() plugin command. - Bastien Friedrich reported the bug. -kes Create plugin instance only when FD job starts. -kes Add new FD plugin event: bEventCancelCommand when - a cancel command is issued to the FD. -28Sep08 -kes Add cmd_plugin flag to jcr so we can globally know if a - command plugin is running. -kes If command plugin running, do not attempt (for the moment) - to get Win32 extended attributes. -kes Ensure that proper Win32 flags are set in bfile packet - if plugin_bopen() works on Win32. -kes Remove generated src/plugins/fd/Makefile -27Sep08 -kes Implement build and install of bpipe-fd.so plugin. -kes Rework the interface that passes packets to the plugin - so that the packet is started and ended by the packet size. - This allows the driver to do a sanity check. -26Sep08 -kes Rework the pluginIO Bacula internal code to enable - proper handling of Win32 error codes from GetLastError. -kes Apply Joao's patch to regress startover_libdbi. -25Sep08 -ebl Add -B option to dbcheck to get catalog information -kes Fix Win32 build to include new library function. -kes Remove some old reader/writer code. -kes Implement ./configure --with-plugindir=xxx -ebl Fix the mysql bug in the new accurate code -kes Improve plugin debug. Create plugin test. -kes Set main thread specific data to INVALID because it - has no jcr. This allows debug output to work correctly. -kes Add src/plugins/fd/Makefile to ./configure process. -kes Make first cut attempt to correct SQL that computes the current - Pool usage. This is to fix bug #1159. -kes Do a bunch of plugin cleanups for Win32 and more careful checking - of PluginDirectory and whether or not a plugin was found. -24Sep08 -kes This code should fix the race condition that leads to a Director - crash at job end time when the job list is updated. This was reported - in bug #1162. -kes Add more plugin documentation and fix include of config.h for - Win32 build (I hope). -22Sep08 -ebl Revert to htable instead of rblist -ebl Cleanup accurate code (remove tcdbm parts) and use red/black - tree instead of htable. -ebl Use a dedicate DB link to compute and send the accurate list - file to the client. -21Sep08 -kes Fix compile errors in filed/fd_plugin.c. -20Sep08 -kes Remove all double quotes from SQLite creating script and - replace by single quotes as suggested by John Huttley. -18Sep08 -kes Apply dbcheck patch from Yuri Timofeev . - It significantly improves the performance of dbcheck for - MySQL. -kes Fix bad debug code call in src/filed/accurate.c -17Sep08 -kes Change two Jmsgs in accurate to Dmsg to reduce unnecessary - output. Perhaps we really need to implement M_SAVED. -16Sep08 -kes Fix bug #1156 FD crash during processing of Accurate data. -kes Tweaks to htable code to improved debugging and make names - a bit more meaningful. -15Sep08 -ebl Remove time_t from update_stats() -14Sep08 -kes Modify the license of the example plugin program to allow - it to be used by anyone for making a Bacula plugin. -kes Make apply_rp_codes() in bpipe-fd.c be static. -13Sep08 -kes Remove Encryption and Accurate lines in vbackup output -- not used. -kes Fix subtle bug in vbackup by not changing DEV_RECORD packet. -kes Add host name to items printed during dump. -kes Make Check File Changes default on. -11Sep08 -kes Set the default FD timeout to 3 minutes (previously 30). -kes Apply Bastian Friedrich's weird spelling correction patch. -10Sep08 -kes Always print Verify hash differences. Rename variable to make the - code slightly more readable. -09Sep08 -kes Correct tests for MaxFullInterval as reported by - Ulrich Leodolter .. -kes Fix MaxDiffInterval code as well. -kes Enable Win32 plugin load code in lib. -kes Make Verify code that computes disk checksums use the same - algorithm as backup when dealing with sparse files. -kes Attempt to run VSS on any systems newer than Vista -- should - make it work on Windows Server 2008. -ebl Change the new statistic implementation. Remove the UseStatistic - directive and add a 'update stats [days=...]' command. You can - now decide when copy job records from Job table to JobStat. - Statistics are much more accurate with this. -08Sep08 -kes Fix SQL case problem that may cause the failure of DiskToCatalog - in bug #1149. -kes First cut adding SD plugins. -03Sep08 -kes Add Slot if it is non-zero to writing bsr file after a - backup. -kes Change a number of bnet_fsend() into class method calls. -kes Begin audit of diff of 2.4 branch to trunk code. -01Sep08 -ebl Fix the mysql creation script that double-created an - index of the same field on the Media table. - Add an index to on VolumeName to the Media table for mysql. -30Aug08 -kes Another try at fixing Vbackup. It looks much better this time. - Disable file index sanity check in FD with value stored in - attributes record because with Vbackup the File Index gets - changed, but not the attributes record. - Enhance some debug code. - Fix handling of re-indexing records that are copied in Vbackup. -29Aug08 -kes Made level_to_str() know about Virtual backup. -kes Set correct Virtual backup write pool. -kes Fix compile warning in new dbcheck port code. -kes Fix migration code broken by previous virtual backup fix. -28Aug08 -kes Fix problem of Virtual backup not writing a sequential FileIndex. -kes Reset Virtual backup time/date to the value from the last backup. -kes Ensure that storage name is passed to SD on read. -kes Correct a problem with Level and Virtual backup, rework how - bsrs are printed in debug to use standard routine. -kes Apply patch from Chris in bug #1133 that provides alternate db port - support for dbcheck. -ebl Remove catalog dependency from bcopy tool. -ebl Modify catalog scripts to have an easier packaging integration, - using default variables. - Make difference between SQLite3 and SQLite in db_get_type() -27Aug08 -kes Apply most of changes in a patch from: - Michael Stapelberg - that allow the Bacula FD to compile on IRIX 6.5. -26Aug08 -kes Apply patch from Bastian Friedrich that accepts a yes on a - delete volume command line. -kes Attempt to fix bug #1128 InChanger flag cleared during Migration - job when reading from one autochanger and writing to another. -kes Minor tweaks (copyright dates convert to use method instead of bnet). -21Aug08 -kes Fix NULL Volume error when reading (or Migration or VBackup) must switch - drives when no tape is mounted. -18Aug08 -kes Add additional info to some SD messages. -kes Add fix supplied by Martin Simmons for turning off EOL character - in new console multi-command code. -14Aug08 -kes Fix a Verify InitCatalog problem where in certain cases - a garbage filename may be entered in the verification database. This - fixes bug #1143. -13Aug08 -kes Add VSS 64 bit dll entry point in src/win32/filed/vss_generic.cpp - sent in by Riyas Yoosuf. -12Aug08 -kes Fix seg fault in Dir during estimate command with no level value - given. This fixes bug #1140. -08Aug08 -kes Add message to migration job when the target job is already migrated. - This closes bug #1129. -30Jul08 -kes Fix Win32 build. -kes Raise some restore debug levels. -kes Replace off_t by boffset_t where ever I found it. -28Jul08 -kes Define a machine dependent ioctl request type for use with - vtape_ioctl(). -26Jul08 -kes When a migration job actually runs, re-check the Job record - and skip if the job is already migrated. This should - significantly reduce the problems with bug #1129. -24Jul08 -kes Set MALLOC_CHECK_=0 in environment before starting Bacula to - turn off glibc checks that prevent getting good dumps. -kes Implement console 'wait mount' command. Doesn't yet work. -kes Implement timeout=nn on console 'wait mount timeout=nn' command. -kes Break the do_swapping into do_unload, do_swapping, and - do_load. It is much more logical that way. -kes Implement a set_dcr_from_vol subroutine in acquire.c for - reading volumes. This allows the dcr to be refreshed after being - zapped when the wrong volume is mounted. - This should fix bug #1126 -- During multiple tape restore, bacula - does not ask for physical tape change, but rereads same tape -23Jul08 -kes Apply patch submitted for bug #1107 with a small modification. - This fixes a bug where bcopy copied too many records. -kes Make some tweaks to bsmtp based on patch submitted in bug #1124. - This fixes bug #1124. -kes Make the default bat restore Pool be Any. This fixes bug #1118. -22Jul08 -kes Remove debug statement that crashes the SD at the end of - a tape during restore. Fixes bug #1125. -21Jul08 -kes Implement Win32 bat changes made to Branch-2.4 -20Jul08 -kes Tweak separator command in console to start disabled and - allow defining no separator character. Also make code a - bit more fault tolerant. -kes Make btraceback write the traceback to the working directory - before attempting to mail it. -kes Add a RFC to Projects. -18Jul08 -kes Attempt to implement a kludge to make Qt work with bat - on Win32. -kes Setup rstorage correctly. Virtual backups are working. -17Jul08 -kes Move setting JobLevel and JobType into a method, which should - allow completing Virtual Backups. -kes Fix verify jobs to work again. -16Jul08 -kes Virtual Backup tweaks -- it is close to working. -15Jul08 -kes Ensure that SD tried to mount a volume not in an autochanger - at least once before asking for operator intervention. -kes Make SD aware of Virtual Backup jobs. -kes Add VirtualFull for bat. -kes Changes to get read storage correct for Virtual Backup. -14Jul08 -kes Remove old code from label.c -kes Split display_display_info() out of write_bsr_file() -kes do_vbackup_init() working -- i.e. bootstrap file built. -kes Change Bacula trademark owner from John Walker to Kern Sibbald -kes First non-working cut of vbackup -kes Correct FD heartbeat code to use volatile variable accessed by - two threads. -kes Zero thread id with memset if on Win32 in case it is a struct. -kes If cannot create JobMedia record, continue to try to write eof - and clean up in block.c -12Jul08 -kes Add code to interface OpenSSL to new Win32 pthreads code which - used a structure for thread_t. -09Jul08 -ebl tweak bat for win32 compilation -08Jul08 -ebl Remove tokyo cabinet from the source -ebl Update configure/autoconf to support berkeley DB -ebl Add a sort to db_get_file_list() to improve bsr construction time. -07Jul08 -kes Add a mtx-changer.conf file that is not overwritten during - an upgrade. It fully configures the mtx-changer script. -kes Clear in-use bit on vol when unused while swapping. -06Jul08 -kes Remove sleep at end of ./bacula -kes Clear hash packet for hardlinked files correctly. This corrects - a long standing bug where hardlinked files selected individually - would occasionally not be restored. -05Jul08 -kes Apply Eric's patch to ensure that autoprune does not return - a Volume not in the autochanger unless requested to do so. -kes Correct bat restore display of multiple drives. This fixes - bug #1117. -kes Do find_a_volume() each time an unload is done. This - fixes the failure of maxvol2-test. -04Jul08 -kes Add some SD debug code. -kes Do find_a_volume() each time an unload is done. -kes Apply Joao's DBI patch that adds easier configuration of DBI drivers, - and adds --with-db-port to ./configure. -kes Use Qmsg() in job.c watchdog callback. -03Jul08 -kes Release main control rwlock if ABORTing. -kes Make watchdog connect timeout queue messages rather than sending - directly to avoid lock conflicts with the real thread. -kes Add const char in dbd.c to avoid compiler warnings. -kes Fix python compiler string warning. Note, IMO the GNU C++ - compiler guys have made a *very* bad change to their compiler. - They now force all strings to be 'const' unless you explicitly - cast them, which is extremely ugly and ruins nice code as well - as creates a lot of useless work. -02Jul08 -kes Fix mtx-changer to detect both versions of Ubuntu (Debian) - mt. This fixes bug #1116. -kes Add const in python files to reduce compiler warnings. - This may have to be backed out because of later compiler - strict checking. -kes Fix failure of 2drive-concurrent-test. Always read label; - clear_unload() only after drive is defined in acquire_for_read(). -27Jun08 -kes Generally clean up the manual tape loading code. The main - conceptual change is that when a volume is marked to be unloaded, - its volume name is retained, and it is only marked as unloaded - when either the autoloader says it is unloaded or another tape - is read on that drive. -25Jun08 -kes Add debug code and refactor subroutine in stored/mount.c -kes Fix format problem in bscan output reported in bug #1105. -ebl Fix get_next_volume_for_append logic with autochanger - - use pruned volumes if found - - don't reset the inchanger flag after getting a recycled volume - or a scratch one - Fix recycle_oldest_purged_volume to take InChanger flag in account -23Jun08 -ebl Add mmap/unmmap implementation for tokyodbm under win32 -22Jun08 -kes Make first step toward eliminating globals from config - scanning. Also should be a workaround for FORTIFY_SOURCE - GNU C bug -- fixes bug #1042. -21Jun08 -kes Apply duplicate job tests to restarted jobs. -kes Copy more data when restarting a job so that run - overrides are kept. This should fix bug #1094. -20Jun08 -kes More word alignment cleanup. -kes Fix bug where SD did not ask operator if the device could not - be opened. Reported by Eric. -19Jun08 -kes Add dbuser to DIR conf file (replaces user). -kes Add --with-db-password to ./configure -kes Fix regress to handle db_password. -ebl Add new 'status storage slots' that list autochanger - content. -ebl Update vtape driver to compile only under Linux. -ebl Fix a bug when restoring with a wrong mediatype. -18Jun08 -kes Eliminate ints from conf files and structures to avoid - word alignment problems -17Jun08 -kes Fix bug reported by Scott Barninger where the bacula script - refers to scripts in the wrong directory. Needed to meet the - requirements of recent FHS location changes. -ebl Disable vtape for FreeBSD. -15Jun08 -ebl Modify disk-changer to check if slot contains something before - loading it. -14Jun08 -ebl Fix vtape on win32 and debian. -ebl Fix autoselect patch (cause segfault). -13Jun08 -ebl Fix autoselect option broken for a while. Fix #1089. Need some - work with StorageId to be able to use a particular drive in a - autochanger. -09Jun08 -ebl Rename vtape to vtape. -ebl Update vtape driver. -08Jun08 -ebl Modify vtape driver to avoid sparse file. -kes Add make clean of qt-source directory during ./configure -kes Store last block number written to tape in DEVICE and - use it for testing for correct last block on EOT. - -Release Version 2.4.0: -04Jun08 -kes Fix Win32 build. -03Jun08 -kes Make sure to clear JS_WaitMedia when operator mounts a Volume. - This fixes bug #1095. -31May08 -kes Add create_postgresql_database.sql to Win32 installer. Should - fix problem reported by Juilio Monteiro. -kes Get correct slot when auto unloading a device. This fixes bug - #1086. -30May08 -kes Fix multiple media restore. -kes Make DEVICE Slot private and access it via a method. - Allows better control over when it is set and cleared. -kes Fix possible seg fault if SQL error. -28May08 -kes Add Martin's fixes to argument scanning for the estimate - command. This fixes bug #1093. -kes Add debug code to SD. -kes Fix renaming a Volume, which used the wrong Volume name. -26May08 -kes If operator has rewind tape, print warning, release tape and - try once more. If tape is positioned somewhere, something went - wrong, so mark the tape in error and try once more. Previously - this error was fatal, now it produces an error message. -kes Ensure correct volume name displayed during restore -kes Ensure that Volume is mounted for restore. -25May08 -kes Fix a few more Coverity reported problems. -24May08 -kes Apply Allan Black's status dir job count patch. -ebl Add information about IMPORT/EXPORT slots in mtx-script. -kes Enhance a couple of SD debug messages. -kes Tweak unload flag setting and ensure it is set during swap. -23May08 -ebl Fix #1091 about bad output in estimate command. -21May08 -kes Modify autochanger locking to attempt to avoid race - conditions. -kes Make sure device not busy before doing label command. -kes Display open() errors except when polling. Previously too - many were suppressed. This should fix bug #1070. -kes Fix Win32 reparse points. Bacula will not recurse into any - reparse point directory, including mount points, unless the - directory is explicitly mentioned at the top level (same as - with Unix). A file that is linked to another file will be - backed up -- much as Unix does for hardlinked files. - This fixes bug #1041. -20May08 -kes Remove double quotes from ChangeLog and ReleaseNotes -kes Remove StorageId test when pruning and recycling (Eric's changes). -kes Remove old form of locking when getting volumes -- causes deadlock. -kes Change bat dirstat layoutWidget to dirstatlayoutWidget to make - the name unique and to eliminate compile time error. -kes Add accurate.o to Win32 FD Makefile -19May08 -kes Fix cats dll build on Win32 after db_update_job_end_record - calling sequence change. -ebl Switch to tokyo dbm instead of htable in accurate code -ebl Include tokyo dbm to bacula source tree -17May08 -kes Fix buffer overruns detected by Coverity. -13May08 -kes Tweak joblog display. -12May08 -kes Implement --without-qwt -kes Fix layout of restore tree dialog -kes Add configure bat QWT libraries, so that bat can be built - with or without the QWT libaries. -11May08 -ebl Add dummy tape driver for regression tests. -kes Make sure we unload the right slot when swapping. -10May08 -kes Add debug times, reduce size of two-pool-changer test -08May08 -ebl Tweak autoconf scripts for vtape -07May08 -kes Improve SD reserve debug code. -kes Testing an improvement to free up volumes no longer in use. -03May08 -kes Rework SD acquire for read to handle autochanger Volume - swapping. -kes Implement regression that explicitly tests swapping a Volume - from one drive to another. -kes Enhance disk-changer to detect most error conditions. -kes Fix SD code so that it properly swaps a Volume between drives. - This fixes bug #1083. -02May08 -kes Apply libdbi patch from Joao Freitas for regress and for - Bacula trunk. Regress now works with libdbi. Nice. -kes Apply .nobackup patch from bug #1077 submitted by - Edwin Groothuis. -kes Apply Bastian Friedrich's patch that adds %p to edit the pool - name into jobs cloned via the run directive. -01May08 -kes Prevent a Volume that is being swapped from being freed from - the volume list. This will most likely fix, at least partially, - bug #1083. -kes Fix strippath so that it does not get a buffer overrun and crash FD. - This fixes bug #1078. -kes Remove 50 millisec wait in SD that broke debugger. -ebl Add MaxRunSchedTime option that specifies the maximum allowed time - that a job may run, counted from when the job was scheduled. -ebl Fix MaxWaitTime option that specifies the maximum allowed time that - a job may block waiting for a resource, counted from when the job starts -ebl Rename (add) Max(Incr|Diff|Full)WaitTime to Max(Incr|Diff|Full)RunTime -kes Apply patch from bug #1076 by Tullio Andreatta - that implements multiple commands per line in the console when using - readline. Modify the default to use a semicolon as the command separator. -28Apr08 -ebl Fix SQL query in migration code. -ebl Make accurate mode with hash disk pass regression tests -27Apr08 -ebl Implement first cut of accurate backup with hash disk. -19Apr08 -kes Force unload of volume when wrong volume mounted in SD. -17Apr08 -kes Fix bat seg fault at termination. -kes Add Bacula generated version to bat about box. - -16Apr08 -kes Experiment with allowing multiple read jobs. -kes Move final volume swapping code to DCR method and - call it from acquire_for_read(). -kes When wrong volume is mounted during read, unload_autochanger. -15Apr08 -kes Integrate the libdbi changes from Joao Henrique Freitas -14Apr08 -kes Stop searching for Volumes in SD askdir if DIR returns the - same volume name twice in a row. -kes Close bat console windows first to eliminate error message - from the notifier. -13Apr08 -kes Tweak the swap Volume from one drive to another code so that - it now seems to work. -kes Resolve several problems with recycling that broke the new - code (these problems are in 2.2.9 as well). -kes Remove the volume lock when calling the sysop code. -kes Don't mark a reserved volume with no writers as unused otherwise - jobs fail. -12Apr08 -kes Rework class structures for VOLRES, DCR, and DEVICE to make - the method names a bit more logical, and for more logically - handling the responsibilities. -11Apr08 -kes Remove redundant code in terminating the scheduler that just - causes a seg fault in many cases. -kes Cleanup releasing a volume and make it a DCR method. -kes Improve algorithm for detecting pre-reserved volume and - swapping volumes. -10Apr08 -kes Tweak volume swapping code so it works. -kes Correct name overloading in mount.c -kes Replace released flag in VOLRES with reserved and add access - methods for the VOLRES class. -kes Prevent volume from being released while being swapped. -kes Apply Bastian Friedrich's edit codes patch for the bpipe-fd - plugin that add %w (where) and %r (replace flag) editing to - the plugin line. -kes Apply Bastial Friedrich's edit pool=%p patch for run clone - jobs. -kes Refactor parts of stored/mount.c -09Apr08 -ebl Add sanity checks for VolWriteTime and VolReadTime -ebl Take care of bad clock changes while computing VolWriteTime - and VolReadTime. This should fix or limit #1066 -kes Correct error string numbers in dird/catreq.c -kes Restructure reserving, acquiring, and mounting volumes. Calls to - autochanger are deferred for mount.c -- simplifes the code. -08Apr08 -kes Do not prune any running job. It just fails the job. -kes Lock the volumes when changing dev->reserved_device and marking - the volume unused otherwise the device can get reserved by - another job before the volume is released, thus blocking it. -06Apr08 -kes Correctly detect Ubuntu systems, and add ubuntu platform directory. -kes Fix bug #1063, reuse of freed ptr in list nextvol. -kes Release regex compile buffer in filed/job.c -kes Add proper type of const char in sql_create.c -kes Turn off debug in daemon termination routines -kes Move free_volume_list() before devices are freed in stored.c -kes Fix reference to uninitalized stack variables in bregex.c. - This should correct bug #1067. -04Apr08 -kes Fix possible seg fault in SD when freeing a volume entry. -03Apr08 -kes Implement unload_dev() before swap device. -ebl Add statistics prunning with option and menu -kes Separate unload_dev() from unload_other_device() in autochanger.c -02Apr08 -kes Apply patch from bug #1069 that corrects spurious error messages - when ACLs enabled on SGI but no ACL exists. -ebl Fix small segfault in bacula-sd when debug level is 500 -kes Modify run_program() and run_program_full_output() to use - call by reference for the results string. This corrects a long - standing problem where the address of the string may be changed - in the subroutine but not in the calling program. -01Apr08 -kes Re-enable code to remember last volume mounted on a non-tape - Autochanger. -kes Add patch supplied in bug #1068 that fixes a SD crash when using - a Virtual autochanger. -kes Generate correct JobMedia records during spooling/despooling when - running concurrent jobs. Thanks to Tom Ivar Helbekkmo - for excellent analysis and testing. -31Mar08 -kes Tweak hash algorithm for htable using Martin Simmons idea - for doing a circular shift. -kes Remember what volume is in VTLs (previously turned off for - testing). -kes Analysis of JobMedia records by Tom Ivar Helbekkmo - pointed out some problems in creating JobMedia records during - spooling with concurrent jobs. Fix the problem by updating the - start file position before despooling and generate a jobmedia - record at the end of despooling. -28Mar08 -kes Fix handling of JobMedia records during spooling and when a - Volume is changed without actually writing data to the Volume. -27Mar08 -kes Rework certain SD locking based on gdb tracebacks of deadlocks - sent by Eric. This code now uses only the volume_lock() rather - than the reservations lock when at EOM and acquiring a new - volume. -kes Ensure only one exit point in several subroutines. -26Mar08 -kes Implement bsock code to permit locking. Use the new code in Verify - in the FD to prevent the heartbeat thread from disrupting the Verify - data sent to the Dir. -kes Modify SD locking to eliminate locking the reservations system from - outside the system. Use the volume lock when getting media data - and reserving a new volume at end of media. -kes Add Eric's volume_unused() fix to stored.c so that Volumes found - when SD starts are not locked into place. -24Mar08 -kes Fix error compiling runscript code on 64 bit machines. -kes Tweak Win32 mount point code. -kes Fix a couple of bugs in the accurate code (bad sscanf, buffer not - cleared giving bad file estimate). -kes Implement BIG_MALLOC in htable code. Runs 2.5 times faster for - 5 Million entries. -22Mar08 -kes Keep Schedule run lists in order as suggested by - Bastian Friedrich. -21Mar08 -kes Implement autostart scripts for Debian. -ebl Implement upgrade catalog scripts. -20Mar08 -ebl Apply jobstat patch for long term statistics. Have to implement - purge stats command and upgrade scripts. -kes Fix mtx-changer.in for broken Debian mt program. -19Mar08 -kes Fix large number of JobMedia records reported by Eric Bollengier. -18Mar08 -kes Apply doc fix from bug #1062. -kes Resolve crash and improper restore wx-console Win32 restore - GUI. Fixes bug #1065. -kes Update Win32 wxWidgets to latest version. -kes Attempt to do correct handling of Win32 mount points. Should - fix bug #1046. -kes Fix Win32 FD backup/restore memory leak due to improper termination - of BackupRead/Write. This fixes bug# 1038. -16Mar08 -ebl Reduce memory usage for accurate backup, working only with ctime - and mtime. (not all Lstat field) - About 40MB for my Linux system (400.000 files) -14Mar08 -kes Add dcr->reserved_volume flag that allows us to release a volume - even if it is not vol->released. This allows maxvol2 to work when - Volumes expire and we are already writing to the device (i.e. a - volume is pulled out from under us by another job terminating after - we reserve the drive). -13Mar08 -ebl Permit multiple command/console per runscript definition. - RunScript { command = /bin/true ; command = /bin/false ... } -ebl Add RunsWhen = AfterVSS to runscript. You can execute a command - (restart an application) just after the VSS snapshot on windows. -kes Don't zap dcr values during release_volume() as they might - have the next Volume to be mounted. -kes Fix AIX prototype. -12Mar08 -kes Second cut of drive switching during backup. -11Mar08 -kes Fix Win32 build. -kes Update Win32 version of wxWidgets to most recent version. -kes Tweak Copy job details. -kes Rework dir_find_next_appendable_volume to make a bit more effort - to find a suitable volume before giving up. -10Mar08 -kes Make ask_sysop_to_create... to return if waken from wait. - This helps get out of blocked conditions. -kes Experimental implementation of switch_device in reservations. -kes Implement FD version to allow easier protocol changes. -kes Add Plugin Options string -- not yet passed to FD. -kes Implement PluginOptions ACL. -09Mar08 -kes Attempt to correct problems with restores with autochangers and - use counts going negative -kes Rework SD status command and implement API for bat. Implements - header, runing waitreservation, devices, volumes, spooling, - and terminated status keywords. - .status storage=xxx -kes Clarify TLS error message by adding double quotes around name. -kes Simplify SD/FD status code by putting api flag in STATUS_PKT -kes Pass jcr to tls routines so debug messages can be handled better. -kes Rework jobq resource allocation code, and possibly fix a bug - that caused reference counts to get out of sync. -08Mar08 -kes Rename fd/dir plugin to use Bacula standard underscore. -kes Plugin work -- bring dir up to fd level. -kes Start implementation of VTL code -kes Fix Win32 build after adding new cats subroutine. -06Mar08 -kes First cut at Duplicate Job implementation. -05Mar08 -kes Fix bugs in MaxFullInterval and Implement MaxDiffInterval. -kes Start PluginOptions string, and refactor a bit of ua_run.c -ebl Apply Allan patch that permit to reset recyclepool. -04Mar08 -kes Test patch -- possible fix or improvement for bug #1053 -kes Refactor FD and SD status commands to permit new API code in - SD, and to fix Win32 build. -kes Win32 build is now working. -03Mar08 -kes Implement 'MaxFullInterval' and start 'MaxDiffInterval' based on - some ideas in patch from Scott Bailey. -kes Begin implementation of duplicate Job control. -kes Fix some of Win32 build after recent additions. -kes Apply patch from Frank Kardel that implements 'honor no dump flag', - which causes the FD to detect whether or not the OS has the - honor no dump bit (*BSD systems), and if so, to skip backing up - any file with this bit set. The feature is enabled by setting - 'honor no dump flag = yes' in the Options section of a FileSet. -28Feb08 -kes Correct po warning message with datarootdir -kes Implement more code in dird.c to put configuration parsing in - a class rather than use globals. -kes Restructure SD status command for implementation of bat API - interface. -27Feb08 -kes Suppress incorrect 'Will not descend from x into y' messages. -kes Eliminate FORTIFY_CODE=2 bug, and make first cut at removing - daemon globals used by parser. -kes Apply Joao's patch to separate DB_TYPE and DB_PROG in configure. -26Feb08 -kes Fix free of plugin_list when none exists. -25Feb08 -ebl Apply accurate project patch. -24Feb08 -ebl Fix a segfault when using strip_path option. (Use of pm_strcpy - on non-mempool object) -kes First cut of converting FD .status to work with bat API. - New form is: - .status client=XXX header - .status client=XXX running - .status client=XXX terminated -kes Implement first cut of Copy Job. -kes Implement Catalog in Pool resource. It overrides catalog specified - in the Client resource. -22Feb08 -kes Apply patch (with some difficulties) from Joao Henrique Freitas - , which adds support for libdbi as a Bacula - database driver. -kes Add patch from Martin Schmid scm@apsag.com that checks to see if - ftruncate() actually works. In the case of some (cheap) NAS devices, - it does not, and so recycling NAS Volumes does not work. The code - simply unlink()s the file, then recreates it. This fixes bug #1011. -21Feb08 -kes First incomplete cut of big malloc blocks for htable. -kes Tweak plugin code. -17Feb08 -kes Plugin debug code + tweak a couple bat dialog layouts -14Feb08 -kes Fix creating first JobMedia record during Migration to include - proper index. This caused slow restores of migrated jobs. -kes Temp fix to plugin name file_index. -kes Bacula backed up and restored a MySQL database. -13Feb08 -kes Implement plugin restore. -kes Implement parsing of db_driver to give db_type index. -10Feb08 -kes First cut of plugin restore code. -kes Fix bug #1047, which had a heap overrun when stripping certain paths, - and do not strip paths on symbolic links. -kes Set catalog backup database and user name from values specified on - the ./configure line. -ebl Fix #1031 about wrong pool source information in job report. -09Feb08 -kes Fix Win32 build. -kes Remove a redundant jcr argument to find_files, match_files, and - find_one_file. -kes Implement '.status dir header|scheduled|running|terminated' that - prints the requested status section. With the exception of the - header, the other reports have fields separated by tabs (\t). -08Feb08 -kes Apply patch from Peter Much that fixes - a resource embedded run command to find a since time if no explicit - since time was supplied on the command line. -kes Apply state-file.patch sent by Allan Black - that updates the state file at job termination time in addition to - when the daemon terminates. -05Feb08 -kes First version where a plugin did a backup. - bpipe-fd.so created a backup file, wrote a test - string to it, and Bacua could restore this fabricated file. -02Feb08 -kes Implement DB Driver = string for the DBI driver. -kes Remove all old bdb_xxx.c code. Add dummy routines to bdb.c -kes First cut of code for loading Win32 plugin dlls. Implement - dlopen, dlsym, dlclose, and dlerror in src/win32/compat/compat.cpp - and implement a dlfcn.h file based on opengroup's definitions of - the functions. -01Feb08 -kes First cut plugin directives. -30Jan08 -kes Apply patch from bug #1049 to prevent stripping the path on a - symlink. -kes Attempt to fix bug #1047 where stripping a path corrupts the - heap. Waiting for feedback. -kes Correct the Mount message not to suggest labeling a new tape - when doing a restore. Submitted by email by John Stoffel. -kes Attempt to work around gcc FORTIFY_SOURCE bug that crashes the - FD by using casting. Reported in bug #1042. -28Jan08 -kes A bit of crypto cleanup. More later. - -Release Version 2.2.8 -25Jan08 -kes Apply patch from Martin to correct bug #1040, bscan sets existing - ClientId to zero. -kes Fixed important spelling error in doc -- bug #1045. -23Jan08 -ebl Fix bextract to be able to extract non-portable Win32 data to - Unix/Linux clients -kes Move initialization of read/write res lock earlier in the code. - This fixes the crash with a null conf file. This fixes bug - #1030. -kes Redefine CURES in lib/parse_conf to be URES and move it all - into lib/parse_conf.c -- this responds to bug #1042, but does - not fix it. The fix is not to compile with FORTIFY_SOURCE. -kes Backport to 2.2.8 fix de-referencing a NULL pointer in the scanner from - the trunk SVN. I don't think this was reported as a bug. -17Jan08 -ebl Fix a bug during tape initialization with MTSETDRVBUFFER. -12Jan08 -kes Fix Win32 build with new .def files and DLL_IMP_EXP ... -10Jan08 -kes Add DataDespooling and DataCommitting status (committing is - the last despooling). -kes Finish implementation of new reservations code noted below. -08Jan08 -kes Fix bsnprintf for float point numbers. I broke recently when - parameterizing some variables. This fixes bug #1036. -kes Undo recent reservations changes ... will apply them later - when they work better. -06Jan08 -ebl Fixes #1034 which cause mysql to hang the connection after 8h -ebl Change default statistics target of filename.name and path.path - fields for PostgreSQL. This speeds lookup by indexes. Thanks - to Marc Cousin. -kes A few more tweaks to new reservation code. Make sure to clear - vol released flag when retaking volume. When reading label and - label is bad mark volume unused. When recycling, mark volume - unused so it can be renamed. -05Jan08 -kes Fix reserve_volume() so it doesn't release a volume in use - (i.e. a volume entry not marked released). This should be - the last part needed to fix bug #1018. -03Jan08 -kes Move Heartbeat documentation from Job to Director resource. - This fixes bug #1033. -02Jan08 -kes Fix existing switch drive SD code to call autochanger to release - any old volume. This must be done to keep the autochanger from - releasing subsequently newly reserved volumes in doing a close(). - This should fix bug #1018. -kes Fail if attempting to get console input in batch mode. This - should help fail RunScript console commands that are incomplete. -kes First cut implementing switch_drive() in SD (not actually called). -31Dec07 -kes Implement first cut running console commands in a RunScript. -29Dec07 -ebl Fixes bug #1028 where 'Selection Type' option was not usable - with JobDefs. -ebl Fixes bug #897 and bug #1005 where bacula doesn't display runscript - output in error. - -Release Version 2.2.7 -24Dec07 -kes Add new free_tls() entry point so that Win32 builds. -kes Fix compile warning in src/lib/util.c -kes Fix entry point for edit_job_codes() so that Win32 builds. -kes Fix seg fault Frank Sweetser reports in regression testing - on his systems. The problem was that the original author of - bsnprintf.c did not take into account the side effects of - using ++x in the argument to a #define. -kes Make SD protocol backward compatible with version 2.2.x. -19Dec07 -ebl Fixes bug #1015 where bacula failed to restore acl to a socket - because Bacula no longer restores sockets. -ebl Always use ignorecase fileset option on win32 FD. -14Dec07 -kes Apply patch from Michael Stapelberg - that implements double quoting include names in conf files, - and also allows piping input by having the first character - be a vertical bar (|). -kes Apply patch from Bastian Friedrich - that implement %f in RunScripts to pass the FileSet name. -kes Skip leading | when lex input comes from a pipe as suggested - by Michael Stapelberg . -13Dec07 -kes Apply patch for bsmtp Win32 daylight savings time fix supplied by - Nerijus Baliunas -12Dec07 -kes Implement Plugin Directory and plugin events. -11Dec07 -kes Implement a security enhancement: TLS authentication but no - encryption. Enabled by setting 'TLS Authentication = yes'. - Note when this is on, TLS encryption is turned OFF! -10Dec07 -kes This patch corrects a problem where the maximum concurrent storage - jobs counter gets out of sync during restore jobs causing jobs to - 'wait on max Storage jobs'. This patch fixes bug #1009. -03Dec07 -kes This patch fixes bcopy so that it produces correct Volumes. - It fixes bug #1022. -kes This patch eliminates spurious output to the console during a VerifyVolume - job that contains encrypted data. It fixes bug #1024. -02Dec07 -kes This patch prevents the 'status dir' command from trying to use a scratch - volume and possibly moving it from one pool to another. This patch fixes - bug #1019. -01Dec07 -kes Add new include to postgresql.c suggested by Marc Cousins so - that it compiles correctly with pgre version 8.3. -30Nov07 -kes Fix --archivedir addition to configure. Replace it with - --with-archivedir in configure.in This fixes the regression - test builds. -kes This patch fixes bug #1012 where the job is canceled because - of Max Run Time exceeded when the job has not yet started. -29Nov07 -ebl Apply Richard Mortimer patch that fixes #1016 when there are more than - one 'part' to write. Instead of each part being stored on disk, - written to DVD, then deleted from disk, all parts are written to disk, - and only the last is written and deleted from disk. -kes This patch fixes the status command to include the formating string for - JS_AttrInsterting. It fixes bug #1021. -kes This patch should fix the Mac OS X build problem on the latest - Darwin, where sys/types.h was not included correctly (apparently - due to a change in the Mac headers). The solution was to explicitly - ensure that it is defined for the ./configure. - This patch also has a rebuild of configure that includes the Debian - qt4 patch to check for qmake-qt4. This patch fixes bug #1020. -kes This patch should ensure that queued messages to the console are - displayed as soon as possible. It should fix bug 1007, but has been - reported not to work. -14Nov07 -kes This patch fixes the infinite loop when trying to increase the - maximum number of volumes in a Pool during the add command. - This patch fixes bug #1008. - -Release Version 2.2.6 -09Nov07 -db Remove extra data on estimate command in joblist for bat. -04Nov07 -kes Cleanup of code in SD that sets the LastWritten date. This doesn't - really change anything, but is the beginning of doing it *right*. - To do it completely right the LastWritten date must be passed to - the SD, but it is not yet done. -kes Minor tweaks to some bat restore SQL. -kes This patch fixes bug #1003 where putting the message output from - a Verify job into the catalog results in a recursive loop. The problem - seems to show up only with postgresql (to be verified). -kes Correct %x to %p in postgresql debug statement. -02Nov07 -kes Fix bug #942 where lots of emails where generated when the heartbeat - interval was low and Bacula wanted a different tape from the one in - the drive. -25Oct07 -ebl Add new SD despooling attributes and Dir inserting attributes - job status codes in the catalog (Status table). -24Oct07 -ebl Use qmake-qt4 instead of qmake when available (debian system). -22Oct07 -kes Add a security warning to src/cats/make_catalog_backup.in indicating - that passing the password via the command line (arg 3) is insecure. - This responds to bug #990 (it doesn't fix it). -19Oct07 -kes Set default debug_level to zero. This corrects bugs #991 and #993. -kes Fix a crash in bat when it cannot connect to the Director for example - if the Director is not running. -kes Remove redundant INDEX (JobId) from File table in the trunk. - This fixes bug #992. -kes Make explicit exception to GPL in LICENSE to permit linking - the Win32 FD with Microsoft VSS code. -kes Apply the Solaris package patch from - Masopust, Christian -kes Apply the patch to optionally add a timestamp in the debug output - submitted by Mariusz Czulada . -18Oct07 -ebl Use PQerrorMessage instead of PQresultErrorMessage in postgresql - backend (sql_strerror). Fixes bug #989 -16Oct07 -kes Apply Michael Short's Win32 regress patch. - It applied with no problems. -kes Add PATH command to SunOS part of mtx-changer.in so that sed and - awk are on the path. -kes Redirect stderror to stdin on mt status command in mtx-changer.in - since the status is returned on stderr on Solaris. -kes Activate Close button on tray-monitor window. This fixes - bug #986. -kes Check for NULL item in parse_conf.c before calling it. In the - case of Device, there is no item and this caused a seg fault when - Device appears in the conf file. -kes Add a #define __CONFIG_H when including config.h in bacula.h. This - avoids pulling in config.h multiple times in some new code. -12Oct07 -kes Fix spurious warning message printed when creating a volume with - a LabelFormat. This fixes bug #976. - -Release Version 2.2.5 -09Oct07 -kes Add JobId in place of Job name in all the Jmsg() output. -kes Correct the APP_DESC for the Win32 storage service (remove an e). -07Oct07 -kes Make maxvol-test and new more strict maxvol2-test work. -kes Print JobId in all Jmsg() job output. -06Oct07 -kes Add new SD despooling attributes and Dir inserting attributes - job status codes. This fixes bug 961. -kes Fix Win32 drive display in bat version browser. Fixes bug #962. -05Oct07 -kes Fix doc issue. This fixes bug #963. -kes Fix listing performance problems in bat. Pointed out by - Chris Howells. -kes Remove old debug code. -kes Fix bat code that tests for Win32. This should fix bug #968 -kes Query 5 list wrong Vol after migration. This fixes bug #960 -04Oct07 -ebl Fix #969 where user can't change Replace option in restore menu. -5ASep07 -kes Save jcr in thread specific data (tsd) for each thread. -kes Make Dmsg() print JobId as -%u. -kes Make Jmsg, Emsg, and others automatically pickup the jobid - for the thread if it exists. -kes Remove old reservation debug jid code. -kes Remove get_jcr_from_tid() from OpenSSL and tls code. -ebl Add an option that permit to specify spool size in job - definition. (Applying patches/testing/spoolsize_per_job.patch). - You must upgrade SD and DIR at the same time. -dvl Add new configuration item --archivedir -dvl Adjust regression tests to use tmp not /tmp. This will allow - multiple concurrent runs of the regression tests. -28Sep07 -kes Fix race condition that drops final block written to volume. - This happens in rare cases with multiple simultaneous jobs - when the Volume fills. This fixes bug #964. May be related - to bug #935 and possibly #903. -kes Eliminate more strerror() and replace with bstrerror(). -kes Remove BSD getopt and replace with unrestricted IBM version. -kes Fix Win32 build for changed calling sequences. -kes More tweaks to the mount volume routines to get everything - right. Changed variable name from find to have_vol, which is - much easier to understand. -kes Enhance btimer debug code. -27Sep07 -kes Fix FD->SD authorization failure, which was due to spurious - wakeups from a pthread_cond_timedwait(). Simply check the - predicate before continuing. This fixes bug #953. -kes Add const char where needed (more to do). Remove temp debug code. -26Sep07 -kes Setup SQLite busy handler before doing queries. Fixes bug #967. -kes Don't overwrite error message in check_tables_version. - Fixes bug #966. -kes Unlock batch insert tables with same calls used elsewhere. -kes Allow starting 59 jobs a second. -kes Make SD session key more random. -kes Add retry for SQLite opening db if it fails. Probably helps - for bug #967. -kes Suppress extra error messages during batch insert failure. - Fixes bug #966. -kes Add jcr to timer packets so if killed message can be sent to job. -kes Add JobId to all Dmsg() output. -kes Put some FD auth code on dbglvl rather than fixed. -kes Return insert attributes error message in db msg buffer to avoid - false error messages. Helps fix bug #966. -kes Separate batch init error messages. Probably helps fix bug #966. -kes Make SD code that contructs attribute insert check string lengths - more carefully. -kes If Dir gets an error during inserting attributes, cancel SD. - This reduces unnecessary error messages. -24Sep07 -kes Correct search boolean for getting Volume info -ebl Cleanup batch insert code. Probably fixes bug #965. -kes Back out one small change to the reservation system (reserving a volume). -kes Rework how a Volume is mounted. It is now much more intelligent and - will always attempt to use any mounted volume if possible and reduces - calls to the Director asking about volumes. -23Sep07 -kes Turn off some code when batch insert not enabled. -kes Edit FD name in connect error messages. -kes Rework the reservation system to take into account that the Director - might give us a Volume that is different from the current one being - used, and to ensure that we don't exceed Maximum Volume Jobs. - This fixes (mostly) bug #947 ' Maximum Volume Jobs = 1 produces - fatal error with multiple jobs running' -kes Add more debug code in reservation system. -kes Implement maxvol-test to check bug #947. -22Sep07 -kes Add code to handle tray monitor separated from Win32 FD. -kes Fix display of Win32 tray monitor after reboot. Fixes bug #952. -20Sep07 -kes Add missed return in fixing verify bug -- trunk only. -ebl Fix a command parser issue causing a director segfault. -kes Fix ANSI tape labeling. Fix restoring ANSI labeled Volumes. - This fixes bug #954. -kes Increase the max block size to 4MB fixes bug #957. -kes ERABT if user sets min block size > max block size. Fixes bug #956. -kes Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape - is not properly mounted (recognized) during a poll. -kes Apply 2.2.4-verify patch that resolves bug #958. A Verify catalog - Job that has differences reports Verify OK. -ebl Fixes #955 bug seg fault in Dir introduced with regexwhere relocation. -17Sep07 -ebl Add an option to operate on all pools with update vol parameters. - This complete the project 20. Patch from Nigel Stepp. -ebl Add history support to bconsole when using readline. - Using Ctrl-D to exit doesn't update .bconsole_history -kes Modify new volume algorithm to use max MediaId for generating next - volume number rather than the count of Volumes. This should essentially - eliminate the failure rate if some volumes were deleted. Bug #921. -kes Begin implemention of Optimize Job Scheduling. -kes Implement restore callback that Dirk and I agreed on for bat - restore. This fixes bug #928. Restore of backup of zero files fails. -kes Fix SQL Catalog logging which broke with new db_escape_string - calling sequence. - -Release Version 2.2.4 -14Sep07 -kes Fix bacula_cats.def for new db_escape_string(). -kes Increase size of name string when FD making connection to SD. - May fix bug #953. FD->SD connection failure. -13Sep07 -kes Add code to help Dan debug 2drive-incremental-2disk test. -kes Add code to try to fix bug #908. -kes Add waits to multiple exit detection code to try to force pid - file to always be deleted. -kes Restore good dev.tar.gz to rescue set appropriate binary property. - This fixes bug #950. -kes Fix seg fault in error exit of acquire_for_read after unsuccessfully - trying to switch drives by checking for blocking before unblocking. - Fixes bug #906. -kes Cancel storage daemon in all cases where FD reports error. This - should fix virtually all cases of bug #920. -kes Fix db_escape_string() for MySQL which did not compile. -12Sep07 -kes Fix error message that was clobbered when Dir tells SD it does not - have write permission on Volume. This should fix a minor point - in bug #942, but not the main problem. -kes Add code to cancel job in SD if FD connection fails. This should - fix bug #920. -kes Add code in FD exit to prevent loops and a crash on FreeBSD. -dvl Pass jcr and db into db_escape_string() to enable better escaping - of strings -kes Fix migration code to get correct Volume name with multiple volumes - by skipping |. Fixes bug #936. -kes Implement patch supplied by Landon to fix bug #944 where using - TLS with bconsole uses 99+% of the CPU. -kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor - program. -kes Move patches into patches directory. -11Sep07 -ebl Fix bug #946 about 'bacula-dir -t' which doesn't works - as expected. -09Sep07 -ebl Using 'm' in bconsole will show messages like before, - and not memory usage. -kes Fix bug #935, and probably also bug #903 where files were not - restored. MediaId was not properly set in JobMedia record after - a Volume change. -08Sep07 -kes Suppress chown and chmod error messages if the FD is not running - as root. -07Sep07 -kes Apply Martin Simmons' patch that should turn off the new API usage - when batch insert is turned off allowing building on older - PostgreSQLs. -kes Add ./configure search in qwt-qt4 for qwt package -05Sep07 -kes Bacula is now free of 3rd party GPL copyrighted code! -kes Remove idcache.c -kes Add guid_to_name.c/h which replace idcache. -kes Remove enh_fnmatch.c. Make code that references it use fnmatch.c -04Sep07 -ebl Detect if new PosgreSQL batch insert API is present. -kes Correct incorrect mempool call causing Director crash. Occurs on - systems without va_copy(). -sb Update spec files for 2.2.1 release -03Sep07 -kes Fix memory pool call in ua_output.c. bug #934. -kes Replace fnmatch.c and fnmatch.h by modified BSD versions. - Add test program to fnmatch.c -02Sep07 -kes Integrate patch to README.vc8 from - Hederer Jean-Sébastien FD return status reported by - (James Harper) -ebl Fix a bug in read_close_session which return random status - thanks to James Harper -23Aug07 -kes Fix (hopefully) bug #930 by doing a db_escape_string() on file - and directory names during restore of single file/directories. -kes Add sanity checks to .sql command when string is empty. Hopefully - that will resolve Dirks Director crash. -22Aug07 -kes Apply patch submitted by Martin Simmons that corrects a seg fault - in the bsmtp chat subroutine when debug is >= 10. -21Aug07 -kes Fix Director crash when running bat SQL queries. -kes Add David's notes on Item 8: Copy pools. -18Aug07 -kes Rework projects file to be current and ready for a vote. -kes Enhance lex scanner error message. -17Aug07 -kes Tweak LICENSE file to mention BSD code. -kes Fix bat.pro.in so that it includes the OpenSSL libraries only - if specified on the ./configure. -kes Add first (not yet tested) cut of bcomm to the qt-console directory. - This class is intended to allow us to open a second bsock to the - Director while in the restore subdialog. -16Aug07 -kes Fix configure to create bat Makefile before creating dependencies. -kes Eliminate the egg files from the tray-monitor. Use gtk calls. -kes Add a tooltip to the tray monitor. -dvl Set the Director's PID file before dropping privs. This fixes - bug #923. -15Aug07 -kes Update AUTHORs file -kes Increase the default max concurrent jobs to 20 in FD and SD to - correspond with the default .conf files. -kes Rewrite the Win32 service routines. This eliminates the 3 copies - some different, of the same file created by RN when porting the - Win32 SD and Dir. -kes Rearrange some of the Win32 directories and the placement of the files - in them. -kes Set DEVELOPER flag in version.h - -======================================================================== -Release Version 2.2.0 -09Aug07 -kes Apply a second doc patch from Marc. -kes Apply a doc patch from Marc Schiffbauer that - improves the tips section that discusses how to setup multiple - simultaneous jobs. -08Aug07 -kes Update bat README file. -kes Apply patch from Allan Black that - corrects a typo in the Recycle status check in db_find_next_volume(). - This will probably fix a number of annoying problems with multiple - Recycled volumes. -kes Modify most of dird/msgchan.c to use bsock class calls rather than - bnet calls -- no functionality change. -07Aug07 -kes Modify the Verify output to specify if files are missing on - the Volume(s) or disk. Fixes confusion in bug #916. -kes When more than one Volume is read in a migration job, the last - Volume bytes reported are from the last read volume rather than - the last written volume. Fixed. This fixes bug #910. -kes Fix display of Recycle flag after update volume=foo recycle=yes. - It previously printed New Recyle flag is: no. This fixes bug - #917. -06Aug07 -kes Correct seg fault when switching tape drives during restore. -kes Commit uid_gid_name.c (replacement for idcache.c), but will not - be used until after 2.2.0 release. -04Aug07 -kes Remove fnmatch() in SD that permitted wild card specifications. - This fixes bug #914. -31Jul07 -kes Fix %g in filename returned by SQL for browse tree reported by - Dirk. -kes Fix configure so that it puts config.out in the cwd rather than - in src/qt-console -kes Attempt to fix the locking problem reported by Eric in bug #906. -kes Make berrno class to leave errno unchanged after constructor call. -kes Make bnet_server use the heap rather than the stack to allocate - its socket fd pointers to avoid a crash at termination. Problem - reported by Ryan Novosielski and bugs pointed out by Martin Simmons. -30Jul07 -kes Create new depkgs and depkgs-qt separating the qwt out of depkgs - and putting it in depkgs-qt along with Qt4.3. -29Jul07 -kes Rework code in acquire.c that switches drives for reading when - the Media Type does not match. This should fix bug #906 -28Jul07 -ebl Fix a director segfault during job setup #907 -kes Correct seg fault in postgresql when first operation returns no - rows. Fixes Dirks File browser problem seg fault with bat. -25Jul07 -kes Apply patch from Felix Schwarz that allows - building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with - 2.6 as well). -24Jul07 -kes Implement PopUp YES/NO dialog for bat. -23Jul07 -ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS -22Jul07 -kes Correct RunScript to terminate job in FD on failure. -kes Change abort_on_error and AbortJobOnError to fail_on_error - and FailJobOnError in RunScripts. -kes Minor tweaks of code formating in RunScripts, principally to - avoid depassing 80 columns. -21Jul07 -kes Eliminate one #ifdef Win32 in bsmtp -kes Implement grow tool to grow a file for testing very large databases. -kes Add big-vol-test to test Bacula seeking with > 5GB. -Release 2.1.28 beta -19Jul07 -kes Modify find_next_volume() to return all values in Media record. -kes Ensure that we keep Recycle Pool when moving Scratch volumes. - -Release 2.1.28 beta -18Jul07 -kes Update Release notes -17Jul07 -ebl fix a bug in get_scratch_volume() report by Andreas Helmcke - Warning, in previous beta version, all media get from scratch keep their - old retention. -16Jul07 -kes Tweaked Win32 installer to remove temp conf files at uninstall time. - This should fix bug #842. Made a note to look at removing the temp - files at the end of the install. -kes Add ability to mount and unmount a file device providing it is - marked as being removable and has the appropriate mount and unmount - commands defined in the Device resource. This fixes bug #830. -kes When applying a storage override, release all previous storage - definitions rather than just prepending the new storage. - This should prevent a good deal of confusion. -14Jul07 -kes Implement ./configure search for qwt libraries. -13Jul07 -kes Disable posting the WM_CLOSE message in KillRunningCopy of the - Win32 FD. This should fix bug #893. -kes Remove an unnecessary beep in Win32 init code. -kes Update copyright dates in Win32 executable about boxes. -kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32 - code with a BSD getopt.c and getopt.h. -kes Remove sched.h from the Win32 compat directory -- not used. -kes Remove the Exit menu item from the Win32 tray monitor. If you really - need to shut it down, do it through the services panel or the command - line. -kes Remove some inappropriate Bacula FSFE copyrights. -ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x) -kes Fix regress config non-portable test as pointed out by - Florian Heigl -kes Fix PSCMD for HP-UX in configure.in to have proper syntax. - as pointed out by Florian Heigl -12Jul07 -kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c - Reported by Frank Sweetser. - -Release 2.1.26 beta -12Jul07 -kes Fix client-only build. -kes Integrate client-only fixes for bsys (initgroups) and conio from - Sergey Svishchev for the AIX platform. -kes Make arguments to get_scratch_volume() in same order as other - such calls. -kes Rework the prune_volumes() subroutine so that after purging and - no volume found in desired pool, it will check for a scratch - volume. This prevents recycling the whole scratch pool. -kes Add code to status storage to print boffset_t (largefile support). -11Jul07 -kes Move qwt (Graphics libarary for Qt4) to depkgs. -kes You now need a --with-qwt= to be able to build bat. -kes Update src/win32/cats/bacula_cats.def to include the new - db_get_query_dbids() call on Win32. -07Jul07 -kes Correct a problem when selecting a scratch volume and moving - it to another pool that lost some columns. -kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM. -kes Enhance Autochanger error messages to include Volume and device name. -kes Rework prune_volumes() code to take account of InChanger flag, - and to handle recycling volumes going to the Scratch pool and - current pool because the RecyclePool directive. -kes Implement a better and more efficient db_get_query_dbids() to - handle creating and passing back a list of DBIds. - -Release 2.1.24 beta -03Jul07 -kes Start work on new more efficient DBId subroutine. First use - will be for recycling volume to Scratch inchanger. -kes Increase number of JobIds in pruning from 1000 to 10000. - This to be replaced by above routine. -kes Begin implementation of building Qt4 on Win32. -kes Correct typo in fix I added for bad TLS shutdown. -kes Pull 2.0.3 patches into patches directory. -kes Update Release notes. Include qt-console in line count. -kes Update Projects file. -30Jun07 -kes Integrate patch from Sergey Svishchev that fixes - bug in migration code where a job that spanned two volumes - was migrated twice. -29Jun07 -kes Implement new BST_DESPOOLING blocked state. Change from locking - during despooling in SD to blocking. This means that other threads - can work with the device structure, in particular the reservations - system while despooling. -28Jun07 -kes Fix return in reservation message queue that missed clearing - the jcr lock (implemented 26Jun07 below). -kes Rename a number of dev methods to make locking function names - a bit clearer. -kes Document locking in lock.c. Move lock structures to new file - lock.h. -26Jun07 -kes Move reservations message lock to lock jcr only this - fixes bug #861. -kes Move main SD locking code into lock.c (new file). -kes Update Win32 build to include lock.c - -Release 2.1.22 beta -26Jun07 -kes Dirk committed the qwt library code for drawing graphs in bat. -kes Tweak install of qwt so that it is integrated with ./configure. -25Jun07 -kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed - out by Eric (my typo). -ebl Fix configure.in to get batch mode enable -kes Return correct string from authenticate.cpp in bat when connecting - to Dir. -kes Apply patch suggested by Frank Sweetser to fix bug #888 -- - spurious line drops when using TLS. -kes Do not file reparse points when restoring a file that already - exists -- Win32. -24Jun07 -kes Implement Windows reparse points -- similar to directories, but - we do not descend into it. This is a first cut. They seem to - be backed up, but restore is not yet tested. -kes Remove restore_blocking in tls code when shutting a socket to leave - it in blocking mode. Hopefully this will fix the encryption bug - reported by Frank Sweetser. -kes When opening a file for backup, tell the OS that we are going to - read it sequentially -- optimization. -kes Change variable names in authenticate_director() to not conflict - with member names in bat. Caused great confusion with compiler, - but no warnings. -23Jun07 -kes Queue openssl error messages in case of comm problem. -kes Do shutdown() call if socket terminated. -kes Remove some duplicated code in tls.c -kes Move more of the bsock member variables into private and access - them with methods. -kes Add Frank Sweetser's tls-test to the regression suite. -22Jun07 -kes Add Swedish sv.po file -21Jun07 -kes Don't print clock skew message in FD if less than 3 seconds diff. -kes Add a bit of VSS info to status client. -kes Implement a first cut of Vista VSS, using Win2003 code. - -Release: 2.1.20 beta -20Jun07 -kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with - loaded tape but uses first drive). -kes Fixed bug #807 Restore encrypted backup failed on Windows 2003 - This was indeed a Win32 issue. -19Jun07 -kes Simplify search of autochanger for in-use Volume. -kes Fix exit condition of check for in-use volume. kes Remove - inappropriate my_postgresql_free_result() in db_close() - routine. -kes Fix bad return in FD when encryption signature not found. - Probably caused a crash. -kes Inhibit missing encryption signature error messages for - file types where no signature computed. -kes Correct inverted check on autochanger in reservation system. -kes Tweak debug code in autochanger reservation. -18Jun07 -kes Add some additional locking in the cats directory in subroutines - that modify packet variables called from batch insert. -kes Rework how dcrs are allocated. new_dcr() can now be called - with an existing pointer, and it will simply clean it up. - This allows the reservation system to test various different - devices, and will permit easy device changes. -kes A bunch of changes all over to handle new new_dcr() calling - sequence. -kes Work more on the Volume management in the SD. Remember Volumes - for tape drives and for autochangers (even virtual disk changers). -kes When looking at the Volume list to reserve a drive, handle - autochanger names correctly by interating through the changer - devices. Also call the Director to see if a Volume is suitable - for the current job. -kes Fix some bugs in bscan. Make sure all media records are written. - Make sure that valid JobMedia records are written for disk files. - Previously they were completely wrong. -kes Move source tar files for depkgs-mingw32 to www.bacula.org so - that the URLs don't change and so that the developers will all - work off the same copy. Rebuild from scrach. -kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17. - -Release: 2.1.18 beta -16Jun07 -kes Fix seg fault in FD from incorrect digest size. -kes Fix argument to non-OpenSSL crypto.c subroutine. - -Release: 2.1.16 beta -16Jun07 -kes Remove a few malloc()s from the encryption code. -kes Use the class calls to bsock in filed/backup.c and restore.c in - place of the old bnet_xxx code. -kes Implement code that does an on the fly calculation of the - signing digest during restore of encrypted files. It makes - a best guess at the algorithm, and if it is not correct, will - then revert to the old code which reads the file after it is - restored. -kes Implement at least one missing crypto stream in stream_to_ascii() -kes Apply patch from William that fixes bug - #877 where a reload with bad syntax causes Dir to exit. - -Cut: 2.1.14 beta (not released) -14Jun07 -kes Do not free a volume on a tape drive until another volume is - mounted and read, or the autochanger unloads the volume. - This should help the SD re-use volumes that are already mounted, - and should fix bug #886. -kes Apply patch from user brettedgar that allows gnome2-console include - the OpenSSL libraries, and hence work with SSL. Fixes bug #885. -kes Apply patch from Lucien Weller that fixes day of week calculation - because of DST flag problem. Fixes bug #887. -10Jun07 -kes Move find_next_appendable_volume() to after acquiring a valid device - in reserve.c. This fixes bug #864 -- confirmed by reporter. -09Jun07 -kes Unable to reproduce bug 872. However added additional testing for - integer. -kes Bug #874 resolved by documenting SQLite limitations. -kes Bug #882 resolved by documenting mtx-changer script for new drive code. -kes Bug #881 resolved by removing typo in mtx-changer script. -kes Made Frank Sweetser's wiki the official Bacula wiki with his - approval. Added a link to the wiki on the web page, and implemented - a backup from http://paramount.ind.wpi.edu -08Jun07 -kes Fix update allfrompool to pass pool name. -07Jun07 -kes Convert to pure GPL v2 license. -kes Fix sscanf problems reported by Peter Buschman that caused - a bus error on Solaris. -kes Rework (simplify) the select prompt in bat. -kes Move get_jobid_from_tid() into lib and create a - get_jcr_from_tid(). -kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This - should definitely fix the problem of lost error messages in the - encryption code. -kes Remove over zellous addition of FSFE copyright in a few eggxxx files. -kes Eliminate tcpd.h from the project. Enclose the #include from the - library with extern C ... -kes Add print of signal name when a signal is trapped. - -Release: 2.1.12 beta -04Jun07 -kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer. -03Jun07 -kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial - query for SQLite3. Use it to set PRAGMA synchronous = OFF. This - makes SQLit3 run 30 times faster, though a bit less safe. -kes Implement --with-batch-insert in configure and detection of thread - safe libraries. It is on by default, but turned off if no thread - safe library (e.g. SQLite 2) is available. -02Jun07 -kes Fix Bacula PostgreSQL buffer overruns. -kes Do better checking for NULL results returned from PostgreSQL; - implement retry for failed queries; clear results buffer after - failed query. Hopefully this will correct the PostgreSQL failures. -01Jun07 -kes Implement algorithm to handle only one appendable volume with - Prefer Mounted Volumes = no. -kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer - returned from a query. -kes Make volume lock recursive. -kes Implement an additional volume reservation algorithm that - starts by considering all reserved volumes then uses the - old brute force algorithm of searching the resources to - find a suitable device. -kes Add new reservations debug code and refine the old code. -kes Update the win32/dll/bacula.defs file. -29May07 -kes Tweak reservations algorithm to permit a few more cases, i.e. - volume reserved, but on different drive, ... -kes Enhance SD status to include Pool and Media Type for drive in a - more readable format (a bit longer). -kes Fix PostgreSQL double free. -28May07 -kes Minor refactoring of restore decryption code. -kes Add code to smartall.c to detect double free of a buffer. -27May07 -kes Add < > around %r in from field on mail command of bacula-dir.conf.in - so that bsmtp will create a correct email address (mailbox only). -kes Modify 'memory' command so that the buffers are listed as 'In use' - to avoid confusion with Orphaned buffers. -kes I reworked the OpenSSL include/lib flags to be handled in - the standard Bacula way, which should fix bug #863 concerning - non-standard OpenSSL libraries. -26May07 -kes Implement Help Browser window for bat. -kes Fix reload bug that reset StorageId to zero. -25May07 -kes Fix TLS #ifdefing when TLS turned off. -kes Ensure that when labelling a tape with Slot=0 that InChanger - is not set. -kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query - the same. -kes Add StartTime to final uar_sel_jobid_temp query so that we can - add DISTINCT (required by PostgreSQL). -kes Implement BSOCK authenticate_director() method. Eventually will - authenicate all daemons. -kes Move several more functions into the BSOCK class. -24May07 -kes Add code to tell the OS that we no longer need a cached - file that we were reading. In findlib/bfile.c. Also, - only cache files that we are reading. Thanks to - Tobias Oetiker for the idea. -kes Tweak to bsmtp to eliminate compiler warnings on Win32. -kes Implement script to automatically generate cats and dll .def - files for Win32 dll. -kes Update README.mingw32 to include new .def file generation. -kes Correct typo in UTF-8 error message as reported by: - jhernandez -kes Add additional sm_check() code on debug level 1. -kes Set default debug level to 1. -kes Trap SIGABRT in attempt to get traceback. -23May07 -kes Reduce bat connect timeout from 30 to 15 seconds. -kes More restructuring and implementing BSOCK class in place of - old bnet.c code. -kes Remove a few unnecessary malloc() tests in crypto code. -kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2 - not defined. Bug reported by Allan Black -kes Remove duplicate HAVE_CRYPTO definition in config.h.in -22May07 -kes Fix Verify InitCatalog mysql_escape_string() trashing memory. - Make buffer bigger. -kes Fix Verify InitCatalog. The attributes were not pointing to the - correct saved location. -kes Implement message callback so that GUI is sure to get all - daemon messages. Currently displayed in a dialog in bat. -kes Ignore SIGUSR2 (Bacula timer) in bat. -kes Apply regress patch from bug #859 to allow regress to work - with Solaris compiler. -21May07 -kes Begin adding TLS support to bat. -kes Apply UTF-8/16 patch from Yves Orton to - clean up lex.c and make it more readable. -20May07 -kes Move more bnet functions into the BSOCK class. -kes Fix tray-monitor by not requiring a timer interval in bnet_connect() -kes Complete change of berrno strerror() method to bstrerror() - -Release: 2.1.10 beta -18May07 -kes Cleanup incorrect email addresses in bsmtp. -kes Make bat display initial messages rather than discard them. -16May07 -kes First cut of adding .mod to the run command. -kes Implement auto display of messages in bat. -kes Enhanced preferences to allow all Bacula output to be - displayed in bat. -15May07 -kes Try to make bsmtp date routines more generic. -kes Fixed bug #856 autochanger documentation. -kes Rework bsmtp date editing for Win32. This fixes bug #854. -kes Add new cats entry point so Win32 builds. -14May07 -kes Attempt to fix bsmtp date editing on OSes without %z editing. - Fixes bug #854. -kes Do better checking for the MySQL 64 bit libraries looking for both - .a and .so libraries. -kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow - /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/... -kes Require the thread safe version of MySQL during configure. Thanks - to Andre Noll for pointing this out. -kes Ensure that calls to find_jobids_from_mediaid_list() check count before - continuing in migration code. -kes Apply implementation of tray-monitor font derived from gnome-console - submitted by Andreas Piesk -13May07 -kes Eliminate important memory loss in SQLite -kes Fixed the batch insert MySQL thread specific data that was not - being freed. See cats/mysql.c:db_thread_cleanup(). -kes Fix restore before command. -kes Convert old hdr.name to name() in a few places. -kes Implement update jobid command. -kes Return all time_t dates in db_get_job_record() -kes Stop watchdog in SD earlier. -kes Put Pool just after Storage in please mount message. -kes Fix pointer usage bugs in Verify InitCatalog pointed out by - Eric. -12May07 -kes Update the po files. -kes Fix Verify InitCatalog by making it cache attributes. -11May07 -kes Change name bacula-bat to bat for man 1 page to correspond to - Makefile. -kes Check for client and store NULL pointers in status command. This - fixes bug #845. -kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures). -kes Fix sign extended editing of %p. -kes Clean out a little old #ifdefing in cats/mysql.c -10May07 -kes If time diff between DIR and FD is more than 600 seconds convert - INFO message to WARNING. -kes Implement heap size display in status for all daemons. -kes Attempt to fix MySQL db open memory loss (not successfull). -kes Don't set SIGKILL and SIGSTOP neither can be trapped. -kes Eliminate memory loss in MySQL (possibly other SQLs) during - Query. This looks like a MySQL but but by doing extra releases, - the memory goes away. This should fix bug #847. -09May07 -kes When backup fails, cancel SD before waiting for sd termination. -kes If SD is waiting for FD to connect during cancel, wake up the - thread. -kes Fix fsf code so that errno is correctly reported. -kes Apply migration patch (with changes) from Sergey Svishchev -08May07 -kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL - so that Bacula doesn't later stumble into a seg fault. -kes Use the term Restore Client in the restore Job report. -kes Merge patch from Sergey Svishchev that preserves - the original job's FileSetId. -kes Merge patch from Sergey Svishchev that implements - spooling in migration jobs. Not yet tested. -kes Merge patch from Jorj Bauer that implements - reading conf file from a pipe. However, do it with open_bpipe() - rather than popen. Not yet tested. -07May07 -kes Fix an ugly bug where the VolCatBytes were getting updated - during a restore. -kes Implement bconsole memory command that prints current memory - usage, plus smartalloc dump. -kes Clarify some error messages in backup, admin, and migrate. -kes Shrink label dialog to smaller size. -kes Invert Cancel OK buttons on restore to be OK Cancel. -kes More strerror() to bstrerror() conversions. -06May07 -kes Start implementing bstrerror() in place of strerror(). -kes Stripping path -- seems to work. -04May07 -kes Prevent door and port files from being restored (mostly - Solaris stuff). -kes Free an unreleased buffer in compat code. -kes Change console Job name from *Console* to -Console- to eliminate - Win32 filename problems. Put Win32 path separator when creating - Console file. This fixes bug #846. -kes Change berrno::strerror() to berrno::bstrerror(). Not yet full - implemented. -kes Pass jcr to crypt_sign_decode because it creates a new SIGNATURE - structure. -kes Define b_errno_win32 on Linux to be zero so that it can be or'ed in - to force Win32 error message. -03May07 -kes First cut strip path. The data should be passed to the FD, - but nothing is done with it yet. -kes Enhance the digest and signature routines in the crypto - library to accept a JCR and to use it to print error messages - so that they will go in the Job report rather than the daemon's - messages. -kes Simplify some of the verify signature code. -kes Simplify a few of the alternative returns in the signature - code. -02May07 -ebl Use only POSIX regex instead of GNU regex in breg.c for - File relocation. It fix broken freebsd compilation. -kes Convert all other Dir files to use new ua class message - routines for bat. -kes Tentative fix for missing digest signature in bug 807. -kes Correct handle problem in new win32_ftruncate routine. -kes Convert ua_purge.c and ua_update.c to use new ua class - message routines for bat. -29Apr07 -kes Correct incorrect installation of LICENSE in Win32 installer. -kes Display LICENSE at the beginning of the Win32 install. -kes Attempt to correct the need for the png files to be installed - for bat. -kes Reapply my bat.conf install script in qt-console. I think I - editted bat.pro instead of bat.pro.in and it was lost. -kes Apply CentOS patches someone sent me. Checks for /var/run/subsys, - the /var/lock/subsys for subsysdir. Also corrects typos in the - doc. -28Apr07 -kes First cut update job. -kes Correct configure to include qmake of src/qt-console directory. -26Apr07 -kes Make restore job yes/mod/no print in one command so GUI works. -kes First cut implementing backup and restore client. -kes Correct editing in Verify output that caused a seg fault. -25Apr07 -kes Insure that bat.conf is not overwritten during installation. -kes Fix important bug in db_sql_query() in mysql.c. It was introduced - while I was implementing migration in March 2006 ! -24Apr07 -ebl Cleanup file relocation, using char *RegexWhere instead of - char *where + bool where_use_regexp -kes Update some manpages and add bat manpage. -kes Make a first cut at converting bacula.spec.in for bwx-console - and bgnome-console. -kes Apply patch from John Goerzen to add hostname as fourth argument - to make_catalog_backup script. -kes Fix typos I introduced into bsmtp.c -kes Make pm_strxxx() routines handle input of NULL pointer. This - is to protect from NULL pointers returned from SQL databases. -kes Correct typo in bacula-sd manpage as pointed out by John Goerzen. -kes Add more debug to FIFO code -- fix fifo regression test. -23Apr07 -kes Implement posix_fadvise in FD, and for reading spool files in SD. -kes Add thread timer to bnet_connect() to break from OS if wait time - expires. -22Apr07 -kes Update Win32 build to include new files, new symbols, and - renamed files. -kes Implement socket level heartbeat (tcp_keepidle) -ebl Commit File relocation patch -kes Make bat have 'make install' target. -kes Warn during install if old gnome-console binary found. -kes Warn during install if old wx-console binary found. -kes Add -8 option to bsmtp command line to add content type utf-8. - Fixes bug #809. (Character coding problem in bsmtp). -kes If < is found in target (from, to, cc) then do not enclose the - target in < > in bsmtp. Fixes bug #772 (malformed address). -kes When printing certain items in dbcheck, stop after 300000. - Fixes bug #822. (dbcheck loops). -kes Incorrect status in Dir after waiting for mount with poll set. - Fixes bug #825. -21Apr07 -kes Extend idea of Prefer Mounted Volumes to mean a volume about - to be mounted. -kes Print waiting to reserve a device every 5 mins. -20Apr07 -kes Don't call close_part in label.c if tape and relabel. -kes Don't free volume if busy in close() -- should help with - bug 801. -ebl Fix #824 RunScript bug (After script could be execute twice) - Now, Before Script can use RunsOnSuccess and RunsOnFailure options - By default (like before) RunsOnSuccess=true and RunsOnFailure=false - Add a regression script to test RunScript -19Apr07 -kes Correct usage of MTIOCLRERR ioctl for clearing persistant errors - on Solaris. -18Apr07 -kes The bgnome-console (gnome-console) and bwx-console (wx-console) are - deprecated. No additional bugs will be fixed, and they will be dropped - in a future release (probably 2.4.0). -kes Change name of wx-console to bwx-console to make it more Bacula - unique. -kes Change the name of gnome-console to bgnome-console to make it - more Bacula unique. -14Apr07 -kes Some time in March, a Feature Request with patch from Jorj Bauer - was committed by Landon (with my approval). - It implements: - The ability for the director to validate a Client (FD) CN against - an arbitrary set of patterns rather than the hostname, with - A new 'TLS Allowed CN' set of directives which are implemented - in the Client resource. Then pattern matching is used in place - of hostname matching against the Certificate's CN. As an example, we - have certificates which (a) use a local CA, and (b) have a CN of the - form client_123. -kes Add new/changed entry points to Win32 build -kes Create unaccepted-projects for projects that are not accepted. -kes Simplify locking in the reservations system. -kes Add more debug code in reservations. -kes Make sure error condition on reserving a volume is handled correctly. -kes Correct handling of volume_in_use. -kes Correct handling of initializing a device. -kes Move handling of broadcasting releasing a device into release_device(). -kes Correct attaching dcr to dev so that it is only done if device - is properly initiated. -12Apr07 -kes Locking debug level tweaks in SD. -kes Tweak new Volume code. -11Apr07 -kes Add exec external-command [wait-seconds] to bconsole. This - executes the external-command. Note! normally external-command - should be enclosed in double quotes. -kes Turn the .die command on only if DEVELOPER is defined -- i.e. - it should normally be off in a production system. -10Apr07 -kes Implement die command for SD so that we can force it to dump. -kes Implement SD lock debug code. -kes Implement new algorithm for keeping Volume list in SD. It - is now owned by the device. -04Apr07 -kes Implement new code for freeing in use volumes that should - resolve if not all, some of the problems of multiple drive - tape conflicts described in bug 801. -03Apr07 -kes Fix gui/bacula-web/images files in svn. -kes Turn on FreeBSD/OpenBSD code to set EOT model on tape. -02Apr07 -ebl Fix a bug in batch mode (in string escape) -kes Correct migration prune SQL typo that crept in in a - recent 2.1.x change. -01Apr07 -kes Move bnet_despool() into class in bsock.c -kes Modify job report to include director name and Build OS. -kes Move drop root privilege and check_catalog() before fork. -kes Add update database scripts (version 9 to 10) to updatedb directory. -31Mar07 -ebl Check size and age of each file after its backup to see if - it has changed during backup, if 'checkfilechanges' is set. - The FD will do an extra check (stat(2)) after - each file backup. mtime, ctime and size are compared with - 'before backup' information. If time or size mismatch, an - error message will be generated. You must upgrade FD to use it. -30Mar07 -kes Make database name and user configurable - --with-db-name=xxx --with-db-user=xxx -kes Add back database type to message.c for debugging. -29Mar07 -kes Implement dir_sql() which issues an SQL query. -kes Modify bat medialist to use dir_sql() and do some minor C++ - formatting as well as eliminating a number of pointers, simplifing - the code. -28Mar07 -kes Fix some of the mtx-changer grep commands for tape label readers. -kes Convert a number of bsendmsg into the appropriate send/warning/error - message class calls. -kes Suppress the using database message in the .sql command. -kes Correct an incorrect bnet_tls_client prototype -- patch from Martin. -27Mar07 -kes Add context menu for floating a window. -kes Some minor cleanup and name changes in qt-console -kes Add doing mt setblk 0 in Win32 mtx-changer. -kes Apply Martin's bug fix to move definition of ENODATA for - FreeBSD to bsock.c -ebl Add a BUSY handler to sqlite to be able to use multi_db = 1 with - sqlite2 and sqlite3. -26Mar07 -kes More pruning cleanup. -kes Turn on wait_for_drive by default in mtx-changer. -kes Turn on Batch insert code by default as it now passes regression. -kes Add ./configure --enable-bat to enable building of Bat. - No install yet though. -25Mar07 -kes Implement a new .sql command for bat. -kes Implement code to turn off pruning in obtaining the next volume. - Pruning is turned off for the status dir command, but turned on - for SD requests and for the list nextvolume command. -24Mar07 -kes Correct Qmsg() that was not updated correctly when committing a - previous change (probably the recent TLS patch). -23Mar07 -kes Write new subroutine is_volume_purged() that explicitly checks - if the Volume is purged, and if so marks it as such. This should - resolve problems reported about needing to mount twice to recycle - volumes. -kes Rewrite pruning algorithm to do more work in the SQL engine, and - to pass a list of JobIds to be deleted to SQL. Also, minimize the - amount of duplicated code. -kes Do volume pruning only for the Media Type desired (reduces pruning time - if multiple Media Types are in the same pool). -kes Implement more detailed info in the Job report for the Bacula version - and architecture. -kes Switch from POOLMEM to POOL_MEM (a real class) in ua_prune.c and - ua_purge.c. -ebl Add bbatch tool to bench database and insert mode. - Fix sql quote stuff in batch mode - Fix sql stuff for mysql -22Mar07 -kes Correct problems with am/pm scheduling. Fixes bug #808. -kes Implement new prunning code that prunes up to 1000 jobs at - the same time. The same technique can be applied to a number - of other prune/purge subroutines. -kes Add an insanity check when starting a new tape job to ensure - that the tape position has not been changed. If so fail the - job. -kes Fix Win32 build for dlls to add the folllowing: - src/lib/bsock.c -- new file with new entry points - src/lib/dlist.c -- new entry points - src/cats/sql_create.c -- new entry point - src/cats/sql_cmds.c -- new DATA item exported -21Mar07 -ebl batch mode cleanup bscan-test is ok now. -kes Implement SD code to check length of disk volume before appending. -18Mar07 -kes Correct return status on db_batch... routines. -kes Add call to db_write_batch_file_records() to migration code. -ebl Fix AfterJob timing -kes Move the checking of the database in initializion of the Director - to after we drop privileges. This avoids the need for both root - and bacula access to the DB. -kes Correct a misplaced variable definition in src/filed/backup.c -kes Correct how the new batch insert db_create_attributes_record() - uses the arguments. Caused a seg fault in bscan. -kes Implement lock() and unlock() methods in DEVICE class. - Implement block() and set_block(xx) methods in DEVICE class. -kes Modify bnet_connect() so that it uses time() to check for the - wait time expiring (on some OSes, some system calls may not - return immediately). -kes Modify Verify to obtain the previous JobId when it is actually - running rather than at schedule time (as it was in 1.38.x). -kes Fix src/job.c to handle MaxWaitTime correctly. This should - fix bug #802. -kes When checking pid in pid file, continue running if the pid is - the same as ours. This occurs on IRIX after a system crash. - Fixes bug #797. -10Mar07 -kes Extend new GUI API. -kes Make the ua structure a class, and implement send_msg(), - error_msg(), warning_msg(), and info_msg(). -08Mar07 -kes Apply fix from for building wx-console on the Mac from - bug #798. -kes Implement new select mechanism for GUI programs. -kes Reorganize initialization of stackedWidgets in bat. -07Mar07 -kes Add updated nagios plugin supplied by Christian Masopust. -05Mar07 -kes More bat implementation. -kes File migrate bug with Pool Occupancy using mediaid instead - of jobids. Fixes bug #795. -kes Fix orphaned buffers in filed backup and verify due to - crypto buffers not freed during errors. Fixes bug #789. -kes Extend new GUI api code to tree commands. -kes Ensure that tree and dot commands check console ACLs. -kes Permit marking directory with trailing slash. -kes Allow 20 console connections (instead of only 10). -04Mar07 -kes Add smartctl call to bacula-sd.conf as an example of getting - tape alert info. -02Mar07 -kes Modify jobq.c to let simultaneous restore jobs run. This may - cause them to fail if they cannot get a drive. -kes Add Client Connect Wait to Storage daemon to permit users to - modify the time the SD waits for a FD connection. -29Feb07 -kes Correct virtual changer check which was backwards. This caused - volumes to be unloaded into slots already occupied. -28Feb07 -kes Apply Command ACL filter to JobId list in restore command. -kes Correct typeo in var.c patch. -27Feb07 -kes Don't let Bacula prune File or Job records for the current Job. -kes Fix variable substitution pad + inc bug reported (with patch) - in bug #791. -26Feb07 -kes Correct SQLite log table index as reported by Luca Berra. -24Feb07 -ebl fix fifo stuff, bacula tries to rewind the fifo... Thanks to Andreas -22Feb07 -kes Begin implementing new comm signals for API. -kes Fix a few places in lib/message.c where the open fd may - not be zeroed. -kes Continue implementing lib/bsock.c (real class). Make jcr, - who, host, and port private. There are new methods to access - them for non-class use. This required touching a number of files. -21Feb07 -kes Add LANG=C to autoconf/randpass so it works with languages other - than English. Fixes bug #788. -20Feb07 -ebl Revert ClientRunBeforeJob to old position as in 1.38.X. - This fixes bug #780 - You will not be able to generate Include/Exclude list any more. - It will be fixed soon. - If you want to use this, you can apply - trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch -19Feb07 -kes Restore of sockets created false error messages because Bacula - no longer restores sockets, but the code was still trying to - set the attributes on a non-existent file. Reported by a user. -ebl finish RecyclePool feature - Media will takes Pool.RecyclePool - when moving from Scratch to a Pool or when user will do - update volume=xxx frompool - To use it, add RecyclePool = aPool to your Pool resource - Pool { - Name = Default - RecyclePool = Scratch - ... - } - TODO: update manual -kes Expand new BSOCK class adding signal() and new BNET signals. -kes Begin enhancing the dot commands adding a new API function - that returns more information and will make it easier - to interface to the Director from a program. -18Feb07 -kes Make DEVICE fd private. Its new name is m_fd, and can be - obtained with dev->fd() outside the class. This is the - first of many DEVICE members to be made private. -kes Implement Michael Renner's idea on having a virtual disk - changer. I made some minor modifications (e.g. I did not - implement the Virtual Changer directive, but simply set - the Changer Command to an empty string. -17Feb07 -kes Implement a BSOCK send() method that writes the whole record - in a single write() request rather than in two. -ebl add update volume=xxx recyclepool=yyyy - volume takes recyclepool from pool when using update volume=xxx from pool -16Feb07 -kes Fix encryption deblocking bug, which caused some restored files - to be truncated. This fixes bug #763. -kes Add FD event sequence order prepared by Eric -- for RunScripts. -kes Fix 12am/pm bug as reported in bug #782 -- scheduler problem. -13Feb07 -kes Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1. -ebl Use btime_t instead of uint64_t in media patch. -11Feb07 -kes Optimize the use of the database a bit in the Status dir command. - Only open it when needed, ensure that if any previous database - was opened, it is closed. -10Feb07 -kes Correct VolCatBytes bug from media patch. -kes Apply patch from bug #612 by Rudolf Cejka to speedup pruning - in the case of orphaned records. -kes Modify dbcheck to handle orphaned JobMedia, Path, Filename, - and File records in 300K chunks to be more efficient. This - idea came from Juan Luis Frances (if I remember right). -kes Apply Eric's scratch patch that moves a purged Volume to - the RecyclePool. Question: how is RecyclePool set? what - happens to the ScratchPool? -kes Apply Eric's media patch that collects read/write media - times as well as byte counts. This patch requires a - simultaneous upgrade of the DIR and SD. Note, there - should be some way to turn off timing. I'm not sure - times are in Bacula units. -kes Apply Eric's batch-insert patch. -09Feb07 -kes Update projects list. -08Feb07 -kes Implement Include/Exclude file lists in FD as dlists using - the new dlistString class. This permits efficiently having - large include/exclude lists and completes project Item 25. -kes Fix dird/ua_cmds.c so that a cancel command checks if the - console is authorized to cancel the job. This fixes bug - #767. -kes Modify SD so that the VolCatJobs medium record is updated - at the beginning of a Job rather than the end. This - fixes bug #775 where exceeding MaxVolJobs caused jobs - to fail. -kes Added a mutex around getting and setting Volume information - so that multiple simultaneous jobs will single thread. -07Feb07 - Switch to using Subversion -kes Remove src/pygtk-console/ from configure -06Feb07 -kes Delete src/lib/btree.c from win32 build, then add rblist.c - plus the entrypoints. -kes Apply patch supplied that corrects debug print - in canceling jobs for max run time. Supplied as - part of bug #621, which was previously fixed. -05Feb07 -kes Test on job_canceled() and sd_msg_thread_done inside - loop starting the message thread to avoid a race condition. - Fixes bug #771. -kes Remove rl_catch_signal from console.c as it conflicted - with the header definition. Fixes bug #765. -ebl Fixes bug #766 about RunsOnClient = Yes (case sensitive) -04Feb07 -kes Clarify some stored/acquire messages to indicate if the - problem is with read or append. -02Feb07 -kes Fix memory leak with storage ids in cats/sql_get.c -kes Terminate watchdog earlier to avoid reference to released - memory -- reported by Jason Austin. -kes Move closing the database from jobq.c to the director daemon - termination routine. This fixes memory leaks for shadow jobs - (i.e. migration jobs). -kes Free up the unique jobid chain items in migrate.c. This fixes - a memory leak problem. -kes Convert some ugly looking for statements to use foreach_alist - in findlib/find.c. This will facilitate converting the structures - to use dlist (for large include/exclude lists). -kes Fix a bug in the btree.c and btree.h routines, then rename them - rblist and add them to be built in src/lib. Include some new - methods written by Rudolf Cejka that make the code more readable - (hides some of the ugly casting). -kes Add set_next() and set_prev() methods which make the code much more - readable. Also add a new dlistString class that facilitates storing - strings in dlists. To be used in the large include/exclude lists. -kes Make some trivial modifications to lib/tree.h that use rblist - rather than dlist for storing the tree links. This was suggested - by Rudolf Cejka. The result of this is that the restore tree now - uses red-black binary trees rather than simple linked lists. This - should give rather dramatic speed improvements for directories - contining large numbers of directories/files (more than 10000). -28Jan07 -kes Fix maxruntime bug #621. -26Jan07 -ebl Implement the include JobID in spool file name project. -kes Reorder projects file in order determined by Jan 2007 vote. -kes Implement item #12 on project list -- quick release of FD by - the SD. -kes Fix open of SQLite3 db where user does not have write permission - so that DIR does not crash. Fixes bug #761. -25Jan07 -kes Add back missing @ in Win32 Makefile. -kes Change 'Device not configured to autolabel' from INFO - to WARNING. -kes Fix jobq.c to restart failed jobs when Reschedule Times = 0 - which should restart an indefinite # of times. -kes Fix configure --help to print --with-mysql[=DIR]. Same for - other DIR specifications. -23Jan07 -rn Fix msvc build problems. Fix bacula.dll exports for msvc build. - Fix path quoting in SQLite scripts. - Fix problems with SHGetFolderPath. -19Jan07 -kes Create patches/2.0.1-restart.patch. Fixes bug #755. -18Jan07 -kes Fix Job restart on error bug that promotes an Inc to a Full - backup. This should fix bug #755. -kes Add qt-console and first cut of code. - -Version 2.0.1 -12Jan07 -kes Fix Bacula->Documentation link on Win32 to point to index.html - instead of bacula.html. Fixed bug #750. -kes Return JobId in db_get_job_record() when JobId==0. This should - fix bug #741. -kes Do not release source pointers when restarting a failed job. -11Jan07 -kes Add dynamic dll entry point for SHGetFolderPath to Win32 code. - This *should* fix bug #747. -kes Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix - bug #742. -09Jan07 -kes Modify USTORE constructor to set an empty store_source string, - and don't copy the store_source string in a cancel. Hopefully - this will fix Arno's seg fault, bug #744. -kes Add back code to disable conio in configure. Fixes bug #743. -kes Correct the Options scanner in the FD to correctly handle - SHA1 option, which was eating the next option. Reported by - Sebastien Guilbaud. -kes Add code to indicate when the SD is spooling, spool wait, and - despooling as requested by Alan Brown. - -Version 2.0.0 released: 4 January 2007 -- 2.39.5