summary refs log tree commit diff
diff options
context:
space:
mode:
authorSimon South <simon@simonsouth.net>2020-10-06 09:56:45 -0400
committerTobias Geerinckx-Rice <me@tobias.gr>2020-10-06 16:20:39 +0200
commit4e869b180a94aa5bf5ae70ca48e0527e8e8db8db (patch)
treef65d71e5b803a1d56285cc32593160a5c4c59ea8
parent4756b9b1d9c1f13b21221461c6da40972a6e9cb3 (diff)
downloadguix-4e869b180a94aa5bf5ae70ca48e0527e8e8db8db.tar.gz
gnu: knot: Fix test failure on aarch64-linux.
* gnu/packages/dns.scm (knot)[source]: Apply patch from upstream that
helps ensure the "test_net_shortwrite" test suite can complete
regardless of platform or configuration.
* gnu/packages/patches/knot-test_net_shortwrite-ensure-connection.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/dns.scm2
-rw-r--r--gnu/packages/patches/knot-test_net_shortwrite-ensure-connection.patch19
3 files changed, 22 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 59cad38504..83d2d72ab1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1198,6 +1198,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/kpackage-allow-external-paths.patch	\
   %D%/packages/patches/kmplayer-aarch64.patch			\
   %D%/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch	\
+  %D%/packages/patches/knot-test_net_shortwrite-ensure-connection.patch	\
   %D%/packages/patches/kobodeluxe-paths.patch			\
   %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch	\
   %D%/packages/patches/kobodeluxe-const-charp-conversion.patch	\
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 8f7374c147..0fe047abdb 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -816,6 +816,8 @@ Extensions} (DNSSEC).")
        (file-name (git-file-name name version))
        (sha256
         (base32 "0fkvip7n5ihjfwnnivdc3jf44y8p85ifglvq7b0anxvj9cg1m78f"))
+       (patches
+        (search-patches "knot-test_net_shortwrite-ensure-connection.patch"))
        (modules '((guix build utils)))
        (snippet
         '(begin
diff --git a/gnu/packages/patches/knot-test_net_shortwrite-ensure-connection.patch b/gnu/packages/patches/knot-test_net_shortwrite-ensure-connection.patch
new file mode 100644
index 0000000000..8b57ec522e
--- /dev/null
+++ b/gnu/packages/patches/knot-test_net_shortwrite-ensure-connection.patch
@@ -0,0 +1,19 @@
+This patch duplicates upstream commit 4144d1e, which helps ensure the
+"test_net_shortwrite" test suite can succeed across all platforms by
+deepening the pending-connection queue of the server it creates from 0
+to 1.
+
+See the original report at
+https://gitlab.nic.cz/knot/knot-dns/-/issues/693
+
+--- a/tests/contrib/test_net_shortwrite.c
++++ b/tests/contrib/test_net_shortwrite.c
+@@ -88,7 +88,7 @@ int main(int argc, char *argv[])
+	int server = net_bound_socket(SOCK_STREAM, &addr, 0);
+	ok(server >= 0, "server: bind socket");
+
+-	r = listen(server, 0);
++	r = listen(server, 1);
+	ok(r == 0, "server: start listening");
+
+	struct sockaddr *sa = (struct sockaddr *)&addr;