summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorThermi2015-11-26 15:32:28 +0100
committerThermi2015-11-26 15:32:28 +0100
commit484f49b111117115ad34bdedee489ade6f1c490e (patch)
treee9bea25b3a929111a117f11e621a8657360745c8
parent4aac09dc6b739bfa18a316408506d38d11277ea2 (diff)
downloadaur-484f49b111117115ad34bdedee489ade6f1c490e.tar.gz
strongswan: bump to 5.3.5
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD15
-rw-r--r--sigfix.patch203
3 files changed, 8 insertions, 220 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a9de5e1f769b..6295f46e6c76 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = strongswan
pkgdesc = open source IPsec implementation
- pkgver = 5.3.4
- pkgrel = 2
+ pkgver = 5.3.5
+ pkgrel = 1
url = http://www.strongswan.org
arch = i686
arch = x86_64
@@ -81,10 +81,8 @@ pkgbase = strongswan
backup = etc/strongswan.d/charon/xauth-generic.conf
backup = etc/strongswan.d/charon/xcbc.conf
backup = etc/strongswan.d/charon/chapoly.conf
- source = https://download.strongswan.org/strongswan-5.3.4.tar.bz2
- source = sigfix.patch
- sha256sums = 938ad1f7b612e039f1d32333f4865160be70f9fb3c207a31127d0168116459aa
- sha256sums = 9f12c48bd4a82802107c0d171468e7e6a8a9d303df7838433b398add7d2cd25e
+ source = https://download.strongswan.org/strongswan-5.3.5.tar.bz2
+ sha256sums = 2c84b663da652b1ff180a1a73c24a3d7b9fc4b9b8ba6bd07f94a1e33092e6350
pkgname = strongswan
diff --git a/PKGBUILD b/PKGBUILD
index 786c65fca5ab..8b9182bf7a87 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,8 +9,8 @@
# Maintainer: Thermi <noel [at] familie-kuntze dot de>
pkgname=strongswan
-pkgver=5.3.4
-pkgrel=2
+pkgver=5.3.5
+pkgrel=1
pkgdesc="open source IPsec implementation"
url='http://www.strongswan.org'
license=("GPL")
@@ -33,23 +33,16 @@ revocation.conf,sha1.conf,sha2.conf,socket-default.conf,sql.conf,sqlite.conf,ssh
vici.conf,x509.conf,xauth-eap.conf,xauth-generic.conf,xcbc.conf,chapoly.conf}
)
-source=("https://download.strongswan.org/strongswan-${pkgver}.tar.bz2"
- "sigfix.patch")
+source=("https://download.strongswan.org/strongswan-${pkgver}.tar.bz2")
# md5 is broken. We use sha256 now. Alternatively, we could check the signature of the file, but that
# doesn't yield any more security and just increases the work users initially have to invest.
-sha256sums=('938ad1f7b612e039f1d32333f4865160be70f9fb3c207a31127d0168116459aa'
- '9f12c48bd4a82802107c0d171468e7e6a8a9d303df7838433b398add7d2cd25e')
+sha256sums=('2c84b663da652b1ff180a1a73c24a3d7b9fc4b9b8ba6bd07f94a1e33092e6350')
# We don't build libipsec because it would get loaded before kernel-netlink and netkey, which
# would case processing to be handled in user space. Also, the plugin is experimental. If you need it,
# add --enable-libipsec and --enable-kernel-libipsec
-prepare() {
- cd ${srcdir}/${pkgname}-${pkgver}
- patch -p1 < ${srcdir}/sigfix.patch
-}
-
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/sigfix.patch b/sigfix.patch
deleted file mode 100644
index 9be75202e65c..000000000000
--- a/sigfix.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-commit b4673e99ca4c2a2850798ba75b4963ef8c69bbab
-Author: Tobias Brunner <tobias@strongswan.org>
-Date: Thu Nov 19 11:21:48 2015 +0100
-
- sigwaitinfo() may fail with EINTR if an unblocked signal not in the set is received
-
-diff --git a/src/charon-cmd/charon-cmd.c b/src/charon-cmd/charon-cmd.c
-index b8f943f..d3b31cc 100644
---- a/src/charon-cmd/charon-cmd.c
-+++ b/src/charon-cmd/charon-cmd.c
-@@ -115,6 +115,10 @@ static int run()
- sig = sigwaitinfo(&set, NULL);
- if (sig == -1)
- {
-+ if (errno == EINTR)
-+ { /* ignore signals we didn't wait for */
-+ continue;
-+ }
- DBG1(DBG_DMN, "waiting for signal failed: %s", strerror(errno));
- return 1;
- }
-@@ -152,11 +156,6 @@ static int run()
- charon->bus->alert(charon->bus, ALERT_SHUTDOWN_SIGNAL, sig);
- return 1;
- }
-- default:
-- {
-- DBG1(DBG_DMN, "unknown signal %d received. Ignored", sig);
-- break;
-- }
- }
- }
- }
-diff --git a/src/charon-nm/charon-nm.c b/src/charon-nm/charon-nm.c
-index 1773e7c..fb090e5 100644
---- a/src/charon-nm/charon-nm.c
-+++ b/src/charon-nm/charon-nm.c
-@@ -85,6 +85,10 @@ static void run()
- sig = sigwaitinfo(&set, NULL);
- if (sig == -1)
- {
-+ if (errno == EINTR)
-+ { /* ignore signals we didn't wait for */
-+ continue;
-+ }
- DBG1(DBG_DMN, "waiting for signal failed: %s", strerror(errno));
- return;
- }
-@@ -102,11 +106,6 @@ static void run()
- charon->bus->alert(charon->bus, ALERT_SHUTDOWN_SIGNAL, sig);
- return;
- }
-- default:
-- {
-- DBG1(DBG_DMN, "unknown signal %d received. Ignored", sig);
-- break;
-- }
- }
- }
- }
-diff --git a/src/charon-systemd/charon-systemd.c b/src/charon-systemd/charon-systemd.c
-index f302d45..4286cde 100644
---- a/src/charon-systemd/charon-systemd.c
-+++ b/src/charon-systemd/charon-systemd.c
-@@ -254,6 +254,10 @@ static int run()
- sig = sigwaitinfo(&set, NULL);
- if (sig == -1)
- {
-+ if (errno == EINTR)
-+ { /* ignore signals we didn't wait for */
-+ continue;
-+ }
- DBG1(DBG_DMN, "waiting for signal failed: %s", strerror(errno));
- return SS_RC_INITIALIZATION_FAILED;
- }
-@@ -265,11 +269,6 @@ static int run()
- charon->bus->alert(charon->bus, ALERT_SHUTDOWN_SIGNAL, sig);
- return 0;
- }
-- default:
-- {
-- DBG1(DBG_DMN, "unknown signal %d received. Ignored", sig);
-- break;
-- }
- }
- }
- }
-diff --git a/src/charon-tkm/src/charon-tkm.c b/src/charon-tkm/src/charon-tkm.c
-index 52d82f3..3923c8a 100644
---- a/src/charon-tkm/src/charon-tkm.c
-+++ b/src/charon-tkm/src/charon-tkm.c
-@@ -104,6 +104,10 @@ static void run()
- sig = sigwaitinfo(&set, NULL);
- if (sig == -1)
- {
-+ if (errno == EINTR)
-+ { /* ignore signals we didn't wait for */
-+ continue;
-+ }
- DBG1(DBG_DMN, "waiting for signal failed: %s", strerror(errno));
- return;
- }
-@@ -121,11 +125,6 @@ static void run()
- charon->bus->alert(charon->bus, ALERT_SHUTDOWN_SIGNAL, sig);
- return;
- }
-- default:
-- {
-- DBG1(DBG_DMN, "unknown signal %d received. Ignored", sig);
-- break;
-- }
- }
- }
- }
-diff --git a/src/charon/charon.c b/src/charon/charon.c
-index f03b6e1..4c2a9a4 100644
---- a/src/charon/charon.c
-+++ b/src/charon/charon.c
-@@ -98,7 +98,7 @@ static void run()
- {
- sigset_t set;
-
-- /* handle SIGINT, SIGHUP ans SIGTERM in this handler */
-+ /* handle SIGINT, SIGHUP and SIGTERM in this handler */
- sigemptyset(&set);
- sigaddset(&set, SIGINT);
- sigaddset(&set, SIGHUP);
-@@ -112,6 +112,10 @@ static void run()
- sig = sigwaitinfo(&set, NULL);
- if (sig == -1)
- {
-+ if (errno == EINTR)
-+ { /* ignore signals we didn't wait for */
-+ continue;
-+ }
- DBG1(DBG_DMN, "waiting for signal failed: %s", strerror(errno));
- return;
- }
-@@ -144,11 +148,6 @@ static void run()
- charon->bus->alert(charon->bus, ALERT_SHUTDOWN_SIGNAL, sig);
- return;
- }
-- default:
-- {
-- DBG1(DBG_DMN, "unknown signal %d received. Ignored", sig);
-- break;
-- }
- }
- }
- }
-diff --git a/src/conftest/conftest.c b/src/conftest/conftest.c
-index 9348b64..edfe0ca 100644
---- a/src/conftest/conftest.c
-+++ b/src/conftest/conftest.c
-@@ -565,7 +565,7 @@ int main(int argc, char *argv[])
- sigaddset(&set, SIGTERM);
- sigprocmask(SIG_BLOCK, &set, NULL);
-
-- while ((sig = sigwaitinfo(&set, NULL)) != -1)
-+ while ((sig = sigwaitinfo(&set, NULL)) != -1 || errno == EINTR)
- {
- switch (sig)
- {
-diff --git a/src/libfast/fast_dispatcher.c b/src/libfast/fast_dispatcher.c
-index b4c6ce3..66a2ee5 100644
---- a/src/libfast/fast_dispatcher.c
-+++ b/src/libfast/fast_dispatcher.c
-@@ -21,6 +21,7 @@
- #include <fcgiapp.h>
- #include <signal.h>
- #include <unistd.h>
-+#include <errno.h>
-
- #include <utils/debug.h>
- #include <threading/thread.h>
-@@ -389,7 +390,10 @@ METHOD(fast_dispatcher_t, waitsignal, void,
- sigaddset(&set, SIGTERM);
- sigaddset(&set, SIGHUP);
- sigprocmask(SIG_BLOCK, &set, NULL);
-- sigwaitinfo(&set, NULL);
-+ while (sigwaitinfo(&set, NULL) == -1 && errno == EINTR)
-+ {
-+ /* wait for signal */
-+ }
- }
-
- METHOD(fast_dispatcher_t, destroy, void,
-diff --git a/src/libstrongswan/utils/utils.c b/src/libstrongswan/utils/utils.c
-index 4e86165..40cb43d 100644
---- a/src/libstrongswan/utils/utils.c
-+++ b/src/libstrongswan/utils/utils.c
-@@ -124,7 +124,10 @@ void wait_sigint()
- sigaddset(&set, SIGTERM);
-
- sigprocmask(SIG_BLOCK, &set, NULL);
-- sigwaitinfo(&set, NULL);
-+ while (sigwaitinfo(&set, NULL) == -1 && errno == EINTR)
-+ {
-+ /* wait for signal */
-+ }
- }
-
- #ifndef HAVE_SIGWAITINFO