4143 Commits

Author SHA1 Message Date
Armin Novak
222ff42e02 [gateway,arm] do not use RDSTLS if AAD is enabled 2025-09-24 14:01:15 +02:00
Armin Novak
b32440184b [core,arm] clean up arm_fill_rdstls
* Add some comments explaining some unused variables
* Provide default domain for AuthenticateEx
2025-09-24 14:01:15 +02:00
Armin Novak
86af353847 [core,arm] fix AAD/RDSTLS auth 2025-09-24 11:16:35 +02:00
Armin Novak
5ac53c1fd8 [core,rdstls] prefer Stream_Get_* functions 2025-09-24 11:16:35 +02:00
Armin Novak
23b2c3bfae [core,nego] print unknown nego flag values
in nego_rdp_neg_rsp_flags_str print the unknown values
2025-09-24 11:16:35 +02:00
Armin Novak
62a4c33a86 [core,arm] fix rdstl authentication callback 2025-09-23 16:05:31 +02:00
Armin Novak
45c7df6d61 [core,utils] add auth type AUTH_RDSTLS 2025-09-23 16:05:31 +02:00
Armin Novak
eebd570d1b [core,arm] fix optional string redirectedUsername
json-c does return NULL from WINPR_JSON_GetObjectItemCaseSensitive if
the value is NULL, so do a check with WINPR_JSON_HasObjectItem first.
2025-09-23 12:38:23 +02:00
Armin Novak
6cfdf9e43e [json] use WINPR_JSON_GetObjectItemCaseSensitive
Prefer usage of case sensitive functions that are faster.
2025-09-23 12:38:23 +02:00
akallabeth
4694c8a50a [core,arm] extract redirected username 2025-09-19 11:09:08 +02:00
Armin Novak
7e6de56338 [core,gateway] automatically accept ARM redirection
When using ARM gateway transport auto accept the certificate provided
by server response.
2025-09-17 15:20:31 +02:00
akallabeth
28527513b0 [core,settings] do not check for NULL
TargetNet* values might be NULL on copy, do not assert them.
2025-09-15 15:15:00 +02:00
akallabeth
86e5ff550f [core,aad] set FREERDP_ERROR_CONNECT_ACCESS_DENIED
If not authentication token can be fetched set this error to indicate
why the connection failed.
2025-09-15 14:08:10 +02:00
akallabeth
2e5de43564 [core,tcp] unify setting of TCP_NODELAY 2025-09-12 09:59:30 +02:00
akallabeth
bc682c3332 [core,peer] only set TCP_NODELAY on SOCK_STREAM sockets 2025-09-12 08:41:47 +02:00
akallabeth
8b9335aa90 [CMake,libfreerdp] add pkg-config dependencies 2025-09-11 07:17:42 +02:00
David Fort
503416b532 settings: remove duplicate setting of GatewayAvdScope 2025-09-05 09:25:34 +02:00
akallabeth
ed90a55adf [core] fix BIO_puts implementations
* return -2 if not implemented
* add length sanitizion checks
2025-09-01 09:03:10 +02:00
Pascal Nowack
25e51878a1 core/redirection: Ensure stream has enough space for all parameters
While commit a08e3fc531 fixed the case,
where the stream did not have enough space for the target certificate,
it did miss out a few other cases where the remaining length is just
checked, but not increased when needed. Fix this by now also covering
the remaining cases.

Fixes: a08e3fc531
2025-09-01 06:49:15 +02:00
akallabeth
e52d024071 [core,settings] unify config path determination 2025-08-29 10:53:26 +02:00
akallabeth
83ffa524e9 [core,settings] fix ReceivedCapabilities reset 2025-08-26 12:09:09 +02:00
James Le Cuirot
51849fcb0a [aad] Respect the /server-name command line option (again)
AAD authentication fails when you give a bare IP to /v.

This was previously merged in PR #11004 but then accidentally reverted
in PR #11006.
2025-08-20 11:05:40 +01:00
Armin Novak
cbcdde7b34 [core,test] fix -Wdiscarded-qualifiers 2025-08-18 14:01:48 +02:00
akallabeth
65f18983ed [warnings] Fix format string errors
* Fix casts of format string arguments (%p requires void*)
* Fix format string to match type of arguments
2025-08-13 15:09:48 +02:00
akallabeth
c3e507a82e [winpr,wlog] Replace WLog_PrintMessage calls
Prefer WLog_PrintTextMessage to have proper format string checks in
place.
2025-08-13 15:08:01 +02:00
akallabeth
6284bba9f0 [clang-tidy] fix various warnings
* silence tidy warnings for public API symbols (we can't fix these for
  compatibility reasons)
* fix issues with casting
2025-08-11 14:11:40 +02:00
Pascal Nowack
a08e3fc531 core/redirection: Ensure stream has enough space for the certificate
Instead of checking whether enough space for the certificate is
available, simply use Stream_EnsureRemainingCapacity() to extend the
buffer size if needed. Otherwise, server redirection might fail despite
having a valid certificate.

See also: https://gitlab.gnome.org/GNOME/gnome-remote-desktop/-/issues/274
2025-08-06 09:12:43 +02:00
Armin Novak
e723f8db07 [core,proxy] fix BIO read/write methods
Introduced with ae05778644 the return of
BIO_read and BIO_write changed.
Revert this to original behaviour and fix a bug in the proxy code
2025-07-11 13:32:20 +02:00
David Fort
a7b051b590 nla: fix reading of TsCspDetail
Due to a bug in the tag comparison, ReaderName, CardName, CspName and containerName
were not read on server side during a smartcard logon, leading to incomplete settings.
2025-07-02 09:47:02 +02:00
akallabeth
ec8f2b5dde [common,settings] force reallocation on caps copy 2025-07-01 09:49:44 +02:00
akallabeth
2386bda6a0 [core,connection] fix log level of several messages
WARN messages that occur during normal operation have been downgraded to
debug.
2025-06-24 10:35:00 +02:00
akallabeth
efbc9f7cbc [common,settings] fix int casts 2025-06-24 09:38:23 +02:00
akallabeth
efe9f6fbe8 Merge pull request #11693 from akallabeth/log-fixes
Log fixes
2025-06-23 11:39:38 +02:00
akallabeth
419ad81aa7 Revert "[core,settings] default MonitorIds size to MonitorDefArray size"
This reverts commit 90a737d48f.

The array is initially empty. Only via command line option or RDP file
setting it will be populated.

Any use by a client later on requires the client to initialize the array
according to its needs
2025-06-23 11:01:55 +02:00
akallabeth
59bfe47ef7 [core,gateway] less verbose logging
Do not log HTTP_DENIED as warning, this is expected on unauthenticated
connection attempts.
2025-06-20 11:45:23 +02:00
akallabeth
bee5edeb31 [core,proxy] fix IPv4 and IPv6 length 2025-06-19 23:24:09 +02:00
Simon Nivault
5d32afcdd0 Don't bypass PubSub_OnChannelDisconnected in case of channel error 2025-06-17 18:21:50 +02:00
akallabeth
6f03b25f8e [core,nla] use wcslen for password length 2025-06-16 19:07:53 +02:00
akallabeth
e049be9837 [codec] log primitives used 2025-06-13 13:52:28 +02:00
akallabeth
ee6d95ab25 [warnings] fix unused warnings 2025-06-13 10:15:56 +02:00
akallabeth
b57281ec99 [core,timer] fix use on platforms not supported
If a platform does not support the freerdp_timer_* API let it fail
silently.
2025-06-13 09:53:24 +02:00
Armin Novak
90a737d48f [core,settings] default MonitorIds size to MonitorDefArray size 2025-06-11 10:14:15 +02:00
akallabeth
6168a7bfd1 [client,common] make all azure settings configurable 2025-06-10 16:30:06 +02:00
akallabeth
d690ea0cb2 [utils,smartcard] fix possible assertion 2025-06-10 16:27:16 +02:00
akallabeth
ff7a3729fa [core,gcc] use dynamic logger from rdpMcs 2025-06-10 11:47:38 +02:00
Armin Novak
07e39ede20 [winpr,file] Add winpr_CreateFile wrapper
Allows creation of a file HANDLE from a utf-8 name
2025-06-05 11:58:47 +02:00
akallabeth
5c2e831fa5 [core,info] Allow INFO_HIDEF_RAIL_SUPPORTED with RDP version RDP_VERSION_5_PLUS
[MS-RDPBCGR] 2.2.1.11.1.1 Info Packet (TS_INFO_PACKET) states that
INFO_HIDEF_RAIL_SUPPORTED is not understood by RDP 4.0, 5.0, 5.1,
5.2, 6.0, 6.1, 7.0, 7.1, and 8.0 servers.
Windows Server 2012 is based on windows 8.1 and already supports the
flag.
2025-06-03 18:03:48 +02:00
Armin Novak
7a89e47334 [core,transport] only free userContext if userContextSize > 0 2025-05-28 14:07:58 +02:00
akallabeth
62d86d0779 [core,timer] fix timer termination 2025-05-22 10:26:23 +02:00
Armin Novak
91d919c780 [core,rdp] Use a single GetCommonAccessToken variable
Only store the callback in rdpRdp and access it only via getter.
2025-05-21 13:09:14 +02:00