Armin Novak
6f6c0248f0
[client,common] check for relative mouse events
...
Added freerdp_client_use_relative_mouse_events to tell the client if the
coordinates should be relative or absolute
2023-12-06 10:45:01 +01:00
Armin Novak
c8b142a10f
[core,gcc] added flag RNS_UD_CS_RELATIVE_MOUSE_INPUT
2023-12-06 10:45:01 +01:00
Armin Novak
a65722166e
[codecs] fix enum warning
2023-12-06 10:45:01 +01:00
Armin Novak
7b043aed39
[settings] add c++ guards
2023-12-06 10:45:01 +01:00
akallabeth
5ffaf12748
[enum types] add *_RESERVED = 0 entries
...
eliminate warnings with initializing a struct with = { 0 } due to enum
members that do not define the value 0
2023-11-24 18:19:03 +01:00
Armin Novak
4d50d59e7e
[settings] renamed VirtualChannelCompressionFlags
2023-11-24 14:54:56 +01:00
Armin Novak
37bd7e0959
[settings] renamed VirtualChannelChunkSize
...
in [MS-RDPBCGR] it is named VCChunkSize
2023-11-24 14:54:56 +01:00
Armin Novak
3e9aad58f9
[common,settings] add documentation and missing API
...
* added freerdp_settings_are_valid for batch checks
* added missing settings function documentation
2023-11-24 14:54:56 +01:00
Armin Novak
1a5cea0023
[common,codecs] use an enum to define codecs
2023-11-24 14:54:56 +01:00
Armin Novak
704ee8bc4b
[settings] add unused values and sign correct keys
...
* add -1 as unused enum entry
* change key parameter type from size_t to SSIZE_T
2023-11-24 14:54:56 +01:00
Armin Novak
593e2bf4a9
[api] fix compiler warnings
...
check #if defined(__GNUC__)
2023-11-24 14:54:56 +01:00
akallabeth
cd4d77af86
[settings] add deprecation warnings
...
direct struct access to rdpSettings now produces warnings if not
explicitly deactiaved by defining FREERDP_SETTINGS_INTERNAL_USE
2023-11-24 14:54:56 +01:00
akallabeth
82eefe0bd1
[settings] auto generate key types from struct
...
* use enum types for settings getter/setter to have compiler check if
keys are valid
* generate enum types from struct at compile time
* CMake option WITH_OPAQUE_SETTINGS to hide rdpStruct implementation
from external projects
2023-11-24 14:54:56 +01:00
akallabeth
71a7ffa8d8
[settings] add freerdp_settings_append_string
...
this function appends a string to an existing values, takes care of
memory allocations.
2023-11-24 14:54:56 +01:00
akallabeth
a9a879c59f
[settings] remove freerdp_settings_take_string
...
this function is problematic as it allows mixing allocators.
2023-11-24 14:54:56 +01:00
akallabeth
ecc21a2cfc
[settings] add freerdp_settings_copy_item
...
convenience function to copy a value of opaque type from one settings
struct to another, cleaning up possible existing data first
2023-11-24 14:54:56 +01:00
Armin Novak
1807652975
[core,helpers] add new stringify functions
...
* freerdp_get_logon_error_info_type_ex
* freerdp_get_logon_error_info_data_ex
2023-11-20 18:00:42 +01:00
David Fort
061148f856
[nla] initial server-side remote credential guard support
...
Adds support for server-side remote credential guard in NLA. When enabled that allows
the remote user to connect without shipping credentials in TSCred packets. Instead
it will send his TGT encoded with a TGS from the remote server. This way the server
is able to populate that TGT in a local credential cache without knowing the user's
password.
The patch only treats the NLA part and does not contain the associated RDPEAR channel
that allows to have the complete interaction to retrieve new access tokens.
2023-11-20 16:17:00 +01:00
Martin Fleisz
954f6d69cf
dvc: Add field for custom interface data
2023-11-15 14:53:55 +01:00
akallabeth
13b44b8b77
[ifdef] properly check for defined
2023-11-10 09:58:23 +01:00
Armin Novak
16c4ede603
[client,common] add custom line parser option
...
freerdp_client_settings_parse_command_line_arguments_ex allows supplying
user defined options to be parsed with the default ones from
client/common.
A callback must be implemented to handle the supplied arguments.
2023-11-07 14:11:51 +01:00
Armin Novak
98a4eb77ef
[core] VirtualChannelChunkSize adjustments
...
* add CHANNEL_CHUNK_MAX_LENGTH
* remove duplicate definitions
* default to CHANNEL_CHUNK_MAX_LENGTH
2023-11-03 12:43:25 +01:00
Armin Novak
d000d9e957
[channels] add <NAME>_CHANNEL_NAME for each
...
* made <NAME>_CHANNEL_NAME defines consistent, each channel now has a
define for the library name.
* use these defines instead of string constants
2023-11-02 12:44:28 +01:00
Armin Novak
e56fcb45cb
[core,aad] move cJSON related parsing to core
...
hide cJSON parser from freerdp-client library, link privately
2023-11-02 11:30:55 +01:00
Pascal Nowack
687ed017d3
server: Add channel handling for mouse cursor channel ([MS-RDPEMSC])
...
The mouse cursor channel enables remoting of the mouse cursor (bitmap)
over a DVC. The main use case is UDP, as only virtual channels can be
transported via UDP in RDP.
2023-10-25 12:57:26 +02:00
Pascal Nowack
850afe68a0
channels/location: Fix Copyright date in header
2023-10-25 12:57:26 +02:00
Mariusz Bialonczyk
c4c8571710
[cmdline] add prevent-session-lock
cmdline argument and settings variable
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
Pascal Nowack
5a4818b89d
codec/audio: Fix order of wave format ids
...
The wave format ids in this file are sorted by their value in an
ascending order, except for the Opus value. So, fix this inconsistency.
2023-10-19 04:47:53 +02:00
Pascal Nowack
cd69b8ea63
codec/audio: Add missing format id for Opus codec
...
Id taken from [0].
[0]: https://learn.microsoft.com/en-us/windows/win32/medfound/audio-subtype-guids
2023-10-18 11:51:47 +02:00
akallabeth
535c4ef639
[warnings] deactivate GCC extension for IFCALLRESULT
2023-10-17 11:07:11 +02:00
Pascal Nowack
aac8945fe9
server: Add channel handling for location channel ([MS-RDPEL])
...
With the location channel, an RDP server can redirect the location of
the user from the client side to the server side.
The PDUs are almost the same as in the documentation, except for the
encoded types, these ones are here already parsed.
Optional values are accessed via pointers. If the pointer of a value is
NULL, then that value was not supplied by the client side.
2023-10-17 10:18:08 +02:00
Pascal Nowack
5ec5be7ac4
utils: Add helper functions to parse encoded types into regular ones
...
Some virtual channels, like the location channel use encoded types to
lower the bandwidth usage.
Add common helper functions, so that each virtual channel doesn't have
to reimplement the parser functions again and again.
2023-10-17 10:18:08 +02:00
Armin Novak
53b65ff7bd
[documentation] fix Wdocumentation warnings
2023-10-16 15:10:13 +02:00
Armin Novak
2373db233e
[server,audin] fix Wdocumentation-unknown-command
2023-10-16 15:10:13 +02:00
Armin Novak
fe28f9ed9c
[keyword,restrict] do not use for shift operations
...
shifting operations are done on a in/out buffer, so the restrict keyword
is not appropriate for that.
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
a41360e3b0
[codec,rfx] added missing RFX encoder API calls
2023-10-07 21:26:27 +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
akallabeth
86acc8d31a
[warnings] fixed reserved-identifer warnings
2023-09-25 08:39:01 +02:00
akallabeth
635626be12
[client,common] avd related keys to rdp file parser
2023-09-21 10:30:09 +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
ichaoX
48a55aa95b
[client,common] fix freerdp_client_pen_cancel_all
...
* fix freerdp_client_pen_cancel_all
* fix FreeRDPPenEventType
2023-09-13 15:57:59 +02:00
akallabeth
9a9db5b7f3
[codec,progressive] expose progressive simple
...
server implementations might require serializing messages to a simple
tile, so expose this function.
2023-09-05 11:40:09 +02:00