[PATCH v3] test: Fix test-crypto-secret when compiling without keyring support

Juan Quintela posted 1 patch 1 year ago
Failed in applying to current master (apply log)
Maintainers: "Daniel P. Berrangé" <berrange@redhat.com>
tests/unit/test-crypto-secret.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
[PATCH v3] test: Fix test-crypto-secret when compiling without keyring support
Posted by Juan Quintela 1 year ago
Linux keyring support is protected by CONFIG_KEYUTILS.
We also need CONFIG_SECRET_KEYRING.

Signed-off-by: Juan Quintela <quintela@redhat.com>

---

- Previous version of this patch changed the meson build rules.
  Daniel told me that the proper fix was to change the #ifdef test.

- Change rule again.  We need both defines.
- Put both defines in #endif (thomas)
---
 tests/unit/test-crypto-secret.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tests/unit/test-crypto-secret.c b/tests/unit/test-crypto-secret.c
index 34a4aecc12..147b4af828 100644
--- a/tests/unit/test-crypto-secret.c
+++ b/tests/unit/test-crypto-secret.c
@@ -24,7 +24,7 @@
 #include "crypto/secret.h"
 #include "qapi/error.h"
 #include "qemu/module.h"
-#ifdef CONFIG_KEYUTILS
+#if defined(CONFIG_KEYUTILS) && defined(CONFIG_SECRET_KEYRING)
 #include "crypto/secret_keyring.h"
 #include <keyutils.h>
 #endif
@@ -128,7 +128,7 @@ static void test_secret_indirect_emptyfile(void)
     g_free(fname);
 }
 
-#ifdef CONFIG_KEYUTILS
+#if defined(CONFIG_KEYUTILS) && defined(CONFIG_SECRET_KEYRING)
 
 #define DESCRIPTION "qemu_test_secret"
 #define PAYLOAD "Test Payload"
@@ -268,7 +268,7 @@ static void test_secret_keyring_bad_key_access_right(void)
     keyctl_unlink(key, KEY_SPEC_PROCESS_KEYRING);
 }
 
-#endif /* CONFIG_KEYUTILS */
+#endif /* CONFIG_KEYUTILS && CONFIG_SECRET_KEYRING */
 
 static void test_secret_noconv_base64_good(void)
 {
@@ -571,7 +571,7 @@ int main(int argc, char **argv)
     g_test_add_func("/crypto/secret/indirect/emptyfile",
                     test_secret_indirect_emptyfile);
 
-#ifdef CONFIG_KEYUTILS
+#if defined(CONFIG_KEYUTILS) && defined(CONFIG_SECRET_KEYRING)
     g_test_add_func("/crypto/secret/keyring/good",
                     test_secret_keyring_good);
     g_test_add_func("/crypto/secret/keyring/revoked_key",
@@ -582,7 +582,7 @@ int main(int argc, char **argv)
                     test_secret_keyring_bad_serial_key);
     g_test_add_func("/crypto/secret/keyring/bad_key_access_right",
                     test_secret_keyring_bad_key_access_right);
-#endif /* CONFIG_KEYUTILS */
+#endif /* CONFIG_KEYUTILS && CONFIG_SECRET_KEYRING */
 
     g_test_add_func("/crypto/secret/noconv/base64/good",
                     test_secret_noconv_base64_good);
-- 
2.39.2
Re: [PATCH v3] test: Fix test-crypto-secret when compiling without keyring support
Posted by Daniel P. Berrangé 1 year ago
On Fri, Apr 14, 2023 at 01:42:52PM +0200, Juan Quintela wrote:
> Linux keyring support is protected by CONFIG_KEYUTILS.
> We also need CONFIG_SECRET_KEYRING.
> 
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> 
> ---
> 
> - Previous version of this patch changed the meson build rules.
>   Daniel told me that the proper fix was to change the #ifdef test.
> 
> - Change rule again.  We need both defines.
> - Put both defines in #endif (thomas)
> ---
>  tests/unit/test-crypto-secret.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|