From 5cefb13ddd4d51a63a387e74c138035b7b8b8537 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Thu, 19 Apr 2018 17:11:30 +0200 Subject: guix-daemon: Disable garbage collection for remote connections. * nix/nix-daemon/nix-daemon.cc (isRemoteConnection): New variable. (performOp): For wopCollectGarbage, throw an error when isRemoteConnection is set. (acceptConnection): Set isRemoteConnection when connection is not AF_UNIX. * tests/guix-daemon.sh: Add a test for the new behavior. --- tests/guix-daemon.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tests') diff --git a/tests/guix-daemon.sh b/tests/guix-daemon.sh index 6f91eb58bf..9ae6e0b77a 100644 --- a/tests/guix-daemon.sh +++ b/tests/guix-daemon.sh @@ -194,6 +194,20 @@ do kill "$daemon_pid" done +# Make sure garbage collection from a TCP connection does not work. + +tcp_socket="127.0.0.1:9999" +guix-daemon --listen="$tcp_socket" & +daemon_pid=$! + +GUIX_DAEMON_SOCKET="guix://$tcp_socket" +export GUIX_DAEMON_SOCKET + +if guix gc; then false; else true; fi + +unset GUIX_DAEMON_SOCKET +kill "$daemon_pid" + # Log compression. guix-daemon --listen="$socket" --disable-chroot --debug --log-compression=gzip & -- cgit v1.2.3