Loading tests/test_cluster_performance.cpp +16 −30 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ #endif #include <uuidp.h> #include <netplus/utils/certgen.h> #include "backend.h" #include "authdb.h" Loading Loading @@ -133,40 +134,32 @@ static std::string tempDir() { #endif } static std::string devNull() { #ifdef _WIN32 return "NUL"; #else return "/dev/null"; #endif } static bool generateTestCerts() { std::string prefix = tempDir() + "authdb_cluster_test_" + std::to_string(test_getpid()); g_keyFile = prefix + ".key"; g_certFile = prefix + ".crt"; g_keyFile = prefix + ".key.der"; // Generate RSA key + self-signed cert (paritypp QUIC expects RSA DER key) std::string cmd = "openssl req -x509 -newkey rsa:2048 " "-keyout " + g_keyFile + " -out " + g_certFile + " -days 1 -nodes -subj \"/CN=authdb-test\" -batch 2>" + devNull(); // Generate 2048-bit RSA self-signed cert using libnetplus certgen API netplus::CertGenConfig cfg; cfg.commonName = "authdb-test"; cfg.rsaBits = 2048; cfg.validDays = 1; int ret = system(cmd.c_str()); if (ret != 0) { netplus::CertKeyPair pair; if (!netplus::generateSelfSignedCert(cfg, pair)) { std::cerr << "Failed to generate test TLS certificates\n"; return false; } // Convert key to DER (paritypp/QUIC expects DER private key) std::string derKey = prefix + ".key.der"; cmd = "openssl rsa -in " + g_keyFile + " -outform DER -out " + derKey + " 2>" + devNull(); ret = system(cmd.c_str()); if (ret != 0) { std::cerr << "Failed to convert key to DER\n"; // Write PEM cert and DER key (paritypp QUIC expects DER private key) if (!netplus::writePemFile(g_certFile, pair.certPem)) { std::cerr << "Failed to write cert file\n"; return false; } if (!netplus::writeDerFile(g_keyFile, pair.keyDer)) { std::cerr << "Failed to write key file\n"; return false; } g_keyFile = derKey; return true; } Loading @@ -174,13 +167,6 @@ static bool generateTestCerts() { static void cleanupTestCerts() { if (!g_certFile.empty()) test_unlink(g_certFile.c_str()); if (!g_keyFile.empty()) test_unlink(g_keyFile.c_str()); // Also clean up PEM key std::string pemKey = g_keyFile; auto pos = pemKey.rfind(".der"); if (pos != std::string::npos) { pemKey = pemKey.substr(0, pos); test_unlink(pemKey.c_str()); } } // ═════════════════════════════════════════════════════════════ Loading Loading
tests/test_cluster_performance.cpp +16 −30 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ #endif #include <uuidp.h> #include <netplus/utils/certgen.h> #include "backend.h" #include "authdb.h" Loading Loading @@ -133,40 +134,32 @@ static std::string tempDir() { #endif } static std::string devNull() { #ifdef _WIN32 return "NUL"; #else return "/dev/null"; #endif } static bool generateTestCerts() { std::string prefix = tempDir() + "authdb_cluster_test_" + std::to_string(test_getpid()); g_keyFile = prefix + ".key"; g_certFile = prefix + ".crt"; g_keyFile = prefix + ".key.der"; // Generate RSA key + self-signed cert (paritypp QUIC expects RSA DER key) std::string cmd = "openssl req -x509 -newkey rsa:2048 " "-keyout " + g_keyFile + " -out " + g_certFile + " -days 1 -nodes -subj \"/CN=authdb-test\" -batch 2>" + devNull(); // Generate 2048-bit RSA self-signed cert using libnetplus certgen API netplus::CertGenConfig cfg; cfg.commonName = "authdb-test"; cfg.rsaBits = 2048; cfg.validDays = 1; int ret = system(cmd.c_str()); if (ret != 0) { netplus::CertKeyPair pair; if (!netplus::generateSelfSignedCert(cfg, pair)) { std::cerr << "Failed to generate test TLS certificates\n"; return false; } // Convert key to DER (paritypp/QUIC expects DER private key) std::string derKey = prefix + ".key.der"; cmd = "openssl rsa -in " + g_keyFile + " -outform DER -out " + derKey + " 2>" + devNull(); ret = system(cmd.c_str()); if (ret != 0) { std::cerr << "Failed to convert key to DER\n"; // Write PEM cert and DER key (paritypp QUIC expects DER private key) if (!netplus::writePemFile(g_certFile, pair.certPem)) { std::cerr << "Failed to write cert file\n"; return false; } if (!netplus::writeDerFile(g_keyFile, pair.keyDer)) { std::cerr << "Failed to write key file\n"; return false; } g_keyFile = derKey; return true; } Loading @@ -174,13 +167,6 @@ static bool generateTestCerts() { static void cleanupTestCerts() { if (!g_certFile.empty()) test_unlink(g_certFile.c_str()); if (!g_keyFile.empty()) test_unlink(g_keyFile.c_str()); // Also clean up PEM key std::string pemKey = g_keyFile; auto pos = pemKey.rfind(".der"); if (pos != std::string::npos) { pemKey = pemKey.substr(0, pos); test_unlink(pemKey.c_str()); } } // ═════════════════════════════════════════════════════════════ Loading