Commit Graph

213 Commits

Author SHA1 Message Date
akallabeth
02f59fa3ae [client,file] fix missing NULL check 2025-02-14 13:26:02 +01:00
Armin Novak
e9fd6a33b6 [client,common] fix rdp file parser 2025-02-12 09:50:56 +01:00
akallabeth
45bb63652f [client,common] split freerdp_client_write_rdp_file_buffer 2025-02-11 10:14:56 +01:00
akallabeth
44f5b6c409 [warnings] fix various clang warnings 2025-02-04 11:22:00 +01:00
akallabeth
6701359cc1 [warnings] fix integer casting
* use WINPR_ASSERTING_INT_CAST where possible
* clean up client code
2024-12-19 12:45:23 +01:00
akallabeth
cd1330be80 [client,common] const correct variable declaration 2024-11-22 11:01:01 +01:00
akallabeth
78acedb40e [warnigns] fix Wshorten-64-to-32 2024-11-11 10:22:37 +01:00
akallabeth
aa954d9be9 [warnings] fix various compiler warnings 2024-10-29 15:49:43 +01:00
akallabeth
9caf38bbb6 [warnings] unify CommandLineParseCommaSeparatedValues
CommandLineParseCommaSeparatedValues does some internal hack to allow
the allocated char** to be cleaned up by free.
This enforces compiler warnings as the pointer types do not match.
Use a new free function CommandLineParserFree instead
2024-10-22 21:11:58 +02:00
akallabeth
485ebe03bf [*printf] cast return to void 2024-10-01 13:04:57 +02:00
akallabeth
26003e59cc [va_list] initialize with ={0}; 2024-09-24 11:06:18 +02:00
akallabeth
239440e28d [warnings] remove or comment unused macros 2024-09-20 18:49:38 +02:00
akallabeth
0d5bc92a2b [warnings] fix apple iOS/macos 2024-09-15 19:47:13 +02:00
akallabeth
a1cef8dd85 [warnings] silence and fix unused results 2024-09-14 21:29:28 +02:00
akallabeth
384cd284d8 [warnings] use WINPR_CAST_CONST_AWAY
on locations that require (ugly) const to non const casts usw
WINPR_CAST_CONST_AWAY to do proper compiler specific casts to avoid
warnings
2024-09-11 23:41:50 +02:00
akallabeth
f7fd817d1c [warnings] fix redundant casting 2024-09-03 12:24:51 +02:00
akallabeth
9c9d74e920 [warnings] fix redundant casts 2024-08-29 12:03:09 +02:00
akallabeth
1d33095500 [warnings] fix cert-err33-c
Fix unused return values, cast to void if on purpose
2024-08-29 10:19:27 +02:00
Armin Novak
1f95865907 [client,common] ignore empty strings for channels
Ignore empty strings when parsing redirection channel arguments
2024-08-14 14:31:58 +02:00
akallabeth
a1d8754f1f [core,autodetect] abort on unexpected message. 2024-05-14 11:07:50 +02:00
Martin Fleisz
f62a61886f common: Parse actual value of redirectlocation rdp file setting 2024-04-04 21:20:39 +02:00
akallabeth
c22d9844a4 [client,common] fix incompatible-pointer-types
use a union to cast to expected types.
2024-03-18 13:27:32 +01:00
akallabeth
f764b0a854 [channels,location] implement client channel
* provide client side callbacks to implement platform specific location
  backend glue code
2024-03-11 13:22:12 +01:00
akallabeth
d7ebec5a65 [tidy] move loop variable declaration to loop 2024-02-22 12:31:50 +01:00
akallabeth
f69e1fe697 [clang-tidy] readability-duplicate-include 2024-02-15 11:49:16 +01:00
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
ba8cf8cf21 [build] fix Wmismatched-deallocator warnings
With custom malloc function attributes the fail path in the _New
functions produces warnings due to allocator mismatches. Silence them.
2024-02-05 08:16:55 +01:00
Armin Novak
6e6559c41a [settings] fix type mismatch warnings 2023-11-24 14:54:56 +01:00
akallabeth
4e438d1c3e [client] make settings opaque 2023-11-24 14:54:56 +01:00
Martin Fleisz
13d35c8a98 client/common: Return NULL/-1 if settings value was not set 2023-11-23 18:05:19 +01:00
Armin Novak
25035b094d [client,common] support redirectlocation in rdp files 2023-11-22 13:01:10 +01:00
Martin Fleisz
ad44573164 cient/common: Apply GatewayCredentialsSource setting read from rdp files 2023-11-09 13:54:20 +01:00
Armin Novak
60390ea40c [pragma] unify compiler diagnostics 2023-10-16 15:10:13 +02:00
Armin Novak
53b65ff7bd [documentation] fix Wdocumentation warnings 2023-10-16 15:10:13 +02:00
akallabeth
635626be12 [client,common] avd related keys to rdp file parser 2023-09-21 10:30:09 +02:00
Armin Novak
117fc17292 [client,common] fix leak in rdp parser 2023-07-26 20:26:59 +02:00
fifthdegree
16902e4c20 Parse arm and aad options in rdp(w) files
- enablerdsaadauth
- resourceprovider
2023-07-26 09:44:30 +02:00
Armin Novak
10e010329c [client,file] add WebAuthN rdp file parsing support 2023-07-10 10:45:28 +02:00
akallabeth
b033259c7a [client,common] fix rdp file key names 2023-07-05 10:47:45 +02:00
akallabeth
c74a18c622 [client,file] refactor RDP file parser
* Only print warnings for settings parsed but support not compiled in
* Use constants for key values
2023-07-04 10:04:35 +02:00
akallabeth
a5b42f0f84 [includes] untangled circular includes 2023-03-15 08:22:23 +01:00
akallabeth
a360f1ca8c [build] fix a few compiler warnings 2023-03-13 13:04:45 +01:00
Martin Fleisz
093bf79837 common:: Fix const issues with current rdp file API 2023-03-08 14:08:34 +01:00
Martin Fleisz
ee06d70bfe common: Fix handling of networkautodetect rdp file setting
According to
https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/rdp-files#session-behavior
both, `bandwidthautodetect` and `networkautodetect` are now enabled with
a value of 1 and disabled with a value of 0.

Earlier rdp files interpreted the `networkautodetect` setting inverted.
2023-03-07 15:42:40 +01:00
Martin Fleisz
b3ae857805 common: Minor code cleanup of rdp file handling
This PR contains various changes to rdp file handling:

The old code had a strange mixture of handling settings. When loading a
file every line of the file was cached in `rdpFile::lines`. Sometimes
functions would operate on these cached lines, sometimes they would
operate on the actual values in the `rdpFile` instance.

On the other hand if an `rdpFile` instance was created from
`rdpSettings`, this line cache simply did not exist, causing functions
to behave differently, depending on whether the instance was created by
reading a file or by populating it from `rdpSettings`.

The new implementation has now a single way of accessing values (
`find_integer_entry`/`find_string_entry`) and the `rdpFile::lines` data
is used to handle unknown settings.

The PR also adds some argument checking and assertions.
2023-03-07 15:42:40 +01:00
Martin Fleisz
912b30ba06 common: Fix parsing of rdp file domain info
`freerdp_parse_username` always returns non-NULL domain information when
called. This currently results in `settings->domain` being overridden in
every case, even though we might have read domain information from the
file before.

This PR fixes this issue by checking if domain information was present
in the file and if not use the parsed domain informatin.
2023-03-06 11:41:22 +01:00
Armin Novak
57698ed1f9 [client,common] fixed possible memory leak 2023-02-03 11:08:46 +01:00
akallabeth
82ba9ede9c [freerdp] use FREERDP_/UWAC_/RDTK_ prefix for conditional headers 2023-01-10 17:38:00 +01:00
Armin Novak
3e3ed445b4 [client,file] add rdgiskdcproxy to settings
Adds a new option FreeRDP_KerberosRdgIsKdc to manually set the KDC url
to the gateway server url
2022-12-06 14:07:53 +01:00