The tests use glibc's error.h, which musl libc does not implement. Use err.h instead. --- a/test-lm-big.c +++ b/test-lm-big.c @@ -19,7 +19,7 @@ #include "test.h" #include -#include +#include #include #include @@ -107,7 +107,7 @@ main(int argc, char *argv[]) /* Set the data. */ r = luksmeta_save(cd, CRYPT_ANY_SLOT, UUID, DATA, sizeof(DATA)); if (r < 0) - error(EXIT_FAILURE, -r, "luksmeta_save()"); + err(EXIT_FAILURE, "luksmeta_save()"); assert(test_layout((range_t[]) { { 0, 1024 }, /* LUKS header */ --- a/test-lm-init.c +++ b/test-lm-init.c @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include @@ -89,11 +89,11 @@ main(int argc, char *argv[]) /* Test to make sure that data corruption is picked up correctly. */ fd = open(filename, O_RDWR | O_SYNC); if (fd < 0) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); if (lseek(fd, offset + 16, SEEK_SET) == -1) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); if (write(fd, &(char) { 17 }, 1) != 1) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); close(fd); assert(luksmeta_save(cd, 2, UUID, UUID, sizeof(UUID)) == -EINVAL); assert(luksmeta_load(cd, 2, uuid, data, sizeof(data)) == -EINVAL); --- a/test-lm-one.c +++ b/test-lm-one.c @@ -18,7 +18,7 @@ */ #include "test.h" -#include +#include #include #include #include @@ -44,7 +44,7 @@ main(int argc, char *argv[]) r = luksmeta_save(cd, CRYPT_ANY_SLOT, UUID, UUID, sizeof(UUID)); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); /* Test the layout state. */ assert(test_layout((range_t[]) { --- a/test-lm-two.c +++ b/test-lm-two.c @@ -18,7 +18,7 @@ */ #include "test.h" -#include +#include #include #include @@ -49,7 +49,7 @@ main(int argc, char *argv[]) /* Add one metadata. */ r = luksmeta_save(cd, 0, UUID0, UUID0, sizeof(UUID0)); if (r < 0) - error(EXIT_FAILURE, -r, "luksmeta_save()"); + err(EXIT_FAILURE, "luksmeta_save()"); assert(test_layout((range_t[]) { { 0, 1024 }, /* LUKS header */ @@ -66,7 +66,7 @@ main(int argc, char *argv[]) /* Add a second metadata. */ r = luksmeta_save(cd, 1, UUID1, UUID1, sizeof(UUID1)); if (r < 0) - error(EXIT_FAILURE, -r, "luksmeta_save()"); + err(EXIT_FAILURE, "luksmeta_save()"); assert(test_layout((range_t[]) { { 0, 1024 }, /* LUKS header */ --- a/test.c +++ b/test.c @@ -18,7 +18,7 @@ */ #include -#include +#include #include #include #include @@ -105,7 +105,7 @@ test_hole(struct crypt_device *cd, uint32_t *offset, uint32_t *length) payload_offset = crypt_get_data_offset(cd) * 512; if (payload_offset < ALIGN(1, true)) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); for (int slot = 0; slot < crypt_keyslot_max(CRYPT_LUKS1); slot++) { uint64_t off = 0; @@ -113,7 +113,7 @@ test_hole(struct crypt_device *cd, uint32_t *offset, uint32_t *length) r = crypt_keyslot_area(cd, slot, &off, &len); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); if (off + len > keyarea_end) keyarea_end = off + len; @@ -132,23 +132,23 @@ test_format(void) fd = mkstemp(filename); if (fd < 0) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); /* Create a 4MB sparse file. */ if (lseek(fd, 4194303, SEEK_SET) == -1) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); if (write(fd, "", 1) != 1) - error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); close(fd); r = crypt_init(&cd, filename); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); r = crypt_format(cd, CRYPT_LUKS1, "aes", "xts-plain64", NULL, NULL, 32, NULL); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); return cd; } @@ -161,15 +161,15 @@ test_init(void) r = crypt_init(&cd, filename); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); r = crypt_load(cd, CRYPT_LUKS1, NULL); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); r = luksmeta_init(cd); if (r < 0) - error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__); + err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__); return cd; }