From 86e5ff550f0442283ccee7a75e3b5906fe24719e Mon Sep 17 00:00:00 2001 From: akallabeth Date: Mon, 15 Sep 2025 14:07:33 +0200 Subject: [PATCH 1/2] [core,aad] set FREERDP_ERROR_CONNECT_ACCESS_DENIED If not authentication token can be fetched set this error to indicate why the connection failed. --- libfreerdp/core/freerdp.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index 791908021..02265eb9f 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -836,6 +836,9 @@ static BOOL freerdp_common_context(rdpContext* context, AccessTokenType tokenTyp } va_end(ap); + if (!rc) + freerdp_set_last_error_if_not(context, FREERDP_ERROR_CONNECT_ACCESS_DENIED); + return rc; } From 28527513b03a24727bbc07242e95b7416ba234c4 Mon Sep 17 00:00:00 2001 From: akallabeth Date: Mon, 15 Sep 2025 15:14:22 +0200 Subject: [PATCH 2/2] [core,settings] do not check for NULL TargetNet* values might be NULL on copy, do not assert them. --- libfreerdp/core/settings.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/libfreerdp/core/settings.c b/libfreerdp/core/settings.c index 072d40aed..3dbcb5e13 100644 --- a/libfreerdp/core/settings.c +++ b/libfreerdp/core/settings.c @@ -1401,8 +1401,6 @@ static BOOL freerdp_settings_int_buffer_copy(rdpSettings* _settings, const rdpSe freerdp_settings_get_pointer_array(settings, FreeRDP_TargetNetAddresses, i); const UINT32* port = freerdp_settings_get_pointer_array(settings, FreeRDP_TargetNetPorts, i); - WINPR_ASSERT(address); - WINPR_ASSERT(port); if (!freerdp_settings_set_pointer_array(_settings, FreeRDP_TargetNetAddresses, i, address)) goto out_fail;