Skip to content

Commit 9800792

Browse files
oidc: fix empty error reporting (#20681)
1 parent c59858d commit 9800792

File tree

2 files changed

+13
-14
lines changed

2 files changed

+13
-14
lines changed

ydb/mvp/oidc_proxy/extension_manager.cpp

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,19 @@ void TExtensionManager::SetRequest(NHttp::THttpIncomingRequestPtr request) {
2424

2525
void TExtensionManager::SetOverrideResponse(NHttp::TEvHttpProxy::TEvHttpIncomingResponse::TPtr event) {
2626
ExtensionCtx->Params->HeadersOverride = MakeHolder<NHttp::THeadersBuilder>();
27-
if (!event) {
28-
ExtensionCtx->Params->ResponseError = "Timeout while waiting for whoami info";
29-
} else if (!event->Get()->Response) {
30-
ExtensionCtx->Params->ResponseError = event->Get()->GetError();
31-
} else {
32-
auto& response = event->Get()->Response;
33-
ExtensionCtx->Params->StatusOverride = response->Status;
34-
auto headers = NHttp::THeaders(response->Headers);
35-
for (const auto& header : headers.Headers) {
36-
ExtensionCtx->Params->HeadersOverride->Set(header.first, header.second);
37-
}
38-
ExtensionCtx->Params->MessageOverride = response->Message;
39-
ExtensionCtx->Params->BodyOverride = response->Body;
27+
ExtensionCtx->Params->ResponseError = event ? event->Get()->GetError() : "Timeout while waiting info";
28+
29+
if (!event || !event->Get()->Response)
30+
return;
31+
32+
auto& response = event->Get()->Response;
33+
ExtensionCtx->Params->StatusOverride = response->Status;
34+
auto headers = NHttp::THeaders(response->Headers);
35+
for (const auto& header : headers.Headers) {
36+
ExtensionCtx->Params->HeadersOverride->Set(header.first, header.second);
4037
}
38+
ExtensionCtx->Params->MessageOverride = response->Message;
39+
ExtensionCtx->Params->BodyOverride = response->Body;
4140
}
4241

4342
void TExtensionManager::AddExtensionWhoami() {

ydb/mvp/oidc_proxy/oidc_proxy_ut.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1726,7 +1726,7 @@ Y_UNIT_TEST_SUITE(Mvp) {
17261726
UNIT_ASSERT_VALUES_EQUAL(json[ORIGINAL_USER_TOKEN], TProfileServiceMock::VALID_USER_TOKEN);
17271727
UNIT_ASSERT(json.Has(EXTENDED_INFO));
17281728
UNIT_ASSERT(json[EXTENDED_ERRORS].Has("Ydb"));
1729-
UNIT_ASSERT_VALUES_EQUAL(json[EXTENDED_ERRORS]["Ydb"]["ClientError"], "Timeout while waiting for whoami info");
1729+
UNIT_ASSERT_VALUES_EQUAL(json[EXTENDED_ERRORS]["Ydb"]["ClientError"], "Timeout while waiting info");
17301730
UNIT_ASSERT(!json[EXTENDED_ERRORS].Has("Iam"));
17311731
}
17321732

0 commit comments

Comments
 (0)