summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorkhvalera2023-03-03 00:22:26 +0200
committerkhvalera2023-03-03 00:22:26 +0200
commit0fc12db76364adbe4765135289876a57ab53a817 (patch)
treeccf351d54a8239e5d4982e5389ab9b4a5f0cfc9f
parent98ecb1223c8436c4e78fd3e2104023e7c5728b99 (diff)
downloadaur-0fc12db76364adbe4765135289876a57ab53a817.tar.gz
22.0.2
-rw-r--r--.SRCINFO88
-rw-r--r--0002-libdroplet.patch23
-rw-r--r--0003-zend.patch11
-rw-r--r--0004-logspam.patch31
-rw-r--r--0005-version.patch12
-rw-r--r--0006-sqlspam.patch12
-rw-r--r--0007-hostname.patch22
-rw-r--r--0008-httpd.patch11
-rw-r--r--009-fix-timer_thread.patch14
-rw-r--r--PKGBUILD4
-rw-r--r--PoolModel.patch15
-rw-r--r--fix-build-bareos.patch44
-rw-r--r--fix-headlink.patch193
-rw-r--r--mysql.patch397
-rw-r--r--restore-form.patch12
15 files changed, 46 insertions, 843 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 84e7630750a3..f1990623cfe9 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = bareos
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced
- pkgver = 22.0.1
- pkgrel = 2
+ pkgver = 22.0.2
+ pkgrel = 1
url = http://www.bareos.org
arch = i686
arch = x86_64
@@ -22,7 +22,7 @@ pkgbase = bareos
makedepends = glusterfs
makedepends = jansson
makedepends = pam_wrapper
- source = git+https://github.com/bareos/bareos.git#tag=Release/22.0.1
+ source = git+https://github.com/bareos/bareos.git#tag=Release/22.0.2
source = 0001-distver.patch
source = 0002-logspam.patch
source = 0003-version.patch
@@ -42,7 +42,7 @@ pkgname = bareos-bconsole
install = bareos-bconsole.install
groups = bareos
groups = bareos-client
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
depends = readline
depends = jansson
backup = etc/bareos/bconsole.conf
@@ -60,24 +60,24 @@ pkgname = bareos-common
pkgname = bareos-contrib-director-python-plugins
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed Director plugins
- depends = bareos-common=22.0.1
- depends = bareos-director-python-plugin=22.0.1
+ depends = bareos-common=22.0.2
+ depends = bareos-director-python-plugin=22.0.2
pkgname = bareos-contrib-filedaemon-python-plugins
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed File Daemon plugins
- depends = bareos-common=22.0.1
- depends = bareos-filedaemon-python-plugin=22.0.1
+ depends = bareos-common=22.0.2
+ depends = bareos-filedaemon-python-plugin=22.0.2
pkgname = bareos-contrib-tools
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed tools
arch = any
- depends = python-bareos=22.0.1
- depends = bareos-filedaemon=22.0.1
+ depends = python-bareos=22.0.2
+ depends = bareos-filedaemon=22.0.2
pkgname = bareos-database-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - common catalog files
- depends = bareos-common=22.0.1
- depends = bareos-database-postgresql=22.0.1
+ depends = bareos-common=22.0.2
+ depends = bareos-database-postgresql=22.0.2
depends = libcap
depends = lzo
depends = zlib
@@ -88,25 +88,25 @@ pkgname = bareos-database-common
pkgname = bareos-database-postgresql
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Libs and tools for postgresql catalog
install = bareos-database-postgresql.install
- depends = bareos-database-common=22.0.1
+ depends = bareos-database-common=22.0.2
depends = postgresql-libs
- provides = bareos-database=22.0.1
+ provides = bareos-database=22.0.2
pkgname = bareos-database-tools
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - CLI tools with database dpendencies (dbcheck, bscan)
- depends = bareos-database-common=22.0.1
+ depends = bareos-database-common=22.0.2
depends = openssl
depends = jansson
pkgname = bareos-director-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 director plugins
arch = any
- depends = bareos-director=22.0.1
+ depends = bareos-director=22.0.2
pkgname = bareos-director-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for director daemon
- depends = bareos-director=22.0.1
- depends = bareos-director-python-plugins-common=22.0.1
+ depends = bareos-director=22.0.2
+ depends = bareos-director-python-plugins-common=22.0.2
depends = python
depends = libcap
depends = jansson
@@ -116,56 +116,56 @@ pkgname = bareos-director-python3-plugin
pkgname = bareos-director
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Director daemon
install = bareos-director.install
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
depends = openssl
depends = bash
depends = jansson
pkgname = bareos-filedaemon-glusterfs-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - GlusterFS plugin for Bareos File daemon
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
depends = glusterfs
pkgname = bareos-filedaemon-ldap-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - LDAP Python plugin for Bareos File daemon
arch = any
- depends = bareos-filedaemon=22.0.1
- depends = bareos-filedaemon-python3-plugin=22.0.1
+ depends = bareos-filedaemon=22.0.2
+ depends = bareos-filedaemon-python3-plugin=22.0.2
depends = python-ldap
pkgname = bareos-filedaemon-libcloud-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Libcloud Python plugin for Bareos File daemon
arch = any
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
depends = python-apache-libcloud
pkgname = bareos-filedaemon-mariabackup-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - MariaBackup plugin for Bareos File daemon
arch = any
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
depends = mariadb
pkgname = bareos-filedaemon-percona-xtrabackup-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - XtraBackup plugin for Bareos File daemon
arch = any
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
depends = xtrabackup
pkgname = bareos-filedaemon-postgresql-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - PostgreSQL plugin for Bareos File daemon
arch = any
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
depends = postgresql
pkgname = bareos-filedaemon-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 filedaemon plugins
arch = any
- depends = bareos-filedaemon=22.0.1
+ depends = bareos-filedaemon=22.0.2
pkgname = bareos-filedaemon-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for file daemon
- depends = bareos-filedaemon=22.0.1
- depends = bareos-filedaemon-python-plugins-common=22.0.1
+ depends = bareos-filedaemon=22.0.2
+ depends = bareos-filedaemon-python-plugins-common=22.0.2
depends = python
depends = libcap
depends = lzo
@@ -177,18 +177,18 @@ pkgname = bareos-filedaemon
install = bareos-filedaemon.install
groups = bareos
groups = bareos-client
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
depends = jansson
depends = zlib
depends = gcc-libs
pkgname = bareos-storage-droplet
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Droplet support for storage daemon
- depends = bareos-storage=22.0.1
+ depends = bareos-storage=22.0.2
pkgname = bareos-storage-fifo
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - FIFO support for storage daemon
- depends = bareos-storage=22.0.1
+ depends = bareos-storage=22.0.2
depends = zlib
depends = libcap
depends = openssl
@@ -197,18 +197,18 @@ pkgname = bareos-storage-fifo
pkgname = bareos-storage-glusterfs
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - GlusterFS support for storage daemon
- depends = bareos-storage=22.0.1
+ depends = bareos-storage=22.0.2
depends = glusterfs
pkgname = bareos-storage-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 storage plugins
arch = any
- depends = bareos-storage=22.0.1
+ depends = bareos-storage=22.0.2
pkgname = bareos-storage-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for storage daemon
- depends = bareos-storage=22.0.1
- depends = bareos-storage-python-plugins-common=22.0.1
+ depends = bareos-storage=22.0.2
+ depends = bareos-storage-python-plugins-common=22.0.2
depends = python
depends = lzo
depends = libcap
@@ -217,7 +217,7 @@ pkgname = bareos-storage-python3-plugin
pkgname = bareos-storage-tape
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Tape support for storage daemon
- depends = bareos-storage=22.0.1
+ depends = bareos-storage=22.0.2
depends = zlib
depends = libcap
depends = bash
@@ -230,7 +230,7 @@ pkgname = bareos-storage-tape
pkgname = bareos-storage
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Storage daemon
install = bareos-storage.install
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
depends = zlib
depends = lzo
depends = jansson
@@ -239,7 +239,7 @@ pkgname = bareos-storage
pkgname = bareos-tools
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - CLI tools (bcopy, bextract, bls, bregeq, bwild, bregex)
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
depends = glibc
pkgname = bareos-traymonitor
@@ -247,16 +247,16 @@ pkgname = bareos-traymonitor
install = bareos-traymonitor.install
groups = bareos
groups = bareos-client
- depends = bareos-common=22.0.1
+ depends = bareos-common=22.0.2
backup = etc/bareos/tray-monitor.d/monitor/bareos-mon.conf
pkgname = bareos-vmware-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Bareos VMware plugin
arch = any
- depends = bareos-vadp-dumper=22.0.1
- depends = bareos-common=22.0.1
- optdepends = bareos-filedaemon-python3-plugin=22.0.1
- optdepends = bareos-filedaemon-python2-plugin=22.0.1
+ depends = bareos-vadp-dumper=22.0.2
+ depends = bareos-common=22.0.2
+ optdepends = bareos-filedaemon-python3-plugin=22.0.2
+ optdepends = bareos-filedaemon-python2-plugin=22.0.2
pkgname = bareos-webui
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Webui (Bareos web administration)
diff --git a/0002-libdroplet.patch b/0002-libdroplet.patch
deleted file mode 100644
index 9b9dc5cbcc9a..000000000000
--- a/0002-libdroplet.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-# C99 introduced _Bool but library predates that, fix
-
---- core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2020-12-16 08:46:16.000000000 +0100
-+++ core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-01-09 21:50:10.506666487 +0100
-@@ -79,7 +79,6 @@
- #ifndef DONE_STYLE
-
- typedef unsigned long ulong;
--typedef unsigned bool;
- typedef unsigned char* p_ubyte_;
-
- # ifndef TRUE
-@@ -107,8 +107,8 @@
- int cm_width; /* Parameter: Width in bits [8,32]. */
- ulong cm_poly; /* Parameter: The algorithm's polynomial. */
- ulong cm_init; /* Parameter: Initial register value. */
-- bool cm_refin; /* Parameter: Reflect input bytes? */
-- bool cm_refot; /* Parameter: Reflect output CRC? */
-+ _Bool cm_refin; /* Parameter: Reflect input bytes? */
-+ _Bool cm_refot; /* Parameter: Reflect output CRC? */
- ulong cm_xorot; /* Parameter: XOR this to output CRC. */
-
- ulong cm_reg; /* Context: Context during execution. */
diff --git a/0003-zend.patch b/0003-zend.patch
deleted file mode 100644
index 0c136fa0c0bf..000000000000
--- a/0003-zend.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- webui/vendor/zendframework/zend-stdlib/src/ArrayObject.php
-+++ webui/vendor/zendframework/zend-stdlib/src/ArrayObject.php
-@@ -423,7 +423,7 @@ public function unserialize($data)
- $this->setIteratorClass($v);
- break;
- case 'protectedProperties':
-- continue;
-+ break;
- default:
- $this->__set($k, $v);
- }
diff --git a/0004-logspam.patch b/0004-logspam.patch
deleted file mode 100644
index 18f6d5b1faa5..000000000000
--- a/0004-logspam.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- core/src/lib/bsock.cc.orig 2021-12-23 08:56:38.194359400 +0100
-+++ core/src/lib/bsock.cc 2021-12-23 10:22:09.320240831 +0100
-@@ -584,10 +584,10 @@ bool BareosSocket::DoTlsHandshake(TlsPol
- if (!initiated_by_remote) {
- if (tls_conn) {
- tls_conn->TlsLogConninfo(jcr, host(), port(), who());
-- } else {
-+ } /* else {
- Qmsg(jcr, M_INFO, 0, _("Connected %s at %s:%d, encryption: None\n"),
- who(), host(), port());
-- }
-+ } */
- }
- return true;
- }
---- core/src/lib/tls_openssl.cc.orig 2021-12-23 08:56:38.204359200 +0100
-+++ core/src/lib/tls_openssl.cc 2021-12-23 10:22:31.872857179 +0100
-@@ -107,11 +107,11 @@ void TlsOpenSsl::TlsLogConninfo(JobContr
- if (!d_->openssl_) {
- Qmsg(jcr, M_INFO, 0, _("No openssl to %s at %s:%d established\n"), who,
- host, port);
-- } else {
-+ } /* else {
- std::string cipher_name = TlsCipherGetName();
- Qmsg(jcr, M_INFO, 0, _("Connected %s at %s:%d, encryption: %s\n"), who,
- host, port, cipher_name.empty() ? "Unknown" : cipher_name.c_str());
-- }
-+ } */
- }
-
- /*
diff --git a/0005-version.patch b/0005-version.patch
deleted file mode 100644
index 96440ac549db..000000000000
--- a/0005-version.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- core/src/lib/CMakeLists.txt.orig 2021-12-23 11:28:53.968803800 +0100
-+++ core/src/lib/CMakeLists.txt 2021-12-23 11:42:18.538613886 +0100
-@@ -147,6 +147,9 @@
- -DBAREOS_SHORT_DATE="${BAREOS_SHORT_DATE}"
- -DBAREOS_PROG_DATE_TIME="${BAREOS_PROG_DATE_TIME}"
- -DBAREOS_YEAR="${BAREOS_YEAR}"
-+ -DBAREOS_BINARY_INFO="${BAREOS_BINARY_INFO}"
-+ -DBAREOS_SERVICES_MESSAGE="${BAREOS_SERVICES_MESSAGE}"
-+ -DBAREOS_JOBLOG_MESSAGE="${BAREOS_JOBLOG_MESSAGE}"
- )
- set_target_properties(version-obj PROPERTIES POSITION_INDEPENDENT_CODE ON)
-
diff --git a/0006-sqlspam.patch b/0006-sqlspam.patch
deleted file mode 100644
index 1882f0c6b988..000000000000
--- a/0006-sqlspam.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- core/src/dird/ua_prune.cc.orig 2021-12-23 12:29:52.844307700 +0100
-+++ core/src/dird/ua_prune.cc 2021-12-23 14:58:31.874042423 +0100
-@@ -585,7 +585,9 @@ bail_out:
-
- static void DropTempTables(UaContext* ua)
- {
-+ ua->db->SqlQuery("SET client_min_messages = warning");
- ua->db->SqlQuery(BareosDb::SQL_QUERY::drop_deltabs);
-+ ua->db->SqlQuery("SET client_min_messages = notice");
- }
-
- static bool CreateTempTables(UaContext* ua)
diff --git a/0007-hostname.patch b/0007-hostname.patch
deleted file mode 100644
index 261be232d45b..000000000000
--- a/0007-hostname.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- core/scripts/bareos-config-lib.sh.in 2022-05-07 14:35:31.000000000 +0300
-+++ core/scripts/bareos-config-lib.sh.in 2022-05-07 23:25:21.958745554 +0300
-@@ -1070,14 +1070,12 @@
- {
- # put actual short hostname in configuration files
- # try to get short hostname
-- hname=`hostname -s`
-+ hname=`hostnamectl --static | sed 's/\..*//g'`
- if [ -z "$hname" ]; then
-- # try to get long hostname
-- hname=`hostname|sed 's/\..*//g'`
-- if [ -z "$hname" ]; then
-- # set to "localhost"
-- hname='localhost'
-- fi
-+ if [ -z "$hname" ]; then
-+ # set to "localhost"
-+ hname='localhost'
-+ fi
- fi
- echo "$hname"
- }
diff --git a/0008-httpd.patch b/0008-httpd.patch
deleted file mode 100644
index c8d8e8a56876..000000000000
--- a/0008-httpd.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- webui/CMakeLists.txt 2022-05-10 23:29:44.000000000 +0300
-+++ webui/CMakeLists.txt 2022-05-11 00:05:05.698335917 +0300
-@@ -76,7 +76,7 @@
- elseif(EXISTS ${sysconfdir}/apache2/conf-available)
- set(HTTPD_CONF ${sysconfdir}/apache2/conf-available)
- else()
-- set(HTTPD_CONF ${sysconfdir}/httpd/conf.d)
-+ set(HTTPD_CONF ${sysconfdir}/httpd/conf/extra )
- endif()
-
- configure_file(
diff --git a/009-fix-timer_thread.patch b/009-fix-timer_thread.patch
deleted file mode 100644
index 533066cb6350..000000000000
--- a/009-fix-timer_thread.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- core/src/lib/timer_thread.cc 2022-03-17 17:22:34.000000000 +0100
-+++ core/src/lib/timer_thread.cc 2022-05-15 19:28:30.410009804 +0200
-@@ -213,9 +213,11 @@
- remove_from_list = true;
- } else {
- p->scheduled_run_timepoint = last_timer_run_timepoint + p->interval;
-+ next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- }
-+ } else {
-+ next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- }
-- next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- return remove_from_list;
- }
diff --git a/PKGBUILD b/PKGBUILD
index ee92dcdb56b9..06ab445507c8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -46,9 +46,9 @@ pkgname=("bareos-bconsole"
# "bareos-vadp-dumper"
# "bareos-vmware-vix-disklib"
-pkgver=22.0.1
+pkgver=22.0.2
pkgmajor=${pkgver%%.*}
-pkgrel=2
+pkgrel=1
arch=(i686 x86_64 armv7h aarch64)
groups=('bareos')
pkgdesc="Bareos - Backup Archiving Recovery Open Sourced"
diff --git a/PoolModel.patch b/PoolModel.patch
deleted file mode 100644
index 91acadf3f497..000000000000
--- a/PoolModel.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/webui/module/Pool/src/Pool/Model/PoolModel.php 2021-06-10 16:18:18.371213388 +0300
-+++ b/webui/module/Pool/src/Pool/Model/PoolModel.php 2021-06-11 00:44:00.000000000 +0300
-@@ -146,9 +146,10 @@
- if(isset($bsock, $pool)) {
- $cmd = 'show pool="'.$pool.'"';
- $result = $bsock->send_command($cmd, 0);
--
- $matches = [];
-- preg_match('/\s*Next\s*Pool\s*=\s*("|\')?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ //preg_match('/\s*Next\s*Pool\s*=\s*("|\')?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ preg_match('/\s*Pool\s*=?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ //print_r($matches);
- return $matches["value"];
- }
- else {
diff --git a/fix-build-bareos.patch b/fix-build-bareos.patch
deleted file mode 100644
index e0b963be4e2e..000000000000
--- a/fix-build-bareos.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- a/core/src/droplet/libdroplet/src/utils.c 2021-04-16 00:09:37.856912334 +0300
-+++ b/core/src/droplet/libdroplet/src/utils.c 2021-04-16 00:32:28.058300432 +0300
-@@ -33,7 +33,7 @@
- */
- #include <dropletp.h>
- #include <linux/xattr.h>
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
- #include <errno.h>
-
- /** @file */
---- a/core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-04-16 17:25:43.613478257 +0300
-+++ b/core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-04-16 17:31:53.449697759 +0300
-@@ -78,7 +78,7 @@
- #ifndef DONE_STYLE
-
- typedef unsigned long ulong;
--typedef unsigned bool;
-+/*typedef unsigned bool;*/
- typedef unsigned char * p_ubyte_;
-
- #ifndef TRUE
-@@ -107,8 +107,8 @@
- int cm_width; /* Parameter: Width in bits [8,32]. */
- ulong cm_poly; /* Parameter: The algorithm's polynomial. */
- ulong cm_init; /* Parameter: Initial register value. */
-- bool cm_refin; /* Parameter: Reflect input bytes? */
-- bool cm_refot; /* Parameter: Reflect output CRC? */
-+ _Bool cm_refin; /* Parameter: Reflect input bytes? */
-+ _Bool cm_refot; /* Parameter: Reflect output CRC? */
- ulong cm_xorot; /* Parameter: XOR this to output CRC. */
-
- ulong cm_reg; /* Context: Context during execution. */
---- a/core/src/droplet/libdroplet/src/backend/posix/reqbuilder.c 2021-04-16 17:32:41.619204579 +0300
-+++ b/core/src/droplet/libdroplet/src/backend/posix/reqbuilder.c 2021-04-16 17:33:54.938453657 +0300
-@@ -39,7 +39,7 @@
- #include <dirent.h>
- #include <sys/types.h>
- #include <linux/xattr.h>
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
- #include <utime.h>
- #include <pwd.h>
- #include <grp.h>
diff --git a/fix-headlink.patch b/fix-headlink.patch
deleted file mode 100644
index 6830228d03d2..000000000000
--- a/fix-headlink.patch
+++ /dev/null
@@ -1,193 +0,0 @@
---- a/webui/vendor/zendframework/zend-view/src/Helper/HeadLink.php 2021-04-16 20:54:47.655312342 +0300
-+++ b/webui/vendor/zendframework/zend-view/src/Helper/HeadLink.php 2021-04-16 23:17:00.000000000 +0300
-@@ -13,21 +13,23 @@
- use Zend\View;
- use Zend\View\Exception;
-
-+// @codingStandardsIgnoreStart
- /**
- * Zend_Layout_View_Helper_HeadLink
- *
- * @see http://www.w3.org/TR/xhtml1/dtds.html
- *
- * Creates the following virtual methods:
-- * @method HeadLink appendStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink offsetSetStylesheet($index, $href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink prependStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink setStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink appendAlternate($href, $type, $title, $extras = array())
-- * @method HeadLink offsetSetAlternate($index, $href, $type, $title, $extras = array())
-- * @method HeadLink prependAlternate($href, $type, $title, $extras = array())
-- * @method HeadLink setAlternate($href, $type, $title, $extras = array())
-+ * @method HeadLink appendStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink offsetSetStylesheet($index, $href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink prependStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink setStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink appendAlternate($href, $type, $title, $extras = [])
-+ * @method HeadLink offsetSetAlternate($index, $href, $type, $title, $extras = [])
-+ * @method HeadLink prependAlternate($href, $type, $title, $extras = [])
-+ * @method HeadLink setAlternate($href, $type, $title, $extras = [])
- */
-+// @codingStandardsIgnoreEnd
- class HeadLink extends Placeholder\Container\AbstractStandalone
- {
- /**
-@@ -35,7 +37,7 @@
- *
- * @var string[]
- */
-- protected $itemKeys = array(
-+ protected $itemKeys = [
- 'charset',
- 'href',
- 'hreflang',
-@@ -46,8 +48,12 @@
- 'sizes',
- 'type',
- 'title',
-- 'extras'
-- );
-+ 'extras',
-+ 'itemprop',
-+ 'crossorigin',
-+ 'integrity',
-+ 'as',
-+ ];
-
- /**
- * Registry key for placeholder
-@@ -80,7 +86,7 @@
- */
- public function headLink(array $attributes = null, $placement = Placeholder\Container\AbstractContainer::APPEND)
- {
-- return call_user_func_array(array($this, '__invoke'), func_get_args());
-+ return call_user_func_array([$this, '__invoke'], func_get_args());
- }
-
- /**
-@@ -142,7 +148,11 @@
- */
- public function __call($method, $args)
- {
-- if (preg_match('/^(?P<action>set|(ap|pre)pend|offsetSet)(?P<type>Stylesheet|Alternate|Prev|Next)$/', $method, $matches)) {
-+ if (preg_match(
-+ '/^(?P<action>set|(ap|pre)pend|offsetSet)(?P<type>Stylesheet|Alternate|Prev|Next)$/',
-+ $method,
-+ $matches
-+ )) {
- $argc = count($args);
- $action = $matches['action'];
- $type = $matches['type'];
-@@ -190,7 +200,7 @@
- */
- protected function isValid($value)
- {
-- if (!$value instanceof stdClass) {
-+ if (! $value instanceof stdClass) {
- return false;
- }
-
-@@ -213,7 +223,7 @@
- */
- public function append($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'append() expects a data token; please use one of the custom append*() methods'
- );
-@@ -232,7 +242,7 @@
- */
- public function offsetSet($index, $value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'offsetSet() expects a data token; please use one of the custom offsetSet*() methods'
- );
-@@ -250,7 +260,7 @@
- */
- public function prepend($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'prepend() expects a data token; please use one of the custom prepend*() methods'
- );
-@@ -268,7 +278,7 @@
- */
- public function set($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'set() expects a data token; please use one of the custom set*() methods'
- );
-@@ -315,7 +325,7 @@
- }
-
- if (isset($attributes['conditionalStylesheet'])
-- && !empty($attributes['conditionalStylesheet'])
-+ && ! empty($attributes['conditionalStylesheet'])
- && is_string($attributes['conditionalStylesheet'])
- ) {
- // inner wrap with comment end and start if !IE
-@@ -340,7 +350,7 @@
- ? $this->getWhitespace($indent)
- : $this->getIndent();
-
-- $items = array();
-+ $items = [];
- $this->getContainer()->ksort();
- foreach ($this as $item) {
- $items[] = $this->itemToString($item);
-@@ -378,7 +388,7 @@
- return false;
- }
-
-- if (0 < count($args)) {
-+ if ($args) {
- $media = array_shift($args);
- if (is_array($media)) {
- $media = implode(',', $media);
-@@ -386,18 +396,20 @@
- $media = (string) $media;
- }
- }
-- if (0 < count($args)) {
-+ if ($args) {
- $conditionalStylesheet = array_shift($args);
-- if (!empty($conditionalStylesheet) && is_string($conditionalStylesheet)) {
-+ if (! empty($conditionalStylesheet) && is_string($conditionalStylesheet)) {
- $conditionalStylesheet = (string) $conditionalStylesheet;
- } else {
- $conditionalStylesheet = null;
- }
- }
-
-- if (0 < count($args) && is_array($args[0])) {
-+ if ($args && is_array($args[0])) {
- $extras = array_shift($args);
- $extras = (array) $extras;
-+ } else {
-+ $extras = array();
- }
-
- $attributes = compact('rel', 'type', 'href', 'media', 'conditionalStylesheet', 'extras');
-@@ -443,13 +455,15 @@
- $type = array_shift($args);
- $title = array_shift($args);
-
-- if (0 < count($args) && is_array($args[0])) {
-+ if ($args && is_array($args[0])) {
- $extras = array_shift($args);
- $extras = (array) $extras;
-
- if (isset($extras['media']) && is_array($extras['media'])) {
- $extras['media'] = implode(',', $extras['media']);
- }
-+ } else {
-+ $extras = array();
- }
-
- $href = (string) $href;
diff --git a/mysql.patch b/mysql.patch
deleted file mode 100644
index b10f910f6554..000000000000
--- a/mysql.patch
+++ /dev/null
@@ -1,397 +0,0 @@
---- a/core/src/cats/ddl/creates/mysql.sql 2021-06-10 16:14:05.373605979 +0300
-+++ b/core/src/cats/ddl/creates/mysql.sql 2021-06-10 16:33:09.592630760 +0300
-@@ -11,63 +11,6 @@
- INDEX (Path(255))
- );
-
---- We strongly recommend to avoid the temptation to add new indexes.
---- In general, these will cause very significant performance
---- problems in other areas. A better approach is to carefully check
---- that all your memory configuration parameters are
---- suitable for the size of your installation. If you backup
---- millions of files, you need to adapt the database memory
---- configuration parameters concerning sorting, joining and global
---- memory. By default, sort and join parameters are very small
---- (sometimes 8Kb), and having sufficient memory specified by those
---- parameters is extremely important to run fast.
--
---- In File table
---- FileIndex is 0 for FT_DELETED files
---- Name is '' for directories
---- The index INDEX (PathId, JobId, FileIndex) is
---- important for bvfs performance, especially
---- for .bvfs_lsdirs which is used by bareos-webui.
--CREATE TABLE File (
-- FileId BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
-- FileIndex INTEGER UNSIGNED DEFAULT 0,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- PathId INTEGER UNSIGNED NOT NULL REFERENCES Path,
-- DeltaSeq SMALLINT UNSIGNED DEFAULT 0,
-- MarkId INTEGER UNSIGNED DEFAULT 0,
-- Fhinfo NUMERIC(20) DEFAULT 0,
-- Fhnode NUMERIC(20) DEFAULT 0,
-- LStat TINYBLOB NOT NULL,
-- MD5 TINYBLOB NOT NULL,
-- Name BLOB NOT NULL,
-- PRIMARY KEY (FileId),
-- INDEX (JobId, PathId, Name(255)),
-- INDEX (PathId, JobId, FileIndex)
--);
--
----
---- Possibly add one or more of the following indexes
---- to the above File table if your Verifies are
---- too slow, but they can slow down backups.
----
---- INDEX (PathId),
--
--CREATE TABLE RestoreObject (
-- RestoreObjectId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- ObjectName BLOB NOT NULL,
-- RestoreObject LONGBLOB NOT NULL,
-- PluginName TINYBLOB NOT NULL,
-- ObjectLength INTEGER DEFAULT 0,
-- ObjectFullLength INTEGER DEFAULT 0,
-- ObjectIndex INTEGER DEFAULT 0,
-- ObjectType INTEGER DEFAULT 0,
-- FileIndex INTEGER UNSIGNED DEFAULT 0,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- ObjectCompression INTEGER DEFAULT 0,
-- PRIMARY KEY(RestoreObjectId),
-- INDEX (JobId)
--);
--
- CREATE TABLE MediaType (
- MediaTypeId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- MediaType TINYBLOB NOT NULL,
-@@ -101,13 +44,65 @@
- PRIMARY KEY(DeviceId)
- );
-
-+CREATE TABLE FileSet (
-+ FileSetId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ FileSet TINYBLOB NOT NULL,
-+ MD5 TINYBLOB,
-+ CreateTime DATETIME DEFAULT NULL,
-+ FileSetText BLOB NOT NULL,
-+ PRIMARY KEY(FileSetId)
-+);
-+
-+CREATE TABLE Client (
-+ ClientId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Name TINYBLOB NOT NULL,
-+ Uname TINYBLOB NOT NULL, /* full uname -a of client */
-+ AutoPrune TINYINT DEFAULT 0,
-+ FileRetention BIGINT UNSIGNED DEFAULT 0,
-+ JobRetention BIGINT UNSIGNED DEFAULT 0,
-+ UNIQUE (Name(128)),
-+ PRIMARY KEY(ClientId)
-+);
-+
-+CREATE TABLE Pool (
-+ PoolId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Name TINYBLOB NOT NULL,
-+ NumVols INTEGER UNSIGNED DEFAULT 0,
-+ MaxVols INTEGER UNSIGNED DEFAULT 0,
-+ UseOnce TINYINT DEFAULT 0,
-+ UseCatalog TINYINT DEFAULT 0,
-+ AcceptAnyVolume TINYINT DEFAULT 0,
-+ VolRetention BIGINT UNSIGNED DEFAULT 0,
-+ VolUseDuration BIGINT UNSIGNED DEFAULT 0,
-+ MaxVolJobs INTEGER UNSIGNED DEFAULT 0,
-+ MaxVolFiles INTEGER UNSIGNED DEFAULT 0,
-+ MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
-+ AutoPrune TINYINT DEFAULT 0,
-+ Recycle TINYINT DEFAULT 0,
-+ ActionOnPurge TINYINT DEFAULT 0,
-+ PoolType ENUM('Backup', 'Copy', 'Cloned', 'Archive', 'Migration', 'Scratch') NOT NULL,
-+ LabelType TINYINT DEFAULT 0,
-+ LabelFormat TINYBLOB,
-+ Enabled TINYINT DEFAULT 1,
-+ ScratchPoolId INTEGER UNSIGNED DEFAULT 0,
-+ RecyclePoolId INTEGER UNSIGNED DEFAULT 0,
-+ NextPoolId INTEGER UNSIGNED DEFAULT 0,
-+ MinBlockSize INTEGER UNSIGNED DEFAULT 0,
-+ MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
-+ MigrationHighBytes BIGINT UNSIGNED DEFAULT 0,
-+ MigrationLowBytes BIGINT UNSIGNED DEFAULT 0,
-+ MigrationTime BIGINT UNSIGNED DEFAULT 0,
-+ UNIQUE (Name(128)),
-+ PRIMARY KEY (PoolId)
-+);
-+
- CREATE TABLE Job (
- JobId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- Job TINYBLOB NOT NULL,
- Name TINYBLOB NOT NULL,
- Type BINARY(1) NOT NULL,
- Level BINARY(1) NOT NULL,
-- ClientId INTEGER DEFAULT 0 REFERENCES Client(ClientId),
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- JobStatus BINARY(1) NOT NULL,
- SchedTime DATETIME DEFAULT NULL,
- StartTime DATETIME DEFAULT NULL,
-@@ -121,9 +116,9 @@
- ReadBytes BIGINT UNSIGNED DEFAULT 0,
- JobErrors INTEGER UNSIGNED DEFAULT 0,
- JobMissingFiles INTEGER UNSIGNED DEFAULT 0,
-- PoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-- FileSetId INTEGER UNSIGNED DEFAULT 0 REFERENCES FileSet(FileSetId),
-- PriorJobId INTEGER UNSIGNED DEFAULT 0 REFERENCES Job(JobId),
-+ PoolId INTEGER UNSIGNED DEFAULT 0,
-+ FileSetId INTEGER UNSIGNED DEFAULT 0,
-+ PriorJobId INTEGER UNSIGNED DEFAULT 0,
- PurgedFiles TINYINT DEFAULT 0,
- HasBase TINYINT DEFAULT 0,
- HasCache TINYINT DEFAULT 0,
-@@ -134,6 +129,63 @@
- INDEX (JobTDate)
- );
-
-+-- We strongly recommend to avoid the temptation to add new indexes.
-+-- In general, these will cause very significant performance
-+-- problems in other areas. A better approach is to carefully check
-+-- that all your memory configuration parameters are
-+-- suitable for the size of your installation. If you backup
-+-- millions of files, you need to adapt the database memory
-+-- configuration parameters concerning sorting, joining and global
-+-- memory. By default, sort and join parameters are very small
-+-- (sometimes 8Kb), and having sufficient memory specified by those
-+-- parameters is extremely important to run fast.
-+
-+-- In File table
-+-- FileIndex is 0 for FT_DELETED files
-+-- Name is '' for directories
-+-- The index INDEX (PathId, JobId, FileIndex) is
-+-- important for bvfs performance, especially
-+-- for .bvfs_lsdirs which is used by bareos-webui.
-+CREATE TABLE File (
-+ FileId BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
-+ FileIndex INTEGER UNSIGNED DEFAULT 0,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ PathId INTEGER UNSIGNED NOT NULL REFERENCES Path,
-+ DeltaSeq SMALLINT UNSIGNED DEFAULT 0,
-+ MarkId INTEGER UNSIGNED DEFAULT 0,
-+ Fhinfo NUMERIC(20) DEFAULT 0,
-+ Fhnode NUMERIC(20) DEFAULT 0,
-+ LStat TINYBLOB NOT NULL,
-+ MD5 TINYBLOB NOT NULL,
-+ Name BLOB NOT NULL,
-+ PRIMARY KEY (FileId),
-+ INDEX (JobId, PathId, Name(255)),
-+ INDEX (PathId, JobId, FileIndex)
-+);
-+
-+--
-+-- Possibly add one or more of the following indexes
-+-- to the above File table if your Verifies are
-+-- too slow, but they can slow down backups.
-+--
-+-- INDEX (PathId),
-+
-+CREATE TABLE RestoreObject (
-+ RestoreObjectId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ ObjectName BLOB NOT NULL,
-+ RestoreObject LONGBLOB NOT NULL,
-+ PluginName TINYBLOB NOT NULL,
-+ ObjectLength INTEGER DEFAULT 0,
-+ ObjectFullLength INTEGER DEFAULT 0,
-+ ObjectIndex INTEGER DEFAULT 0,
-+ ObjectType INTEGER DEFAULT 0,
-+ FileIndex INTEGER UNSIGNED DEFAULT 0,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ ObjectCompression INTEGER DEFAULT 0,
-+ PRIMARY KEY(RestoreObjectId),
-+ INDEX (JobId)
-+);
-+
- -- Create a table like Job for long term statistics
- CREATE TABLE JobHisto (
- JobId INTEGER UNSIGNED NOT NULL,
-@@ -175,50 +227,13 @@
- PRIMARY KEY(LocationId)
- );
-
--CREATE TABLE LocationLog (
-- LocLogId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Date DATETIME DEFAULT NULL,
-- Comment BLOB NOT NULL,
-- MediaId INTEGER UNSIGNED DEFAULT 0 REFERENCES Media(MediaId),
-- LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-- NewVolStatus ENUM('Full', 'Archive', 'Append', 'Recycle', 'Purged',
-- 'Read-Only', 'Disabled', 'Error', 'Busy', 'Used', 'Cleaning') NOT NULL,
-- NewEnabled TINYINT,
-- PRIMARY KEY(LocLogId)
--);
--
--CREATE TABLE FileSet (
-- FileSetId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- FileSet TINYBLOB NOT NULL,
-- MD5 TINYBLOB,
-- CreateTime DATETIME DEFAULT NULL,
-- FileSetText BLOB NOT NULL,
-- PRIMARY KEY(FileSetId)
--);
--
--CREATE TABLE JobMedia (
-- JobMediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- MediaId INTEGER UNSIGNED NOT NULL REFERENCES Media,
-- FirstIndex INTEGER UNSIGNED DEFAULT 0,
-- LastIndex INTEGER UNSIGNED DEFAULT 0,
-- StartFile INTEGER UNSIGNED DEFAULT 0,
-- EndFile INTEGER UNSIGNED DEFAULT 0,
-- StartBlock INTEGER UNSIGNED DEFAULT 0,
-- EndBlock INTEGER UNSIGNED DEFAULT 0,
-- JobBytes NUMERIC(20) DEFAULT 0,
-- VolIndex INTEGER UNSIGNED DEFAULT 0,
-- PRIMARY KEY(JobMediaId),
-- INDEX (JobId, MediaId)
--);
--
- CREATE TABLE Media (
- MediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- VolumeName TINYBLOB NOT NULL,
- Slot INTEGER DEFAULT 0,
- PoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
- MediaType TINYBLOB NOT NULL,
-- MediaTypeId INTEGER UNSIGNED DEFAULT 0 REFERENCES MediaType(MediaTypeId),
-+ MediaTypeId INTEGER UNSIGNED DEFAULT 0,
- LabelType TINYINT DEFAULT 0,
- FirstWritten DATETIME DEFAULT NULL,
- LastWritten DATETIME DEFAULT NULL,
-@@ -244,19 +259,19 @@
- MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
- InChanger TINYINT DEFAULT 0,
- StorageId INTEGER UNSIGNED DEFAULT 0 REFERENCES Storage(StorageId),
-- DeviceId INTEGER UNSIGNED DEFAULT 0 REFERENCES Device(DeviceId),
-+ DeviceId INTEGER UNSIGNED DEFAULT 0,
- MediaAddressing TINYINT DEFAULT 0,
- VolReadTime BIGINT UNSIGNED DEFAULT 0,
- VolWriteTime BIGINT UNSIGNED DEFAULT 0,
- EndFile INTEGER UNSIGNED DEFAULT 0,
- EndBlock INTEGER UNSIGNED DEFAULT 0,
-- LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-+ LocationId INTEGER UNSIGNED DEFAULT 0,
- RecycleCount INTEGER UNSIGNED DEFAULT 0,
- MinBlockSize INTEGER UNSIGNED DEFAULT 0,
- MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
- InitialWrite DATETIME DEFAULT NULL,
-- ScratchPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-- RecyclePoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-+ ScratchPoolId INTEGER UNSIGNED DEFAULT 0,
-+ RecyclePoolId INTEGER UNSIGNED DEFAULT 0,
- EncryptionKey TINYBLOB,
- Comment BLOB,
- PRIMARY KEY(MediaId),
-@@ -264,47 +279,32 @@
- INDEX (PoolId)
- );
-
--CREATE TABLE Pool (
-- PoolId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Name TINYBLOB NOT NULL,
-- NumVols INTEGER UNSIGNED DEFAULT 0,
-- MaxVols INTEGER UNSIGNED DEFAULT 0,
-- UseOnce TINYINT DEFAULT 0,
-- UseCatalog TINYINT DEFAULT 0,
-- AcceptAnyVolume TINYINT DEFAULT 0,
-- VolRetention BIGINT UNSIGNED DEFAULT 0,
-- VolUseDuration BIGINT UNSIGNED DEFAULT 0,
-- MaxVolJobs INTEGER UNSIGNED DEFAULT 0,
-- MaxVolFiles INTEGER UNSIGNED DEFAULT 0,
-- MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
-- AutoPrune TINYINT DEFAULT 0,
-- Recycle TINYINT DEFAULT 0,
-- ActionOnPurge TINYINT DEFAULT 0,
-- PoolType ENUM('Backup', 'Copy', 'Cloned', 'Archive', 'Migration', 'Scratch') NOT NULL,
-- LabelType TINYINT DEFAULT 0,
-- LabelFormat TINYBLOB,
-- Enabled TINYINT DEFAULT 1,
-- ScratchPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- RecyclePoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- NextPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- MinBlockSize INTEGER UNSIGNED DEFAULT 0,
-- MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
-- MigrationHighBytes BIGINT UNSIGNED DEFAULT 0,
-- MigrationLowBytes BIGINT UNSIGNED DEFAULT 0,
-- MigrationTime BIGINT UNSIGNED DEFAULT 0,
-- UNIQUE (Name(128)),
-- PRIMARY KEY (PoolId)
-+CREATE TABLE JobMedia (
-+ JobMediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ MediaId INTEGER UNSIGNED NOT NULL REFERENCES Media,
-+ FirstIndex INTEGER UNSIGNED DEFAULT 0,
-+ LastIndex INTEGER UNSIGNED DEFAULT 0,
-+ StartFile INTEGER UNSIGNED DEFAULT 0,
-+ EndFile INTEGER UNSIGNED DEFAULT 0,
-+ StartBlock INTEGER UNSIGNED DEFAULT 0,
-+ EndBlock INTEGER UNSIGNED DEFAULT 0,
-+ JobBytes NUMERIC(20) DEFAULT 0,
-+ VolIndex INTEGER UNSIGNED DEFAULT 0,
-+ PRIMARY KEY(JobMediaId),
-+ INDEX (JobId, MediaId)
- );
-
--CREATE TABLE Client (
-- ClientId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Name TINYBLOB NOT NULL,
-- Uname TINYBLOB NOT NULL, /* full uname -a of client */
-- AutoPrune TINYINT DEFAULT 0,
-- FileRetention BIGINT UNSIGNED DEFAULT 0,
-- JobRetention BIGINT UNSIGNED DEFAULT 0,
-- UNIQUE (Name(128)),
-- PRIMARY KEY(ClientId)
-+CREATE TABLE LocationLog (
-+ LocLogId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Date DATETIME DEFAULT NULL,
-+ Comment BLOB NOT NULL,
-+ MediaId INTEGER UNSIGNED DEFAULT 0 REFERENCES Media(MediaId),
-+ LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-+ NewVolStatus ENUM('Full', 'Archive', 'Append', 'Recycle', 'Purged',
-+ 'Read-Only', 'Disabled', 'Error', 'Busy', 'Used', 'Cleaning') NOT NULL,
-+ NewEnabled TINYINT,
-+ PRIMARY KEY(LocLogId)
- );
-
- CREATE TABLE Log (
-@@ -318,9 +318,9 @@
-
- CREATE TABLE BaseFiles (
- BaseId BIGINT UNSIGNED AUTO_INCREMENT,
-- BaseJobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- FileId BIGINT UNSIGNED NOT NULL REFERENCES File,
-+ BaseJobId INTEGER UNSIGNED NOT NULL,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job(JobId),
-+ FileId BIGINT UNSIGNED NOT NULL REFERENCES File(FileId),
- FileIndex INTEGER UNSIGNED,
- PRIMARY KEY(BaseId)
- );
-@@ -360,7 +360,7 @@
- );
-
- CREATE INDEX pathhierarchy_ppathid
-- ON PathHierarchy (PPathId);
-+ ON PathHierarchy (PPathId);
-
- CREATE TABLE PathVisibility
- (
-@@ -376,14 +376,14 @@
- );
-
- CREATE TABLE Quota (
-- ClientId INTEGER DEFAULT 0 REFERENCES Client,
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- GraceTime BIGINT DEFAULT 0,
- QuotaLimit BIGINT UNSIGNED DEFAULT 0,
- PRIMARY KEY (ClientId)
- );
-
- CREATE TABLE NDMPLevelMap (
-- ClientId INTEGER DEFAULT 0 REFERENCES Client(ClientId),
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- FileSetId INTEGER UNSIGNED DEFAULT 0 REFERENCES FileSet(FileSetId),
- FileSystem TINYBLOB NOT NULL,
- DumpLevel INTEGER NOT NULL,
diff --git a/restore-form.patch b/restore-form.patch
deleted file mode 100644
index 986047463b5b..000000000000
--- a/restore-form.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- bareos/webui/module/Restore/src/Restore/Form/RestoreForm.php 2020-02-21 23:01:23.000000000 +0200
-+++ bareos/webui/module/Restore/src/Restore/Form/RestoreForm.php 2020-04-09 23:28:34.194634728 +0300
-@@ -244,7 +244,8 @@
- ));
- }
- else {
-- if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) == 1) {
-+ // if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) == 1) {
-+ if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) > 0) {
- $this->add(array(
- 'name' => 'restorejob',
- 'type' => 'select',