diff --git a/bacula-7.0.0-configure.patch b/bacula-7.0.0-configure.patch new file mode 100644 index 0000000..f779279 --- /dev/null +++ b/bacula-7.0.0-configure.patch @@ -0,0 +1,20 @@ +--- bacula-7.0.0.old/configure 2014-03-29 10:00:03.000000000 +0100 ++++ bacula-7.0.0/configure 2014-03-30 12:10:44.275522112 +0200 +@@ -30888,7 +30888,7 @@ + exit 1 + fi + +-ac_config_files="$ac_config_files autoconf/Make.common Makefile manpages/Makefile scripts/btraceback scripts/bconsole scripts/bacula scripts/bacula-ctl-dir scripts/bacula-ctl-fd scripts/bacula-ctl-sd scripts/devel_bacula scripts/Makefile scripts/logrotate scripts/mtx-changer scripts/disk-changer scripts/dvd-handler scripts/dvd-simulator scripts/logwatch/Makefile scripts/logwatch/logfile.bacula.conf scripts/bat.desktop scripts/bat.desktop.xsu scripts/bat.desktop.consolehelper scripts/bat.console_apps src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/qt-console/bat.conf src/qt-console/bat.pro src/qt-console/bat.pro.mingw32 src/qt-console/install_conf_file src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/cats/Makefile src/cats/make_catalog_backup.pl src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite3_database src/cats/update_sqlite3_tables src/cats/make_sqlite3_tables src/cats/grant_sqlite3_privileges src/cats/drop_sqlite3_tables src/cats/drop_sqlite3_database src/cats/sqlite src/cats/mysql src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/cats/install-default-backend src/findlib/Makefile src/tools/Makefile src/plugins/fd/Makefile src/plugins/sd/Makefile src/plugins/dir/Makefile po/Makefile.in updatedb/update_mysql_tables_9_to_10 updatedb/update_sqlite3_tables_9_to_10 updatedb/update_postgresql_tables_9_to_10 updatedb/update_mysql_tables_10_to_11 updatedb/update_sqlite3_tables_10_to_11 updatedb/update_postgresql_tables_10_to_11 updatedb/update_mysql_tables_11_to_12 updatedb/update_sqlite3_tables_11_to_12 updatedb/update_postgresql_tables_11_to_12 examples/nagios/check_bacula/Makefile platforms/rpms/redhat/bacula.spec platforms/rpms/redhat/bacula-bat.spec platforms/rpms/redhat/bacula-docs.spec platforms/rpms/redhat/bacula-mtx.spec platforms/rpms/suse/bacula.spec platforms/rpms/suse/bacula-bat.spec platforms/rpms/suse/bacula-docs.spec platforms/rpms/suse/bacula-mtx.spec $PFILES" ++ac_config_files="$ac_config_files autoconf/Make.common Makefile manpages/Makefile scripts/btraceback scripts/bconsole scripts/bacula scripts/bacula-ctl-dir scripts/bacula-ctl-fd scripts/bacula-ctl-sd scripts/devel_bacula scripts/Makefile scripts/logrotate scripts/mtx-changer scripts/disk-changer scripts/dvd-handler scripts/dvd-simulator scripts/logwatch/Makefile scripts/logwatch/logfile.bacula.conf scripts/bat.desktop scripts/bat.desktop.xsu scripts/bat.desktop.consolehelper scripts/bat.console_apps src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/qt-console/bat.conf src/qt-console/bat.pro src/qt-console/bat.pro.mingw32 src/qt-console/install_conf_file src/qt-console/tray-monitor/tray-monitor.conf src/qt-console/tray-monitor/tray-monitor.pro src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/cats/Makefile src/cats/make_catalog_backup.pl src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite3_database src/cats/update_sqlite3_tables src/cats/make_sqlite3_tables src/cats/grant_sqlite3_privileges src/cats/drop_sqlite3_tables src/cats/drop_sqlite3_database src/cats/sqlite src/cats/mysql src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/cats/install-default-backend src/findlib/Makefile src/tools/Makefile src/plugins/fd/Makefile src/plugins/sd/Makefile src/plugins/dir/Makefile po/Makefile.in updatedb/update_mysql_tables_9_to_10 updatedb/update_sqlite3_tables_9_to_10 updatedb/update_postgresql_tables_9_to_10 updatedb/update_mysql_tables_10_to_11 updatedb/update_sqlite3_tables_10_to_11 updatedb/update_postgresql_tables_10_to_11 updatedb/update_mysql_tables_11_to_12 updatedb/update_sqlite3_tables_11_to_12 updatedb/update_postgresql_tables_11_to_12 examples/nagios/check_bacula/Makefile platforms/rpms/redhat/bacula.spec platforms/rpms/redhat/bacula-bat.spec platforms/rpms/redhat/bacula-docs.spec platforms/rpms/redhat/bacula-mtx.spec platforms/rpms/suse/bacula.spec platforms/rpms/suse/bacula-bat.spec platforms/rpms/suse/bacula-docs.spec platforms/rpms/suse/bacula-mtx.spec $PFILES" + + ac_config_commands="$ac_config_commands default" + +@@ -32021,6 +32021,8 @@ + "src/qt-console/bat.pro") CONFIG_FILES="$CONFIG_FILES src/qt-console/bat.pro" ;; + "src/qt-console/bat.pro.mingw32") CONFIG_FILES="$CONFIG_FILES src/qt-console/bat.pro.mingw32" ;; + "src/qt-console/install_conf_file") CONFIG_FILES="$CONFIG_FILES src/qt-console/install_conf_file" ;; ++ "src/qt-console/tray-monitor/tray-monitor.conf") CONFIG_FILES="$CONFIG_FILES src/qt-console/tray-monitor/tray-monitor.conf" ;; ++ "src/qt-console/tray-monitor/tray-monitor.pro") CONFIG_FILES="$CONFIG_FILES src/qt-console/tray-monitor/tray-monitor.pro" ;; + "src/dird/Makefile") CONFIG_FILES="$CONFIG_FILES src/dird/Makefile" ;; + "src/dird/bacula-dir.conf") CONFIG_FILES="$CONFIG_FILES src/dird/bacula-dir.conf" ;; + "src/lib/Makefile") CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;; diff --git a/bacula-7.0.0-git.patch b/bacula-7.0.0-git.patch new file mode 100644 index 0000000..9ef2e06 --- /dev/null +++ b/bacula-7.0.0-git.patch @@ -0,0 +1,2207 @@ +diff --git a/bacula/AUTHORS b/bacula/AUTHORS +index f9b62fa..5ea21c2 100644 +--- a/bacula/AUTHORS ++++ b/bacula/AUTHORS +@@ -108,6 +108,7 @@ Rudolf Cejka + Russel Howe + Scott Bailey + Sergey Svishchev ++Simone Caronni + Stefan Reddig + Thomas Glatthor + Thorsten Enge +diff --git a/bacula/Makefile.in b/bacula/Makefile.in +index 63acc13..ec484d8 100755 +--- a/bacula/Makefile.in ++++ b/bacula/Makefile.in +@@ -114,31 +114,6 @@ installdirs: + chgrp $(dir_group) $(DESTDIR)$(working_dir); \ + fi + +-gnomedirs: +- $(MKDIR) $(DESTDIR)/usr/share/pixmaps +- $(MKDIR) $(DESTDIR)/usr/share/gnome/apps/System +- $(MKDIR) $(DESTDIR)/usr/share/applications +- $(MKDIR) $(DESTDIR)/etc/security/console.apps +- $(MKDIR) $(DESTDIR)/etc/pam.d +- +-install-menu: gnomedirs +- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png +- ${INSTALL_DATA} scripts/bacula.desktop.gnome1 $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop +- ${INSTALL_DATA} scripts/bacula.desktop.gnome2 $(DESTDIR)/usr/share/applications/bacula.desktop +- +-install-menu-xsu: gnomedirs +- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png +- ${INSTALL_DATA} scripts/bacula.desktop.gnome1.xsu $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop +- ${INSTALL_DATA} scripts/bacula.desktop.gnome2.xsu $(DESTDIR)/usr/share/applications/bacula.desktop +- +-install-menu-consolehelper: gnomedirs +- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png +- ${INSTALL_DATA} scripts/bacula.desktop.gnome1.consolehelper $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop +- ${INSTALL_DATA} scripts/bacula.desktop.gnome2.consolehelper $(DESTDIR)/usr/share/applications/bacula.desktop +- ${INSTALL_DATA} scripts/gnome-console.console_apps $(DESTDIR)/etc/security/console.apps/gnome-console +- ${INSTALL_DATA} scripts/gnome-console.pamd $(DESTDIR)/etc/pam.d/gnome-console +- ln -s $(DESTDIR)/usr/bin/consolehelper $(DESTDIR)/usr/bin/gnome-console +- + install: installdirs + @for I in $(doc_files) ; do $(INSTALL_DATA) $$I $(DESTDIR)${docdir}; done + @for I in $(all_subdirs); do (cd $$I && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1); done +@@ -170,19 +145,6 @@ uninstall-autostart-fd: + uninstall-autostart-sd: + (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1) + +-uninstall-menu: +- $(RMF) $(DESTDIR)/usr/share/pixmaps/bacula.png +- $(RMF) $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop +- $(RMF) $(DESTDIR)/usr/share/applications/bacula.desktop +- +-uninstall-menu-consolehelper: +- $(RMF) $(DESTDIR)/usr/share/pixmaps/bacula.png +- $(RMF) $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop +- $(RMF) $(DESTDIR)/usr/share/applications/bacula.desktop +- $(RMF) $(DESTDIR)/etc/security/console.apps/gnome-console +- $(RMF) $(DESTDIR)/etc/pam.d/gnome-console +- $(RMF) $(DESTDIR)/usr/bin/gnome-console +- + Makefile: Makefile.in + cd $(topdir) \ + && CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status +diff --git a/bacula/autoconf/config.guess b/bacula/autoconf/config.guess +index e3a2116..872b96a 100755 +--- a/bacula/autoconf/config.guess ++++ b/bacula/autoconf/config.guess +@@ -1,10 +1,10 @@ + #! /bin/sh + # Attempt to guess a canonical system name. + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +-# Free Software Foundation, Inc. ++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, ++# 2011, 2012 Free Software Foundation, Inc. + +-timestamp='2009-06-10' ++timestamp='2012-09-25' + + # This file is free software; you can redistribute it and/or modify it + # under the terms of the GNU General Public License as published by +@@ -17,9 +17,7 @@ timestamp='2009-06-10' + # General Public License for more details. + # + # You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +-# 02110-1301, USA. ++# along with this program; if not, see . + # + # As a special exception to the GNU General Public License, if you + # distribute this file as part of a program that contains a +@@ -27,16 +25,16 @@ timestamp='2009-06-10' + # the same distribution terms that you use for the rest of that program. + + +-# Originally written by Per Bothner . +-# Please send patches to . Submit a context +-# diff and a properly formatted ChangeLog entry. ++# Originally written by Per Bothner. Please send patches (context ++# diff format) to and include a ChangeLog ++# entry. + # + # This script attempts to guess a canonical system name similar to + # config.sub. If it succeeds, it prints the system name on stdout, and + # exits with 0. Otherwise, it exits with 1. + # +-# The plan is that this can be called by configure scripts if you +-# don't specify an explicit build system type. ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD + + me=`echo "$0" | sed -e 's,.*/,,'` + +@@ -56,8 +54,9 @@ version="\ + GNU config.guess ($timestamp) + + Originally written by Per Bothner. +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, ++2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 ++Free Software Foundation, Inc. + + This is free software; see the source for copying conditions. There is NO + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." +@@ -144,7 +143,7 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or +- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, ++ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward +@@ -180,7 +179,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + fi + ;; + *) +- os=netbsd ++ os=netbsd + ;; + esac + # The OS release +@@ -201,6 +200,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit ;; ++ *:Bitrig:*:*) ++ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` ++ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} ++ exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} +@@ -223,7 +226,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) +- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on +@@ -269,7 +272,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` +- exit ;; ++ # Reset EXIT trap before exiting to avoid spurious non-zero exit code. ++ exitcode=$? ++ trap '' 0 ++ exit $exitcode ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead +@@ -295,12 +301,12 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) +- echo powerpc-ibm-os400 ++ echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit ;; +- arm:riscos:*:*|arm:RISCOS:*:*) ++ arm*:riscos:*:*|arm*:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) +@@ -333,6 +339,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; ++ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) ++ echo i386-pc-auroraux${UNAME_RELEASE} ++ exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH="i386" +@@ -391,23 +400,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) +- echo m68k-atari-mint${UNAME_RELEASE} ++ echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} +- exit ;; ++ exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) +- echo m68k-atari-mint${UNAME_RELEASE} ++ echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) +- echo m68k-milan-mint${UNAME_RELEASE} +- exit ;; ++ echo m68k-milan-mint${UNAME_RELEASE} ++ exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) +- echo m68k-hades-mint${UNAME_RELEASE} +- exit ;; ++ echo m68k-hades-mint${UNAME_RELEASE} ++ exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) +- echo m68k-unknown-mint${UNAME_RELEASE} +- exit ;; ++ echo m68k-unknown-mint${UNAME_RELEASE} ++ exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit ;; +@@ -477,8 +486,8 @@ EOF + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) +- # DG/UX returns AViiON for all architectures +- UNAME_PROCESSOR=`/usr/bin/uname -p` ++ # DG/UX returns AViiON for all architectures ++ UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ +@@ -491,7 +500,7 @@ EOF + else + echo i586-dg-dgux${UNAME_RELEASE} + fi +- exit ;; ++ exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; +@@ -548,7 +557,7 @@ EOF + echo rs6000-ibm-aix3.2 + fi + exit ;; +- *:AIX:*:[456]) ++ *:AIX:*:[4567]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 +@@ -591,52 +600,52 @@ EOF + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` +- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` +- case "${sc_cpu_version}" in +- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 +- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 +- 532) # CPU_PA_RISC2_0 +- case "${sc_kernel_bits}" in +- 32) HP_ARCH="hppa2.0n" ;; +- 64) HP_ARCH="hppa2.0w" ;; ++ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` ++ case "${sc_cpu_version}" in ++ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 ++ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 ++ 532) # CPU_PA_RISC2_0 ++ case "${sc_kernel_bits}" in ++ 32) HP_ARCH="hppa2.0n" ;; ++ 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 +- esac ;; +- esac ++ esac ;; ++ esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build +- sed 's/^ //' << EOF >$dummy.c ++ sed 's/^ //' << EOF >$dummy.c + +- #define _HPUX_SOURCE +- #include +- #include ++ #define _HPUX_SOURCE ++ #include ++ #include + +- int main () +- { +- #if defined(_SC_KERNEL_BITS) +- long bits = sysconf(_SC_KERNEL_BITS); +- #endif +- long cpu = sysconf (_SC_CPU_VERSION); ++ int main () ++ { ++ #if defined(_SC_KERNEL_BITS) ++ long bits = sysconf(_SC_KERNEL_BITS); ++ #endif ++ long cpu = sysconf (_SC_CPU_VERSION); + +- switch (cpu) +- { +- case CPU_PA_RISC1_0: puts ("hppa1.0"); break; +- case CPU_PA_RISC1_1: puts ("hppa1.1"); break; +- case CPU_PA_RISC2_0: +- #if defined(_SC_KERNEL_BITS) +- switch (bits) +- { +- case 64: puts ("hppa2.0w"); break; +- case 32: puts ("hppa2.0n"); break; +- default: puts ("hppa2.0"); break; +- } break; +- #else /* !defined(_SC_KERNEL_BITS) */ +- puts ("hppa2.0"); break; +- #endif +- default: puts ("hppa1.0"); break; +- } +- exit (0); +- } ++ switch (cpu) ++ { ++ case CPU_PA_RISC1_0: puts ("hppa1.0"); break; ++ case CPU_PA_RISC1_1: puts ("hppa1.1"); break; ++ case CPU_PA_RISC2_0: ++ #if defined(_SC_KERNEL_BITS) ++ switch (bits) ++ { ++ case 64: puts ("hppa2.0w"); break; ++ case 32: puts ("hppa2.0n"); break; ++ default: puts ("hppa2.0"); break; ++ } break; ++ #else /* !defined(_SC_KERNEL_BITS) */ ++ puts ("hppa2.0"); break; ++ #endif ++ default: puts ("hppa1.0"); break; ++ } ++ exit (0); ++ } + EOF + (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + test -z "$HP_ARCH" && HP_ARCH=hppa +@@ -727,22 +736,22 @@ EOF + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd +- exit ;; ++ exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi +- exit ;; ++ exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd +- exit ;; ++ exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd +- exit ;; ++ exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd +- exit ;; ++ exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; +@@ -766,14 +775,14 @@ EOF + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` +- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` +- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` +- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" +- exit ;; ++ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` ++ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` ++ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" ++ exit ;; + 5000:UNIX_System_V:4.*:*) +- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` +- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` +- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" ++ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` ++ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` ++ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} +@@ -785,34 +794,39 @@ EOF + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:FreeBSD:*:*) +- case ${UNAME_MACHINE} in +- pc98) +- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; ++ UNAME_PROCESSOR=`/usr/bin/uname -p` ++ case ${UNAME_PROCESSOR} in + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) +- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; ++ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; ++ *:MINGW64*:*) ++ echo ${UNAME_MACHINE}-pc-mingw64 ++ exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; ++ i*:MSYS*:*) ++ echo ${UNAME_MACHINE}-pc-msys ++ exit ;; + i*:windows32*:*) +- # uname -m includes "-pc" on this system. +- echo ${UNAME_MACHINE}-mingw32 ++ # uname -m includes "-pc" on this system. ++ echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; +- *:Interix*:[3456]*) +- case ${UNAME_MACHINE} in ++ *:Interix*:*) ++ case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; +- EM64T | authenticamd | genuineintel) ++ authenticamd | genuineintel | EM64T) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) +@@ -854,6 +868,27 @@ EOF + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; ++ aarch64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; ++ aarch64_be:Linux:*:*) ++ UNAME_MACHINE=aarch64_be ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; ++ alpha:Linux:*:*) ++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in ++ EV5) UNAME_MACHINE=alphaev5 ;; ++ EV56) UNAME_MACHINE=alphaev56 ;; ++ PCA56) UNAME_MACHINE=alphapca56 ;; ++ PCA57) UNAME_MACHINE=alphapca56 ;; ++ EV6) UNAME_MACHINE=alphaev6 ;; ++ EV67) UNAME_MACHINE=alphaev67 ;; ++ EV68*) UNAME_MACHINE=alphaev68 ;; ++ esac ++ objdump --private-headers /bin/sh | grep -q ld.so.1 ++ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi ++ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ++ exit ;; + arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ +@@ -861,20 +896,40 @@ EOF + then + echo ${UNAME_MACHINE}-unknown-linux-gnu + else +- echo ${UNAME_MACHINE}-unknown-linux-gnueabi ++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ ++ | grep -q __ARM_PCS_VFP ++ then ++ echo ${UNAME_MACHINE}-unknown-linux-gnueabi ++ else ++ echo ${UNAME_MACHINE}-unknown-linux-gnueabihf ++ fi + fi + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + cris:Linux:*:*) +- echo cris-axis-linux-gnu ++ echo ${UNAME_MACHINE}-axis-linux-gnu + exit ;; + crisv32:Linux:*:*) +- echo crisv32-axis-linux-gnu ++ echo ${UNAME_MACHINE}-axis-linux-gnu + exit ;; + frv:Linux:*:*) +- echo frv-unknown-linux-gnu ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; ++ hexagon:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; ++ i*86:Linux:*:*) ++ LIBC=gnu ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ #ifdef __dietlibc__ ++ LIBC=dietlibc ++ #endif ++EOF ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` ++ echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +@@ -901,39 +956,18 @@ EOF + #endif + #endif + EOF +- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' +- /^CPU/{ +- s: ::g +- p +- }'`" ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; + or32:Linux:*:*) +- echo or32-unknown-linux-gnu +- exit ;; +- ppc:Linux:*:*) +- echo powerpc-unknown-linux-gnu +- exit ;; +- ppc64:Linux:*:*) +- echo powerpc64-unknown-linux-gnu +- exit ;; +- alpha:Linux:*:*) +- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in +- EV5) UNAME_MACHINE=alphaev5 ;; +- EV56) UNAME_MACHINE=alphaev56 ;; +- PCA56) UNAME_MACHINE=alphapca56 ;; +- PCA57) UNAME_MACHINE=alphapca56 ;; +- EV6) UNAME_MACHINE=alphaev6 ;; +- EV67) UNAME_MACHINE=alphaev67 ;; +- EV68*) UNAME_MACHINE=alphaev68 ;; +- esac +- objdump --private-headers /bin/sh | grep -q ld.so.1 +- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi +- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; ++ parisc64:Linux:*:* | hppa64:Linux:*:*) ++ echo hppa64-unknown-linux-gnu ++ exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in +@@ -942,14 +976,17 @@ EOF + *) echo hppa-unknown-linux-gnu ;; + esac + exit ;; +- parisc64:Linux:*:* | hppa64:Linux:*:*) +- echo hppa64-unknown-linux-gnu ++ ppc64:Linux:*:*) ++ echo powerpc64-unknown-linux-gnu ++ exit ;; ++ ppc:Linux:*:*) ++ echo powerpc-unknown-linux-gnu + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit ;; + sh64*:Linux:*:*) +- echo ${UNAME_MACHINE}-unknown-linux-gnu ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +@@ -957,67 +994,18 @@ EOF + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; ++ tile*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-gnu + exit ;; + x86_64:Linux:*:*) +- echo x86_64-unknown-linux-gnu ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + xtensa*:Linux:*:*) +- echo ${UNAME_MACHINE}-unknown-linux-gnu ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; +- i*86:Linux:*:*) +- # The BFD linker knows what the default object file format is, so +- # first see if it will tell us. cd to the root directory to prevent +- # problems with other programs or directories called `ld' in the path. +- # Set LC_ALL=C to ensure ld outputs messages in English. +- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ +- | sed -ne '/supported targets:/!d +- s/[ ][ ]*/ /g +- s/.*supported targets: *// +- s/ .*// +- p'` +- case "$ld_supported_targets" in +- elf32-i386) +- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" +- ;; +- esac +- # Determine whether the default compiler is a.out or elf +- eval $set_cc_for_build +- sed 's/^ //' << EOF >$dummy.c +- #include +- #ifdef __ELF__ +- # ifdef __GLIBC__ +- # if __GLIBC__ >= 2 +- LIBC=gnu +- # else +- LIBC=gnulibc1 +- # endif +- # else +- LIBC=gnulibc1 +- # endif +- #else +- #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) +- LIBC=gnu +- #else +- LIBC=gnuaout +- #endif +- #endif +- #ifdef __dietlibc__ +- LIBC=dietlibc +- #endif +-EOF +- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' +- /^LIBC/{ +- s: ::g +- p +- }'`" +- test x"${LIBC}" != x && { +- echo "${UNAME_MACHINE}-pc-linux-${LIBC}" +- exit +- } +- test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } +- ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both +@@ -1025,11 +1013,11 @@ EOF + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) +- # Unixware is an offshoot of SVR4, but it has its own version +- # number series starting with 2... +- # I am not positive that other SVR4 systems won't match this, ++ # Unixware is an offshoot of SVR4, but it has its own version ++ # number series starting with 2... ++ # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. +- # Use sysv4.2uw... so that sysv4* matches it. ++ # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit ;; + i*86:OS/2:*:*) +@@ -1061,7 +1049,7 @@ EOF + fi + exit ;; + i*86:*:5:[678]*) +- # UnixWare 7.x, OpenUNIX and OpenServer 6. ++ # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; +@@ -1089,13 +1077,13 @@ EOF + exit ;; + pc:*:*:*) + # Left here for compatibility: +- # uname -m prints for DJGPP always 'pc', but it prints nothing about +- # the processor, so we play safe by assuming i586. ++ # uname -m prints for DJGPP always 'pc', but it prints nothing about ++ # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp +- exit ;; ++ exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; +@@ -1130,8 +1118,8 @@ EOF + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) +- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ +- && { echo i486-ncr-sysv4; exit; } ;; ++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ ++ && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ +@@ -1174,10 +1162,10 @@ EOF + echo ns32k-sni-sysv + fi + exit ;; +- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort +- # says +- echo i586-unisys-sysv4 +- exit ;; ++ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort ++ # says ++ echo i586-unisys-sysv4 ++ exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm +@@ -1203,11 +1191,11 @@ EOF + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then +- echo mips-nec-sysv${UNAME_RELEASE} ++ echo mips-nec-sysv${UNAME_RELEASE} + else +- echo mips-unknown-sysv${UNAME_RELEASE} ++ echo mips-unknown-sysv${UNAME_RELEASE} + fi +- exit ;; ++ exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; +@@ -1220,6 +1208,9 @@ EOF + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; ++ x86_64:Haiku:*:*) ++ echo x86_64-unknown-haiku ++ exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit ;; +@@ -1247,6 +1238,16 @@ EOF + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in ++ i386) ++ eval $set_cc_for_build ++ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then ++ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ ++ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ ++ grep IS_64BIT_ARCH >/dev/null ++ then ++ UNAME_PROCESSOR="x86_64" ++ fi ++ fi ;; + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} +@@ -1262,7 +1263,10 @@ EOF + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; +- NSE-?:NONSTOP_KERNEL:*:*) ++ NEO-?:NONSTOP_KERNEL:*:*) ++ echo neo-tandem-nsk${UNAME_RELEASE} ++ exit ;; ++ NSE-*:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-?:NONSTOP_KERNEL:*:*) +@@ -1307,13 +1311,13 @@ EOF + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) +- echo mips-sei-seiux${UNAME_RELEASE} ++ echo mips-sei-seiux${UNAME_RELEASE} + exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + *:*VMS:*:*) +- UNAME_MACHINE=`(uname -p) 2>/dev/null` ++ UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; +@@ -1331,11 +1335,11 @@ EOF + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; ++ x86_64:VMkernel:*:*) ++ echo ${UNAME_MACHINE}-unknown-esx ++ exit ;; + esac + +-#echo '(No uname command or uname output not recognized.)' 1>&2 +-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 +- + eval $set_cc_for_build + cat >$dummy.c < + printf ("m68k-sony-newsos%s\n", + #ifdef NEWSOS4 +- "4" ++ "4" + #else +- "" ++ "" + #endif +- ); exit (0); ++ ); exit (0); + #endif + #endif + +diff --git a/bacula/autoconf/config.sub b/bacula/autoconf/config.sub +index eb0389a..826e4c6 100755 +--- a/bacula/autoconf/config.sub ++++ b/bacula/autoconf/config.sub +@@ -1,10 +1,10 @@ + #! /bin/sh + # Configuration validation subroutine script. + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +-# Free Software Foundation, Inc. ++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, ++# 2011, 2012 Free Software Foundation, Inc. + +-timestamp='2009-06-11' ++timestamp='2012-10-10' + + # This file is (in principle) common to ALL GNU software. + # The presence of a machine in this file suggests that SOME GNU software +@@ -21,9 +21,7 @@ timestamp='2009-06-11' + # GNU General Public License for more details. + # + # You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +-# 02110-1301, USA. ++# along with this program; if not, see . + # + # As a special exception to the GNU General Public License, if you + # distribute this file as part of a program that contains a +@@ -32,13 +30,16 @@ timestamp='2009-06-11' + + + # Please send patches to . Submit a context +-# diff and a properly formatted ChangeLog entry. ++# diff and a properly formatted GNU ChangeLog entry. + # + # Configuration subroutine to validate and canonicalize a configuration type. + # Supply the specified configuration type as an argument. + # If it is invalid, we print an error message on stderr and exit with code 1. + # Otherwise, we print the canonical config type on stdout and succeed. + ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD ++ + # This file is supposed to be the same for all GNU packages + # and recognize all the CPU types, system types and aliases + # that are meaningful with *any* GNU software. +@@ -72,8 +73,9 @@ Report bugs and patches to ." + version="\ + GNU config.sub ($timestamp) + +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, ++2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 ++Free Software Foundation, Inc. + + This is free software; see the source for copying conditions. There is NO + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." +@@ -120,13 +122,18 @@ esac + # Here we must recognize all the valid KERNEL-OS combinations. + maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` + case $maybe_os in +- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ +- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ ++ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ ++ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ ++ knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; ++ android-linux) ++ os=-linux-android ++ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ++ ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] +@@ -149,12 +156,12 @@ case $os in + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ +- -apple | -axis | -knuth | -cray) ++ -apple | -axis | -knuth | -cray | -microblaze*) + os= + basic_machine=$1 + ;; +- -bluegene*) +- os=-cnk ++ -bluegene*) ++ os=-cnk + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= +@@ -170,10 +177,10 @@ case $os in + os=-chorusos + basic_machine=$1 + ;; +- -chorusrdb) +- os=-chorusrdb ++ -chorusrdb) ++ os=-chorusrdb + basic_machine=$1 +- ;; ++ ;; + -hiux*) + os=-hiuxwe2 + ;; +@@ -218,6 +225,12 @@ case $os in + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; ++ -lynx*178) ++ os=-lynxos178 ++ ;; ++ -lynx*5) ++ os=-lynxos5 ++ ;; + -lynx*) + os=-lynxos + ;; +@@ -242,20 +255,25 @@ case $basic_machine in + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ ++ | aarch64 | aarch64_be \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ ++ | be32 | be64 \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ ++ | epiphany \ + | fido | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ ++ | hexagon \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ ++ | le32 | le64 \ + | lm32 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ +- | maxq | mb | microblaze | mcore | mep | metag \ ++ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ +@@ -278,27 +296,39 @@ case $basic_machine in + | moxie \ + | mt \ + | msp430 \ ++ | nds32 | nds32le | nds32be \ + | nios | nios2 \ + | ns16k | ns32k \ ++ | open8 \ + | or32 \ + | pdp10 | pdp11 | pj | pjl \ +- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ ++ | powerpc | powerpc64 | powerpc64le | powerpcle \ + | pyramid \ ++ | rl78 | rx \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ +- | spu | strongarm \ +- | tahoe | thumb | tic4x | tic80 | tron \ +- | v850 | v850e \ ++ | spu \ ++ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ ++ | ubicom32 \ ++ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | we32k \ +- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ ++ | x86 | xc16x | xstormy16 | xtensa \ + | z8k | z80) + basic_machine=$basic_machine-unknown + ;; +- m6811 | m68hc11 | m6812 | m68hc12) +- # Motorola 68HC11/12. ++ c54x) ++ basic_machine=tic54x-unknown ++ ;; ++ c55x) ++ basic_machine=tic55x-unknown ++ ;; ++ c6x) ++ basic_machine=tic6x-unknown ++ ;; ++ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) + basic_machine=$basic_machine-unknown + os=-none + ;; +@@ -308,6 +338,21 @@ case $basic_machine in + basic_machine=mt-unknown + ;; + ++ strongarm | thumb | xscale) ++ basic_machine=arm-unknown ++ ;; ++ xgate) ++ basic_machine=$basic_machine-unknown ++ os=-none ++ ;; ++ xscaleeb) ++ basic_machine=armeb-unknown ++ ;; ++ ++ xscaleel) ++ basic_machine=armel-unknown ++ ;; ++ + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. +@@ -322,25 +367,30 @@ case $basic_machine in + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ ++ | aarch64-* | aarch64_be-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ ++ | be32-* | be64-* \ + | bfin-* | bs2000-* \ +- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ ++ | c[123]* | c30-* | [cjt]90-* | c4x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ ++ | hexagon-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ ++ | le32-* | le64-* \ + | lm32-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ ++ | microblaze-* | microblazeel-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ +@@ -362,24 +412,29 @@ case $basic_machine in + | mmix-* \ + | mt-* \ + | msp430-* \ ++ | nds32-* | nds32le-* | nds32be-* \ + | nios-* | nios2-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ ++ | open8-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ +- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ ++ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | pyramid-* \ +- | romp-* | rs6000-* \ ++ | rl78-* | romp-* | rs6000-* | rx-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ +- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ +- | tahoe-* | thumb-* \ +- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ ++ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ ++ | tahoe-* \ ++ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ ++ | tile*-* \ + | tron-* \ +- | v850-* | v850e-* | vax-* \ ++ | ubicom32-* \ ++ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ ++ | vax-* \ + | we32k-* \ +- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ ++ | x86-* | x86_64-* | xc16x-* | xps100-* \ + | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-* | z80-*) +@@ -404,7 +459,7 @@ case $basic_machine in + basic_machine=a29k-amd + os=-udi + ;; +- abacus) ++ abacus) + basic_machine=abacus-unknown + ;; + adobe68k) +@@ -474,11 +529,20 @@ case $basic_machine in + basic_machine=powerpc-ibm + os=-cnk + ;; ++ c54x-*) ++ basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ c55x-*) ++ basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ c6x-*) ++ basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; +- cegcc) ++ cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; +@@ -510,7 +574,7 @@ case $basic_machine in + basic_machine=craynv-cray + os=-unicosmp + ;; +- cr16) ++ cr16 | cr16-*) + basic_machine=cr16-unknown + os=-elf + ;; +@@ -668,7 +732,6 @@ case $basic_machine in + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +-# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i*86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 +@@ -726,6 +789,13 @@ case $basic_machine in + basic_machine=ns32k-utek + os=-sysv + ;; ++ microblaze*) ++ basic_machine=microblaze-xilinx ++ ;; ++ mingw64) ++ basic_machine=x86_64-pc ++ os=-mingw64 ++ ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 +@@ -762,10 +832,18 @@ case $basic_machine in + ms1-*) + basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` + ;; ++ msys) ++ basic_machine=i386-pc ++ os=-msys ++ ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; ++ nacl) ++ basic_machine=le32-unknown ++ os=-nacl ++ ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 +@@ -830,6 +908,12 @@ case $basic_machine in + np1) + basic_machine=np1-gould + ;; ++ neo-tandem) ++ basic_machine=neo-tandem ++ ;; ++ nse-tandem) ++ basic_machine=nse-tandem ++ ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; +@@ -912,9 +996,10 @@ case $basic_machine in + ;; + power) basic_machine=power-ibm + ;; +- ppc) basic_machine=powerpc-unknown ++ ppc | ppcbe) basic_machine=powerpc-unknown + ;; +- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ppc-* | ppcbe-*) ++ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown +@@ -1008,6 +1093,9 @@ case $basic_machine in + basic_machine=i860-stratus + os=-sysv4 + ;; ++ strongarm-* | thumb-*) ++ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; + sun2) + basic_machine=m68000-sun + ;; +@@ -1064,20 +1152,8 @@ case $basic_machine in + basic_machine=t90-cray + os=-unicos + ;; +- tic54x | c54x*) +- basic_machine=tic54x-unknown +- os=-coff +- ;; +- tic55x | c55x*) +- basic_machine=tic55x-unknown +- os=-coff +- ;; +- tic6x | c6x*) +- basic_machine=tic6x-unknown +- os=-coff +- ;; + tile*) +- basic_machine=tile-unknown ++ basic_machine=$basic_machine-unknown + os=-linux-gnu + ;; + tx39) +@@ -1147,6 +1223,9 @@ case $basic_machine in + xps | xps100) + basic_machine=xps100-honeywell + ;; ++ xscale-* | xscalee[bl]-*) ++ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` ++ ;; + ymp) + basic_machine=ymp-cray + os=-unicos +@@ -1244,9 +1323,12 @@ esac + if [ x"$os" != x"" ] + then + case $os in +- # First match some system type aliases +- # that might get confused with valid system types. ++ # First match some system type aliases ++ # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. ++ -auroraux) ++ os=-auroraux ++ ;; + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; +@@ -1268,21 +1350,22 @@ case $os in + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ +- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ +- | -kopensolaris* \ ++ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ ++ | -sym* | -kopensolaris* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* | -aros* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ +- | -openbsd* | -solidbsd* \ ++ | -bitrig* | -openbsd* | -solidbsd* \ + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* | -cegcc* \ +- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ +- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ ++ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ ++ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ ++ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ +@@ -1290,7 +1373,7 @@ case $os in + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ +- | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) ++ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) +@@ -1329,7 +1412,7 @@ case $os in + -opened*) + os=-openedition + ;; +- -os400*) ++ -os400*) + os=-os400 + ;; + -wince*) +@@ -1378,7 +1461,7 @@ case $os in + -sinix*) + os=-sysv4 + ;; +- -tpf*) ++ -tpf*) + os=-tpf + ;; + -triton*) +@@ -1423,6 +1506,8 @@ case $os in + -dicos*) + os=-dicos + ;; ++ -nacl*) ++ ;; + -none) + ;; + *) +@@ -1445,10 +1530,10 @@ else + # system, and we'll never get to this point. + + case $basic_machine in +- score-*) ++ score-*) + os=-elf + ;; +- spu-*) ++ spu-*) + os=-elf + ;; + *-acorn) +@@ -1460,8 +1545,20 @@ case $basic_machine in + arm*-semi) + os=-aout + ;; +- c4x-* | tic4x-*) +- os=-coff ++ c4x-* | tic4x-*) ++ os=-coff ++ ;; ++ hexagon-*) ++ os=-elf ++ ;; ++ tic54x-*) ++ os=-coff ++ ;; ++ tic55x-*) ++ os=-coff ++ ;; ++ tic6x-*) ++ os=-coff + ;; + # This must come before the *-dec entry. + pdp10-*) +@@ -1481,14 +1578,11 @@ case $basic_machine in + ;; + m68000-sun) + os=-sunos3 +- # This also exists in the configure program, but was not the +- # default. +- # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; +- mep-*) ++ mep-*) + os=-elf + ;; + mips*-cisco) +@@ -1515,7 +1609,7 @@ case $basic_machine in + *-ibm) + os=-aix + ;; +- *-knuth) ++ *-knuth) + os=-mmixware + ;; + *-wec) +diff --git a/bacula/examples/nagios/check_bacula/authenticate.c b/bacula/examples/nagios/check_bacula/authenticate.c +index 94937b7..0eb1c8f 100644 +--- a/bacula/examples/nagios/check_bacula/authenticate.c ++++ b/bacula/examples/nagios/check_bacula/authenticate.c +@@ -76,7 +76,7 @@ int authenticate_director(BSOCK *dir, char *dirname, char *password) + + /* Timeout Hello after 5 mins */ + btimer_t *tid = start_bsock_timer(dir, 60 * 5); +- bnet_fsend(dir, DIRhello, bashed_name); ++ dir->fsend(DIRhello, bashed_name); + + if (!cram_md5_respond(dir, password, &tls_remote_need, &compatible) || + !cram_md5_challenge(dir, password, tls_local_need, compatible)) { +@@ -85,7 +85,7 @@ int authenticate_director(BSOCK *dir, char *dirname, char *password) + } + + Dmsg1(6, ">dird: %s", dir->msg); +- if (bnet_recv(dir) <= 0) { ++ if (dir->recv() <= 0) { + stop_bsock_timer(tid); + return 0; + } +@@ -114,7 +114,7 @@ int authenticate_storage_daemon(BSOCK *sd, char *sdname, char* password) + bash_spaces(dirname); + /* Timeout Hello after 5 mins */ + btimer_t *tid = start_bsock_timer(sd, 60 * 5); +- if (!bnet_fsend(sd, SDFDhello, dirname)) { ++ if (!sd->fsend(SDFDhello, dirname)) { + stop_bsock_timer(tid); + return 0; + } +@@ -124,7 +124,7 @@ int authenticate_storage_daemon(BSOCK *sd, char *sdname, char* password) + return 0; + } + Dmsg1(116, ">stored: %s", sd->msg); +- if (bnet_recv(sd) <= 0) { ++ if (sd->recv() <= 0) { + stop_bsock_timer(tid); + return 0; + } +@@ -153,7 +153,7 @@ int authenticate_file_daemon(BSOCK *fd, char *fdname, char *password) + bash_spaces(dirname); + /* Timeout Hello after 5 mins */ + btimer_t *tid = start_bsock_timer(fd, 60 * 5); +- if (!bnet_fsend(fd, SDFDhello, dirname)) { ++ if (!fd->fsend(SDFDhello, dirname)) { + stop_bsock_timer(tid); + return 0; + } +@@ -163,7 +163,7 @@ int authenticate_file_daemon(BSOCK *fd, char *fdname, char *password) + return 0; + } + Dmsg1(116, ">filed: %s", fd->msg); +- if (bnet_recv(fd) <= 0) { ++ if (fd->recv() <= 0) { + stop_bsock_timer(tid); + return 0; + } +diff --git a/bacula/examples/nagios/check_bacula/check_bacula.c b/bacula/examples/nagios/check_bacula/check_bacula.c +index 58d6997..1546da7 100644 +--- a/bacula/examples/nagios/check_bacula/check_bacula.c ++++ b/bacula/examples/nagios/check_bacula/check_bacula.c +@@ -2,13 +2,11 @@ + * + * Nagios Plugin check_bacula + * +- * Christian Masopust, (c)2005 +- * +- * Version $Id: check_bacula.c,v 1.0 2005/02/25 ++ * Christian Masopust, (c)2005-2012 + */ + + /* +- Copyright (C) 2005 Christian Masopust ++ Copyright (C) 2005-2012 Christian Masopust + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public +@@ -73,7 +71,7 @@ static void usage() + + /********************************************************************* + * +- * Main Bacula Tray Monitor -- User Interface Program ++ * Main Bacula Tray Monitor -- User Interface Program + * + */ + int main(int argc, char *argv[]) +@@ -114,38 +112,38 @@ int main(int argc, char *argv[]) + + switch (ch) { + +- case 'H': +- strcpy (host, optarg); +- break; +- +- case 'D': +- strcpy (daemon, optarg); +- break; +- +- case 'M': +- strcpy (monitorname, optarg); +- break; +- +- case 'P': +- port = atoi(optarg); +- break; +- +- case 'K': +- strcpy (pw, optarg); +- break; +- +- case 'd': +- debug_level = atoi(optarg); +- if (debug_level <= 0) { +- debug_level = 1; +- } +- break; +- +- case 'h': +- case '?': +- default: +- usage(); +- exit(1); ++ case 'H': ++ strcpy (host, optarg); ++ break; ++ ++ case 'D': ++ strcpy (daemon, optarg); ++ break; ++ ++ case 'M': ++ strcpy (monitorname, optarg); ++ break; ++ ++ case 'P': ++ port = atoi(optarg); ++ break; ++ ++ case 'K': ++ strcpy (pw, optarg); ++ break; ++ ++ case 'd': ++ debug_level = atoi(optarg); ++ if (debug_level <= 0) { ++ debug_level = 1; ++ } ++ break; ++ ++ case 'h': ++ case '?': ++ default: ++ usage(); ++ exit(1); + } + } + argc -= optind; +@@ -171,65 +169,65 @@ int main(int argc, char *argv[]) + /* director ? */ + if (strcmp (daemon, "dir") == 0) { + +- if (port != 0) +- s_dird.DIRport = port; +- else +- s_dird.DIRport = 9101; ++ if (port != 0) ++ s_dird.DIRport = port; ++ else ++ s_dird.DIRport = 9101; + +- s_dird.address = host; +- s_dird.password = sig; +- s_dird.hdr.name = monitorname; ++ s_dird.address = host; ++ s_dird.password = sig; ++ s_dird.hdr.name = monitorname; + +- mitem.type = R_DIRECTOR; +- mitem.resource = &s_dird; +- mitem.D_sock = NULL; ++ mitem.type = R_DIRECTOR; ++ mitem.resource = &s_dird; ++ mitem.D_sock = NULL; + + } else if (strcmp (daemon, "sd") == 0) { + +- if (port != 0) +- s_stored.SDport = port; +- else +- s_stored.SDport = 9103; ++ if (port != 0) ++ s_stored.SDport = port; ++ else ++ s_stored.SDport = 9103; + +- s_stored.address = host; +- s_stored.password = sig; +- s_stored.hdr.name = monitorname; ++ s_stored.address = host; ++ s_stored.password = sig; ++ s_stored.hdr.name = monitorname; + +- mitem.type = R_STORAGE; +- mitem.resource = &s_stored; +- mitem.D_sock = NULL; ++ mitem.type = R_STORAGE; ++ mitem.resource = &s_stored; ++ mitem.D_sock = NULL; + + } else if (strcmp (daemon, "fd") == 0) { + +- if (port != 0) +- s_filed.FDport = port; +- else +- s_filed.FDport = 9102; ++ if (port != 0) ++ s_filed.FDport = port; ++ else ++ s_filed.FDport = 9102; + +- s_filed.address = host; +- s_filed.password = sig; +- s_filed.hdr.name = monitorname; ++ s_filed.address = host; ++ s_filed.password = sig; ++ s_filed.hdr.name = monitorname; + +- mitem.type = R_CLIENT; +- mitem.resource = &s_filed; +- mitem.D_sock = NULL; ++ mitem.type = R_CLIENT; ++ mitem.resource = &s_filed; ++ mitem.D_sock = NULL; + + } else { + +- usage(); +- exit(1); ++ usage(); ++ exit(1); + } + + + if (mitem.type == R_DIRECTOR) +- retcode = docmd(&mitem, ".status dir current\n", answer); ++ retcode = docmd(&mitem, ".status dir current\n", answer); + else +- retcode = docmd(&mitem, ".status current\n", answer); ++ retcode = docmd(&mitem, ".status current\n", answer); + + + if (mitem.D_sock) { +- bnet_sig(mitem.D_sock, BNET_TERMINATE); /* send EOF */ +- bnet_close(mitem.D_sock); ++ mitem.D_sock->signal(BNET_TERMINATE); /* send EOF */ ++ mitem.D_sock->close(); + } + + printf ("%s\n", answer); +@@ -269,7 +267,7 @@ int docmd(monitoritem* item, const char* command, char *answer) { + int stat; + char num; + const char *dname; +- ++ + dname = ""; + + if (!item->D_sock) { +@@ -280,34 +278,37 @@ int docmd(monitoritem* item, const char* command, char *answer) { + + switch (item->type) { + case R_DIRECTOR: +- dird = (DIRRES*)item->resource; +- item->D_sock = bnet_connect(NULL, 0, 0, 0, "Director daemon", dird->address, NULL, dird->DIRport, 0); +- dname = "Director"; +- break; ++ dird = (DIRRES*)item->resource; ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, 0, 0, 0, "Director daemon", dird->address, NULL, dird->DIRport, 0); ++ dname = "Director"; ++ break; + case R_CLIENT: +- filed = (CLIENT*)item->resource; +- item->D_sock = bnet_connect(NULL, 0, 0, 0, "File daemon", filed->address, NULL, filed->FDport, 0); +- dname = "FileDaemon"; +- break; ++ filed = (CLIENT*)item->resource; ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, 0, 0, 0, "File daemon", filed->address, NULL, filed->FDport, 0); ++ dname = "FileDaemon"; ++ break; + case R_STORAGE: +- stored = (STORE*)item->resource; +- item->D_sock = bnet_connect(NULL, 0, 0, 0, "Storage daemon", stored->address, NULL, stored->SDport, 0); +- dname = "StorageDaemon"; +- break; ++ stored = (STORE*)item->resource; ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, 0, 0, 0, "Storage daemon", stored->address, NULL, stored->SDport, 0); ++ dname = "StorageDaemon"; ++ break; + default: +- printf("Error, currentitem is not a Client, a Storage or a Director..\n"); +- return STATE_UNKNOWN; ++ printf("Error, currentitem is not a Client, a Storage or a Director..\n"); ++ return STATE_UNKNOWN; + } + + if (item->D_sock == NULL) { +- sprintf (answer, "BACULA CRITICAL - Cannot connect to %s!", dname); +- return STATE_CRITICAL; ++ sprintf (answer, "BACULA CRITICAL - Cannot connect to %s!", dname); ++ return STATE_CRITICAL; + } + + if (!authenticate_daemon(item)) { +- sprintf (answer, "BACULA CRITICAL - Cannot authenticate to %s: %s", dname, item->D_sock->msg); +- item->D_sock = NULL; +- return STATE_CRITICAL; ++ sprintf (answer, "BACULA CRITICAL - Cannot authenticate to %s: %s", dname, item->D_sock->msg); ++ item->D_sock = NULL; ++ return STATE_CRITICAL; + } + + } +@@ -316,46 +317,46 @@ int docmd(monitoritem* item, const char* command, char *answer) { + writecmd(item, command); + + while(1) { +- if ((stat = bnet_recv(item->D_sock)) >= 0) { +- +- /* welcome message of director */ +- if ((item->type == R_DIRECTOR) && (strncmp(item->D_sock->msg, "Using ", 6) == 0)) +- continue; +- +- if (sscanf(item->D_sock->msg, OKqstatus, &num) != 1) { +- /* Error, couldn't find OK */ +- sprintf (answer, "BACULA CRITICAL - %s Status: %s", dname, item->D_sock->msg); +- return STATE_CRITICAL; +- } else { +- sprintf (answer, "BACULA OK - %s Status OK", dname); +- return STATE_OK; +- } ++ if ((stat = item->D_sock->recv()) >= 0) { ++ ++ /* welcome message of director */ ++ if ((item->type == R_DIRECTOR) && (strncmp(item->D_sock->msg, "Using ", 6) == 0)) ++ continue; ++ ++ if (sscanf(item->D_sock->msg, OKqstatus, &num) != 1) { ++ /* Error, couldn't find OK */ ++ sprintf (answer, "BACULA CRITICAL - %s Status: %s", dname, item->D_sock->msg); ++ return STATE_CRITICAL; ++ } else { ++ sprintf (answer, "BACULA OK - %s Status OK", dname); ++ return STATE_OK; ++ } + } + else if (stat == BNET_SIGNAL) { +- if (item->D_sock->msglen == BNET_EOD) { +- strcpy(answer, "BACULA WARNING - << EOD >>"); +- return STATE_WARNING; +- } +- else if (item->D_sock->msglen == BNET_SUB_PROMPT) { +- strcpy(answer, "BACULA WARNING - BNET_SUB_PROMPT signal received."); +- return STATE_WARNING; +- } +- else if (item->D_sock->msglen == BNET_HEARTBEAT) { +- bnet_sig(item->D_sock, BNET_HB_RESPONSE); +- } +- else { +- sprintf(answer, "BACULA WARNING - Unexpected signal received : %s ", bnet_sig_to_ascii(item->D_sock)); +- } ++ if (item->D_sock->msglen == BNET_EOD) { ++ strcpy(answer, "BACULA WARNING - << EOD >>"); ++ return STATE_WARNING; ++ } ++ else if (item->D_sock->msglen == BNET_SUB_PROMPT) { ++ strcpy(answer, "BACULA WARNING - BNET_SUB_PROMPT signal received."); ++ return STATE_WARNING; ++ } ++ else if (item->D_sock->msglen == BNET_HEARTBEAT) { ++ item->D_sock->signal(BNET_HB_RESPONSE); ++ } ++ else { ++ sprintf(answer, "BACULA WARNING - Unexpected signal received : %s ", bnet_sig_to_ascii(item->D_sock)); ++ } + } + else { /* BNET_HARDEOF || BNET_ERROR */ +- strcpy(answer, "BACULA CRITICAL - ERROR: BNET_HARDEOF or BNET_ERROR"); +- item->D_sock = NULL; +- return STATE_CRITICAL; ++ strcpy(answer, "BACULA CRITICAL - ERROR: BNET_HARDEOF or BNET_ERROR"); ++ item->D_sock = NULL; ++ return STATE_CRITICAL; + } + +- if (is_bnet_stop(item->D_sock)) { +- item->D_sock = NULL; +- return STATE_WARNING; ++ if (item->D_sock->is_stop()) { ++ item->D_sock = NULL; ++ return STATE_WARNING; + } + } + } +@@ -364,7 +365,6 @@ void writecmd(monitoritem* item, const char* command) { + if (item->D_sock) { + item->D_sock->msglen = strlen(command); + pm_strcpy(&item->D_sock->msg, command); +- bnet_send(item->D_sock); ++ item->D_sock->send(); + } + } +- +diff --git a/bacula/examples/nagios/check_bacula/makeit b/bacula/examples/nagios/check_bacula/makeit +new file mode 100755 +index 0000000..1cf3b1d +--- /dev/null ++++ b/bacula/examples/nagios/check_bacula/makeit +@@ -0,0 +1,3 @@ ++#!/bin/sh ++ ++make LIBS="-lpthread -ldl -lssl -lcrypto -lz" +diff --git a/bacula/manpages/Makefile.in b/bacula/manpages/Makefile.in +index 4d2b152..bcaea9f 100644 +--- a/bacula/manpages/Makefile.in ++++ b/bacula/manpages/Makefile.in +@@ -10,8 +10,6 @@ MAN8 = bacula.8 bacula-dir.8 bacula-fd.8 bacula-sd.8 \ + + MAN1 = bsmtp.1 bat.1 + +-# bacula-bgnome-console.1 +- + all: + + nothing: +diff --git a/bacula/manpages/bacula-bgnome-console.1 b/bacula/manpages/bacula-bgnome-console.1 +deleted file mode 100644 +index 876fab0..0000000 +--- a/bacula/manpages/bacula-bgnome-console.1 ++++ /dev/null +@@ -1,45 +0,0 @@ +-.\" Hey, EMACS: -*- nroff -*- +-.\" First parameter, NAME, should be all caps +-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +-.\" other parameters are allowed: see man(7), man(1) +-.TH BGNOME\-CONSOLE 1 "April 24, 2007" "Kern Sibbald" "Network backup, recovery and verification" +-.\" Please adjust this date whenever revising the manpage. +-.\" +-.\" Some roff macros, for reference: +-.\" .nh disable hyphenation +-.\" .hy enable hyphenation +-.\" .ad l left justify +-.\" .ad b justify to both left and right margins +-.\" .nf disable filling +-.\" .fi enable filling +-.\" .br insert line break +-.\" .sp insert n+1 empty lines +-.\" for manpage-specific macros, see man(7) +-.SH NAME +- bgnome\-console \- Bacula's management Console, GUI version. +-.br +-.SH DESCRIPTION +-This manual page documents briefly the +-.B bgnome\-console +-command, the Gnome GUI version of the Bacula administration console. +-.sp 2 +-.PP +-.\" TeX users may be more comfortable with the \fB\fP and +-.\" \fI\fP escape sequences to invoke bold face and italics, +-.\" respectively. +-The Console allows the administrator or user to communicate with the +-Bacula Director. This is the Gnome version. It will also run under KDE. +-.PP +-This Gnome GUI interface is for the moment far from complete but is quite +-functional, having all the capabilities of the shell Console plus a number +-of GUI extensions that make interaction easier with point and click. +-.BR +-.SH SEE ALSO +-.BR bacula\-dir (8), +-.BR bls (1), +-.BR bextract (1). +-.br +-.SH AUTHOR +-This manual page was written by Jose Luis Tallon +-.nh +-. +diff --git a/bacula/manpages/bacula-bwxconsole.1 b/bacula/manpages/bacula-bwxconsole.1 +deleted file mode 100644 +index 1e56591..0000000 +--- a/bacula/manpages/bacula-bwxconsole.1 ++++ /dev/null +@@ -1,45 +0,0 @@ +-.\" Hey, EMACS: -*- nroff -*- +-.\" First parameter, NAME, should be all caps +-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +-.\" other parameters are allowed: see man(7), man(1) +-.TH BWX-CONSOLE 1 "24 April 2007" "Kern Sibbald" "Network backup, recovery and verification" +-.\" Please adjust this date whenever revising the manpage. +-.\" +-.SH NAME +- bwx-console \- Bacula's management Console +-.SH SYNOPSIS +-.B bwx-console +-.RI [options] +-.br +-.SH DESCRIPTION +-This manual page documents briefly the +-.B bwx-console +-command, the wxWidgets version of the Bacula administration console. +-.PP +-.SH OPTIONS +-bwx-console [\-s] [\-c config_file] [\-d debug_level] [-t] +-.TP +-.B \-c +-Specify configuration file. +-.TP +-.B \-d +-Set debug level to \fInn\fP. +-.TP +-.B \-s +-No signals. +-.TP +-.B \-t +-Test config mode: read configuration and exit. +-.TP +-.B \-? +-Show version and usage of program. +-.SH SEE ALSO +-.BR bacula-dir (8), +-.BR bacula-bgnome-console (1) +-.BR bls (1), +-.BR bextract (1). +-.br +-.SH AUTHOR +-This manual page was written by Jose Luis Tallon +-.nh +-. +diff --git a/bacula/manpages/bacula-dir.8 b/bacula/manpages/bacula-dir.8 +index c5cd965..e3664b6 100644 +--- a/bacula/manpages/bacula-dir.8 ++++ b/bacula/manpages/bacula-dir.8 +@@ -37,6 +37,9 @@ Run in foreground (for debugging). + .BI \-g\ group + Set the group/gid to run as. + .TP ++.BI \-m ++Print kaboom output (for debugging). ++.TP + .BI \-r\ job + Run . + .TP +diff --git a/bacula/manpages/bacula-fd.8 b/bacula/manpages/bacula-fd.8 +index 9e9fca0..6a4d7fb 100644 +--- a/bacula/manpages/bacula-fd.8 ++++ b/bacula/manpages/bacula-fd.8 +@@ -39,12 +39,12 @@ Run in foreground (for debugging). + .BI \-g\ group + Set the group/gid to run as. + .TP +-.BI \-p +-Proceed inspite of I/O errors +-.TP + .BI \-k + Keep readall permission when dropping privileges. + .TP ++.BI \-m ++Print kaboom output (for debugging). ++.TP + .BI \-s + No signals (for debugging). + .TP +diff --git a/bacula/manpages/bacula-sd.8 b/bacula/manpages/bacula-sd.8 +index 6dd36dc..aed27a3 100644 +--- a/bacula/manpages/bacula-sd.8 ++++ b/bacula/manpages/bacula-sd.8 +@@ -40,6 +40,9 @@ Set the group/gid to run as. + .BI \-p + Proceed in spite of I/O errors + .TP ++.BI \-m ++Print kaboom output (for debugging) ++.TP + .BI \-s + No signals (for debugging). + .TP +diff --git a/bacula/manpages/bacula-tray-monitor.1 b/bacula/manpages/bacula-tray-monitor.1 +index 811a4e4..39a2869 100644 +--- a/bacula/manpages/bacula-tray-monitor.1 ++++ b/bacula/manpages/bacula-tray-monitor.1 +@@ -25,6 +25,9 @@ Specify configuration file. + .B \-d + Set debug level to \fInn\fP. + .TP ++.B \-dt ++Print timestamp in debug output. ++.TP + .B \-t + Test config mode: read configuration and exit. + .TP +@@ -32,7 +35,6 @@ Test config mode: read configuration and exit. + Show version and usage of program. + .SH SEE ALSO + .BR bacula-dir (8), +-.BR bacula-wxconsole (1) + .BR bls (1), + .BR bextract (1). + .br +diff --git a/bacula/manpages/bconsole.8 b/bacula/manpages/bconsole.8 +index 13d892c..b536783 100644 +--- a/bacula/manpages/bconsole.8 ++++ b/bacula/manpages/bconsole.8 +@@ -18,6 +18,12 @@ command. + .PP + .SH OPTIONS + .TP ++.BI \-D\ dir ++Select a Director. ++.TP ++.BI \-l ++List defined Directors. ++.TP + .BI \-c\ config + Specify configuration file. + .TP +@@ -33,6 +39,9 @@ No conio (for scripting). + .B \-s + No signals (for debugging). + .TP ++.b \-u\ nn ++Set command execution timeout to \fInn\fP seconds. ++.TP + .B \-t + Test the configuration file and report errors. + .TP +diff --git a/bacula/manpages/btape.8 b/bacula/manpages/btape.8 +index e19a36f..2188ce2 100644 +--- a/bacula/manpages/btape.8 ++++ b/bacula/manpages/btape.8 +@@ -38,9 +38,6 @@ Set debug level to \fInn\fP. + .BI \-p + Proceed inspite of I/O errors. + .TP +-.B \-t +-Open the default tape device. +-.TP + .B \-s + No signals (for debugging). + .TP +diff --git a/bacula/src/console/console.c b/bacula/src/console/console.c +index 80176a7..b1f1476 100644 +--- a/bacula/src/console/console.c ++++ b/bacula/src/console/console.c +@@ -1011,7 +1011,7 @@ int main(int argc, char *argv[]) + working_directory = "/tmp"; + args = get_pool_memory(PM_FNAME); + +- while ((ch = getopt(argc, argv, "D:lbc:d:nstu:?")) != -1) { ++ while ((ch = getopt(argc, argv, "D:lc:d:nstu:?")) != -1) { + switch (ch) { + case 'D': /* Director */ + if (director) { +diff --git a/bacula/src/qt-console/tray-monitor/authenticate.cpp b/bacula/src/qt-console/tray-monitor/authenticate.cpp +index 91f4da6..22688b1 100644 +--- a/bacula/src/qt-console/tray-monitor/authenticate.cpp ++++ b/bacula/src/qt-console/tray-monitor/authenticate.cpp +@@ -116,7 +116,7 @@ int authenticate_storage_daemon(JCR *jcr, MONITOR *monitor, STORE* store) + btimer_t *tid = start_bsock_timer(sd, 60 * 5); + if (!sd->fsend(SDFDhello, dirname)) { + stop_bsock_timer(tid); +- Jmsg(jcr, M_FATAL, 0, _("Error sending Hello to Storage daemon. ERR=%s\n"), bnet_strerror(sd)); ++ Jmsg(jcr, M_FATAL, 0, _("Error sending Hello to Storage daemon. ERR=%s\n"), sd->bstrerror()); + return 0; + } + if (!cram_md5_respond(sd, store->password, &tls_remote_need, &compatible) || +@@ -162,7 +162,7 @@ int authenticate_file_daemon(JCR *jcr, MONITOR *monitor, CLIENT* client) + btimer_t *tid = start_bsock_timer(fd, 60 * 5); + if (!fd->fsend(SDFDhello, dirname)) { + stop_bsock_timer(tid); +- Jmsg(jcr, M_FATAL, 0, _("Error sending Hello to File daemon. ERR=%s\n"), bnet_strerror(fd)); ++ Jmsg(jcr, M_FATAL, 0, _("Error sending Hello to File daemon. ERR=%s\n"), fd->bstrerror()); + return 0; + } + if (!cram_md5_respond(fd, client->password, &tls_remote_need, &compatible) || +diff --git a/bacula/src/qt-console/tray-monitor/tray-monitor.cpp b/bacula/src/qt-console/tray-monitor/tray-monitor.cpp +index 9a01a8a..6028752 100644 +--- a/bacula/src/qt-console/tray-monitor/tray-monitor.cpp ++++ b/bacula/src/qt-console/tray-monitor/tray-monitor.cpp +@@ -87,7 +87,7 @@ void get_list(monitoritem *item, const char *cmd, QStringList &lst) + + doconnect(item); + item->writecmd(cmd); +- while((stat = bnet_recv(item->D_sock)) >= 0) { ++ while((stat = item->D_sock->recv()) >= 0) { + strip_trailing_junk(item->D_sock->msg); + if (*(item->D_sock->msg)) { + lst << QString(item->D_sock->msg); +@@ -291,8 +291,8 @@ int main(int argc, char *argv[]) + if (items[i].D_sock) { + items[i].writecmd("quit"); + if (items[i].D_sock) { +- bnet_sig(items[i].D_sock, BNET_TERMINATE); /* send EOF */ +- bnet_close(items[i].D_sock); ++ items[i].D_sock->signal(BNET_TERMINATE); /* send EOF */ ++ items[i].D_sock->close(); + } + } + } +@@ -345,21 +345,24 @@ int doconnect(monitoritem* item) + case R_DIRECTOR: + dird = (DIRRES*)item->resource; + changeStatusMessage(item, _("Connecting to Director %s:%d"), dird->address, dird->DIRport); +- item->D_sock = bnet_connect(NULL, monitor->DIRConnectTimeout, ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, monitor->DIRConnectTimeout, + 0, 0, _("Director daemon"), dird->address, NULL, dird->DIRport, 0); + jcr.dir_bsock = item->D_sock; + break; + case R_CLIENT: + filed = (CLIENT*)item->resource; + changeStatusMessage(item, _("Connecting to Client %s:%d"), filed->address, filed->FDport); +- item->D_sock = bnet_connect(NULL, monitor->FDConnectTimeout, ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, monitor->FDConnectTimeout, + 0, 0, _("File daemon"), filed->address, NULL, filed->FDport, 0); + jcr.file_bsock = item->D_sock; + break; + case R_STORAGE: + stored = (STORE*)item->resource; + changeStatusMessage(item, _("Connecting to Storage %s:%d"), stored->address, stored->SDport); +- item->D_sock = bnet_connect(NULL, monitor->SDConnectTimeout, ++ item->D_sock = new_bsock(); ++ item->D_sock->connect(NULL, monitor->SDConnectTimeout, + 0, 0, _("Storage daemon"), stored->address, NULL, stored->SDport, 0); + jcr.store_bsock = item->D_sock; + break; +@@ -418,7 +421,7 @@ int docmd(monitoritem* item, const char* command) + item->writecmd(command); + + while(1) { +- if ((stat = bnet_recv(item->D_sock)) >= 0) { ++ if ((stat = item->D_sock->recv()) >= 0) { + strip_trailing_newline(item->D_sock->msg); + tray->appendText(item->get_name(), item->D_sock->msg); + } +@@ -432,7 +435,7 @@ int docmd(monitoritem* item, const char* command) + return 0; + } + else if (item->D_sock->msglen == BNET_HEARTBEAT) { +- bnet_sig(item->D_sock, BNET_HB_RESPONSE); ++ item->D_sock->signal(BNET_HB_RESPONSE); + } + else { + qDebug() << bnet_sig_to_ascii(item->D_sock); +@@ -447,7 +450,7 @@ int docmd(monitoritem* item, const char* command) + return 0; + } + +- if (is_bnet_stop(item->D_sock)) { ++ if (item->D_sock->is_stop()) { + item->D_sock = NULL; + item->state = error; + item->oldstate = error; +diff --git a/bacula/src/qt-console/tray-monitor/tray-monitor.h b/bacula/src/qt-console/tray-monitor/tray-monitor.h +index 9d06ce6..33f111b 100644 +--- a/bacula/src/qt-console/tray-monitor/tray-monitor.h ++++ b/bacula/src/qt-console/tray-monitor/tray-monitor.h +@@ -87,7 +87,7 @@ public: + void writecmd(const char* command) { + if (this->D_sock) { + this->D_sock->msglen = pm_strcpy(&this->D_sock->msg, command); +- bnet_send(this->D_sock); ++ this->D_sock->send(); + } + } + +diff --git a/bacula/src/qt-console/tray-monitor/tray-ui.h b/bacula/src/qt-console/tray-monitor/tray-ui.h +index 0c2b959..d008405 100644 +--- a/bacula/src/qt-console/tray-monitor/tray-ui.h ++++ b/bacula/src/qt-console/tray-monitor/tray-ui.h +@@ -142,7 +142,7 @@ private slots: + qDebug() << cmd; + item->D_sock->fsend("%s", cmd.toUtf8().data()); + QString output; +- while(bnet_recv(item->D_sock) >= 0) {output += item->D_sock->msg;} ++ while(item->D_sock->recv() >= 0) {output += item->D_sock->msg;} + QMessageBox msgBox; + msgBox.setText(output); + msgBox.exec(); diff --git a/bacula.spec b/bacula.spec index a7e8367..915a5e4 100644 --- a/bacula.spec +++ b/bacula.spec @@ -3,7 +3,7 @@ Name: bacula Version: 7.0.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Cross platform network backup for Linux, Unix, Mac and Windows # See LICENSE for details License: AGPLv3 with exceptions @@ -37,9 +37,9 @@ Patch3: %{name}-5.0.3-sqlite-priv.patch Patch4: %{name}-5.2.13-bat-build.patch Patch5: %{name}-5.2.12-seg-fault.patch Patch6: %{name}-5.2.13-logwatch.patch -Patch7: %{name}-help-update.patch -Patch8: %{name}-aarch64.patch Patch9: %{name}-non-free-code.patch +Patch10: %{name}-7.0.0-configure.patch +Patch11: %{name}-7.0.0-git.patch BuildRequires: desktop-file-utils BuildRequires: perl @@ -258,18 +258,18 @@ based on a client/server architecture. This package contains the bat version of the bacula management console. -#%package traymonitor -#Summary: Bacula system tray monitor -#Group: System Environment/Daemons -#Requires: bacula-libs%{?_isa} = %{version}-%{release} +%package traymonitor +Summary: Bacula system tray monitor +Group: System Environment/Daemons +Requires: bacula-libs%{?_isa} = %{version}-%{release} -#%description traymonitor -#Bacula is a set of programs that allow you to manage the backup, recovery, and -#verification of computer data across a network of different computers. It is -#based on a client/server architecture. +%description traymonitor +Bacula is a set of programs that allow you to manage the backup, recovery, and +verification of computer data across a network of different computers. It is +based on a client/server architecture. -#This package contains the Gnome and KDE compatible tray monitor to monitor your -#bacula server. +This package contains the Gnome and KDE compatible tray monitor to monitor your +bacula server. %endif %package devel @@ -285,13 +285,13 @@ based on a client/server architecture. This development package contains static libraries and header files. -#%package -n nagios-plugins-bacula -#Summary: Nagios Plugin - check_bacula -#Group: Applications/System -#Requires: bacula-libs%{?_isa} = %{version}-%{release} +%package -n nagios-plugins-bacula +Summary: Nagios Plugin - check_bacula +Group: Applications/System +Requires: bacula-libs%{?_isa} = %{version}-%{release} -#%description -n nagios-plugins-bacula -#Provides check_bacula support for Nagios. +%description -n nagios-plugins-bacula +Provides check_bacula support for Nagios. %prep %setup -q @@ -301,9 +301,9 @@ This development package contains static libraries and header files. %patch4 -p1 -b .bat-build %patch5 -p1 -b .seg-fault %patch6 -p1 -b .logwatch -%patch7 -p1 -b .help-update -%patch8 -p1 -b .aarch64 %patch9 -p1 -b .non-free-code +%patch10 -p1 -b .configure +%patch11 -p2 -b .git cp %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} . # Remove execution permissions from files we're packaging as docs later on @@ -364,23 +364,23 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool make %{?_smp_mflags} -#pushd examples/nagios/check_bacula -# CFLAGS="%{optflags}" make #LIBS="-lpthread -ldl -lssl -lcrypto -lz" -#popd +pushd examples/nagios/check_bacula + CFLAGS="%{optflags}" make LIBS="-lpthread -ldl -lssl -lcrypto -lz" +popd -#%if 0%{?fedora} || 0%{?rhel} >= 6 -#pushd src/qt-console/tray-monitor -# #/usr/bin/qmake-qt4 tray-monitor.pro -# make %{?_smp_mflags} -#popd -#%endif +%if 0%{?fedora} || 0%{?rhel} >= 6 +pushd src/qt-console/tray-monitor + $QMAKE tray-monitor.pro + make %{?_smp_mflags} +popd +%endif %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} # Nagios plugin -#install -p -m 755 -D examples/nagios/check_bacula/.libs/check_bacula %{buildroot}%{_libdir}/nagios/plugins/check_bacula +install -p -m 755 -D examples/nagios/check_bacula/.libs/check_bacula %{buildroot}%{_libdir}/nagios/plugins/check_bacula # Bacula plugin info utility install -p -m 755 -D src/tools/.libs/bpluginfo %{buildroot}%{_sbindir}/bpluginfo @@ -399,10 +399,10 @@ install -p -m 644 -D src/qt-console/images/bat_icon.png %{buildroot}%{_datadir}/ desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE13} # QT Tray monitor -#install -p -m 755 -D src/qt-console/tray-monitor/.libs/bacula-tray-monitor %{buildroot}%{_sbindir}/bacula-tray-monitor -#install -p -m 644 -D src/qt-console/tray-monitor/tray-monitor.conf %{buildroot}%{_sysconfdir}/bacula/tray-monitor.conf -#install -p -m 644 -D src/qt-console/images/bat_icon.png %{buildroot}%{_datadir}/pixmaps/bacula-tray-monitor.png -#desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE14} +install -p -m 755 -D src/qt-console/tray-monitor/bacula-tray-monitor %{buildroot}%{_sbindir}/bacula-tray-monitor +install -p -m 644 -D src/qt-console/tray-monitor/tray-monitor.conf %{buildroot}%{_sysconfdir}/bacula/tray-monitor.conf +install -p -m 644 -D src/qt-console/images/bat_icon.png %{buildroot}%{_datadir}/pixmaps/bacula-tray-monitor.png +desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE14} %else rm -f %{buildroot}%{_mandir}/man1/bat.1* @@ -447,7 +447,6 @@ mkdir -p %{buildroot}%{_localstatedir}/spool/bacula rm -f %{buildroot}%{_libexecdir}/bacula/{bacula,bacula-ctl-*,startmysql,stopmysql,bconsole,make_catalog_backup} rm -f %{buildroot}%{_sbindir}/bacula rm -f %{buildroot}%{_mandir}/man8/bacula.8.gz -rm -f %{buildroot}%{_mandir}/man1/bacula-bwxconsole.1* rm -f %{buildroot}%{_mandir}/man1/bacula-tray-monitor.1* rm -f %{buildroot}%{_libdir}/*.la %if 0%{?fedora} || 0%{?rhel} >= 6 @@ -727,12 +726,12 @@ fi %{_datadir}/bacula/*.png %{_datadir}/pixmaps/bat.png -#%files traymonitor -#%defattr(-,root,root,-) -#%{_sbindir}/bacula-tray-monitor -#%attr(640,root,root) %config(noreplace) %{_sysconfdir}/bacula/tray-monitor.conf -#%{_datadir}/applications/bacula-traymonitor.desktop -#%{_datadir}/pixmaps/bacula-tray-monitor.png +%files traymonitor +%defattr(-,root,root,-) +%{_sbindir}/bacula-tray-monitor +%attr(640,root,root) %config(noreplace) %{_sysconfdir}/bacula/tray-monitor.conf +%{_datadir}/applications/bacula-traymonitor.desktop +%{_datadir}/pixmaps/bacula-tray-monitor.png %endif %files devel @@ -744,11 +743,16 @@ fi %{_libdir}/libbacpy.so %{_libdir}/libbacsql.so -#%files -n nagios-plugins-bacula -#%defattr(-,root,root) -#%{_libdir}/nagios/plugins/check_bacula +%files -n nagios-plugins-bacula +%defattr(-,root,root) +%{_libdir}/nagios/plugins/check_bacula %changelog +* Sun Mar 30 2014 Simone Caronni - 7.0.0-2 +- Backport changes from git for QT Tray monitor, Nagios plugin and configure + script. +- Removed upstream patches. + * Sun Mar 30 2014 Simone Caronni - 7.0.0-1 - Update to 7.0.0. - Momentarily disable Nagios plugin and QT tray monitor as they don't build