| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | Description: Don't fail test if cryptsetup fails for disabled module loadingAuthor: Christoph Biedl <debian.axhn@manchmal.in-ulm.de>Date: 2017-11-20Forwarded: not-neededBug-Debian: https://bugs.debian.org/881864    On the Debian buildds and porter boxes, the crypt_format call in    libcryptsetup fails:    socket(AF_ALG, SOCK_SEQPACKET, 0) = -1 EAFNOSUPPORT (Address family not supported by protocol)    Reproducer using command line (run as non-root):    $ fallocate --length 8m test.img    $ echo foo | /sbin/cryptsetup luksFormat test.img -    The actual reason is DSA disabled automatic module loading by    setting /proc/sys/kernel/modules_disabled to 1, for obvious reaons.    Make the tests non-fatal if they fail at that place, by using the    special exit code 77.--- a/test.c+++ b/test.c@@ -147,6 +147,10 @@      r = crypt_format(cd, CRYPT_LUKS1, "aes", "xts-plain64",                      NULL, NULL, 32, NULL);+    if (r == -5) {+        fprintf(stderr, "crypt_format failed, assuming AF_ALG,SOCK_SEQPACKET failure\n");+        exit(77);+    }     if (r < 0)         error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); --- a/test-luksmeta+++ b/test-luksmeta@@ -11,7 +11,13 @@ trap 'onexit' EXIT  truncate -s 4M $tmp-echo -n foo | /sbin/cryptsetup luksFormat $tmp -+PRE="$(md5sum $tmp)"+echo -n foo | /sbin/cryptsetup luksFormat $tmp - || true+PST="$(md5sum $tmp)"+if [ "$PRE" = "$PST" ] ; then+    echo 'cryptsetup failed, assuming AF_ALG,SOCK_SEQPACKET failure'+    exit 77+fi  ! ./luksmeta test -d $tmp 
 |