Commit Graph

3350 Commits

Author SHA1 Message Date
Mariusz Bialonczyk
21f7bd37cf [input] input_update_last_event() and variables 2023-10-19 16:37:28 +02:00
akallabeth
9ebbefa5fe [settings] remove unused extensions
The extensions from the unstable API zone were unused, so remove them
2023-10-19 14:22:19 +02:00
akallabeth
4d99b4ff9b [settings] add ClipboardUseSelection 2023-10-19 14:22:19 +02:00
David VERON
63e1863c9a fixes rdp_read_info_null_string api
Removed buggy "isNullTerminated" parameter, as RDP specs tells
that cbLen includes the nullTerminator if there is one.
2023-10-16 15:18:52 +02:00
Armin Novak
c91a250623 [warnings] add WINPR_FORMAT_ARG
with WINPR_FORMAT_ARG format strings are marked for MSVC to avoid
warnings
2023-10-16 15:10:13 +02:00
Armin Novak
53b65ff7bd [documentation] fix Wdocumentation warnings 2023-10-16 15:10:13 +02:00
Armin Novak
07543a6042 [warnings] fix various warnings
* missing const in casts
* missing static for functions
* missing WINPR_ATTR_FORMAT_ARG for printf like functions
2023-10-16 15:10:13 +02:00
Armin Novak
138d3df028 [core,gcc] parse CS_UNUSED1 message
parse message to avoid log entries server side for this kind of PDU
2023-10-13 16:05:27 +02:00
akallabeth
4df4404faa [core,input] add qoe event handling 2023-10-13 16:05:27 +02:00
akallabeth
20e15ac326 [core] added relative mouse event support 2023-10-13 16:05:27 +02:00
akallabeth
1f7bc15bb1 [settings] add HasQoeEvent 2023-10-13 16:05:27 +02:00
akallabeth
910e3b9fb4 [settings] added new setting for HasRelativeMouseEvent 2023-10-13 16:05:27 +02:00
akallabeth
002b27f2e5 [core] add RDP_VERSION_10_12 2023-10-13 16:05:27 +02:00
akallabeth
80122c1784 [core,aad] cast constants to DWORD 2023-10-10 22:59:53 +02:00
David Fort
a8c5926154 [server,drdynvc] use a hashtable for dynamic channels instead of an arrayList
This speeds up all operations around dynamic channels.
2023-10-09 10:47:34 +02:00
David Fort
ff303a9bda [core,nla] Inject received TSCredentials in the peer's settings
The RDP client sends TSCredentials so that the server can reuse these credentials. This
patch stores these values in the peer's rdpSettings in the corresponding fields.
It handles TSPasswordCreds for user/domain/password connection but also TSSmartCardCreds
when the users has connected with a smartcard.
2023-10-04 09:22:49 +02:00
David Fort
3c18a9980f [client,win32] implement connection to child session
Under windows you can connect to a child session by requesting a named pipe to
the local server, and then do some RDP on this named pipe.
The protocol is like for /vmconnect with CredSSP, then Nego and then the "normal"
workflow for a connection. For CredSSP we force the usage of NTLM for the Negociate
SSPI, and the credentials are empty.
2023-09-27 11:57:49 +02:00
David Fort
0638c382f9 [core,nla] correctly print the value of earlyUserAuth
The log was printing the previous value instead of the value that is set.
2023-09-27 11:57:49 +02:00
akallabeth
86acc8d31a [warnings] fixed reserved-identifer warnings 2023-09-25 08:39:01 +02:00
akallabeth
0595f2f7fe [core,gateway] fix tautological check in arm 2023-09-21 10:57:43 +02:00
akallabeth
635626be12 [client,common] avd related keys to rdp file parser 2023-09-21 10:30:09 +02:00
akallabeth
7746c8f4ae [core,orders] fix #9402 polyline order processing 2023-09-21 10:00:19 +02:00
akallabeth
1d25242eac [core,transport] fix evaluation of nla errors
if there is no rdpNla fall back to default error password expired.
2023-09-21 10:00:19 +02:00
akallabeth
e5ad90627b [gateway,arm] fix abort condition for retries 2023-09-20 09:29:45 +02:00
akallabeth
c1db0029d9 [core,update] fix possible leak on gdi reset 2023-09-20 09:29:45 +02:00
Armin Novak
6399635abf [core] fix leaks reported in #9400 2023-09-19 09:35:52 +02:00
David Fort
190ecf640f [drdynvc] improvements of server-side DRDYNVC
This patch prepares the reading of the dynamic channel version so that next we
can take in account this to take advantage of advanced features in last versions
(compressions or priorities).
The patch also implement notifying the VCM event when the dynamic channel becomes ready
so that users of FreeRDP can just do calls to WTSVirtualChannelManagerGetDrdynvcState
when the channel event is set (no blind calls).
2023-09-18 13:05:44 +02:00
Armin Novak
4152ce5dee [gateway,arm] fix input string length check 2023-09-15 11:24:21 +02:00
akallabeth
be7f2979ee [gateway,http] const correct HttpResponse 2023-09-14 17:38:08 +02:00
akallabeth
bd595d363d [arm] add retry callback for transport
If the connection is blocked due to some VM requiring spinup time before
being ready to use call the newly created callback RetryDialog.
2023-09-14 12:02:26 +02:00
akallabeth
ab111b07bc [gateway,http] add a '\0' terminator to body read
ensure that every string read by the http functions is '\0' terminated.
2023-09-14 12:02:26 +02:00
akallabeth
13648c84af [gateway,arm] restructure AVD handling
* Split handling into smaller functions
* Move bad request retry out of request function to avoid memory growth
2023-09-14 12:02:26 +02:00
Eduard Mielieshkin
87529fe5ac changed the log messages 2023-09-14 12:02:26 +02:00
Eduard Mielieshkin
a785fd9c4a formatted using clang-format 2023-09-14 12:02:26 +02:00
Eduard Mielieshkin
4dcf35c0cb PoC: waiting until an AVD instance is up 2023-09-14 12:02:26 +02:00
David Fort
1afaaa82d3 [core,arm] Various fixes and adjustements for #9363
Treat the case where the publicIpAddress is there but empty.
Don't try RDSTLS if the password has not been been provided.
When RDSTLS is what we will do, disengage all the other security kinds.
2023-09-14 09:00:46 +02:00
Armin Novak
5f8f69512b [core,orders] fix reading order number field
the field for delta rectangles/points/... are only transmitted if they
changed from the previous order of the same type. So keep the original
value and update only if a new one is read.
2023-09-04 12:24:57 +02:00
Armin Novak
12e6bbe13b [core,orders] log order fields not in packet 2023-09-04 11:32:35 +02:00
Armin Novak
1a1f422d79 [core,orders] unify delta point buffer allocation 2023-09-04 11:32:35 +02:00
Armin Novak
36b58c0688 [core,orders] abort if required filed is not found 2023-09-04 11:32:35 +02:00
Armin Novak
618102b28f [core,orders] update log message 2023-09-04 11:32:35 +02:00
David Fort
8a39859612 [arm] various improvements
This patch moves the ARM configuration before starting the connection process, so
that we can do some provisioning of the FreeRDP settings with the items retrieved
from Azure.
Most notably that allows us to connect directly using RDSTLS security.
2023-09-04 10:24:56 +02:00
akallabeth
ce41d514ab [core,info] fix rdp_read_info_string
* Use proper freerdp_set_string* functions to set string
* In case of failure clean up existing string values
2023-09-02 07:56:21 +02:00
akallabeth
2102fa907a [core,connection] use dynamic logger rdp->log
for state transition logging use dynamic logger instead.
2023-09-02 07:56:21 +02:00
akallabeth
54021b50b0 [core,peer] fix initial state transitions
update initial state transitions according to [MS-RDPBCGR]
the diagram is misleading, some of the text below ambigious, but
1.3.1.1 Connection Sequence phase 10 description lists the dependencies
of server initiated messages.
2023-09-02 07:56:21 +02:00
akallabeth
4461219497 [core,rdp] make monitor layout PDU optional
the PDU might arrive or not, do not get stuck if not.
2023-09-02 07:56:21 +02:00
Armin Novak
1bbed81041 [core,orders] fix checks for multi opaque rect 2023-08-28 13:07:28 +02:00
akallabeth
60dd48e698 [api] fix integer overflow warnings 2023-08-25 14:36:05 +02:00
akallabeth
bb5345c60e [freerdp,api] add FREERDP_ENTRY_POINT
C requires prototypes or compilers will complain about them missing. Our
library entry points do not have such, therefore add the macro
FREERDP_ENTRY_POINT which declares the function prototype automatically
before the function.
2023-08-25 14:36:05 +02:00
akallabeth
4e824b243f [winpr] add WINPR_ATTR_FORMAT_ARG
this macro declares the function argument (pos,arg) to be a printf
style format string and enables compiler checks for that.
2023-08-25 12:56:36 +02:00