diff --git a/SOURCES/amanda-3.3.3-non-blocking-connection-2.patch b/SOURCES/amanda-3.3.3-non-blocking-connection-2.patch new file mode 100644 index 0000000..a4c8edf --- /dev/null +++ b/SOURCES/amanda-3.3.3-non-blocking-connection-2.patch @@ -0,0 +1,39 @@ +diff -urNp old/common-src/security-util.c new/common-src/security-util.c +--- old/common-src/security-util.c 2013-01-10 13:54:54.000000000 +0100 ++++ new/common-src/security-util.c 2018-01-15 14:51:08.051123925 +0100 +@@ -511,6 +511,17 @@ tcpm_recv_token( + rval = read(fd, ((char *)&rc->netint) + rc->size_header_read, + SIZEOF(rc->netint) - rc->size_header_read); + if (rval == -1) { ++ if (0 ++#ifdef EAGAIN ++ || errno == EAGAIN ++#endif ++#ifdef EWOULDBLOCK ++ || errno == EWOULDBLOCK ++#endif ++ ) { ++ g_debug("first read return EAGAIN"); ++ return -2; ++ } + if (errmsg) + *errmsg = newvstrallocf(*errmsg, _("recv error: %s"), + strerror(errno)); +@@ -594,6 +605,17 @@ tcpm_recv_token( + rval = read(fd, rc->buffer + rc->size_buffer_read, + (size_t)*size - rc->size_buffer_read); + if (rval == -1) { ++ if (0 ++#ifdef EAGAIN ++ || errno == EAGAIN ++#endif ++#ifdef EWOULDBLOCK ++ || errno == EWOULDBLOCK ++#endif ++ ) { ++ g_debug("second read return EAGAIN"); ++ return -2; ++ } + if (errmsg) + *errmsg = newvstrallocf(*errmsg, _("recv error: %s"), + strerror(errno)); diff --git a/SOURCES/amanda@.service b/SOURCES/amanda@.service index 24adab4..29cdf2b 100644 --- a/SOURCES/amanda@.service +++ b/SOURCES/amanda@.service @@ -5,5 +5,5 @@ After=local-fs.target [Service] User=amandabackup Group=disk -ExecStart=/usr/sbin/amandad -auth=bsdtcp amdump +ExecStart=/usr/sbin/amandad -auth=bsdtcp amdump amindexd amidxtaped StandardInput=socket diff --git a/SPECS/amanda.spec b/SPECS/amanda.spec index e6dfbbd..70cced6 100644 --- a/SPECS/amanda.spec +++ b/SPECS/amanda.spec @@ -10,7 +10,7 @@ Summary: A network-capable tape backup solution Name: amanda Version: 3.3.3 -Release: 18%{?dist} +Release: 20%{?dist} Source: http://downloads.sourceforge.net/amanda/amanda-%{version}.tar.gz Source1: amanda.crontab Source4: disklist @@ -33,6 +33,8 @@ Patch13: amanda-error-amrecover.patch Patch14: amanda-3.3.3-non-blocking-connection.patch Patch15: amanda-3.3.3-krb5.patch Patch16: amanda-3.3.3-decompress.patch +Patch17: amanda-3.3.3-non-blocking-connection-2.patch + License: BSD and GPLv3+ and GPLv2+ and GPLv2 Group: Applications/System @@ -116,6 +118,7 @@ server also needs to have the amanda-client package installed. %patch14 -p1 -b .non-blocking-connection %patch15 -p1 -b .krb5.patch %patch16 -p1 -b .decompression +%patch17 -p1 -b .non-blocking-connection-2 ./autogen %build @@ -488,6 +491,12 @@ rm -rf ${RPM_BUILD_ROOT} %changelog +* Mon Jan 15 2018 Josef Ridky - 3.3.3-20 +- Resolves: #1532425 - fix problem with non-blocking connection + +* Wed Aug 23 2017 Josef Ridky - 3.3.3-19 +- Resolves: #1299761 - fix amindex: invalid service in amanda@.service file + * Tue Jan 24 2017 Josef Ridky - 3.3.3-18 - Resolves: #1286330 - set non-blocking connection - Resolves: #1299761 - fix amindex: invalid service