From a54421dd976fd8081e96c11c2621076876c9986b Mon Sep 17 00:00:00 2001 From: Thomas Vanbesien Date: Tue, 17 Feb 2026 11:07:37 +0100 Subject: Replace CLI arguments with config-file parser and add integration tests Introduce a reusable key=value config parser (config.h/c) and convert all three programs to read their settings from config files instead of positional command-line arguments. Add example config files in config/ and 6 CTest integration tests covering None/Basic256Sha256/Aes128 with anonymous and user authentication. Remove the now-obsolete launch.sh. --- tests/aes128_anon/client_find_servers.conf | 14 ++++++++++++++ tests/aes128_anon/server_lds.conf | 12 ++++++++++++ tests/aes128_anon/server_register.conf | 21 +++++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 tests/aes128_anon/client_find_servers.conf create mode 100644 tests/aes128_anon/server_lds.conf create mode 100644 tests/aes128_anon/server_register.conf (limited to 'tests/aes128_anon') diff --git a/tests/aes128_anon/client_find_servers.conf b/tests/aes128_anon/client_find_servers.conf new file mode 100644 index 0000000..87eed56 --- /dev/null +++ b/tests/aes128_anon/client_find_servers.conf @@ -0,0 +1,14 @@ +# ClientFindServers — test: aes128_anon + +discoveryEndpoint = opc.tcp://localhost:14840 +applicationUri = urn:bobink.ClientFindServers +certificate = certs/ClientFindServers_cert.der +privateKey = certs/ClientFindServers_key.der + +securityMode = SignAndEncrypt +securityPolicy = Aes128_Sha256_RsaOaep + +authMode = anonymous + +trustList = certs/ServerLDS_cert.der +trustList = certs/ServerRegister_cert.der diff --git a/tests/aes128_anon/server_lds.conf b/tests/aes128_anon/server_lds.conf new file mode 100644 index 0000000..e8601d0 --- /dev/null +++ b/tests/aes128_anon/server_lds.conf @@ -0,0 +1,12 @@ +# ServerLDS — test: aes128_anon + +port = 14840 +applicationUri = urn:bobink.ServerLDS +certificate = certs/ServerLDS_cert.der +privateKey = certs/ServerLDS_key.der +cleanupTimeout = 60 + +authMode = anonymous + +trustList = certs/ServerRegisterClient_cert.der +trustList = certs/ClientFindServers_cert.der diff --git a/tests/aes128_anon/server_register.conf b/tests/aes128_anon/server_register.conf new file mode 100644 index 0000000..8a8d1d1 --- /dev/null +++ b/tests/aes128_anon/server_register.conf @@ -0,0 +1,21 @@ +# ServerRegister — test: aes128_anon + +port = 14841 +applicationUri = urn:bobink.ServerRegister +serverCertificate = certs/ServerRegister_cert.der +serverPrivateKey = certs/ServerRegister_key.der +clientCertificate = certs/ServerRegisterClient_cert.der +clientPrivateKey = certs/ServerRegisterClient_key.der + +discoveryEndpoint = opc.tcp://localhost:14840 +registerInterval = 10 + +securityMode = SignAndEncrypt +securityPolicy = Aes128_Sha256_RsaOaep + +serverAuthMode = anonymous + +clientAuthMode = anonymous + +trustList = certs/ServerLDS_cert.der +trustList = certs/ClientFindServers_cert.der -- cgit v1.2.3