Commit Graph

616 Commits

Author SHA1 Message Date
akallabeth
0ba995655d [clang-tidy] cppcoreguidelines-init-variables 2024-02-15 11:49:16 +01:00
akallabeth
207def5c56 [clang-tidy] readability-isolate-declaration 2024-02-15 11:49:16 +01:00
akallabeth
902832ca76 [client,common] fix clipboard command line
allow both, +/- and /clipboard style options.
2024-01-29 09:23:58 +01:00
akallabeth
575d42312a [code] improve error checks on free 2024-01-19 09:57:41 +01:00
Armin Novak
9729a51cb2 [client,common] add example for use with AzuerAD accounts 2024-01-18 11:22:20 +01:00
Armin Novak
89bd55e1f6 [client,common] improve cmdline help formatter
break on listings (*)
2023-12-22 10:24:09 +01:00
Armin Novak
2db9e1e258 [client,common] sync AVC444 and AVC444v2 settings 2023-12-20 14:17:05 +01:00
Armin Novak
4b3a479557 [client,common] do not create useless copy
The command line argument does not need to be copied twice
2023-12-13 14:02:33 +01:00
Armin Novak
3043fca91d [warnings] fixed -Wdiscarded-qualifiers 2023-12-13 13:24:22 +01:00
Armin Novak
9e9ad3815d fix typos in various places 2023-12-12 19:36:54 +01:00
Armin Novak
2ce7283087 [client,common] enable gfx channel also on /gfx only 2023-11-29 17:50:16 +01:00
Stefan Heinzel
52606929fb 5726 add vsock support for client and server 2023-11-29 15:12:51 +01:00
akallabeth
5b937fb330 [client,common] fix superfluous if 2023-11-27 09:35:58 +01:00
akallabeth
45b41bae72 [client,common] split command line parser switch
* handle larger switch cases in static functions
2023-11-27 09:35:58 +01:00
Duncan Overbruck
50d05d921e [cmdline] add missing return statement 2023-11-25 17:48:01 +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
6e6559c41a [settings] fix type mismatch warnings 2023-11-24 14:54:56 +01:00
Armin Novak
81d7558184 [settings] remove obsolete generator script 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
4e438d1c3e [client] make settings opaque 2023-11-24 14:54:56 +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
925e2bf5f1 [client,common] print command line sorted
* always sort the command line arguments before listing them.
* merege implementation defined and default arguments before sorting
2023-11-07 14:11:51 +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
Mariusz Bialonczyk
c4c8571710 [cmdline] add prevent-session-lock cmdline argument and settings variable 2023-10-19 16:37:28 +02:00
akallabeth
229916d02e [settings] replace XSelectionAtom
the common command line parser should not touch unstable API settings,
so use newly introduced FreeRDP_ClipboardUseSelection
2023-10-19 14:22:19 +02:00
Armin Novak
7dc44942cd fix #9476, command line setting for floatbar 2023-10-17 21:25:07 +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
Koichiro Iwao
c177299974 [client,cmdline] Advertise Image RFX GUID when rfx-mode:image 2023-09-25 11:44:37 +02:00
akallabeth
93502f9ece [client,common] fix parsing of /list:kbd-lang 2023-09-05 10:28:36 +02:00
Marc-André Moreau
30c31d64e8 WinSCard dynamic API loading with /winscard-module cli argument 2023-08-23 12:26:27 +02:00
Armin Novak
dd9757d686 [server] add exerimental and unmaintained warnings 2023-08-21 15:42:10 +02:00
Armin Novak
10386e73bc [client,common] do not swap drive name,path for wildcards
the convenience feature to allow name,path or path,name syntax for drive
did not check for path being one of the wildcard symbols.
2023-07-31 10:12:23 +02:00
Armin Novak
49eaf78515 [client,cmdline] add options for /list:
* /list:smartcard now allows /list:smartcard:<optional> to use different
  pkcs11 modules and settings
* /list:kbd-lang now allows /list:kbd-lang:LANG_* to filter languages
2023-07-20 22:08:27 +02:00
Armin Novak
3d1bb4e1d9 [client,common] allow forcing default callbacks
All clients can implement their own callbacks for
certificate/credential/smartcard/... but there is a common (default)
implementation for all clients.
with the new setting FreeRDP_UseCommonStdioCallbacks it is now possible
to force these over the client implementation provided ones
2023-07-20 14:25:08 +02:00
akallabeth
2d85aa43fa [client,x11] add thread reading from named pipe
the named pipe input is converted to unicode and sent as keyboard input
2023-07-03 13:21:43 +02:00
akallabeth
a01f3ec5ab [client,common] allow adding a named keyboard pipe
This allows starting FreeRDP clients with a named pipe that will type in
text written to the named pipe as keyboard input
2023-07-03 13:21:43 +02:00
akallabeth
32b60ae438 [pointer] unify mouse pointer settings 2023-07-03 10:00:29 +02:00
akallabeth
3f78b3c379 [build] fix unused compiler warnings 2023-06-28 09:45:09 +02:00
Michael Saxl
d55e035260 [gateway,arm] Azure Virtual Desktop Gateway support
This PR creates a new /gateway:type:arm transport.
It depends on CJSON

The arm transport is not a transport by itself but is responsible
for getting the websocket endpoint from a configuration url derived from
the configured gateway host in the rdpw file or cmdline
2023-06-27 21:15:08 +02:00
Michael Saxl
44c1ec3276 [gateway,websocket] implement plain websocket transport
* factor out most websocket specific code parts into websocket.c
* create wst.c (Websocket Transport) as gateway transport implementation
* introduce GatewayUrl setting that holds the websocket url
* introduce GatewayHttpExtAuthBearer that holds the HTTP Bearer
* GatewayHttpExtAuthBearer can be used by both rdg and wst
2023-06-22 09:21:42 +02:00
Michael Saxl
9a5bedd8be cli parameter /gateway:bearer:bearertoken 2023-06-22 09:21:42 +02:00
Armin Novak
b05eacb99e [build] fixed compilation warnings 2023-06-08 08:13:16 +02:00
Armin Novak
a4c6b36a19 [build] fix memory sanitizer stack frame warnings 2023-06-07 09:14:45 +02:00
Armin Novak
8ec0b1262e [client,common] add /args-from:env
allow reading command line from a environment variable
2023-06-06 10:39:48 +02:00
akallabeth
7288680bdd [client,common] add clipboard feature mask
allow selectivly enabling or disabling clipboard direction and file
support
2023-05-25 16:26:39 +02:00
akallabeth
4ee6cfe13a [warnings] fix -Wmissing-prototypes 2023-05-24 08:24:32 +02:00
akallabeth
9b67ef1a87 [client,common] add command line argument /args-from
This new argument allows reading all command line options from a file or
from stdin. It is a standalone argument and can not be combined with any
other.
2023-05-22 16:17:33 +02:00
akallabeth
c950ca375c [client,common] fix value present flag check
need to check for COMMAND_LINE_VALUE_PRESENT instad of COMMAND_LINE_ARGUMENT_PRESENT
2023-04-28 07:39:35 +02:00
Armin Novak
3c3c996974 [client,common] do not insist on 32bpp for rfx/gfx 2023-04-13 14:35:51 +02:00
akallabeth
767818e97e [client,cmdline] fix gateway option parser
Options like /gateway:type:http,no-websockets,port:1234 were not
properly parsed. The `type:http,no-websockets` must be considered as
separate options with weak dependency.
Thanks to @akarl10 for pointing out this problem.
2023-04-04 09:06:05 +02:00