Commit Graph

2663 Commits

Author SHA1 Message Date
akallabeth
2b53807256 [primitives] fix warnings and restricted use 2025-03-10 22:13:46 +01:00
akallabeth
0bb49c94c9 [restrict] unify restrict keyword usage 2025-03-10 18:48:16 +01:00
akallabeth
cb8176d2e7 [channels,rdpsnd] fix warnings, add new fields
* Fix warnings in client and server channels
* Add some data read from packets to exported fields of RdpsndServerContext
2025-03-07 10:10:02 +01:00
akallabeth
5139a3a3e5 Merge pull request #11296 from akallabeth/invert-3x-deprecated
Invert 3x deprecated
2025-03-06 16:00:44 +01:00
akallabeth
3186977e15 [cmake] Invert WITH_FREERDP_3x_DEPRECATED
API breaking change, with this logic the symbol needs to be manually
defined by an API user. So, to fix this:
* Rename to DROP_FREERDP_3x_DEPRECATED
* Invert logic, so a undefined value enables the symbols
2025-03-06 15:30:26 +01:00
akallabeth
4466ee6141 [locale] add freerdp_detect_keyboard_layout_from_locale
This new function allows detecting the default keyboard layout from a
locale string of form de_AT or similar
2025-03-06 11:58:10 +01:00
akallabeth
7496f6e42c Merge pull request #11273 from akallabeth/cleanups
[client,x11] implement keyboard mapping
2025-03-05 14:07:12 +01:00
akallabeth
d03b4b91d5 [cmake,freerdp] add WITH_FREERDP_3x_DEPRECATED
This new CMake option (ON by default) allows building the library with
all symbols deprecated during 3.x release cycle disabled.
This allows compatibility testing external applications for future
FreeRDP 4.x support
2025-03-04 13:26:45 +01:00
akallabeth
9b1c016371 [freerdp,codec] add freerdp_image_fill_ex 2025-03-04 12:42:34 +01:00
akallabeth
e2e6e9fd85 [freerdp,api] GCC/clang optimized IFCALLRESULT
Use statement expressions to add a log message for unset function
pointers
2025-03-04 12:42:31 +01:00
akallabeth
5faf0149c2 [server,shadow] readd multi rect BitmapUpdate support
* Partially revert 1f83198bb1
* Introduce new /bitmap-compat command line option for shadow-server
* Default to send multi rectangle BitmapUpdate
2025-02-28 11:19:36 +01:00
Armin Novak
f24a562f1e [utils,smartcard] check output buffer length
check the resulting length to the one preallocated.
2025-02-26 18:24:51 +01:00
akallabeth
15186fe4cb [freerdp] fix documentation strings 2025-02-17 11:16:22 +01:00
akallabeth
e259eee0df [macro] fix use of WINPR_DEPRECATED 2025-02-17 11:15:46 +01:00
akallabeth
a44985c823 [core,freerdp] send MCS Disconnect Provider Ultimatum PDU
On client side connection termination send a [MS-RDPBCGR] 1.3.1.4.1
User-Initiated on Client disconnect PDU
2025-02-17 10:36:03 +01:00
akallabeth
c375ed6cb1 [utils,aad] fix freerdp_utils_aad_get_wellknown export 2025-02-14 11:29:35 +01:00
akallabeth
aff557c768 [client,cmdline] fix documentation typo 2025-02-11 17:21:04 +01:00
akallabeth
9f8ed06f9a [client,cmdling] use a typedef for callback function
typedef freerdp_command_line_handle_option_t to have a common type for
callback functions
2025-02-11 12:21:41 +01:00
akallabeth
0c0e45c6d0 [core,freerdp] New API freerdp_presist_credentials
A new function that allows persisting runtime changes to credential
settings so reconnect/redirect/... does not lose current values.
2025-02-11 12:08:55 +01:00
akallabeth
7109df257a [locale,keyboard] fix enum limits 2025-02-10 09:31:49 +01:00
akallabeth
567887fbb0 [core,settings] Fix MONITOR_DEF settings
* Make FreeRDP_MonitorLocalShiftX and FreeRDP_MonitorLocalShiftY signed
* Add function freerdp_settings_set_monitor_def_array_sorted to proplery
  align the MONITOR_DEF array according to RDP requirements
2025-01-19 15:30:56 +01:00
oleg0421
7b4a903f66 MS-RDPECAM: VAAPI h264 encoding 2025-01-14 04:32:12 -08:00
akallabeth
c24f81c8ad [freerdp] add missing documentation 2025-01-13 10:32:36 +01:00
akallabeth
99cfbebe63 [primitives] fix documentation 2025-01-12 16:08:06 +01:00
akallabeth
3a6994cd38 [primitives] expose primitives_get_by_type 2025-01-10 12:50:58 +01:00
akallabeth
cf392cdfe1 [primitives] add primtives_hint_str 2025-01-10 12:50:55 +01:00
akallabeth
691092306e [primitives,yuv] fix RGBToYUV444_8u_P3AC4R
make arguments const where possible
2025-01-09 23:41:32 +01:00
akallabeth
ed5ac8e82e [primitives] add primitives_avc444_frame_type_str 2025-01-09 23:41:17 +01:00
akallabeth
3092313d49 [channes,rdpdr] use NTSTATUS for IoStatus
the IoStatus will hold NTSTATUS values but is defined unsigned in
[MS-RDPEFS] whereas NTSTATUS is defined as signed integer. Ignore the
spec here and just treat it as signed (eliminates warnings and twos
complement will ensure the values are equal in bit representation)
2025-01-07 10:11:21 +01:00
akallabeth
cc934795e4 [warnings] fix integer casting
* use asserting casts to detect overflows or sign conversions
* code cleanup for issues uncovered by casts
2025-01-01 12:58:34 +01:00
gpotter2
fb90ba80e9 Fix gfxredir_server.. undeclared here 2024-12-25 21:29:00 +01:00
akallabeth
c29e93f4b2 [locale,keyboard] deprecate keyboard mapping
* deprecate keyboard mapping functions:
  * not context sensitive bug app global
  * only work reliable with XKB files
* expose functions to parse and remap RDP scancodes
2024-12-17 12:52:42 +01:00
akallabeth
4ac060e4e9 [settings] improve documentation of API 2024-12-15 10:32:04 +01:00
akallabeth
a3db26c57a [warnings] fix cast warnings 2024-12-10 17:26:37 +01:00
akallabeth
f25be351b1 [core,gateway] Make tenantid use optional 2024-12-10 15:13:16 +01:00
Armin Novak
f17c1830b7 [aad,avx] improve AzureAD support
* New setting GatewayAzureActiveDirectory to fetch wellknown from
* Clean up command line arguments, rename to make function better
  understandable
2024-12-10 15:12:41 +01:00
Armin Novak
6506fb6b43 [core,gateway] add wellknown support for arm-transport
* fetch wellknown JSON for arm transport
* use dynamic logger for arm transport
2024-12-10 15:12:38 +01:00
akallabeth
1905117465 [core,aad] unify client id
* use a setting to make it configurable
2024-12-10 15:12:32 +01:00
akallabeth
b2756842b2 [core,aad] fetch wellknown before GetAccessToken
All of the URL we need for AAD authentication are dependent on a tenantid.
Fetch the wellknown file for the desired tenantid from
https://login.microsoftonline.com/{tenantid}/v2.0/.well-known/openid-configuration
and parse as JSON to have them available later on.
2024-12-10 15:12:30 +01:00
akallabeth
180a9d7d72 [cmake,flags] print all configuration flags
Since we do not know wich configuration will be build with
multiconfiguration generators print out all C_FLAGS_XXX and
CXX_FLAGS_XXX variables
2024-12-05 09:36:26 +01:00
akallabeth
b4976163cd [CMake,simd] unify WITH_SSE2, WITH_AVX2, WITH_NEON
* Add new CMake option WITH_SIMD to enable best available instruction
  type
* Unify simd related defines in single header
2024-12-03 11:54:36 +01:00
akallabeth
faae38120c [cmake,format] reformat all cmake files 2024-11-27 20:41:48 +01:00
stephanebill
4f2afa8c47 spell check with codespell 2024-11-20 16:53:40 -05:00
akallabeth
fb3a127d00 [common,cmdline] add new functions
* Add freerdp_client_print_version_ex and
  freerdp_client_print_buildconfig_ex to print version and build
  configuration along with the binary name calling it
* Use these new functions instead of the ones that only print out
  version and/or buildconfig
2024-11-04 09:06:12 +01:00
akallabeth
dc76879e0b [warnings] fix some compiler warnings
* fix compiler warnings found in a lot of places
* add missing enum type for clipboard channel
* mark deallocator for winpr image function
2024-10-30 16:12:20 +01:00
akallabeth
a27d9508e2 [cmake] unify CFLAGS to string
* move to common CMake function
* escape CFLAGS
2024-10-25 11:40:43 +02:00
akallabeth
7ab30a1b18 [client,common] const correct pointer array arguments 2024-10-24 11:32:08 +02:00
akallabeth
aa9b03df25 [cmake] generate full buildflags.h CFLAGS
Combine current configuration flags with CMAKE_C_FLAGS
2024-10-24 09:08:08 +02:00
Martin Fleisz
966ddd13df Merge pull request #10694 from akallabeth/qa-fixes
Qa fixes
2024-10-03 13:09:06 +02:00
akallabeth
cfc37caeb8 [cmake] cleaning_configure_file
add a wrapper to automatically add generated files to clean target
2024-10-02 23:28:08 +02:00