Skip to content

Commit

Permalink
Merge branch 'bareos-15.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
Marco van Wieringen committed Oct 23, 2015
2 parents d299fd4 + 10fe486 commit 63c06c6
Show file tree
Hide file tree
Showing 12 changed files with 236 additions and 69 deletions.
18 changes: 17 additions & 1 deletion autoconf/configure.in
Expand Up @@ -1918,6 +1918,22 @@ AC_ARG_WITH(sbin-perm,

AC_SUBST(SBINPERM)

dnl -------------------------------------------
dnl logrotate: has "su" option?
dnl -------------------------------------------
AC_PATH_PROG(LOGROTATE, logrotate, [], [$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin])
logrotate_su=""
if test "x$LOGROTATE" != "x" -a "x$dir_user" != "x" -a "x$dir_group" != "x"; then
echo -e "/tmp/dummy.log {\n su root root\n}" > logrotate-test-su.conf
if $LOGROTATE -d logrotate-test-su.conf 2>&1 | grep "unknown option 'su'" >/dev/null; then
logrotate_su=""
else
logrotate_su="su ${dir_user} ${dir_group}"
fi
rm logrotate-test-su.conf
fi
AC_SUBST(logrotate_su)

dnl -------------------------------------------
dnl NDMP (default off)
dnl -------------------------------------------
Expand Down Expand Up @@ -4210,7 +4226,7 @@ debian|ubuntu|univention)
debian/bareos-director.postinst \
debian/bareos-director.preinst \
debian/bareos-filedaemon-ceph-plugin.install \
debian/bareos-filedaemon-gluster-plugin.install \
debian/bareos-filedaemon-glusterfs-plugin.install \
debian/bareos-filedaemon-ldap-python-plugin.install \
debian/bareos-filedaemon-python-plugin.install \
debian/bareos-filedaemon.bareos-fd.init \
Expand Down
63 changes: 61 additions & 2 deletions configure
Expand Up @@ -711,6 +711,8 @@ LMDB_DIR
NDMP_DEPS
NDMP_LIBS
NDMP_DIR
logrotate_su
LOGROTATE
SBINPERM
fd_group
fd_user
Expand Down Expand Up @@ -983,10 +985,10 @@ PATH_SEPARATOR
SHELL'
ac_subst_files='DEBIAN_CONTROL_BAT
DEBIAN_CONTROL_TRAYMONITOR
DEBIAN_CONTROL_FILEDAEMON_CEPH_PLUGIN
DEBIAN_CONTROL_STORAGE_CEPH
DEBIAN_CONTROL_FILEDAEMON_GLUSTERFS_PLUGIN
DEBIAN_CONTROL_STORAGE_GLUSTERFS
DEBIAN_CONTROL_FILEDAEMON_CEPH_PLUGIN
DEBIAN_CONTROL_STORAGE_CEPH
DEBIAN_CONTROL_UNIVENTION_BAREOS
DEBIAN_CONTROL_UNIVENTION_BAREOS_SCHEMA
MCOMMON
Expand Down Expand Up @@ -24669,6 +24671,58 @@ fi



# Extract the first word of "logrotate", so it can be a program name with args.
set dummy logrotate; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_path_LOGROTATE+:} false; then :
$as_echo_n "(cached) " >&6
else
case $LOGROTATE in
[\\/]* | ?:[\\/]*)
ac_cv_path_LOGROTATE="$LOGROTATE" # Let the user override the test with a path.
;;
*)
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_LOGROTATE="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS

;;
esac
fi
LOGROTATE=$ac_cv_path_LOGROTATE
if test -n "$LOGROTATE"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $LOGROTATE" >&5
$as_echo "$LOGROTATE" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi


logrotate_su=""
if test "x$LOGROTATE" != "x" -a "x$dir_user" != "x" -a "x$dir_group" != "x"; then
echo -e "/tmp/dummy.log {\n su root root\n}" > logrotate-test-su.conf
if $LOGROTATE -d logrotate-test-su.conf 2>&1 | grep "unknown option 'su'" >/dev/null; then
logrotate_su=""
else
logrotate_su="su ${dir_user} ${dir_group}"
fi
rm logrotate-test-su.conf
fi


# Check whether --enable-ndmp was given.
if test "${enable_ndmp+set}" = set; then :
enableval=$enable_ndmp;
Expand Down Expand Up @@ -31704,6 +31758,7 @@ have_glusterfs=no
# Check whether --with-glusterfs was given.
if test "${with_glusterfs+set}" = set; then :
withval=$with_glusterfs; with_glusterfs_directory=$withval

fi


Expand Down Expand Up @@ -31785,9 +31840,11 @@ CPPFLAGS="${saved_CPPFLAGS}"

DEBIAN_CONTROL_FILEDAEMON_GLUSTERFS_PLUGIN=/dev/null
DEBIAN_CONTROL_STORAGE_GLUSTERFS=/dev/null

if test "x${have_glusterfs}" = "xyes"; then

$as_echo "#define HAVE_GFAPI 1" >>confdefs.h

DEBIAN_CONTROL_FILEDAEMON_GLUSTERFS_PLUGIN=./debian/control.bareos-filedaemon-glusterfs-plugin
DEBIAN_CONTROL_STORAGE_GLUSTERFS=./debian/control.bareos-storage-glusterfs
else
Expand All @@ -31798,6 +31855,8 @@ fi





DROPLET_LIBS="-ldroplet"
DROPLET_INC=""
have_droplet=no
Expand Down
2 changes: 2 additions & 0 deletions debian/bareos-storage-tape.install.in
Expand Up @@ -2,7 +2,9 @@
/etc/bareos/bareos-sd.d/device-tape-with-autoloader.conf
@backenddir@/libbareossd-gentape*.so
@backenddir@/libbareossd-tape*.so
@plugindir@/scsicrypto-sd.so
@plugindir@/scsitapealert-sd.so
@scriptdir@/mtx-changer
/usr/share/man/man8/bscrypto.8.gz
/usr/share/man/man8/btape.8.gz
/usr/sbin/btape
3 changes: 1 addition & 2 deletions debian/bareos-storage.install.in
@@ -1,7 +1,6 @@
/usr/sbin/bscrypto
@plugindir@/scsicrypto-sd.so
@plugindir@/autoxflate-sd.so
@scriptdir@/disk-changer
@confdir@/bareos-sd.conf @configtemplatedir@
/usr/sbin/bareos-sd
/usr/share/man/man8/bscrypto.8.gz
/usr/share/man/man8/bareos-sd.8.gz
1 change: 1 addition & 0 deletions debian/control
Expand Up @@ -28,6 +28,7 @@ Build-Depends: acl-dev,
libwrap0-dev,
libx11-dev,
libsqlite3-dev, libmysqlclient-dev, libpq-dev,
logrotate,
lsb-release,
mtx,
ncurses-dev,
Expand Down
1 change: 1 addition & 0 deletions debian/control.in
Expand Up @@ -28,6 +28,7 @@ Build-Depends: acl-dev,
libwrap0-dev,
libx11-dev,
libsqlite3-dev, libmysqlclient-dev, libpq-dev,
logrotate,
lsb-release,
mtx,
ncurses-dev,
Expand Down
2 changes: 1 addition & 1 deletion platforms/packaging/bareos-Univention_4.0.dsc
Expand Up @@ -6,7 +6,7 @@ Version: 15.4.0
Maintainer: Joerg Steffens <joerg.steffens@bareos.com>
Homepage: http://www.bareos.org/
Standards-Version: 3.9.4
Build-Depends: acl-dev, autotools-dev, bc, chrpath, debhelper (>= 7.0.50~), dpkg-dev (>= 1.13.19), git-core, libacl1-dev, libcap-dev, libfastlz-dev, liblzo2-dev, libqt4-dev, libreadline-dev, libssl-dev, libwrap0-dev, libx11-dev, libsqlite3-dev, libmysqlclient-dev, libpq-dev (>= 8.4), lsb-release, mtx, ncurses-dev, openssl, pkg-config, po-debconf (>= 0.8.2), python-dev, ucslint, univention-config-dev, zlib1g-dev
Build-Depends: acl-dev, autotools-dev, bc, chrpath, debhelper (>= 7.0.50~), dpkg-dev (>= 1.13.19), git-core, libacl1-dev, libcap-dev, libfastlz-dev, liblzo2-dev, libqt4-dev, libreadline-dev, libssl-dev, libwrap0-dev, libx11-dev, libsqlite3-dev, libmysqlclient-dev, libpq-dev (>= 8.4), logrotate, lsb-release, mtx, ncurses-dev, openssl, pkg-config, po-debconf (>= 0.8.2), python-dev, ucslint, univention-config-dev, zlib1g-dev
Build-Conflicts: python2.2-dev, python2.3, python2.4, qt3-dev-tools
DEBTRANSFORM-RELEASE: 1
Files:
2 changes: 1 addition & 1 deletion platforms/packaging/bareos.dsc
Expand Up @@ -6,7 +6,7 @@ Version: 15.4.0
Maintainer: Joerg Steffens <joerg.steffens@bareos.com>
Homepage: http://www.bareos.org/
Standards-Version: 3.9.4
Build-Depends: acl-dev, autotools-dev, bc, chrpath, debhelper (>= 7.0.50~), dpkg-dev (>= 1.13.19), git-core, libacl1-dev, libcap-dev, libcmocka-dev (>= 1.0.1), libfastlz-dev, libjansson-dev, liblzo2-dev, libqt4-dev, libreadline-dev, libssl-dev, libwrap0-dev, libx11-dev, libsqlite3-dev, libmysqlclient-dev, libpq-dev, lsb-release, mtx, ncurses-dev, openssl, pkg-config, po-debconf (>= 0.8.2), python-dev, zlib1g-dev
Build-Depends: acl-dev, autotools-dev, bc, chrpath, debhelper (>= 7.0.50~), dpkg-dev (>= 1.13.19), git-core, libacl1-dev, libcap-dev, libcmocka-dev (>= 1.0.1), libfastlz-dev, libjansson-dev, liblzo2-dev, libqt4-dev, libreadline-dev, libssl-dev, libwrap0-dev, libx11-dev, libsqlite3-dev, libmysqlclient-dev, libpq-dev, logrotate, lsb-release, mtx, ncurses-dev, openssl, pkg-config, po-debconf (>= 0.8.2), python-dev, zlib1g-dev
# optional (via OBS project config):
# 0%{?debian_version} >= 800 || 0%{?ubuntu_version} >= 1404
# libcephfs-dev
Expand Down
7 changes: 4 additions & 3 deletions platforms/packaging/bareos.spec
Expand Up @@ -152,6 +152,7 @@ BuildRequires: libacl-devel
BuildRequires: pkgconfig
BuildRequires: lzo-devel
BuildRequires: libfastlz-devel
BuildRequires: logrotate
%if 0%{?build_sqlite3}
%if 0%{?suse_version}
BuildRequires: sqlite3-devel
Expand Down Expand Up @@ -926,11 +927,8 @@ echo "This is a meta package to install a full bareos system" > %{buildroot}%{_d
%endif
%endif
%{_sbindir}/bareos-sd
%{_sbindir}/bscrypto
%{script_dir}/disk-changer
%{plugin_dir}/autoxflate-sd.so
%{plugin_dir}/scsicrypto-sd.so
%{_mandir}/man8/bscrypto.8.gz
%{_mandir}/man8/bareos-sd.8.gz
%if 0%{?systemd_support}
%{_unitdir}/bareos-sd.service
Expand All @@ -944,9 +942,12 @@ echo "This is a meta package to install a full bareos system" > %{buildroot}%{_d
%{backend_dir}/libbareossd-tape*.so
%{script_dir}/mtx-changer
%config(noreplace) %{_sysconfdir}/bareos/mtx-changer.conf
%{_mandir}/man8/bscrypto.8.gz
%{_mandir}/man8/btape.8.gz
%{_sbindir}/bscrypto
%{_sbindir}/btape
%attr(0640, %{storage_daemon_user}, %{daemon_group}) %config(noreplace) %{_sysconfdir}/bareos/bareos-sd.d/device-tape-with-autoloader.conf
%{plugin_dir}/scsicrypto-sd.so
%{plugin_dir}/scsitapealert-sd.so

%files storage-fifo
Expand Down
2 changes: 1 addition & 1 deletion scripts/logrotate.in
Expand Up @@ -11,5 +11,5 @@
rotate 6
notifempty
missingok
su bareos bareos
@logrotate_su@
}
40 changes: 30 additions & 10 deletions src/dird/dird_conf.c
Expand Up @@ -1930,26 +1930,46 @@ bool FILESETRES::print_config(POOL_MEM &buff, bool hide_sensitive_data)
case 'Z': /* compression */
indent_config_item(cfg_str, 3, "Compression = ");
p++; /* skip Z */
if (*p >= '0' && *p <= '9') {
Mmsg(temp, "GZIP");
pm_strcat(cfg_str, temp.c_str());
Mmsg(temp, "%c\n", *p);
switch (*p) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
Mmsg(temp, "GZIP%c\n", *p);
pm_strcat(cfg_str, temp.c_str());
} else if (*p == 'o') {
break;
case 'o':
Mmsg(temp, "LZO\n");
pm_strcat(cfg_str, temp.c_str());
} else if (*p == 'f') {
p++;
if (*p == 'f') {
break;
case 'f':
p++; /* skip f */
switch (*p) {
case 'f':
Mmsg(temp, "LZFAST\n");
pm_strcat(cfg_str, temp.c_str());
} else if (*p == '4') {
break;
case '4':
Mmsg(temp, "LZ4\n");
pm_strcat(cfg_str, temp.c_str());
} else if (*p == 'h') {
break;
case 'h':
Mmsg(temp, "LZ4HC\n");
pm_strcat(cfg_str, temp.c_str());
break;
default:
Emsg1(M_ERROR, 0, _("Unknown compression include/exclude option: %c\n"), *p);
break;
}
default:
Emsg1(M_ERROR, 0, _("Unknown compression include/exclude option: %c\n"), *p);
break;
}
break;
case 'X':
Expand Down

0 comments on commit 63c06c6

Please sign in to comment.