Commit Graph

21563 Commits

Author SHA1 Message Date
akallabeth
657fc0ee75 Merge pull request #11652 from akallabeth/rail-hidef-fix
[core,info] Allow INFO_HIDEF_RAIL_SUPPORTED with RDP version RDP_VERS…
2025-06-03 18:09:33 +02:00
akallabeth
8231594b44 Merge pull request #11651 from akallabeth/wait-infinite
[WaitForXXObject] use infinite timeout where possible
2025-06-03 18:05:13 +02:00
akallabeth
5c2e831fa5 [core,info] Allow INFO_HIDEF_RAIL_SUPPORTED with RDP version RDP_VERSION_5_PLUS
[MS-RDPBCGR] 2.2.1.11.1.1 Info Packet (TS_INFO_PACKET) states that
INFO_HIDEF_RAIL_SUPPORTED is not understood by RDP 4.0, 5.0, 5.1,
5.2, 6.0, 6.1, 7.0, 7.1, and 8.0 servers.
Windows Server 2012 is based on windows 8.1 and already supports the
flag.
2025-06-03 18:03:48 +02:00
akallabeth
8be64a066c [client,common] add documentation for /v: formats
* Add short description of default formats (url, hostname, IPv4, IPv6)
* Add pipe example
* Add socket example
2025-06-03 17:10:37 +02:00
akallabeth
da05b25f3b [WaitForXXObject] use infinite timeout where possible 2025-06-03 17:07:31 +02:00
akallabeth
bf643b1394 Merge pull request #11648 from akallabeth/warn
[client,sdl] fix clang-tidy warnings
2025-06-02 20:42:38 +02:00
akallabeth
cf35364efa [channels,drive] fix file rename length checks 2025-06-02 20:22:50 +02:00
akallabeth
78a8dbfcbb [winpr,file] handle FILE_ATTRIBUTE_NORMAL in SetFileAttributesA 2025-06-02 20:13:17 +02:00
akallabeth
52ff1cef93 [cmake] install SSO-MIB if build by ExternalProject
* Install the library if we build it as part of FreeRDP
* Format files with cmake-format
2025-06-02 19:40:44 +02:00
akallabeth
f74a7247cd [client,sdl] fix clang-tidy warnings 2025-06-02 19:05:10 +02:00
akallabeth
63f4c63200 Merge pull request #11635 from motor-dev/master
[client,sdl] Wayland fixes for the SDL backend
2025-06-02 17:57:07 +02:00
akallabeth
0c857b939b Merge pull request #11647 from akallabeth/drive-refactor
[channels,drive] encapsulate drive information processing
2025-06-02 17:40:06 +02:00
akallabeth
0a854001f7 [channels,drive] encapsulate drive information processing 2025-06-02 17:31:01 +02:00
akallabeth
8978c9cefe Merge pull request #11646 from akallabeth/fuse-fix
[client,common] (re)initialize fuse root in cliprdr_file_context_init
2025-06-02 09:33:44 +02:00
akallabeth
9763297d6a [client,common] (re)initialize fuse root in cliprdr_file_context_init
The clipboard might be (re)initialized multiple times, to do
initialization and deinitialization in cliprdr_file_context_init and
cliprdr_file_context_uninit.
2025-06-02 09:20:22 +02:00
akallabeth
fecc657e29 Merge pull request #11642 from akallabeth/transport_layer_user_context
[core,transport] only free userContext if userContextSize > 0
2025-05-28 14:28:00 +02:00
akallabeth
c8da92f4e0 Merge pull request #11643 from akallabeth/sdl-numpad
[client,sdl] fix SDL_SCANCODE_KP_PERIOD mapping
2025-05-28 14:10:50 +02:00
Armin Novak
7a89e47334 [core,transport] only free userContext if userContextSize > 0 2025-05-28 14:07:58 +02:00
Armin Novak
583c9dabda [client,sdl] fix SDL_SCANCODE_KP_PERIOD mapping 2025-05-28 10:09:30 +02:00
yngwe@fry
0c979d1a41 Fixes that were lost in merge
- append the window index to the title. This helps wayland compositor scripts move the multimon windows to different monitors, as Wayland does not obey the placement hint.
- fixed inverted logic when checking the SmartSizing setting.
2025-05-27 23:42:23 +02:00
yngwe@fry
ac981843c9 Multimon/smart sizing fixes for the SDL backend
- properly compute the offsets for each monitor, when monitors have negative offsets or when primary monitor isn't at origin 0:0.
   ‣ SDL_VIDEODRIVER=wayland sdl-freerdp3  /list:monitor
        * [3] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007046 (DP-1)] 2560x1440	+0+0
          [4] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007036 (HDMI-A-2)] 1440x2560	+2560+-550
   If the offset is not taken into account, the remote desktop will be drawn with black borders at the top or left hand side of the windows.

- fix smart sizing being applied when not requested (overwriting proper offsets for multimon) and not being applied when requested.

- add monitor ID in the window title to enable wayland compositors (e.g. hyprland) to find the various windows.
   hyprland has one workspace per monitor and refuses to let the application choose the monitor (or sdl-freerdp does not ask nicely).
   sdl-freedrp /multimon opens both windows on the same screen.
   adding a monitor identifier in the title allows hyprland rules to find the window and move it to the proper workspace.

These changes allow sdl-freedrp to find the correct geometry on X11 and Wayland compositors (tested on plasma/kwin and hyprland, on X11, XWayland and native wayland)
2025-05-27 23:13:04 +02:00
akallabeth
07ceeb1f91 Merge pull request #11637 from akallabeth/drive-log-fix
Drive log fix
2025-05-27 16:47:47 +02:00
akallabeth
fc5198e5a6 [winpr,file] improve errno to lasterror mapping 2025-05-27 16:27:46 +02:00
akallabeth
ad9e3df18f [channels,drive] fix error checks and log messages 2025-05-27 16:27:43 +02:00
akallabeth
492bf9b393 Merge pull request #11636 from akallabeth/scard
[utils,smartcard] better logging and error checks
2025-05-27 10:47:55 +02:00
akallabeth
6b80a2d4ef [utils,smartcard] better logging and error checks
* Use wLog as argument where possible to reduce the number of WLog_Get
  calls
* Do better failure checks to avoid reading invalid memory
2025-05-27 10:33:37 +02:00
yngwe@fry
d998b6e8ba Wayland fixes for the SDL backend
- properly compute the offsets for each monitor, when monitors have negative offsets.
   ‣ SDL_VIDEODRIVER=wayland sdl-freerdp3  /list:monitor
        * [3] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007046 (DP-1)] 2560x1440	+0+0
          [4] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007036 (HDMI-A-2)] 1440x2560	+2560+-550
   If the negative offset is not taken into account, the remote desktop will be drawn with black borders at the top or left hand side of the windows.

- also ensures these offsets are not reset at each redraw.

- add monitor ID in the window title to enable wayland compositors (e.g. hyprland) to find the various windows.
   hyprland has one workspace per monitor and refuses to let the application choose the monitor (or sdl-freerdp does not ask nicely).
   sdl-freedrp /multimon opens both windows on the same screen.
   adding a monitor identifier in the title allows hyprland rules to find the window and move it to the proper workspace.

These changes allow sdl-freedrp to find the correct geometry on Wayland compositors (tested on plasma/kwin and hyprland) when using SDL_VIDEODRIVER=wayland
2025-05-26 23:06:02 +02:00
akallabeth
d2395d2e13 Merge pull request #11634 from akallabeth/tls-config
JSON configuration helpers
2025-05-26 20:01:08 +02:00
akallabeth
4f4c3e6366 [client,sdl] use new JSON config reader 2025-05-26 19:36:40 +02:00
akallabeth
7877f32cbc [locale,keyboard] use new JSON config reader 2025-05-26 19:36:40 +02:00
akallabeth
022871969c [winpr,timezone] use new JSON config reader 2025-05-26 19:36:40 +02:00
akallabeth
ef29389647 [crypto,tls] use new JSON config file helpers 2025-05-26 19:36:40 +02:00
akallabeth
50cef020de [utils,helpers] add freerdp_GetJSONConfigFile 2025-05-26 19:36:40 +02:00
akallabeth
aadc257ecd [utils,json] add functions to read from file 2025-05-26 19:36:40 +02:00
akallabeth
2ebc5cd70b Merge pull request #11633 from akallabeth/attr
[utils,helpers] add missing WINPR_ATTR_MALLOC
2025-05-26 17:08:08 +02:00
akallabeth
45914466c2 [utils,helpers] add missing WINPR_ATTR_MALLOC 2025-05-26 17:06:58 +02:00
akallabeth
c52d486f9a Merge pull request #11629 from ligangcc/master
fix compile errors: xfc not defined even if with WITH_XCURSOR=ON
2025-05-26 09:17:36 +02:00
Li Gang
3622640985 fix x11 log 2025-05-26 09:17:02 +02:00
akallabeth
85a261be77 Merge pull request #11631 from asterwyx/master
[stream] reset pool array size after clearing
2025-05-26 09:07:11 +02:00
akallabeth
789ae32516 Merge pull request #11632 from akallabeth/mac-bool
[winpr,wtypes] align BOOL typedef with objc.h header
2025-05-26 08:57:44 +02:00
akallabeth
d139c8799b [winpr,wtypes] align BOOL typedef with objc.h header 2025-05-26 08:56:44 +02:00
Yixue Wang
e444ce53d7 [stream] reset pool array size after clearing
StreamPool becomes inconsistent after clearing. This might be a
problem in some critical situation. Reset pool array size after
clearing.
2025-05-26 14:27:14 +08:00
Li Gang
c389b2b8b1 fix compile errors: xfc not defined even if with WITH_XCURSOR=ON 2025-05-25 14:25:24 +08:00
akallabeth
7cbed1570d Merge pull request #11627 from akallabeth/clip-file-refactor
[client,cliprdr] refactor file clipboard
2025-05-23 15:32:58 +02:00
akallabeth
34ab0b893d [warnings] fix clang-tidy warnings 2025-05-23 15:29:31 +02:00
akallabeth
5d088ce9c0 [client,cliprdr] refactor file clipboard 2025-05-23 15:23:28 +02:00
akallabeth
4ab07eaff6 Merge pull request #11625 from akallabeth/x11-log
[client,x11] fix return value checks
2025-05-23 13:10:40 +02:00
akallabeth
b43e1a6640 [client,x11] fix return value checks
X11 function return values are not properly defined in manpages, so
check for more details in upstream code and adjust the checks.
2025-05-23 13:09:20 +02:00
akallabeth
f0b3aea88b Merge pull request #11624 from akallabeth/x11-log
[client,x11] add more logging X11 calls
2025-05-23 12:16:55 +02:00
akallabeth
ff5aca1b0b [client,x11] add more logging X11 calls 2025-05-23 12:15:09 +02:00