From a75265924f5f3ee73fdd30c9713b2f8177b7fb98 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 21 Sep 2017 02:38:52 +0200 Subject: [PATCH] nixos/tests/virtualbox: Fix netcat invocation This is a backwards-incompatibility in netcat-openbsd introduced due to bumping the netcat version to 1.130 in a72ba661acf54d1beb2b4e306acba7d6f45621c4. Version 1.130 no longer exits on EOF but now needs to be passed the -N flag in order to exit on EOF. The upstream change reads[1] like this: Don't shutdown nc(1)'s network socket when stdin closes. Matches *Hobbit*'s original netcat and GNU netcat; revert to old behaviour with the new -N flag if needed. After much discussion with otto deraadt tedu and Martin Pelikan. ok deraadt@ Here is the diff of this change: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/nc/netcat.c.diff?r1=1.110&r2=1.111&f=h [1]: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/nc/netcat.c?rev=1.111&content-type=text/x-cvsweb-markup Signed-off-by: aszlig --- nixos/tests/virtualbox.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/tests/virtualbox.nix b/nixos/tests/virtualbox.nix index 4f7cb176d96f48..a1ab7614871ad0 100644 --- a/nixos/tests/virtualbox.nix +++ b/nixos/tests/virtualbox.nix @@ -461,11 +461,11 @@ in mapAttrs mkVBoxTest { my $test1IP = waitForIP_test1 1; my $test2IP = waitForIP_test2 1; - $machine->succeed("echo '$test2IP' | nc '$test1IP' 1234"); - $machine->succeed("echo '$test1IP' | nc '$test2IP' 1234"); + $machine->succeed("echo '$test2IP' | nc -N '$test1IP' 1234"); + $machine->succeed("echo '$test1IP' | nc -N '$test2IP' 1234"); - $machine->waitUntilSucceeds("nc '$test1IP' 5678 >&2"); - $machine->waitUntilSucceeds("nc '$test2IP' 5678 >&2"); + $machine->waitUntilSucceeds("nc -N '$test1IP' 5678 < /dev/null >&2"); + $machine->waitUntilSucceeds("nc -N '$test2IP' 5678 < /dev/null >&2"); shutdownVM_test1; shutdownVM_test2;