From 21087904ebb68820e4c09320882ca5bf4c541c92 Mon Sep 17 00:00:00 2001 From: Gerorge Liao Date: Tue, 11 Feb 2025 11:19:30 +0100 Subject: [PATCH] [ssl cert] restore the accidentally deleted X509_set_version call. This caused slightly malformed cert format but it somehow passed the grpc c++ client check. On the other side, it failed the grpc dart client check. As a result, this change fixed the gui can not connect server issue. --- src/cert/ssl_cert_provider.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cert/ssl_cert_provider.cpp b/src/cert/ssl_cert_provider.cpp index 3321c65f7b..2119fef938 100644 --- a/src/cert/ssl_cert_provider.cpp +++ b/src/cert/ssl_cert_provider.cpp @@ -178,8 +178,9 @@ class X509Cert if (cert == nullptr) throw std::runtime_error("Failed to allocate x509 cert structure"); - set_random_serial_number(cert.get()); + X509_set_version(cert.get(), 2); // 0 index based, 2 amounts to 3 + set_random_serial_number(cert.get()); X509_gmtime_adj(X509_get_notBefore(cert.get()), 0); // Start time: now const long valid_duration_sec = cert_type == CertType::Root ? 3650L * 24L * 60L * 60L : 365L * 24L * 60L * 60L; // 10 years for root certicicate and 1 year for server and client certificate