Compare commits

...

No commits in common. "c8s" and "c9-beta" have entirely different histories.
c8s ... c9-beta

40 changed files with 1138 additions and 1865 deletions

2
.bacula.metadata Normal file
View File

@ -0,0 +1,2 @@
3fbca0dc9eb78a083589465052016f669c3b5e70 SOURCES/bacula-11.0.1.tar.gz
fec6073f62a07cd9df96fe3673d1dcea27d50984 SOURCES/bacula-tray-monitor.png

4
.gitignore vendored
View File

@ -1,2 +1,2 @@
SOURCES/bacula-9.0.6.tar.gz SOURCES/bacula-11.0.1.tar.gz
/bacula-9.0.6.tar.gz SOURCES/bacula-tray-monitor.png

View File

@ -1,19 +1,15 @@
======== Features ======== Features
- Standard components: director, storage, client, docs, bconsole. - Standard components: director, storage, client, docs, bconsole.
- Graphical components: bat, bacula-tray-monitor (where supported). - Graphical components: bat, bacula-tray-monitor.
- Tab completion for bconsole. - Tab completion for bconsole.
- Nagios plugin. - Nagios plugin.
- HTML/PDF docs. - HTML/PDF docs.
- Quick start guides. - Quick start guides.
- File Daemon bpipe-fd plugin. - File Daemon bpipe-fd plugin.
- POSIX.1e capabilities for File Daemon. - POSIX.1e capabilities for File Daemon.
- Systemd for Fedora and RHEL 7+.
- SysV init scripts for RHEL 5/6.
- GZIP/LZO compression. - GZIP/LZO compression.
- Static uid/gid of 133 (see "setup" package). - Static uid/gid of 133 (see "setup" package).
- No usermode / fedora-usermgmt stuff in the console packages.
- Docs no longer an arch specific subpackage.
- SQL libraries needed only by Director and Storage daemons. - SQL libraries needed only by Director and Storage daemons.
- SQL backend management through the alternatives system. - SQL backend management through the alternatives system.
@ -82,3 +78,13 @@ of course have the same permissions as the main configuration file.
To see all the available documentation in both HTML and PDF formats, please To see all the available documentation in both HTML and PDF formats, please
install the "bacula-docs" package. install the "bacula-docs" package.
======== Granting user access to the console
The console configuration files are normally readable only by root for security
reasons. If you need to grant access to a specific user or group of users to
the consoles, you can adjust the ACLs on the configuration files. For example:
# setfacl -m u:user:r /etc/bacula/bconsole.conf /etc/bacula/bat.conf
This way the user 'user' can open the console without superuser privileges.

View File

@ -1,6 +1,6 @@
diff -Naur bacula-9.0.6.old/src/qt-console/bat.pro.in bacula-9.0.6/src/qt-console/bat.pro.in diff -Naur bacula-11.0.0.old/src/qt-console/bat.pro.in bacula-11.0.0/src/qt-console/bat.pro.in
--- bacula-9.0.6.old/src/qt-console/bat.pro.in 2017-12-07 15:44:44.737173178 +0100 --- bacula-11.0.0.old/src/qt-console/bat.pro.in 2021-01-12 12:36:32.639470258 +0100
+++ bacula-9.0.6/src/qt-console/bat.pro.in 2017-12-07 15:44:55.118366334 +0100 +++ bacula-11.0.0/src/qt-console/bat.pro.in 2021-01-12 12:39:13.647417778 +0100
@@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
# #
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@ -8,8 +8,8 @@ diff -Naur bacula-9.0.6.old/src/qt-console/bat.pro.in bacula-9.0.6/src/qt-consol
-CONFIG += qt debug @QWT@ -CONFIG += qt debug @QWT@
+CONFIG += qt release @QWT@ +CONFIG += qt release @QWT@
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
bins.files = bat bins.files = bat
confs.path = /$(DESTDIR)@sysconfdir@ confs.path = /$(DESTDIR)@sysconfdir@
@ -18,10 +18,10 @@ diff -Naur bacula-9.0.6.old/src/qt-console/bat.pro.in bacula-9.0.6/src/qt-consol
+help.path = /$(DESTDIR)@htmldir@ +help.path = /$(DESTDIR)@htmldir@
help.files = help/*.html images/status.png images/mail-message-new.png help.files = help/*.html images/status.png images/mail-message-new.png
datarootdir = @datarootdir@ TEMPLATE = app
diff -Naur bacula-9.0.6.old/src/qt-console/main.cpp bacula-9.0.6/src/qt-console/main.cpp diff -Naur bacula-11.0.0.old/src/qt-console/main.cpp bacula-11.0.0/src/qt-console/main.cpp
--- bacula-9.0.6.old/src/qt-console/main.cpp 2017-12-07 15:44:44.742173271 +0100 --- bacula-11.0.0.old/src/qt-console/main.cpp 2021-01-12 12:36:32.640470277 +0100
+++ bacula-9.0.6/src/qt-console/main.cpp 2017-12-07 15:44:55.119366353 +0100 +++ bacula-11.0.0/src/qt-console/main.cpp 2021-01-12 12:39:13.647417778 +0100
@@ -29,11 +29,11 @@ @@ -29,11 +29,11 @@
#include <QTranslator> #include <QTranslator>

View File

@ -0,0 +1,43 @@
diff -Naur bacula-11.0.0.old/src/plugins/fd/Makefile.in bacula-11.0.0/src/plugins/fd/Makefile.in
--- bacula-11.0.0.old/src/plugins/fd/Makefile.in 2021-01-15 14:28:41.375718846 +0100
+++ bacula-11.0.0/src/plugins/fd/Makefile.in 2021-01-15 14:37:51.212066769 +0100
@@ -22,7 +22,7 @@
.c.lo:
$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) $(CPPFLAGS) $(CFLAGS) -I${SRCDIR} -I${FDDIR} -DTEST_PROGRAM -c $<
-all: bpipe-fd.la test-plugin-fd.la test-deltaseq-fd.la pluglib.lo
+all: bpipe-fd.la cdp-fd.la test-plugin-fd.la test-deltaseq-fd.la pluglib.lo
example-plugin-fd.lo: example-plugin-fd.c ${FDDIR}/fd_plugins.h
$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) $(CPPFLAGS) $(CFLAGS) -I../.. -I${FDDIR} -c example-plugin-fd.c
@@ -36,8 +36,6 @@
bpipe-fd.la: Makefile bpipe-fd$(DEFAULT_OBJECT_TYPE)
$(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -shared bpipe-fd.lo -o $@ -rpath $(plugindir) -module -export-dynamic -avoid-version
-cdp: cdp-fd.la
-
cdp-fd.lo: cdp-fd.c journal.h folder-record.h file-record.h settings-record.h ${FDDIR}/fd_plugins.h
$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) $(CPPFLAGS) $(CFLAGS) -Wno-unused-function -I../.. -I${FDDIR} -c cdp-fd.c
@@ -47,12 +45,6 @@
cdp-fd.la: Makefile cdp-fd$(DEFAULT_OBJECT_TYPE) journal.lo
$(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -shared cdp-fd.lo journal.lo -o $@ -rpath $(plugindir) -module -export-dynamic -avoid-version
-install-cdp: cdp-fd.la
- $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) cdp-fd.la $(DESTDIR)$(plugindir)
- $(RMF) $(DESTDIR)$(plugindir)/cdp-fd.la
-
-
-
test-deltaseq-fd.lo: test-deltaseq-fd.c ${FDDIR}/fd_plugins.h fd_common.h
$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) $(CPPFLAGS) $(CFLAGS) -I../.. -I${FDDIR} -c test-deltaseq-fd.c
@@ -69,6 +61,8 @@
$(MKDIR) $(DESTDIR)$(plugindir)
$(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) bpipe-fd.la $(DESTDIR)$(plugindir)
$(RMF) $(DESTDIR)$(plugindir)/bpipe-fd.la
+ $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) cdp-fd.la $(DESTDIR)$(plugindir)
+ $(RMF) $(DESTDIR)$(plugindir)/cdp-fd.la
install-test-plugin: all
$(MKDIR) $(DESTDIR)$(plugindir)

View File

@ -0,0 +1,34 @@
diff -Naur bacula-9.6.5.old/scripts/bacula-tray-monitor.desktop.in bacula-9.6.5/scripts/bacula-tray-monitor.desktop.in
--- bacula-9.6.5.old/scripts/bacula-tray-monitor.desktop.in 2020-07-24 09:11:40.976119619 +0200
+++ bacula-9.6.5/scripts/bacula-tray-monitor.desktop.in 2020-07-24 09:16:52.055851377 +0200
@@ -5,6 +5,5 @@
Exec=@sbindir@/bacula-tray-monitor -c @sysconfdir@/bacula-tray-monitor.conf
Terminal=false
Type=Application
-Encoding=UTF-8
X-Desktop-File-Install-Version=0.3
-Categories=System;Application;Utility;X-Red-Hat-Base;
+Categories=System;Utility;
diff -Naur bacula-9.6.5.old/scripts/bat.desktop.in bacula-9.6.5/scripts/bat.desktop.in
--- bacula-9.6.5.old/scripts/bat.desktop.in 2020-07-24 09:11:40.976119619 +0200
+++ bacula-9.6.5/scripts/bat.desktop.in 2020-07-24 09:17:21.178294361 +0200
@@ -5,7 +5,6 @@
Exec=@sbindir@/bat -c @sysconfdir@/bat.conf
Terminal=false
Type=Application
-Encoding=UTF-8
StartupNotify=true
X-Desktop-File-Install-Version=0.3
-Categories=System;Application;Utility;X-Red-Hat-Base;
+Categories=System;Utility;
diff -Naur bacula-9.6.5.old/scripts/Makefile.in bacula-9.6.5/scripts/Makefile.in
--- bacula-9.6.5.old/scripts/Makefile.in 2020-07-24 09:11:40.976119619 +0200
+++ bacula-9.6.5/scripts/Makefile.in 2020-07-24 09:17:57.725850277 +0200
@@ -67,7 +67,6 @@
$(MV) -f ${DESTDIR}${scriptdir}/baculabackupreport ${DESTDIR}${scriptdir}/baculabackupreport.old; \
fi
$(INSTALL_SCRIPT) baculabackupreport $(DESTDIR)$(scriptdir)/baculabackupreport
- $(INSTALL_SCRIPT) bacula-tray-monitor.desktop $(DESTDIR)$(scriptdir)/bacula-tray-monitor.desktop
chmod 0644 $(DESTDIR)$(scriptdir)/btraceback.gdb \
$(DESTDIR)$(scriptdir)/btraceback.dbx \
$(DESTDIR)$(scriptdir)/btraceback.mdb

View File

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=Bacula-Director, the Backup-server Description=Bacula Director
Documentation=man:bacula-dir(8) Documentation=man:bacula-dir(8)
After=network.target nss-lookup.target After=network.target nss-lookup.target

View File

@ -0,0 +1,29 @@
diff -Naur bacula-11.0.1.old/autoconf/configure.in bacula-11.0.1/autoconf/configure.in
--- bacula-11.0.1.old/autoconf/configure.in 2021-02-11 14:12:19.547538024 +0100
+++ bacula-11.0.1/autoconf/configure.in 2021-02-11 14:12:25.803641252 +0100
@@ -3240,20 +3240,11 @@
]
)
if test x$support_docker = xyes -o x$support_docker = xauto; then
- AC_CHECK_PROG(docker_bin, docker, yes, no, "/usr/bin/")
- if test x$docker_bin = xyes; then
- support_docker=yes
- FD_PLUGIN_DIR="$FD_PLUGIN_DIR src/plugins/fd/docker"
- PLUGCONFILES="${PLUGCONFILES} src/plugins/fd/docker/Makefile"
- else
- if test x$support_docker = xyes; then
- echo " "
- echo "You enabled a Docker Plugin build but 'docker' command not found."
- echo " "
- exit 1
- fi
- support_docker=no
- fi
+ support_docker=yes
+ FD_PLUGIN_DIR="$FD_PLUGIN_DIR src/plugins/fd/docker"
+ PLUGCONFILES="${PLUGCONFILES} src/plugins/fd/docker/Makefile"
+else
+ support_docker=no
fi
AC_SUBST(FD_PLUGIN_DIR)

View File

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=Bacula-FileDaemon, a Backup-client Description=Bacula File Daemon
Documentation=man:bacula-fd(8) Documentation=man:bacula-fd(8)
After=network.target nss-lookup.target After=network.target nss-lookup.target

View File

@ -0,0 +1,15 @@
diff -Naur bacula-11.0.1.old/autoconf/configure.in bacula-11.0.1/autoconf/configure.in
--- bacula-11.0.1.old/autoconf/configure.in 2021-02-11 14:09:48.635047858 +0100
+++ bacula-11.0.1/autoconf/configure.in 2021-02-11 14:10:48.026027852 +0100
@@ -3274,11 +3274,6 @@
AC_DEFINE(FDLIBS)
CFLAGS=${CFLAGS--O}
-
-if test x$have_gcc = xyes ; then
- CPPFLAGS="$CPPFLAGS -x c++ -fno-strict-aliasing -fno-exceptions -fno-rtti"
- CFLAGS="$CFLAGS -x c++ -fno-strict-aliasing -fno-exceptions -fno-rtti"
-fi
LDFLAGS=${LDFLAGS--O}
CPPFLAGS="$CPPFLAGS"
CFLAGS="$CFLAGS"

View File

@ -0,0 +1,48 @@
diff -Naur bacula-11.0.1.old/autoconf/configure.in bacula-11.0.1/autoconf/configure.in
--- bacula-11.0.1.old/autoconf/configure.in 2021-02-11 14:11:00.673236537 +0100
+++ bacula-11.0.1/autoconf/configure.in 2021-02-11 14:11:36.910834489 +0100
@@ -3798,7 +3798,7 @@
cd src/qt-console
chmod 755 install_conf_file build-depkgs-qt-console
cd tray-monitor
-chmod 755 install_conf_file
+chmod 755 install_conf_file build-depkgs-qt-console
cd ${BUILD_DIR}
cd scripts
diff -Naur bacula-11.0.1.old/examples/nagios/check_bacula/Makefile.in bacula-11.0.1/examples/nagios/check_bacula/Makefile.in
--- bacula-11.0.1.old/examples/nagios/check_bacula/Makefile.in 2021-02-11 14:09:48.630047776 +0100
+++ bacula-11.0.1/examples/nagios/check_bacula/Makefile.in 2021-02-11 14:11:07.708352620 +0100
@@ -72,7 +72,7 @@
(cd $(srcdir); $(RMF) Makefile)
install: all
- $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) check_bacula $(DESTDIR)$(sbindir)/check_bacula
+ $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) .libs/check_bacula $(DESTDIR)$(sbindir)/check_bacula
uninstall:
(cd $(DESTDIR)$(sbindir); $(RMF) check_bacula)
diff -Naur bacula-11.0.1.old/src/qt-console/bat.pro.in bacula-11.0.1/src/qt-console/bat.pro.in
--- bacula-11.0.1.old/src/qt-console/bat.pro.in 2021-02-11 14:09:48.599047264 +0100
+++ bacula-11.0.1/src/qt-console/bat.pro.in 2021-02-11 14:11:07.742353181 +0100
@@ -12,7 +12,7 @@
datarootdir = @datarootdir@
bins.path = /$(DESTDIR)@sbindir@
-bins.files = bat
+bins.files = .libs/bat
confs.path = /$(DESTDIR)@sysconfdir@
confs.commands = ./install_conf_file
help.path = /$(DESTDIR)@htmldir@
diff -Naur bacula-11.0.1.old/src/qt-console/tray-monitor/tray-monitor.pro.in bacula-11.0.1/src/qt-console/tray-monitor/tray-monitor.pro.in
--- bacula-11.0.1.old/src/qt-console/tray-monitor/tray-monitor.pro.in 2021-02-11 14:09:48.603047330 +0100
+++ bacula-11.0.1/src/qt-console/tray-monitor/tray-monitor.pro.in 2021-02-11 14:11:07.743353198 +0100
@@ -26,7 +26,7 @@
bins.path = /$(DESTDIR)@sbindir@
-bins.files = bacula-tray-monitor
+bins.files = .libs/bacula-tray-monitor
confs.path = /$(DESTDIR)@sysconfdir@
confs.commands = ./install_conf_file

View File

@ -0,0 +1,13 @@
diff -Naur bacula-11.0.0.old/examples/nagios/check_bacula/Makefile.in bacula-11.0.0/examples/nagios/check_bacula/Makefile.in
--- bacula-11.0.0.old/examples/nagios/check_bacula/Makefile.in 2021-01-15 14:28:41.415719526 +0100
+++ bacula-11.0.0/examples/nagios/check_bacula/Makefile.in 2021-01-15 15:01:26.371678793 +0100
@@ -72,7 +72,8 @@
(cd $(srcdir); $(RMF) Makefile)
install: all
- $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) .libs/check_bacula $(DESTDIR)$(sbindir)/check_bacula
+ $(MKDIR) $(DESTDIR)$(libdir)/nagios/plugins
+ $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) .libs/check_bacula $(DESTDIR)$(libdir)/nagios/plugins/check_bacula
uninstall:
(cd $(DESTDIR)$(sbindir); $(RMF) check_bacula)

View File

@ -1,7 +1,7 @@
diff -Naur bacula-9.0.0.old/src/lib/lib.h bacula-9.0.0/src/lib/lib.h diff -Naur bacula-11.0.1.old/src/lib/lib.h bacula-11.0.1/src/lib/lib.h
--- bacula-9.0.0.old/src/lib/lib.h 2017-07-10 08:52:38.928834471 +0200 --- bacula-11.0.1.old/src/lib/lib.h 2021-02-11 14:09:48.598047248 +0100
+++ bacula-9.0.0/src/lib/lib.h 2017-07-10 09:06:14.956314468 +0200 +++ bacula-11.0.1/src/lib/lib.h 2021-02-11 14:10:04.432308524 +0100
@@ -53,7 +53,6 @@ @@ -57,7 +57,6 @@
#include "fnmatch.h" #include "fnmatch.h"
#endif #endif
#include "md5.h" #include "md5.h"
@ -9,42 +9,51 @@ diff -Naur bacula-9.0.0.old/src/lib/lib.h bacula-9.0.0/src/lib/lib.h
#include "tree.h" #include "tree.h"
#include "watchdog.h" #include "watchdog.h"
#include "btimers.h" #include "btimers.h"
diff -Naur bacula-9.0.0.old/src/lib/Makefile.in bacula-9.0.0/src/lib/Makefile.in diff -Naur bacula-11.0.1.old/src/lib/Makefile.in bacula-11.0.1/src/lib/Makefile.in
--- bacula-9.0.0.old/src/lib/Makefile.in 2017-07-10 08:52:38.928834471 +0200 --- bacula-11.0.1.old/src/lib/Makefile.in 2021-02-11 14:09:48.598047248 +0100
+++ bacula-9.0.0/src/lib/Makefile.in 2017-07-10 09:06:49.445973039 +0200 +++ bacula-11.0.1/src/lib/Makefile.in 2021-02-11 14:10:04.433308540 +0100
@@ -38,7 +38,7 @@ @@ -40,7 +40,7 @@
flist.h fnmatch.h guid_to_name.h htable.h lex.h \ flist.h fnmatch.h guid_to_name.h htable.h lex.h \
lib.h lz4.h md5.h mem_pool.h message.h \ lib.h lz4.h md5.h mem_pool.h message.h \
openssl.h parse_conf.h plugins.h protos.h queue.h rblist.h \ openssl.h plugins.h protos.h queue.h rblist.h \
- runscript.h rwlock.h serial.h sellist.h sha1.h sha2.h \ - runscript.h rwlock.h serial.h sellist.h sha1.h sha2.h \
+ runscript.h rwlock.h serial.h sellist.h sha2.h \ + runscript.h rwlock.h serial.h sellist.h sha2.h \
smartall.h status.h tls.h tree.h var.h \ smartall.h status.h tls.h tree.h var.h \
watchdog.h workq.h ini.h \ waitq.h watchdog.h workq.h \
lockmgr.h devlock.h output.h bwlimit.h parse_conf.h ini.h \
@@ -52,7 +52,7 @@ @@ -57,7 +57,7 @@
guid_to_name.c hmac.c jcr.c lex.c lz4.c alist.c dlist.c \ guid_to_name.c hmac.c jcr.c lex.c lz4.c alist.c dlist.c \
md5.c message.c mem_pool.c openssl.c \ md5.c message.c mem_pool.c openssl.c \
plugins.c priv.c queue.c bregex.c \ plugins.c priv.c queue.c bregex.c bsockcore.c \
- runscript.c rwlock.c scan.c sellist.c serial.c sha1.c sha2.c \ - runscript.c rwlock.c scan.c sellist.c serial.c sha1.c sha2.c \
+ runscript.c rwlock.c scan.c sellist.c serial.c sha2.c \ + runscript.c rwlock.c scan.c sellist.c serial.c sha2.c \
signal.c smartall.c rblist.c tls.c tree.c \ signal.c smartall.c rblist.c tls.c tree.c \
util.c var.c watchdog.c workq.c btimers.c \ util.c var.c watchdog.c workq.c btimers.c \
worker.c flist.c \ worker.c flist.c bcollector.c collect.c \
@@ -218,13 +218,6 @@ @@ -286,22 +286,6 @@
$(RMF) md5.o $(RMF) md5.o
$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) md5.c $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) md5.c
-sha1sum: Makefile sha1.o -sha1sum: Makefile libbac.la sha1.c
- $(RMF) sha1.o - $(RMF) sha1.o
- $(CXX) -DSHA1_SUM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c - $(CXX) -DSHA1_SUM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
- $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ sha1.o $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS) - $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ sha1.o $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
- $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) $@ $(DESTDIR)$(sbindir)/
- $(RMF) sha1.o - $(RMF) sha1.o
- $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c - $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
- -
bsnprintf: Makefile bsnprintf.o -sha1_test: Makefile libbac.la sha1.c unittests.o
- $(RMF) sha1.o
- $(CXX) -DTEST_PROGRAM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
- $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ sha1.o unittests.o $(DLIB) -lbac -lm $(LIBS)
- $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) $@ $(DESTDIR)$(sbindir)/
- $(RMF) sha1.o
- $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
-
bsnprintf_test: Makefile libbac.la bsnprintf.c unittests.o
$(RMF) bsnprintf.o $(RMF) bsnprintf.o
$(CXX) -DTEST_PROGRAM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) bsnprintf.c $(CXX) -DTEST_PROGRAM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) bsnprintf.c
@@ -274,7 +267,7 @@ @@ -397,7 +381,7 @@
clean: libtool-clean clean: libtool-clean
@$(RMF) core a.out *.o *.bak *.tex *.pdf *~ *.intpro *.extpro 1 2 3 @$(RMF) core a.out *.o *.bak *.tex *.pdf *~ *.intpro *.extpro 1 2 3
@ -53,10 +62,10 @@ diff -Naur bacula-9.0.0.old/src/lib/Makefile.in bacula-9.0.0/src/lib/Makefile.in
realclean: clean realclean: clean
@$(RMF) tags @$(RMF) tags
diff -Naur bacula-9.0.0.old/src/lib/sha1.c bacula-9.0.0/src/lib/sha1.c diff -Naur bacula-11.0.1.old/src/lib/sha1.c bacula-11.0.1/src/lib/sha1.c
--- bacula-9.0.0.old/src/lib/sha1.c 2017-07-10 08:52:38.929834490 +0200 --- bacula-11.0.1.old/src/lib/sha1.c 2021-02-11 14:09:48.598047248 +0100
+++ bacula-9.0.0/src/lib/sha1.c 1970-01-01 01:00:00.000000000 +0100 +++ bacula-11.0.1/src/lib/sha1.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,510 +0,0 @@ @@ -1,517 +0,0 @@
-/* -/*
- * sha1.c - * sha1.c
- * - *
@ -423,8 +432,12 @@ diff -Naur bacula-9.0.0.old/src/lib/sha1.c bacula-9.0.0/src/lib/sha1.c
- SHA1ProcessMessageBlock(context); - SHA1ProcessMessageBlock(context);
-} -}
- -
-#ifdef TEST_DRIVER
- -
-#ifndef TEST_PROGRAM
-#define TEST_PROGRAM_A
-#endif
-
-#ifdef TEST_PROGRAM
-/* -/*
- * sha1test.c - * sha1test.c
- * - *
@ -443,6 +456,9 @@ diff -Naur bacula-9.0.0.old/src/lib/sha1.c bacula-9.0.0/src/lib/sha1.c
-#include <stdio.h> -#include <stdio.h>
-#include <string.h> -#include <string.h>
-#include "sha1.h" -#include "sha1.h"
-#include "unittests.h"
-
-#define NRTESTS 4
- -
-/* -/*
- * Define patterns for testing - * Define patterns for testing
@ -457,81 +473,81 @@ diff -Naur bacula-9.0.0.old/src/lib/sha1.c bacula-9.0.0/src/lib/sha1.c
-#define TEST4b "01234567012345670123456701234567" -#define TEST4b "01234567012345670123456701234567"
- /* an exact multiple of 512 bits */ - /* an exact multiple of 512 bits */
-#define TEST4 TEST4a TEST4b -#define TEST4 TEST4a TEST4b
-char *testarray[4] = -
-const char *testarray[NRTESTS] =
-{ -{
- TEST1, - TEST1,
- TEST2, - TEST2,
- TEST3, - TEST3,
- TEST4 - TEST4
-}; -};
-long int repeatcount[4] = { 1, 1, 1000000, 10 }; -
-char *resultarray[4] = -int repeatcount[NRTESTS] = { 1, 1, 1000000, 10 };
-
-const uint8_t resultarray[NRTESTS][20] =
-{ -{
- "A9 99 3E 36 47 06 81 6A BA 3E 25 71 78 50 C2 6C 9C D0 D8 9D", - { 0xA9, 0x99, 0x3E, 0x36, 0x47, 0x06, 0x81, 0x6A, 0xBA, 0x3E, 0x25, 0x71, 0x78, 0x50, 0xC2, 0x6C, 0x9C, 0xD0, 0xD8, 0x9D },
- "84 98 3E 44 1C 3B D2 6E BA AE 4A A1 F9 51 29 E5 E5 46 70 F1", - { 0x84, 0x98, 0x3E, 0x44, 0x1C, 0x3B, 0xD2, 0x6E, 0xBA, 0xAE, 0x4A, 0xA1, 0xF9, 0x51, 0x29, 0xE5, 0xE5, 0x46, 0x70, 0xF1 },
- "34 AA 97 3C D4 C4 DA A4 F6 1E EB 2B DB AD 27 31 65 34 01 6F", - { 0x34, 0xAA, 0x97, 0x3C, 0xD4, 0xC4, 0xDA, 0xA4, 0xF6, 0x1E, 0xEB, 0x2B, 0xDB, 0xAD, 0x27, 0x31, 0x65, 0x34, 0x01, 0x6F },
- "DE A3 56 A2 CD DD 90 C7 A7 EC ED C5 EB B5 63 93 4F 46 04 52" - { 0xDE, 0xA3, 0x56, 0xA2, 0xCD, 0xDD, 0x90, 0xC7, 0xA7, 0xEC, 0xED, 0xC5, 0xEB, 0xB5, 0x63, 0x93, 0x4F, 0x46, 0x04, 0x52 },
-}; -};
- -
-int main() -int main()
-{ -{
- SHA1Context sha; - Unittests sha1_test("sha1_test");
- int i, j, err; - SHA1Context sha;
- uint8_t Message_Digest[20]; - int i, j, err;
- uint8_t Message_Digest[20];
- bool check_cont;
- bool ct;
- -
- /* - /*
- * Perform SHA-1 tests - * Perform SHA-1 tests
- */ - */
- for(j = 0; j < 4; ++j) { - for(j = 0; j < 4; ++j) {
- printf( "\nTest %d: %d, '%s'\n", - // printf( "\nTest %d: %d, '%s'\n", j+1, repeatcount[j], testarray[j]);
- j+1, - err = SHA1Init(&sha);
- repeatcount[j], - nok(err, "Test SHA1Init");
- testarray[j]); - if (err) {
- break; /* out of for j loop */
- }
- ct = true;
- for(i = 0; i < repeatcount[j]; ++i) {
- err = SHA1Update(&sha, (const unsigned char *) testarray[j], strlen(testarray[j]));
- if (i < 5){
- nok(err, "Test SHA1Update");
- }
- if (ct && repeatcount[j] > 4 && i > 4){
- ct = false;
- printf("...\n");
- }
- if (err) {
- nok(err, "Test SHA1Update");
- break; /* out of for i loop */
- }
- }
- -
- err = SHA1Init(&sha); - err = SHA1Final(&sha, Message_Digest);
- if (err) { - nok(err, "Test SHA1Final");
- fprintf(stderr, "SHA1Reset Error %d.\n", err ); - check_cont = true;
- break; /* out of for j loop */ - for(i = 0; i < 20 ; ++i) {
- } - if (Message_Digest[i] != resultarray[j][i]){
- check_cont = false;
- }
- }
- ok(check_cont, "Checking expected result");
- }
- -
- for(i = 0; i < repeatcount[j]; ++i) { - /* Test some error returns */
- err = SHA1Update(&sha,(const unsigned char *) testarray[1], 1);
- ok(err == shaStateError, "Checking for shaStateError");
- err = SHA1Init(0);
- ok(err == shaNull, "Checking for shaNull");
- -
- err = SHA1Input(&sha, - return report();
- (const unsigned char *) testarray[j],
- strlen(testarray[j]));
- if (err) {
- fprintf(stderr, "SHA1Input Error %d.\n", err );
- break; /* out of for i loop */
- }
- }
-
- err = SHA1Final(&sha, Message_Digest);
- if (err) {
- fprintf(stderr,
- "SHA1Result Error %d, could not compute message digest.\n",
- err );
- }
- else
- {
- printf("\t");
- for(i = 0; i < 20 ; ++i) {
- printf("%02X ", Message_Digest[i]);
- }
- printf("\n");
- }
- printf("Should match:\n");
- printf("\t%s\n", resultarray[j]);
- }
-
- /* Test some error returns */
- err = SHA1Input(&sha,(const unsigned char *) testarray[1], 1);
- printf ("\nError %d. Should be %d.\n", err, shaStateError );
- err = SHA1Init(0);
- printf ("\nError %d. Should be %d.\n", err, shaNull );
- return 0;
-} -}
- -
-#endif /* TEST_DRIVER */ -#endif /* TEST_PROGRAM */
- -
-#ifdef SHA1_SUM -#ifdef SHA1_SUM
-/* -/*
@ -566,10 +582,10 @@ diff -Naur bacula-9.0.0.old/src/lib/sha1.c bacula-9.0.0/src/lib/sha1.c
- printf(" %s\n", argv[1]); - printf(" %s\n", argv[1]);
- fclose(fd); - fclose(fd);
-} -}
-#endif -#endif /* SHA1_SUM */
diff -Naur bacula-9.0.0.old/src/lib/sha1.h bacula-9.0.0/src/lib/sha1.h diff -Naur bacula-11.0.1.old/src/lib/sha1.h bacula-11.0.1/src/lib/sha1.h
--- bacula-9.0.0.old/src/lib/sha1.h 2017-07-10 08:52:38.928834471 +0200 --- bacula-11.0.1.old/src/lib/sha1.h 2021-02-11 14:09:48.599047264 +0100
+++ bacula-9.0.0/src/lib/sha1.h 1970-01-01 01:00:00.000000000 +0100 +++ bacula-11.0.1/src/lib/sha1.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,107 +0,0 @@ @@ -1,107 +0,0 @@
-/* -/*
- * sha1.h - * sha1.h

View File

@ -1,6 +1,6 @@
diff -Naur bacula-9.0.6.old/src/lib/crypto.c bacula-9.0.6/src/lib/crypto.c diff -Naur bacula-11.0.1.old/src/lib/crypto.c bacula-11.0.1/src/lib/crypto.c
--- bacula-9.0.6.old/src/lib/crypto.c 2017-12-07 15:42:03.771178189 +0100 --- bacula-11.0.1.old/src/lib/crypto.c 2021-02-11 14:08:38.220885976 +0100
+++ bacula-9.0.6/src/lib/crypto.c 2017-12-07 15:42:25.300578772 +0100 +++ bacula-11.0.1/src/lib/crypto.c 2021-02-11 14:08:42.518956898 +0100
@@ -42,7 +42,7 @@ @@ -42,7 +42,7 @@
* For OpenSSL version 1.x, EVP_PKEY_encrypt no longer * For OpenSSL version 1.x, EVP_PKEY_encrypt no longer
* exists. It was not an official API. * exists. It was not an official API.
@ -10,9 +10,9 @@ diff -Naur bacula-9.0.6.old/src/lib/crypto.c bacula-9.0.6/src/lib/crypto.c
#define EVP_PKEY_encrypt EVP_PKEY_encrypt_old #define EVP_PKEY_encrypt EVP_PKEY_encrypt_old
#define EVP_PKEY_decrypt EVP_PKEY_decrypt_old #define EVP_PKEY_decrypt EVP_PKEY_decrypt_old
#endif #endif
diff -Naur bacula-9.0.6.old/src/lib/tls.c bacula-9.0.6/src/lib/tls.c diff -Naur bacula-11.0.1.old/src/lib/tls.c bacula-11.0.1/src/lib/tls.c
--- bacula-9.0.6.old/src/lib/tls.c 2017-12-07 15:42:03.770178170 +0100 --- bacula-11.0.1.old/src/lib/tls.c 2021-02-11 14:08:38.218885943 +0100
+++ bacula-9.0.6/src/lib/tls.c 2017-12-07 15:42:26.891608376 +0100 +++ bacula-11.0.1/src/lib/tls.c 2021-02-11 14:08:42.565957674 +0100
@@ -47,9 +47,6 @@ @@ -47,9 +47,6 @@
#include "openssl-compat.h" #include "openssl-compat.h"
@ -23,7 +23,7 @@ diff -Naur bacula-9.0.6.old/src/lib/tls.c bacula-9.0.6/src/lib/tls.c
/* TLS Context Structure */ /* TLS Context Structure */
struct TLS_Context { struct TLS_Context {
SSL_CTX *openssl; SSL_CTX *openssl;
@@ -206,7 +203,7 @@ @@ -350,7 +347,7 @@
SSL_CTX_set_options(ctx->openssl, SSL_OP_SINGLE_DH_USE); SSL_CTX_set_options(ctx->openssl, SSL_OP_SINGLE_DH_USE);
} }
@ -32,7 +32,7 @@ diff -Naur bacula-9.0.6.old/src/lib/tls.c bacula-9.0.6/src/lib/tls.c
Jmsg0(NULL, M_ERROR, 0, Jmsg0(NULL, M_ERROR, 0,
_("Error setting cipher list, no valid ciphers available\n")); _("Error setting cipher list, no valid ciphers available\n"));
goto err; goto err;
@@ -328,7 +325,7 @@ @@ -551,7 +548,7 @@
extname = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext))); extname = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
if (strcmp(extname, "subjectAltName") == 0) { if (strcmp(extname, "subjectAltName") == 0) {

View File

@ -1,6 +1,6 @@
diff -Naur bacula-9.0.0.old/src/dird/bacula-dir.conf.in bacula-9.0.0/src/dird/bacula-dir.conf.in diff -Naur bacula-11.0.0.old/src/dird/bacula-dir.conf.in bacula-11.0.0/src/dird/bacula-dir.conf.in
--- bacula-9.0.0.old/src/dird/bacula-dir.conf.in 2017-07-10 08:52:38.930834509 +0200 --- bacula-11.0.0.old/src/dird/bacula-dir.conf.in 2021-01-12 12:36:32.650470459 +0100
+++ bacula-9.0.0/src/dird/bacula-dir.conf.in 2017-07-10 08:53:11.189444548 +0200 +++ bacula-11.0.0/src/dird/bacula-dir.conf.in 2021-01-12 12:36:38.297573839 +0100
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
Director { # define myself Director { # define myself
Name = @basename@-dir Name = @basename@-dir
@ -10,15 +10,15 @@ diff -Naur bacula-9.0.0.old/src/dird/bacula-dir.conf.in bacula-9.0.0/src/dird/ba
WorkingDirectory = "@working_dir@" WorkingDirectory = "@working_dir@"
PidDirectory = "@piddir@" PidDirectory = "@piddir@"
Maximum Concurrent Jobs = 20 Maximum Concurrent Jobs = 20
diff -Naur bacula-9.0.0.old/src/dird/Makefile.in bacula-9.0.0/src/dird/Makefile.in diff -Naur bacula-11.0.0.old/src/dird/Makefile.in bacula-11.0.0/src/dird/Makefile.in
--- bacula-9.0.0.old/src/dird/Makefile.in 2017-07-10 08:52:38.930834509 +0200 --- bacula-11.0.0.old/src/dird/Makefile.in 2021-01-12 12:36:32.657470588 +0100
+++ bacula-9.0.0/src/dird/Makefile.in 2017-07-10 08:54:24.363828341 +0200 +++ bacula-11.0.0/src/dird/Makefile.in 2021-01-12 12:37:37.827663637 +0100
@@ -124,11 +124,11 @@ @@ -125,11 +125,11 @@
@if test "x${dir_group}" != "x" -a "x${DESTDIR}" = "x" ; then \ @if test "x${dir_group}" != "x"; then \
chgrp -f ${dir_group} ${DESTDIR}${sysconfdir}/$$destconf ; \ chgrp -f ${dir_group} ${DESTDIR}${sysconfdir}/$$destconf ; \
fi fi
- @if test -f ${DESTDIR}${scriptdir}/query.sql; then \ - @if test -f ${DESTDIR}${scriptdir}/query.sql; then \
+ @if test -f ${DESTDIR}${sysconfdir}/query.sql; then \ + @if test -f ${DESTDIR}${sysconfdir}/query.sql; then \
echo " ==> Saving existing query.sql to query.sql.old"; \ echo " ==> Saving existing query.sql to query.sql.old"; \
- $(MV) -f ${DESTDIR}${scriptdir}/query.sql ${DESTDIR}${scriptdir}/query.sql.old; \ - $(MV) -f ${DESTDIR}${scriptdir}/query.sql ${DESTDIR}${scriptdir}/query.sql.old; \
+ $(MV) -f ${DESTDIR}${sysconfdir}/query.sql ${DESTDIR}${sysconfdir}/query.sql.old; \ + $(MV) -f ${DESTDIR}${sysconfdir}/query.sql ${DESTDIR}${sysconfdir}/query.sql.old; \
@ -28,7 +28,7 @@ diff -Naur bacula-9.0.0.old/src/dird/Makefile.in bacula-9.0.0/src/dird/Makefile.
@if test -f static-bacula-dir; then \ @if test -f static-bacula-dir; then \
$(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) static-bacula-dir $(DESTDIR)$(sbindir)/static-bacula-dir; \ $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) static-bacula-dir $(DESTDIR)$(sbindir)/static-bacula-dir; \
fi fi
@@ -137,7 +137,7 @@ @@ -138,7 +138,7 @@
uninstall: uninstall:
(cd $(DESTDIR)$(sbindir); $(RMF) bacula-dir bdirjson) (cd $(DESTDIR)$(sbindir); $(RMF) bacula-dir bdirjson)
(cd $(DESTDIR)$(sysconfdir); $(RMF) bacula-dir.conf bacula-dir.conf.new) (cd $(DESTDIR)$(sysconfdir); $(RMF) bacula-dir.conf bacula-dir.conf.new)

View File

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=Bacula-StorageDaemon, the storage-server Description=Bacula Storage Daemon
Documentation=man:bacula-sd(8) Documentation=man:bacula-sd(8)
After=network.target nss-lookup.target After=network.target nss-lookup.target

View File

@ -1,6 +1,6 @@
diff -Naur bacula-9.0.0.old/src/lib/message.c bacula-9.0.0/src/lib/message.c diff -Naur bacula-11.0.0.old/src/lib/message.c bacula-11.0.0/src/lib/message.c
--- bacula-9.0.0.old/src/lib/message.c 2017-07-10 08:52:38.928834471 +0200 --- bacula-11.0.0.old/src/lib/message.c 2021-01-12 12:36:32.630470094 +0100
+++ bacula-9.0.0/src/lib/message.c 2017-07-10 09:04:34.923403834 +0200 +++ bacula-11.0.0/src/lib/message.c 2021-01-12 12:39:42.477945569 +0100
@@ -28,6 +28,7 @@ @@ -28,6 +28,7 @@
* *
*/ */
@ -9,7 +9,7 @@ diff -Naur bacula-9.0.0.old/src/lib/message.c bacula-9.0.0/src/lib/message.c
#include "bacula.h" #include "bacula.h"
#include "jcr.h" #include "jcr.h"
@@ -1367,7 +1368,8 @@ @@ -1476,7 +1477,8 @@
if (type == M_ABORT) { if (type == M_ABORT) {
char *p = 0; char *p = 0;

View File

@ -0,0 +1,9 @@
diff -Naur bacula-11.0.0.old/src/cats/make_sqlite3_tables.in bacula-11.0.0/src/cats/make_sqlite3_tables.in
--- bacula-11.0.0.old/src/cats/make_sqlite3_tables.in 2021-01-12 12:36:32.660470643 +0100
+++ bacula-11.0.0/src/cats/make_sqlite3_tables.in 2021-01-12 12:38:45.241897767 +0100
@@ -555,4 +555,5 @@
echo ""
chmod 640 ${db_name}.db
+chown bacula:bacula ${db_name}.db
exit 0

View File

@ -3,11 +3,10 @@ Date: Mon Aug 12 14:51:39 2019 +0200
Use functions from OpenSSL for HMAC, MD5 and random bytes Use functions from OpenSSL for HMAC, MD5 and random bytes
diff --git a/bacula/src/dird/dird_conf.c b/bacula/src/dird/dird_conf.c diff -up bacula-11.0.1/src/dird/dird_conf.c.orig bacula-11.0.1/src/dird/dird_conf.c
index 02fae0bab..dff241356 100644 --- bacula-11.0.1/src/dird/dird_conf.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/dird/dird_conf.c +++ bacula-11.0.1/src/dird/dird_conf.c 2022-02-11 19:43:38.870718113 +0100
+++ b/bacula/src/dird/dird_conf.c @@ -43,6 +43,10 @@
@@ -42,6 +42,10 @@
#include "bacula.h" #include "bacula.h"
#include "dird.h" #include "dird.h"
@ -18,7 +17,7 @@ index 02fae0bab..dff241356 100644
/* Define the first and last resource ID record /* Define the first and last resource ID record
* types. Note, these should be unique for each * types. Note, these should be unique for each
* daemon though not a requirement. * daemon though not a requirement.
@@ -1645,6 +1649,11 @@ void free_resource(RES *rres, int type) @@ -1783,6 +1787,11 @@ void free_resource(RES *rres, int type)
free(res->res_fs.exclude_items); free(res->res_fs.exclude_items);
} }
res->res_fs.num_excludes = 0; res->res_fs.num_excludes = 0;
@ -30,11 +29,10 @@ index 02fae0bab..dff241356 100644
break; break;
case R_POOL: case R_POOL:
if (res->res_pool.pool_type) { if (res->res_pool.pool_type) {
diff --git a/bacula/src/dird/dird_conf.h b/bacula/src/dird/dird_conf.h diff -up bacula-11.0.1/src/dird/dird_conf.h.orig bacula-11.0.1/src/dird/dird_conf.h
index 5174a7a14..4e910c5bd 100644 --- bacula-11.0.1/src/dird/dird_conf.h.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/dird/dird_conf.h +++ bacula-11.0.1/src/dird/dird_conf.h 2022-02-11 19:43:38.870718113 +0100
+++ b/bacula/src/dird/dird_conf.h @@ -25,6 +25,10 @@
@@ -24,6 +24,10 @@
/* NOTE: #includes at the end of this file */ /* NOTE: #includes at the end of this file */
@ -45,7 +43,7 @@ index 5174a7a14..4e910c5bd 100644
/* /*
* Resource codes -- they must be sequential for indexing * Resource codes -- they must be sequential for indexing
*/ */
@@ -591,7 +595,11 @@ public: @@ -608,7 +612,11 @@ public:
INCEXE **exclude_items; INCEXE **exclude_items;
int32_t num_excludes; int32_t num_excludes;
bool have_MD5; /* set if MD5 initialized */ bool have_MD5; /* set if MD5 initialized */
@ -57,10 +55,9 @@ index 5174a7a14..4e910c5bd 100644
char MD5[30]; /* base 64 representation of MD5 */ char MD5[30]; /* base 64 representation of MD5 */
bool ignore_fs_changes; /* Don't force Full if FS changed */ bool ignore_fs_changes; /* Don't force Full if FS changed */
bool enable_vss; /* Enable Volume Shadow Copy */ bool enable_vss; /* Enable Volume Shadow Copy */
diff --git a/bacula/src/dird/inc_conf.c b/bacula/src/dird/inc_conf.c diff -up bacula-11.0.1/src/dird/inc_conf.c.orig bacula-11.0.1/src/dird/inc_conf.c
index 3f4fbf55e..64b422242 100644 --- bacula-11.0.1/src/dird/inc_conf.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/dird/inc_conf.c +++ bacula-11.0.1/src/dird/inc_conf.c 2022-02-11 19:43:38.870718113 +0100
+++ b/bacula/src/dird/inc_conf.c
@@ -32,6 +32,10 @@ @@ -32,6 +32,10 @@
#include <regex.h> #include <regex.h>
#endif #endif
@ -72,7 +69,7 @@ index 3f4fbf55e..64b422242 100644
/* Forward referenced subroutines */ /* Forward referenced subroutines */
void store_inc(LEX *lc, RES_ITEM *item, int index, int pass); void store_inc(LEX *lc, RES_ITEM *item, int index, int pass);
@@ -354,7 +358,17 @@ static void store_newinc(LEX *lc, RES_ITEM *item, int index, int pass) @@ -390,7 +394,17 @@ static void store_newinc(LEX *lc, RES_IT
bool options; bool options;
if (!res_all.res_fs.have_MD5) { if (!res_all.res_fs.have_MD5) {
@ -89,8 +86,8 @@ index 3f4fbf55e..64b422242 100644
+#endif +#endif
res_all.res_fs.have_MD5 = true; res_all.res_fs.have_MD5 = true;
} }
memset(&res_incexe, 0, sizeof(INCEXE)); bmemset(&res_incexe, 0, sizeof(INCEXE));
@@ -620,7 +634,13 @@ static void store_fname(LEX *lc, RES_ITEM2 *item, int index, int pass, bool excl @@ -656,7 +670,13 @@ static void store_fname(LEX *lc, RES_ITE
} }
case T_QUOTED_STRING: case T_QUOTED_STRING:
if (res_all.res_fs.have_MD5) { if (res_all.res_fs.have_MD5) {
@ -104,7 +101,7 @@ index 3f4fbf55e..64b422242 100644
} }
incexe = &res_incexe; incexe = &res_incexe;
if (incexe->name_list.size() == 0) { if (incexe->name_list.size() == 0) {
@@ -663,7 +683,13 @@ static void store_plugin_name(LEX *lc, RES_ITEM2 *item, int index, int pass, boo @@ -699,7 +719,13 @@ static void store_plugin_name(LEX *lc, R
} }
case T_QUOTED_STRING: case T_QUOTED_STRING:
if (res_all.res_fs.have_MD5) { if (res_all.res_fs.have_MD5) {
@ -118,11 +115,10 @@ index 3f4fbf55e..64b422242 100644
} }
incexe = &res_incexe; incexe = &res_incexe;
if (incexe->plugin_list.size() == 0) { if (incexe->plugin_list.size() == 0) {
diff --git a/bacula/src/dird/job.c b/bacula/src/dird/job.c diff -up bacula-11.0.1/src/dird/job.c.orig bacula-11.0.1/src/dird/job.c
index b5b39c7d5..7d69f0157 100644 --- bacula-11.0.1/src/dird/job.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/dird/job.c +++ bacula-11.0.1/src/dird/job.c 2022-02-11 19:43:38.871718095 +0100
+++ b/bacula/src/dird/job.c @@ -27,6 +27,10 @@
@@ -25,6 +25,10 @@
#include "bacula.h" #include "bacula.h"
#include "dird.h" #include "dird.h"
@ -133,7 +129,7 @@ index b5b39c7d5..7d69f0157 100644
/* Forward referenced subroutines */ /* Forward referenced subroutines */
static void *job_thread(void *arg); static void *job_thread(void *arg);
static void job_monitor_watchdog(watchdog_t *self); static void job_monitor_watchdog(watchdog_t *self);
@@ -1308,10 +1312,27 @@ bool get_or_create_fileset_record(JCR *jcr) @@ -1342,10 +1346,27 @@ bool get_or_create_fileset_record(JCR *j
memset(&fsr, 0, sizeof(FILESET_DBR)); memset(&fsr, 0, sizeof(FILESET_DBR));
bstrncpy(fsr.FileSet, jcr->fileset->hdr.name, sizeof(fsr.FileSet)); bstrncpy(fsr.FileSet, jcr->fileset->hdr.name, sizeof(fsr.FileSet));
if (jcr->fileset->have_MD5) { if (jcr->fileset->have_MD5) {
@ -161,10 +157,9 @@ index b5b39c7d5..7d69f0157 100644
/* /*
* Keep the flag (last arg) set to false otherwise old FileSets will * Keep the flag (last arg) set to false otherwise old FileSets will
* get new MD5 sums and the user will get Full backups on everything * get new MD5 sums and the user will get Full backups on everything
diff --git a/bacula/src/lib/hmac.c b/bacula/src/lib/hmac.c diff -up bacula-11.0.1/src/lib/hmac.c.orig bacula-11.0.1/src/lib/hmac.c
index a8d5e3dc0..dc3b78383 100644 --- bacula-11.0.1/src/lib/hmac.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/lib/hmac.c +++ bacula-11.0.1/src/lib/hmac.c 2022-02-11 19:43:38.871718095 +0100
+++ b/bacula/src/lib/hmac.c
@@ -26,6 +26,10 @@ @@ -26,6 +26,10 @@
*/ */
#include "bacula.h" #include "bacula.h"
@ -204,10 +199,9 @@ index a8d5e3dc0..dc3b78383 100644
/* /*
Test Vectors (Trailing '\0' of a character string not included in test): Test Vectors (Trailing '\0' of a character string not included in test):
diff --git a/bacula/src/lib/parse_conf.c b/bacula/src/lib/parse_conf.c diff -up bacula-11.0.1/src/lib/parse_conf.c.orig bacula-11.0.1/src/lib/parse_conf.c
index cb3573fbd..3f3f93fdc 100644 --- bacula-11.0.1/src/lib/parse_conf.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/lib/parse_conf.c +++ bacula-11.0.1/src/lib/parse_conf.c 2022-02-11 19:43:38.871718095 +0100
+++ b/bacula/src/lib/parse_conf.c
@@ -59,6 +59,10 @@ @@ -59,6 +59,10 @@
#define MAX_PATH 1024 #define MAX_PATH 1024
#endif #endif
@ -219,7 +213,7 @@ index cb3573fbd..3f3f93fdc 100644
/* /*
* Define the Union of all the common resource structure definitions. * Define the Union of all the common resource structure definitions.
*/ */
@@ -538,7 +542,11 @@ void store_dir(LEX *lc, RES_ITEM *item, int index, int pass) @@ -588,7 +592,11 @@ void store_dir(LEX *lc, RES_ITEM *item,
void store_password(LEX *lc, RES_ITEM *item, int index, int pass) void store_password(LEX *lc, RES_ITEM *item, int index, int pass)
{ {
unsigned int i, j; unsigned int i, j;
@ -231,7 +225,7 @@ index cb3573fbd..3f3f93fdc 100644
unsigned char digest[CRYPTO_DIGEST_MD5_SIZE]; unsigned char digest[CRYPTO_DIGEST_MD5_SIZE];
char sig[100]; char sig[100];
@@ -548,9 +556,21 @@ void store_password(LEX *lc, RES_ITEM *item, int index, int pass) @@ -598,9 +606,21 @@ void store_password(LEX *lc, RES_ITEM *i
} else { } else {
lex_get_token(lc, T_STRING); lex_get_token(lc, T_STRING);
if (pass == 1) { if (pass == 1) {
@ -253,11 +247,10 @@ index cb3573fbd..3f3f93fdc 100644
for (i = j = 0; i < sizeof(digest); i++) { for (i = j = 0; i < sizeof(digest); i++) {
sprintf(&sig[j], "%02x", digest[i]); sprintf(&sig[j], "%02x", digest[i]);
j += 2; j += 2;
diff --git a/bacula/src/lib/util.c b/bacula/src/lib/util.c diff -up bacula-11.0.1/src/lib/util.c.orig bacula-11.0.1/src/lib/util.c
index 2c425aa4c..e82b907d8 100644 --- bacula-11.0.1/src/lib/util.c.orig 2021-02-05 22:23:44.000000000 +0100
--- a/bacula/src/lib/util.c +++ bacula-11.0.1/src/lib/util.c 2022-02-11 19:43:38.872718077 +0100
+++ b/bacula/src/lib/util.c @@ -707,6 +707,35 @@ int do_shell_expansion(char *name, int n
@@ -707,6 +707,35 @@ int do_shell_expansion(char *name, int name_len)
from SpeakFreely by John Walker */ from SpeakFreely by John Walker */
void make_session_key(char *key, char *seed, int mode) void make_session_key(char *key, char *seed, int mode)
@ -293,7 +286,7 @@ index 2c425aa4c..e82b907d8 100644
{ {
int j, k; int j, k;
struct MD5Context md5c; struct MD5Context md5c;
@@ -790,6 +819,7 @@ void make_session_key(char *key, char *seed, int mode) @@ -790,6 +819,7 @@ void make_session_key(char *key, char *s
} }
} }
#undef nextrand #undef nextrand

762
SPECS/bacula.spec Normal file
View File

@ -0,0 +1,762 @@
%global uid 133
%global username bacula
%if 0%{?rhel} && ! 0%{?epel}
%bcond_with nagios
%else
%bcond_without nagios
%endif
Name: bacula
Version: 11.0.1
Release: 5%{?dist}
Summary: Cross platform network backup for Linux, Unix, Mac and Windows
# See LICENSE for details
License: AGPLv3 with exceptions
URL: http://www.bacula.org
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source2: quickstart_postgresql.txt
Source3: quickstart_mysql.txt
Source4: quickstart_sqlite3.txt
Source5: README.Redhat
Source6: %{name}.logrotate
Source10: %{name}-fd.service
Source11: %{name}-dir.service
Source12: %{name}-sd.service
Source15: %{name}-fd.sysconfig
Source16: %{name}-dir.sysconfig
Source17: %{name}-sd.sysconfig
Source19: https://salsa.debian.org/bacula-team/bacula/-/raw/master/debian/additions/bacula-tray-monitor.png#/bacula-tray-monitor.png
Patch1: %{name}-openssl.patch
Patch2: %{name}-queryfile.patch
Patch3: %{name}-sqlite-priv.patch
Patch4: %{name}-bat-build.patch
Patch5: %{name}-seg-fault.patch
Patch6: %{name}-logwatch.patch
Patch7: %{name}-non-free-code.patch
Patch8: %{name}-desktop.patch
Patch9: %{name}-g++-options.patch
Patch10: %{name}-install.patch
Patch11: %{name}-docker-plugin.patch
# Original patch removed by mistake, upstream is not willing to add it again:
# http://www.bacula.org/git/cgit.cgi/bacula/commit/?h=Branch-7.0&id=51b3b98fb77ab3c0decee455cc6c4d2eb3c5303a
# Without this, there is no library providing the correct shared object name
# required by the daemons.
# http://bugs.bacula.org/view.php?id=2084
Patch12: %{name}-autoconf.patch
Patch13: %{name}-build-cdp-plugin.patch
Patch14: %{name}-nagios.patch
Patch15: %{name}-use-crypto-from-openssl.patch
BuildRequires: desktop-file-utils
BuildRequires: perl-generators
BuildRequires: sed
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: glibc-devel
BuildRequires: libacl-devel
BuildRequires: libstdc++-devel
BuildRequires: libxml2-devel
BuildRequires: libcap-devel
BuildRequires: lzo-devel
BuildRequires: make
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: qt5-qtbase-devel
BuildRequires: readline-devel
BuildRequires: sqlite-devel
BuildRequires: systemd
BuildRequires: zlib-devel
%if 0%{?fedora} || 0%{?rhel} > 7
BuildRequires: mariadb-connector-c-devel
# https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules
BuildRequires: perl-interpreter
%else
BuildRequires: mysql-devel
BuildRequires: perl
BuildRequires: tcp_wrappers-devel
%endif
%if 0%{?fedora}
BuildRequires: libpq-devel
%else
BuildRequires: postgresql-devel
%endif
%description
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 and is efficient and relatively easy to
use, while offering many advanced storage management features that make it easy
to find and recover lost or damaged files.
%package libs
Summary: Bacula libraries
%description libs
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 basic Bacula libraries, which are used by all
Bacula programs.
%package libs-sql
Summary: Bacula SQL libraries
Obsoletes: bacula-libs-mysql <= 5.0.3
Obsoletes: bacula-libs-sqlite <= 5.0.3
Obsoletes: bacula-libs-postgresql <= 5.0.3
Provides: bacula-libs-mysql = %{version}-%{release}
Provides: bacula-libs-sqlite = %{version}-%{release}
Provides: bacula-libs-postgresql = %{version}-%{release}
%description libs-sql
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 SQL Bacula libraries, which are used by Director and
Storage daemons. You have to select your preferred catalog library through the
alternatives system.
%package common
Summary: Common Bacula files
Provides: group(%username) = %uid
Provides: user(%username) = %uid
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires(pre): shadow-utils
Requires(postun): shadow-utils
%description common
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 files common to all Bacula daemons.
%package director
Summary: Bacula Director files
Requires: bacula-common%{?_isa} = %{version}-%{release}
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: bacula-libs-sql%{?_isa} = %{version}-%{release}
# Director backends merged into core.
Provides: bacula-director-common = %{version}-%{release}
Obsoletes: bacula-director-common < 5.2.3-5
Provides: bacula-director-mysql = %{version}-%{release}
Obsoletes: bacula-director-mysql < 5.2.3-5
Provides: bacula-director-sqlite = %{version}-%{release}
Obsoletes: bacula-director-sqlite < 5.2.3-5
Provides: bacula-director-postgresql = %{version}-%{release}
Obsoletes: bacula-director-postgresql < 5.2.3-5
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description director
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 director files.
%package logwatch
Summary: Bacula Director logwatch scripts
BuildArch: noarch
Requires: bacula-director = %{version}-%{release}
Requires: logwatch
%description logwatch
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 logwatch scripts for Bacula Director.
%package storage
Summary: Bacula storage daemon files
Requires: bacula-common%{?_isa} = %{version}-%{release}
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: bacula-libs-sql%{?_isa} = %{version}-%{release}
Requires: mt-st
Requires: mtx
# Storage backends merged into core.
Provides: bacula-storage-common = %{version}-%{release}
Obsoletes: bacula-storage-common < 5.2.2-2
Provides: bacula-storage-mysql = %{version}-%{release}
Obsoletes: bacula-storage-mysql < 5.2.0
Provides: bacula-storage-sqlite = %{version}-%{release}
Obsoletes: bacula-storage-sqlite < 5.2.0
Provides: bacula-storage-postgresql = %{version}-%{release}
Obsoletes: bacula-storage-postgresql < 5.2.0
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description storage
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 storage daemon, the daemon responsible for writing
the data received from the clients onto tape drives or other mass storage
devices.
%package client
Summary: Bacula backup client
Requires: bacula-common%{?_isa} = %{version}-%{release}
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description client
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 bacula client, the daemon running on the system to be
backed up.
%package console
Summary: Bacula management console
Obsoletes: bacula-console-wxwidgets <= 5.0.3
Requires: bacula-libs%{?_isa} = %{version}-%{release}
%description console
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 command-line management console for the bacula backup
system.
%package console-bat
Summary: Bacula bat console
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: dejavu-lgc-sans-fonts
%description console-bat
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 bat version of the bacula management console.
%package traymonitor
Summary: Bacula system tray monitor
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: dejavu-lgc-sans-fonts
%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.
%package devel
Summary: Bacula development files
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: bacula-libs-sql%{?_isa} = %{version}-%{release}
%description devel
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 development package contains static libraries and header files.
%if %{with nagios}
%package -n nagios-plugins-bacula
Summary: Nagios Plugin - check_bacula
Requires: bacula-libs%{?_isa} = %{version}-%{release}
Requires: nagios-common%{?_isa}
%description -n nagios-plugins-bacula
Provides check_bacula support for Nagios.
%endif
%prep
%autosetup -p1
cp %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} .
# Regenerate configure
pushd autoconf
sed -i -r 's/(hardcode_into_libs)=.*$/\1=no/' libtool/libtool.m4
aclocal -I bacula-macros/ -I gettext-macros/ -I libtool/
popd
autoconf -I autoconf/ -o configure autoconf/configure.in
# Remove execution permissions from files we're packaging as docs later on
find updatedb -type f | xargs chmod -x
%build
export CFLAGS="%{optflags} -I%{_includedir}/ncurses"
export CPPFLAGS="%{optflags} -I%{_includedir}/ncurses"
export PATH="$PATH:%{_qt5_bindir}"
%configure \
--disable-conio \
--disable-rpath \
--disable-s3 \
--docdir=%{_datadir}/bacula \
--enable-bat \
--enable-batch-insert \
--enable-build-dird \
--enable-build-stored \
--enable-includes \
--enable-largefile \
--enable-readline \
--enable-smartalloc \
--sysconfdir=%{_sysconfdir}/bacula \
--with-basename=bacula \
--with-bsrdir=%{_localstatedir}/spool/bacula \
--with-dir-password=@@DIR_PASSWORD@@ \
--with-fd-password=@@FD_PASSWORD@@ \
--with-hostname=localhost \
--with-logdir=%{_localstatedir}/log/bacula \
--with-mon-dir-password=@@MON_DIR_PASSWORD@@ \
--with-mon-fd-password=@@MON_FD_PASSWORD@@ \
--with-mon-sd-password=@@MON_SD_PASSWORD@@ \
--with-mysql \
--with-openssl \
--with-pid-dir=%{_localstatedir}/run \
--with-plugindir=%{_libdir}/%{name} \
--with-postgresql \
--with-scriptdir=%{_libexecdir}/bacula \
--with-sd-password=@@SD_PASSWORD@@ \
--with-smtp-host=localhost \
--with-sqlite3 \
--with-subsys-dir=%{_localstatedir}/lock/subsys \
%if 0%{!?fedora} || 0%{!?rhel} > 7
--with-tcp-wrappers \
%endif
--with-working-dir=%{_localstatedir}/spool/bacula \
--with-x
# Remove RPATH
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
pushd src/qt-console/
%{?qmake_qt5}%{!?qmake_qt5:qmake-qt5} bat.pro
pushd tray-monitor
%{?qmake_qt5}%{!?qmake_qt5:qmake-qt5} tray-monitor.pro
popd
popd
%make_build
%make_build -C src/tools/cdp-client
%if %{with nagios}
%make_build -C examples/nagios/check_bacula
%endif
pushd src/qt-console/
%{?qmake_qt5}%{!?qmake_qt5:qmake-qt5} bat.pro
pushd tray-monitor
%{?qmake_qt5}%{!?qmake_qt5:qmake-qt5} tray-monitor.pro
popd
popd
# Convert image to png for tray monitor icon
%install
%make_install
%make_install -C src/tools/cdp-client
%if %{with nagios}
%make_install -C examples/nagios/check_bacula
%endif
# This will be managed through alternatives, as it requires the name to NOT
# change between upgrades, so the versioned library name can not be used.
rm -f %{buildroot}%{_libdir}/libbaccats.so
# Bat
install -p -m 644 -D src/qt-console/images/bat_icon.png %{buildroot}%{_datadir}/pixmaps/bat_icon.png
install -p -m 644 -D scripts/bat.desktop %{buildroot}%{_datadir}/applications/bat.desktop
install -p -m 755 -D src/qt-console/.libs/bat %{buildroot}%{_sbindir}/bat
install -p -m 644 -D manpages/bacula-tray-monitor.1 %{buildroot}%{_mandir}/man1/bacula-tray-monitor.1
install -p -m 644 -D %{SOURCE19} %{buildroot}%{_datadir}/pixmaps/bacula-tray-monitor.png
install -p -m 644 -D scripts/bacula-tray-monitor.desktop %{buildroot}%{_datadir}/applications/bacula-tray-monitor.desktop
# Logrotate
mkdir -p %{buildroot}%{_localstatedir}/log/bacula
install -p -m 644 -D %{SOURCE6} %{buildroot}%{_sysconfdir}/logrotate.d/bacula
# Logwatch
install -p -m 755 -D scripts/logwatch/bacula %{buildroot}%{_sysconfdir}/logwatch/scripts/services/bacula
install -p -m 755 -D scripts/logwatch/applybaculadate %{buildroot}%{_sysconfdir}/logwatch/scripts/shared/applybaculadate
install -p -m 644 -D scripts/logwatch/logfile.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
install -p -m 644 -D scripts/logwatch/services.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/services/bacula.conf
# Systemd unit files
mkdir -p %{buildroot}%{_unitdir}
install -p -m 644 -D %{SOURCE10} %{buildroot}%{_unitdir}/bacula-fd.service
install -p -m 644 -D %{SOURCE11} %{buildroot}%{_unitdir}/bacula-dir.service
install -p -m 644 -D %{SOURCE12} %{buildroot}%{_unitdir}/bacula-sd.service
# Sysconfig
install -p -m 644 -D %{SOURCE15} %{buildroot}%{_sysconfdir}/sysconfig/bacula-fd
install -p -m 644 -D %{SOURCE16} %{buildroot}%{_sysconfdir}/sysconfig/bacula-dir
install -p -m 644 -D %{SOURCE17} %{buildroot}%{_sysconfdir}/sysconfig/bacula-sd
# Spool directory
mkdir -p %{buildroot}%{_localstatedir}/spool/bacula
# Remove stuff we do not need
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}%{_libdir}/*.la
rm -f %{buildroot}%{_datadir}/bacula/{ChangeLog,INSTALL,LICENSE*,README,ReleaseNotes,VERIFYING,technotes}
# Fix up some perms so rpmlint does not complain too much
chmod 755 %{buildroot}%{_sbindir}/*
chmod 755 %{buildroot}%{_libdir}/%{name}/*
chmod 755 %{buildroot}%{_libexecdir}/bacula/*
chmod 644 %{buildroot}%{_libexecdir}/bacula/btraceback.*
%ldconfig_scriptlets libs
%post libs-sql
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-mysql.so 50
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-sqlite3.so 40
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-postgresql.so 60
# Fix for automatic selection of backends during upgrades
if readlink /etc/alternatives/libbaccats.so | grep --silent mysql || \
readlink /etc/alternatives/bacula-dir | grep --silent mysql || \
readlink /etc/alternatives/bacula-sd | grep --silent mysql; then
/usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-mysql.so
elif readlink /etc/alternatives/libbaccats.so | grep --silent sqlite || \
readlink /etc/alternatives/bacula-dir | grep --silent sqlite || \
readlink /etc/alternatives/bacula-sd | grep --silent sqlite; then
/usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-sqlite3.so
else
/usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-postgresql.so
fi
%{?ldconfig}
%preun libs-sql
if [ "$1" = 0 ]; then
/usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-mysql.so
/usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-sqlite3.so
/usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-postgresql.so
fi
%ldconfig_postun libs-sql
%pre common
getent group %username >/dev/null || groupadd -g %uid -r %username &>/dev/null || :
getent passwd %username >/dev/null || useradd -u %uid -r -s /sbin/nologin \
-d /var/spool/bacula -M -c 'Bacula Backup System' -g %username %username &>/dev/null || :
exit 0
%post client
%systemd_post %{name}-fd.service
%preun client
%systemd_preun %{name}-fd.service
%postun client
%systemd_postun_with_restart %{name}-fd.service
%post director
%systemd_post %{name}-dir.service
%preun director
%systemd_preun %{name}-dir.service
%postun director
%systemd_postun_with_restart %{name}-dir.service
%post storage
%systemd_post %{name}-sd.service
%preun storage
%systemd_preun %{name}-sd.service
%postun storage
%systemd_postun_with_restart %{name}-sd.service
%files libs
%license LICENSE
%doc AUTHORS ChangeLog SUPPORT ReleaseNotes LICENSE-FAQ LICENSE-FOSS
%{_libdir}/libbac-%{version}.so
%{_libdir}/libbaccfg-%{version}.so
%{_libdir}/libbacfind-%{version}.so
%{_libdir}/libbacsd-%{version}.so
%files libs-sql
# On Fedora 28 this gets recreated automatically even if the library is
# deleted in the install section.
# On EPEL 6 this is required until RPM assembly time or an error is given due
# to the missing library.
# So: leave the library in place until the very end and just exclude it.
%exclude %{_libdir}/libbaccats-%{version}.so
%{_libdir}/libbaccats-mysql-%{version}.so
%{_libdir}/libbaccats-mysql.so
%{_libdir}/libbaccats-postgresql-%{version}.so
%{_libdir}/libbaccats-postgresql.so
%{_libdir}/libbaccats-sqlite3-%{version}.so
%{_libdir}/libbaccats-sqlite3.so
%{_libdir}/libbacsql-%{version}.so
%files common
%doc README.Redhat quickstart_*
%config(noreplace) %{_sysconfdir}/logrotate.d/bacula
%dir %{_localstatedir}/log/bacula %attr(750, bacula, bacula)
%dir %{_localstatedir}/spool/bacula %attr(750, bacula, bacula)
%dir %{_libexecdir}/%{name}
%dir %{_sysconfdir}/%{name} %attr(755,root,root)
%{_libexecdir}/%{name}/btraceback.dbx
%{_libexecdir}/%{name}/btraceback.gdb
%{_libexecdir}/%{name}/bacula_config
%{_libexecdir}/%{name}/btraceback.mdb
%{_mandir}/man8/btraceback.8*
%{_sbindir}/btraceback
%files director
%doc updatedb examples/sample-query.sql
%config(noreplace) %{_sysconfdir}/bacula/bacula-dir.conf %attr(640,root,bacula)
%config(noreplace) %{_sysconfdir}/bacula/query.sql %attr(640,root,bacula)
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-dir
%{_libexecdir}/%{name}/baculabackupreport
%{_libexecdir}/%{name}/create_bacula_database
%{_libexecdir}/%{name}/delete_catalog_backup
%{_libexecdir}/%{name}/drop_bacula_database
%{_libexecdir}/%{name}/drop_bacula_tables
%{_libexecdir}/%{name}/grant_bacula_privileges
%{_libexecdir}/%{name}/make_bacula_tables
%{_libexecdir}/%{name}/make_catalog_backup.pl
%{_libexecdir}/%{name}/update_bacula_tables
%{_libexecdir}/%{name}/create_mysql_database
%{_libexecdir}/%{name}/drop_mysql_database
%{_libexecdir}/%{name}/drop_mysql_tables
%{_libexecdir}/%{name}/grant_mysql_privileges
%{_libexecdir}/%{name}/make_mysql_tables
%{_libexecdir}/%{name}/update_mysql_tables
%{_libexecdir}/%{name}/create_sqlite3_database
%{_libexecdir}/%{name}/drop_sqlite3_database
%{_libexecdir}/%{name}/drop_sqlite3_tables
%{_libexecdir}/%{name}/grant_sqlite3_privileges
%{_libexecdir}/%{name}/make_sqlite3_tables
%{_libexecdir}/%{name}/update_sqlite3_tables
%{_libexecdir}/%{name}/create_postgresql_database
%{_libexecdir}/%{name}/drop_postgresql_database
%{_libexecdir}/%{name}/drop_postgresql_tables
%{_libexecdir}/%{name}/grant_postgresql_privileges
%{_libexecdir}/%{name}/make_postgresql_tables
%{_libexecdir}/%{name}/update_postgresql_tables
%{_mandir}/man1/bsmtp.1*
%{_mandir}/man8/bacula-dir.8*
%{_mandir}/man8/bregex.8*
%{_mandir}/man8/bwild.8*
%{_mandir}/man8/dbcheck.8*
%{_sbindir}/bacula-dir
%{_sbindir}/bdirjson
%{_sbindir}/bregex
%{_sbindir}/bsmtp
%{_sbindir}/bwild
%{_sbindir}/dbcheck
%{_unitdir}/bacula-dir.service
%files logwatch
%config(noreplace) %{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
%config(noreplace) %{_sysconfdir}/logwatch/conf/services/bacula.conf
%{_sysconfdir}/logwatch/scripts/services/bacula
%{_sysconfdir}/logwatch/scripts/shared/applybaculadate
%files storage
%config(noreplace) %{_sysconfdir}/bacula/bacula-sd.conf %attr(640,root,root)
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-sd
%{_libexecdir}/%{name}/disk-changer
%{_libexecdir}/%{name}/isworm
%{_libexecdir}/%{name}/mtx-changer
%{_libexecdir}/%{name}/mtx-changer.conf
%{_libexecdir}/%{name}/tapealert
%{_mandir}/man8/bacula-sd.8*
%{_mandir}/man8/bcopy.8*
%{_mandir}/man8/bextract.8*
%{_mandir}/man8/bls.8*
%{_mandir}/man8/bscan.8*
%{_mandir}/man8/btape.8*
%{_sbindir}/bacula-sd
%{_sbindir}/bcopy
%{_sbindir}/bextract
%{_sbindir}/bls
%{_sbindir}/bscan
%{_sbindir}/bsdjson
%{_sbindir}/btape
%{_unitdir}/bacula-sd.service
%files client
%config(noreplace) %{_sysconfdir}/bacula/bacula-fd.conf %attr(640,root,root)
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-fd
%{_mandir}/man8/bacula-fd.8*
%{_libdir}/%{name}/bpipe-fd.so
%{_libdir}/%{name}/cdp-fd.so
%{_libdir}/%{name}/docker-fd.so
%{_sbindir}/bacula-fd
%{_sbindir}/bfdjson
%{_sbindir}/cdp-client
%{_unitdir}/bacula-fd.service
%files console
%config(noreplace) %{_sysconfdir}/bacula/bconsole.conf %attr(640,root,root)
%{_mandir}/man8/bconsole.8*
%{_sbindir}/bconsole
%{_sbindir}/bbconsjson
%files console-bat
%config(noreplace) %{_sysconfdir}/bacula/bat.conf %attr(640,root,root)
%{_datadir}/applications/bat.desktop
%{_datadir}/bacula/*.html
%{_datadir}/bacula/*.png
%{_datadir}/pixmaps/bat_icon.png
%{_mandir}/man1/bat.1*
%{_sbindir}/bat
%files traymonitor
%config(noreplace) %{_sysconfdir}/bacula/bacula-tray-monitor.conf %attr(640,root,root)
%{_datadir}/applications/bacula-tray-monitor.desktop
%{_datadir}/pixmaps/bacula-tray-monitor.png
%{_mandir}/man1/bacula-tray-monitor.1*
%{_sbindir}/bacula-tray-monitor
%files devel
%{_includedir}/bacula
%{_libdir}/libbac.so
%{_libdir}/libbaccfg.so
%{_libdir}/libbacfind.so
%{_libdir}/libbacsd.so
%{_libdir}/libbacsql.so
%if %{with nagios}
%files -n nagios-plugins-bacula
%{_libdir}/nagios/plugins/check_bacula
%endif
%changelog
* Tue Feb 15 2022 Pavel Cahyna <pcahyna@redhat.com> - 11.0.1-5
- Make nagios-plugin build conditional and disabled on RHEL to avoid
generating this subpackage that has missing dependencies
- Fix flags for annobin in Qt tools (bat & tray-monitor) build
- Add a forgotten RHEL 8 patch to use openssl crypto (random numbers, hmac,
hashing functions)
Resolves: rhbz#1935458
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-4
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Wed Jun 16 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-3
- Rebuilt for RHEL 9 BETA for openssl 3.0
Related: rhbz#1971065
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-2
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Thu Feb 11 2021 Simone Caronni <negativo17@gmail.com> - 11.0.1-1
- Update to 11.0.1.
* Mon Feb 08 2021 Pavel Raiskup <praiskup@redhat.com> - 11.0.0-5
- rebuild for libpq ABI fix rhbz#1908268
* Thu Jan 28 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-4
- Remove leftover ImageMagick build requirement.
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jan 15 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-2
- Build CDP plugin components.
* Tue Jan 12 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-1
- Update to 11.0.0.
- Enable Docker plugin.
* Tue Jan 12 2021 Simone Caronni <negativo17@gmail.com> - 9.6.7-1
- Update to 9.6.7.
- Drop support for building on CentOS/RHEL 6 and upgrades from version 2.4.
- Trim changelog.
* Wed Oct 07 2020 Simone Caronni <negativo17@gmail.com> - 9.6.6-1
- Update to 9.6.6.
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.6.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 24 2020 Simone Caronni <negativo17@gmail.com> - 9.6.5-1
- Update to 9.6.5.
* Tue Mar 17 2020 Simone Caronni <negativo17@gmail.com> - 9.6.3-1
- Update to 9.6.3.
* Thu Mar 05 2020 Simone Caronni <negativo17@gmail.com> - 9.6.2-2
- Fix RHEL/CentOS 6 builds.
* Sat Feb 29 2020 Simone Caronni <negativo17@gmail.com> - 9.6.2-1
- Update to 9.6.2.
* Mon Feb 10 2020 Václav Doležal <vdolezal@redhat.com> - 9.4.4-4
- Fix FTBFS (#1799185)
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed May 29 2019 Simone Caronni <negativo17@gmail.com> - 9.4.4-1
- Update to 9.4.4.
* Sat May 18 2019 Simone Caronni <negativo17@gmail.com> - 9.4.3-2
- SPEC file cleanups.
* Wed May 15 2019 Simone Caronni <negativo17@gmail.com> - 9.4.3-1
- Update to 9.4.3.
* Thu Apr 18 2019 Simone Caronni <negativo17@gmail.com> - 9.4.2-1
- Update to 9.4.2.
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 9.4.1-6
- Rebuild for readline 8.0
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 9.4.1-4
- Rebuilt for libcrypt.so.2 (#1666033)
* Sun Jan 13 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-3
- Build QT programs with QT 5 on RHEL/CentOS 7. Also, reduce the number of
required QT packages for building.
* Sun Jan 13 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-2
- Add Debian patch to enable/disable S3 support at configure time.
- Disable S3 as it does not currently build:
http://bugs.bacula.org/view.php?id=2446
- Update RPM macros.
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-1
- Update to 9.4.1.
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.4.0-1
- Update to 9.4.0.
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.2.1-2
- Make the build succeed also on supported RHEL and Fedora releases.
- Remove Fedora 27 references.

View File

@ -1,39 +0,0 @@
diff -Naur bacula-9.0.2.old/scripts/bacula-tray-monitor.desktop.in bacula-9.0.2/scripts/bacula-tray-monitor.desktop.in
--- bacula-9.0.2.old/scripts/bacula-tray-monitor.desktop.in 2017-07-24 15:22:19.884540422 +0200
+++ bacula-9.0.2/scripts/bacula-tray-monitor.desktop.in 2017-07-24 15:37:02.175038149 +0200
@@ -1,10 +1,9 @@
[Desktop Entry]
Name=Bacula Monitor
Comment=Notification Tray Monitor
-Icon=/usr/share/pixmaps/bacula-tray-monitor.xpm
+Icon=/usr/share/pixmaps/bacula-tray-monitor.png
Exec=@sbindir@/bacula-tray-monitor -c @sysconfdir@/tray-monitor.conf
Terminal=false
Type=Application
-Encoding=UTF-8
X-Desktop-File-Install-Version=0.3
-Categories=System;Application;Utility;X-Red-Hat-Base;
+Categories=Utility;
diff -Naur bacula-9.0.2.old/scripts/bat.desktop.in bacula-9.0.2/scripts/bat.desktop.in
--- bacula-9.0.2.old/scripts/bat.desktop.in 2017-07-24 15:22:19.884540422 +0200
+++ bacula-9.0.2/scripts/bat.desktop.in 2017-07-24 15:36:22.753301014 +0200
@@ -5,7 +5,6 @@
Exec=@sbindir@/bat -c @sysconfdir@/bat.conf
Terminal=false
Type=Application
-Encoding=UTF-8
StartupNotify=true
X-Desktop-File-Install-Version=0.3
-Categories=System;Application;Utility;X-Red-Hat-Base;
+Categories=Utility;
diff -Naur bacula-9.0.2.old/scripts/Makefile.in bacula-9.0.2/scripts/Makefile.in
--- bacula-9.0.2.old/scripts/Makefile.in 2017-07-24 15:22:19.884540422 +0200
+++ bacula-9.0.2/scripts/Makefile.in 2017-07-24 15:25:03.829605989 +0200
@@ -67,7 +67,6 @@
$(MV) -f ${DESTDIR}${scriptdir}/baculabackupreport ${DESTDIR}${scriptdir}/baculabackupreport.old; \
fi
$(INSTALL_SCRIPT) baculabackupreport $(DESTDIR)$(scriptdir)/baculabackupreport
- $(INSTALL_SCRIPT) bacula-tray-monitor.desktop $(DESTDIR)$(scriptdir)/bacula-tray-monitor.desktop
chmod 0644 $(DESTDIR)$(scriptdir)/btraceback.gdb \
$(DESTDIR)$(scriptdir)/btraceback.dbx \
$(DESTDIR)$(scriptdir)/btraceback.mdb

View File

@ -1,9 +0,0 @@
diff -Naur bacula-9.0.4.old/src/cats/make_sqlite3_tables.in bacula-9.0.4/src/cats/make_sqlite3_tables.in
--- bacula-9.0.4.old/src/cats/make_sqlite3_tables.in 2017-09-15 13:38:22.717599355 +0200
+++ bacula-9.0.4/src/cats/make_sqlite3_tables.in 2017-09-15 13:38:36.414851879 +0200
@@ -481,4 +481,5 @@
echo ""
chmod 640 ${db_name}.db
+chown bacula:bacula ${db_name}.db
exit 0

View File

@ -1,12 +0,0 @@
diff -urNp old/src/qt-console/pages.h new/src/qt-console/pages.h
--- old/src/qt-console/pages.h 2017-11-21 18:37:16.000000000 +0100
+++ new/src/qt-console/pages.h 2018-02-06 12:37:04.490297821 +0100
@@ -21,7 +21,7 @@
/*
* Dirk Bartley, March 2007
*/
-
+#include <QtGlobal>
#if QT_VERSION >= 0x050000
#include <QtWidgets>
#else

View File

@ -1,33 +0,0 @@
--- bacula-9.0.6.old/src/qt-console/tray-monitor/task.cpp 2018-01-28 15:19:14.055587280 -0600
+++ bacula-9.0.6/src/qt-console/tray-monitor/task.cpp 2018-01-28 15:18:55.151599308 -0600
@@ -992,15 +992,15 @@
}
/* cache the file set */
- res->bs->fsend(".bvfs_update jobid=%s\n", jobs.toUtf8());
+ res->bs->fsend(".bvfs_update jobid=%s\n", bstrdup(jobs.toUtf8()) );
while (get_next_line(res)) {
Dmsg2(dbglvl, "<- %d %s\n", res->bs->msglen, curline);
}
if (pathid == 0) {
- res->bs->fsend(".bvfs_lsdirs jobid=%s path=\"\"\n", jobs.toUtf8());
+ res->bs->fsend(".bvfs_lsdirs jobid=%s path=\"\"\n", bstrdup(jobs.toUtf8()));
} else {
- res->bs->fsend(".bvfs_lsdirs jobid=%s pathid=%lld\n", jobs.toUtf8(), pathid);
+ res->bs->fsend(".bvfs_lsdirs jobid=%s pathid=%lld\n", bstrdup(jobs.toUtf8()), pathid);
}
while (get_next_line(res)) {
@@ -1024,9 +1024,9 @@
/* then, request files */
if (pathid == 0) {
- res->bs->fsend(".bvfs_lsfiles jobid=%s path=\"\"\n", jobs.toUtf8());
+ res->bs->fsend(".bvfs_lsfiles jobid=%s path=\"\"\n", bstrdup(jobs.toUtf8()));
} else {
- res->bs->fsend(".bvfs_lsfiles jobid=%s pathid=%lld\n", jobs.toUtf8(), pathid);
+ res->bs->fsend(".bvfs_lsfiles jobid=%s pathid=%lld\n", bstrdup(jobs.toUtf8()), pathid);
}
while (get_next_line(res)) {

View File

@ -1,115 +0,0 @@
#!/bin/sh
#
# bacula-dir Takes care of starting and stopping the Bacula Director.
#
# chkconfig: - 80 20
# description: The Bacula Director is the daemon responsible for all the logic \
# regarding the backup infrastructure: database, file retention, \
# tape indexing, scheduling.
### BEGIN INIT INFO
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: Bacula Director Daemon.
# Description: The Bacula Director is the daemon responsible for all the logic
# regarding the backup infrastructure: database, file retention,
# tape indexing, scheduling.
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
exec="/usr/sbin/bacula-dir"
prog="bacula-dir"
CONFIG="/etc/bacula/bacula-dir.conf"
OPTS="-c $CONFIG"
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
lockfile=/var/lock/subsys/$prog
if [ "$DIR_USER" != '' ]; then
OPTS="$OPTS -u $DIR_USER"
fi
if [ "$DIR_GROUP" != '' ]; then
OPTS="$OPTS -g $DIR_GROUP"
fi
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon $prog $OPTS
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
stop
sleep 1
start
}
reload() {
restart
}
force_reload() {
restart
}
rh_status() {
# run checks to determine if the service is running or use generic status
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
exit $?

View File

@ -1,113 +0,0 @@
#!/bin/sh
#
# bacula-fd Takes care of starting and stopping the Bacula File Daemon.
#
# chkconfig: - 80 20
# description: The Bacula File Daemon is the daemon responsible for backing up \
# data on the system.
### BEGIN INIT INFO
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: Bacula File Daemon.
# Description: The Bacula File Daemon is the daemon responsible for backing up
# data on the system.
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
exec="/usr/sbin/bacula-fd"
prog="bacula-fd"
CONFIG="/etc/bacula/bacula-fd.conf"
OPTS="-c $CONFIG"
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
lockfile=/var/lock/subsys/$prog
if [ "$FD_USER" != '' ]; then
OPTS="$OPTS -u $FD_USER"
fi
if [ "$FD_GROUP" != '' ]; then
OPTS="$OPTS -g $FD_GROUP"
fi
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon $prog $OPTS
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
stop
sleep 1
start
}
reload() {
restart
}
force_reload() {
restart
}
rh_status() {
# run checks to determine if the service is running or use generic status
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
exit $?

View File

@ -1,115 +0,0 @@
#!/bin/sh
#
# bacula-sd Takes care of starting and stopping the Bacula Storage Daemon.
#
# chkconfig: - 80 20
# description: The Bacula Storage Daemon is the daemon responsible for saving \
# backed up data on the various File Daemon to the appropriate \
# storage devices.
### BEGIN INIT INFO
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: Bacula Storage Daemon.
# Description: The Bacula Storage Daemon is the daemon responsible for saving
# backed up data on the various File Daemon to the appropriate
# storage devices.
### END INIT INFO
# Source function library.
. /etc/init.d/functions
exec="/usr/sbin/bacula-sd"
prog="bacula-sd"
CONFIG="/etc/bacula/bacula-sd.conf"
OPTS="-c $CONFIG"
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
lockfile=/var/lock/subsys/$prog
if [ "$SD_USER" != '' ]; then
OPTS="$OPTS -u $SD_USER"
fi
if [ "$SD_GROUP" != '' ]; then
OPTS="$OPTS -g $SD_GROUP"
fi
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon $prog $OPTS
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
stop
sleep 2
start
}
reload() {
restart
}
force_reload() {
restart
}
rh_status() {
# run checks to determine if the service is running or use generic status
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
exit $?

Binary file not shown.

Before

Width:  |  Height:  |  Size: 407 B

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View File

@ -1 +0,0 @@
SHA512 (bacula-9.0.6.tar.gz) = a85b8e089951eb9949c9906af45f204a69cd4a7d2e0f29439b74a29ade20c05a49a8c38665189a46c0ad07af0c97380485e10da6aa53dfc47a22934f589f265e