From 3c594f8d5c2b091a20f26bb651394592a5d06abf Mon Sep 17 00:00:00 2001 From: Mykhailo Lohvynenko Date: Tue, 12 Aug 2025 13:25:46 +0300 Subject: [PATCH 1/2] config: use iam main public server url for public service handler This patch adds a new entry to the IAMConfig, to make it possible to use the IAM main public server URL for the public service handler. Signed-off-by: Mykhailo Lohvynenko Reviewed-by: Mykola Kobets Reviewed-by: Oleksandr Grytsov --- src/config/config.cpp | 3 ++- src/config/config.hpp | 3 ++- src/iamclient/publicnodeclient.cpp | 2 +- tests/config/config_test.cpp | 6 ++++-- tests/iamclient/iamclient_test.cpp | 5 +++-- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/config/config.cpp b/src/config/config.cpp index f07360f..756142d 100644 --- a/src/config/config.cpp +++ b/src/config/config.cpp @@ -63,7 +63,8 @@ IAMConfig ParseIAMConfig(const common::utils::CaseInsensitiveObjectWrapper& obje { return IAMConfig { object.GetValue("IAMPublicServerURL"), - object.GetValue("IAMProtectedServerURL"), + object.GetValue("IAMMainPublicServerURL"), + object.GetValue("IAMMainProtectedServerURL"), object.GetValue("CertStorage"), object.GetValue("OpenPort"), object.GetValue("SecurePort"), diff --git a/src/config/config.hpp b/src/config/config.hpp index 3204cc7..9bba092 100644 --- a/src/config/config.hpp +++ b/src/config/config.hpp @@ -45,7 +45,8 @@ struct VChanConfig { */ struct IAMConfig { std::string mIAMPublicServerURL; - std::string mIAMProtectedServerURL; + std::string mIAMMainPublicServerURL; + std::string mIAMMainProtectedServerURL; std::string mCertStorage; int mOpenPort; int mSecurePort; diff --git a/src/iamclient/publicnodeclient.cpp b/src/iamclient/publicnodeclient.cpp index 26107f9..489431b 100644 --- a/src/iamclient/publicnodeclient.cpp +++ b/src/iamclient/publicnodeclient.cpp @@ -28,7 +28,7 @@ Error PublicNodeClient::Init( return err; } - mUrl = publicServer ? cfg.mIAMPublicServerURL : cfg.mIAMProtectedServerURL; + mUrl = publicServer ? cfg.mIAMMainPublicServerURL : cfg.mIAMMainProtectedServerURL; return ErrorEnum::eNone; } diff --git a/tests/config/config_test.cpp b/tests/config/config_test.cpp index 649bb5d..109ea14 100644 --- a/tests/config/config_test.cpp +++ b/tests/config/config_test.cpp @@ -49,7 +49,8 @@ class ConfigTest : public ::testing::Test { "ImageStoreDir": "/path/to/images", "IAMConfig": { "IAMPublicServerURL": "localhost:8090", - "IAMProtectedServerURL": "localhost:8091", + "IAMMainPublicServerURL": "main:8090", + "IAMMainProtectedServerURL": "main:8091", "CertStorage": "iam", "OpenPort": 8080, "SecurePort": 8081 @@ -96,7 +97,8 @@ TEST_F(ConfigTest, ParseConfig) EXPECT_EQ(config.mImageStoreDir, "/path/to/images"); EXPECT_EQ(config.mIAMConfig.mIAMPublicServerURL, "localhost:8090"); - EXPECT_EQ(config.mIAMConfig.mIAMProtectedServerURL, "localhost:8091"); + EXPECT_EQ(config.mIAMConfig.mIAMMainPublicServerURL, "main:8090"); + EXPECT_EQ(config.mIAMConfig.mIAMMainProtectedServerURL, "main:8091"); EXPECT_EQ(config.mIAMConfig.mCertStorage, "iam"); EXPECT_EQ(config.mIAMConfig.mOpenPort, 8080); EXPECT_EQ(config.mIAMConfig.mSecurePort, 8081); diff --git a/tests/iamclient/iamclient_test.cpp b/tests/iamclient/iamclient_test.cpp index 5ce41cb..6536f70 100644 --- a/tests/iamclient/iamclient_test.cpp +++ b/tests/iamclient/iamclient_test.cpp @@ -26,8 +26,9 @@ class IamClientTest : public Test { public: IamClientTest() { - mConfig.mIAMConfig.mIAMPublicServerURL = "localhost:8002"; - mConfig.mIAMConfig.mIAMProtectedServerURL = "localhost:8002"; + mConfig.mIAMConfig.mIAMPublicServerURL = "localhost:8002"; + mConfig.mIAMConfig.mIAMMainPublicServerURL = "localhost:8002"; + mConfig.mIAMConfig.mIAMMainProtectedServerURL = "localhost:8002"; } protected: From 8e2a0d4912caab45bee53971b7872e9bdf7d0a87 Mon Sep 17 00:00:00 2001 From: Mykhailo Lohvynenko Date: Tue, 12 Aug 2025 22:40:56 +0300 Subject: [PATCH 2/2] communication: add debug log for cm secured channel reconnection This patch adds a debug log on CM secured channel reconnection attempts. Signed-off-by: Mykhailo Lohvynenko Reviewed-by: Mykola Kobets Reviewed-by: Oleksandr Grytsov --- src/communication/cmconnection.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/communication/cmconnection.cpp b/src/communication/cmconnection.cpp index ca8657f..bbc1ffa 100644 --- a/src/communication/cmconnection.cpp +++ b/src/communication/cmconnection.cpp @@ -177,6 +177,8 @@ void CMConnection::RunSecureChannel() mCondVar.wait_for(lock, cConnectionTimeout, [this]() { return mShutdown.load(); }); + LOG_DBG() << "Reconnect CM secure channel"; + continue; }