cryptsetup: enable and fix tests (#46346)
Some tests use O_DIRECT which is filesystem dependent and fails in a sandbox as well as on some filesystems without sandboxing. Patch out O_DIRECT and disable the 4 test cases that still fail in a sandbox. See discussion in #46151.
This commit is contained in:
parent
b58a230c60
commit
8c6cf3de3d
@ -14,8 +14,16 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0d2p9g2wqcv6l3671gvw96p16jadbgyh21ddy2bhqgi96dq3qflx";
|
||||
};
|
||||
|
||||
# Disable 4 test cases that fail in a sandbox
|
||||
patches = [ ./disable-failing-tests.patch ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs tests
|
||||
|
||||
# O_DIRECT is filesystem dependent and fails in a sandbox (on tmpfs)
|
||||
# and on several filesystem types (btrfs, zfs) without sandboxing.
|
||||
# Remove it, see discussion in #46151
|
||||
substituteInPlace tests/unit-utils-io.c --replace "| O_DIRECT" ""
|
||||
'';
|
||||
|
||||
NIX_LDFLAGS = "-lgcc_s";
|
||||
@ -30,6 +38,8 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ lvm2 json_c openssl libuuid popt ]
|
||||
++ stdenv.lib.optional enablePython python2;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
homepage = https://gitlab.com/cryptsetup/cryptsetup/;
|
||||
description = "LUKS for dm-crypt";
|
||||
|
@ -0,0 +1,19 @@
|
||||
diff -ur a/tests/blockwise-compat b/tests/blockwise-compat
|
||||
--- a/tests/blockwise-compat 2018-09-08 12:23:11.706555098 +0200
|
||||
+++ b/tests/blockwise-compat 2018-09-08 12:24:24.444393460 +0200
|
||||
@@ -148,15 +148,11 @@
|
||||
# device/file fn_name length
|
||||
RUN "P" $1 read_buffer $BSIZE
|
||||
RUN "P" $1 read_buffer $((2*BSIZE))
|
||||
- RUN "F" $1 read_buffer $((BSIZE-1))
|
||||
- RUN "F" $1 read_buffer $((BSIZE+1))
|
||||
RUN "P" $1 read_buffer 0
|
||||
|
||||
RUN "P" $1 write_buffer $BSIZE
|
||||
RUN "P" $1 write_buffer $((2*BSIZE))
|
||||
|
||||
- RUN "F" $1 write_buffer $((BSIZE-1))
|
||||
- RUN "F" $1 write_buffer $((BSIZE+1))
|
||||
RUN "F" $1 write_buffer 0
|
||||
|
||||
# basic blockwise functions
|
Loading…
Reference in New Issue
Block a user