From 764fc45a258c08177d01b6b6b6a0e431ee29089a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Jun 2024 11:49:07 +0100 Subject: [PATCH] interop: Pass -DCERTS and -DPSK as strings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than implicitly defining the certificates dir or PSK file in interop.c, pass the actual paths from the Makefile. This also allows -DCERTS=NULL which is interpreted as not calling nbd_set_tls_certificates at all. This makes the test added in a subsequent commit possible. No real change here, just refactoring the tests. Reviewed-by: Daniel P. Berrangé (cherry picked from commit 69ab18442994c68f749e2b84b91d41031ebbb088) (cherry picked from commit 33d7f3aa8e3cf8c826a534107529e1d409c0c004) --- interop/Makefile.am | 18 +++++++++--------- interop/interop.c | 11 ++++++----- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/interop/Makefile.am b/interop/Makefile.am index ac12d84a..4cdc55e9 100644 --- a/interop/Makefile.am +++ b/interop/Makefile.am @@ -100,7 +100,7 @@ interop_nbd_server_tls_CPPFLAGS = \ -DSERVER=\"$(NBD_SERVER)\" \ -DSERVER_PARAMS='"-d", "-C", "nbd-server-tls.conf", "0", TMPFILE' \ -DEXPORT_NAME='""' \ - -DCERTS=1 \ + -DCERTS='"../tests/pki"' \ -DTLS_MODE=LIBNBD_TLS_REQUIRE \ $(NULL) interop_nbd_server_tls_LDADD = \ @@ -186,7 +186,7 @@ interop_qemu_nbd_tls_certs_CPPFLAGS = \ -DSERVER=\"$(QEMU_NBD)\" \ -DSERVER_PARAMS='"--object", "tls-creds-x509,id=tls0,endpoint=server,dir=$(abs_top_builddir)/tests/pki", "--tls-creds", "tls0", "-f", "raw", "-x", "/", TMPFILE' \ -DEXPORT_NAME='"/"' \ - -DCERTS=1 \ + -DCERTS='"../tests/pki"' \ -DTLS_MODE=LIBNBD_TLS_REQUIRE \ $(NULL) interop_qemu_nbd_tls_certs_LDADD = \ @@ -208,7 +208,7 @@ interop_qemu_nbd_tls_psk_CPPFLAGS = \ -DSERVER=\"$(QEMU_NBD)\" \ -DSERVER_PARAMS='"--object", "tls-creds-psk,id=tls0,endpoint=server,dir=$(abs_top_builddir)/tests", "--tls-creds", "tls0", "-f", "raw", "-x", "/", TMPFILE' \ -DEXPORT_NAME='"/"' \ - -DPSK=1 \ + -DPSK='"../tests/keys.psk"' \ -DTLS_MODE=LIBNBD_TLS_REQUIRE \ $(NULL) interop_qemu_nbd_tls_psk_LDADD = \ @@ -323,7 +323,7 @@ interop_nbdkit_tls_certs_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=require", "--tls-certificates=../tests/pki", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DCERTS=1 \ + -DCERTS='"../tests/pki"' \ -DTLS_MODE=LIBNBD_TLS_REQUIRE \ $(NULL) interop_nbdkit_tls_certs_LDADD = \ @@ -342,7 +342,7 @@ interop_nbdkit_tls_certs_allow_enabled_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=require", "--tls-certificates=../tests/pki", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DCERTS=1 \ + -DCERTS='"../tests/pki"' \ -DTLS_MODE=LIBNBD_TLS_ALLOW \ $(NULL) interop_nbdkit_tls_certs_allow_enabled_LDADD = \ @@ -361,7 +361,7 @@ interop_nbdkit_tls_certs_allow_fallback_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=off", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DCERTS=1 \ + -DCERTS='"../tests/pki"' \ -DTLS_MODE=LIBNBD_TLS_ALLOW \ -DTLS_FALLBACK=1 \ $(NULL) @@ -381,7 +381,7 @@ interop_nbdkit_tls_psk_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=require", "--tls-psk=../tests/keys.psk", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DPSK=1 \ + -DPSK='"../tests/keys.psk"' \ -DTLS_MODE=LIBNBD_TLS_REQUIRE \ $(NULL) interop_nbdkit_tls_psk_LDADD = \ @@ -400,7 +400,7 @@ interop_nbdkit_tls_psk_allow_enabled_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=require", "--tls-psk=../tests/keys.psk", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DPSK=1 \ + -DPSK='"../tests/keys.psk"' \ -DTLS_MODE=LIBNBD_TLS_ALLOW \ $(NULL) interop_nbdkit_tls_psk_allow_enabled_LDADD = \ @@ -419,7 +419,7 @@ interop_nbdkit_tls_psk_allow_fallback_CPPFLAGS = \ -DNEEDS_TMPFILE=1 \ -DSERVER=\"$(NBDKIT)\" \ -DSERVER_PARAMS='"--tls=off", "-s", "--exit-with-parent", "file", TMPFILE' \ - -DPSK=1 \ + -DPSK='"../tests/keys.psk"' \ -DTLS_MODE=LIBNBD_TLS_ALLOW \ -DTLS_FALLBACK=1 \ $(NULL) diff --git a/interop/interop.c b/interop/interop.c index 20e101d4..d4d6671e 100644 --- a/interop/interop.c +++ b/interop/interop.c @@ -41,7 +41,7 @@ #define SIZE (1024*1024) -#if CERTS || PSK +#if defined(CERTS) || defined(PSK) #define TLS 1 #ifndef TLS_MODE #error "TLS_MODE must be defined when using CERTS || PSK" @@ -149,13 +149,14 @@ main (int argc, char *argv[]) } #endif -#if CERTS - if (nbd_set_tls_certificates (nbd, "../tests/pki") == -1) { +#if defined(CERTS) + const char *certs = CERTS; + if (certs && nbd_set_tls_certificates (nbd, certs) == -1) { fprintf (stderr, "%s\n", nbd_get_error ()); exit (EXIT_FAILURE); } -#elif PSK - if (nbd_set_tls_psk_file (nbd, "../tests/keys.psk") == -1) { +#elif defined(PSK) + if (nbd_set_tls_psk_file (nbd, PSK) == -1) { fprintf (stderr, "%s\n", nbd_get_error ()); exit (EXIT_FAILURE); } -- 2.43.0