Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wlfreerdp and sdl-freerdp crashing with segfault in plasma6 when connecting to windows11 #10159

Open
slartibart70 opened this issue May 2, 2024 · 6 comments

Comments

@slartibart70
Copy link

wlfreerdp is pretty instantly killed when a connection is established, sdl-freerdp lives a bit longer but crashes when resizing the window

Operating System: Fedora Linux 40
KDE Plasma Version: 6.0.4
KDE Frameworks Version: 6.1.0
Qt Version: 6.7.0
Kernel Version: 6.8.8-300.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 PRO 7840U w/ Radeon 780M Graphics
Memory: 58,6 GiB of RAM
Graphics Processor: AMD Radeon Graphics
Manufacturer: LENOVO
System Version: ThinkPad P14s Gen 4

[23:08:59:252] [197099:000301eb] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[23:08:59:253] [197099:000301eb] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[23:08:59:374] [197099:000301eb] [INFO][com.winpr.timezone] - [winpr_detect_windows_time_zone]: tzid: Europe/Paris
[23:08:59:407] [197099:000301eb] [WARN][com.freerdp.core.license] - [license_read_binary_blob_data]: license binary blob::type BB_ERROR_BLOB, length=0, skipping.
[23:08:59:484] [197099:000301eb] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Local framebuffer format  PIXEL_FORMAT_BGRA32
[23:08:59:484] [197099:000301eb] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Remote framebuffer format PIXEL_FORMAT_BGRA32
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [fatal_handler]: Caught signal 'Segmentation fault' [11]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 0: dli_fname=/lib64/libwinpr3.so.3 [0x7f24b80e4000], dli_sname=winpr_backtrace [0x7f24b812cd90]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 1: dli_fname=/lib64/libwinpr3.so.3 [0x7f24b80e4000], dli_sname=winpr_log_backtrace_ex [0x7f24b812e6c0]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 2: dli_fname=/lib64/libfreerdp3.so.3 [0x7f24b8200000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 3: dli_fname=/lib64/libc.so.6 [0x7f24b7ef7000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 4: dli_fname=/lib64/libc.so.6 [0x7f24b7ef7000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 5: dli_fname=wlfreerdp [0x55e851142000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 6: dli_fname=wlfreerdp [0x55e851142000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 7: dli_fname=/lib64/libfreerdp3.so.3 [0x7f24b8200000], dli_sname=freerdp_connect [0x7f24b82c4d40]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 8: dli_fname=wlfreerdp [0x55e851142000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 9: dli_fname=/lib64/libc.so.6 [0x7f24b7ef7000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 10: dli_fname=/lib64/libc.so.6 [0x7f24b7ef7000], dli_sname=__libc_start_main [0x7f24b7f210c0]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 11: dli_fname=wlfreerdp [0x55e851142000], dli_sname=(null) [(nil)]
[23:08:59:491] [197099:000301eb] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 12: unresolvable, address=(nil)

SDL-based:

[23:06:21:648] [196777:000300ab] [INFO][com.freerdp.client.SDL] - [sdl_pre_connect]: Update size to 1920x1080
[23:06:21:715] [196777:000300a9] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] OpenGL shaders: ENABLED
[23:06:21:715] [196777:000300a9] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] Created renderer: opengl
[23:06:22:463] [196777:000300ab] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[23:06:22:463] [196777:000300ab] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[23:06:23:583] [196777:000300ab] [INFO][com.winpr.timezone] - [winpr_detect_windows_time_zone]: tzid: Europe/Paris
[23:06:23:616] [196777:000300ab] [WARN][com.freerdp.core.license] - [license_read_binary_blob_data]: license binary blob::type BB_ERROR_BLOB, length=0, skipping.
[23:06:23:687] [196777:000300ab] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Local framebuffer format  PIXEL_FORMAT_BGRA32
[23:06:23:687] [196777:000300ab] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Remote framebuffer format PIXEL_FORMAT_BGRA32
[23:06:23:748] [196777:000300a9] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] OpenGL shaders: ENABLED
[23:06:23:748] [196777:000300a9] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] Created renderer: opengl
[23:06:23:769] [196777:000300ab] [INFO][com.freerdp.channels.rdpsnd.client] - [rdpsnd_load_device_plugin]: [static] Loaded fake backend for rdpsnd
[23:06:23:769] [196777:000300d2] [INFO][com.freerdp.channels.rdpdr.client] - [devman_load_device_service]: Loading device service drive [transfer] (static)
[23:06:23:769] [196777:000300ab] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel ainput
[23:06:23:769] [196777:000300ab] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel disp
[23:06:23:769] [196777:000300ab] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel rdpsnd
[23:06:23:805] [196777:000300d6] [INFO][com.freerdp.channels.rdpsnd.client] - [rdpsnd_load_device_plugin]: [dynamic] Loaded fake backend for rdpsnd
[23:06:25:576] [196777:000300d6] [INFO][com.freerdp.channels.rdpsnd.client] - [rdpsnd_load_device_plugin]: [dynamic] Loaded fake backend for rdpsnd
[23:06:25:695] [196777:000300d2] [INFO][com.freerdp.channels.rdpdr.client] - [device_announce]: registered [    drive] device #1: transfer (type=8 id=1)
[23:06:25:823] [196777:000300d6] [WARN][com.freerdp.channels.drdynvc.client] - [check_open_close_receive]: {Microsoft::Windows::RDS::DisplayControl:10} OnOpen=(nil), OnClose=0x7f9c883987b0
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [Stream_CheckAndLogRequiredLengthWLogExVa][0x55cf0e1c4530]: [rdp_read_share_control_header(/builddir/build/BUILD/FreeRDP-3.5.1/libfreerdp/core/rdp.c:301)] invalid length, got 2, require at least 16378 [element size=1]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 0: dli_fname=/lib64/libwinpr3.so.3 [0x7f9c87ee4000], dli_sname=winpr_backtrace [0x7f9c87f2cd90]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 1: dli_fname=/lib64/libwinpr3.so.3 [0x7f9c87ee4000], dli_sname=winpr_log_backtrace_ex [0x7f9c87f2e6c0]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 2: dli_fname=/lib64/libwinpr3.so.3 [0x7f9c87ee4000], dli_sname=Stream_CheckAndLogRequiredLengthWLogExVa [0x7f9c87f2f410]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 3: dli_fname=/lib64/libwinpr3.so.3 [0x7f9c87ee4000], dli_sname=Stream_CheckAndLogRequiredLengthWLogEx [0x7f9c87f2f970]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 4: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 5: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 6: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 7: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 8: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=freerdp_check_fds [0x7f9c880bc570]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 9: dli_fname=/lib64/libfreerdp3.so.3 [0x7f9c88000000], dli_sname=freerdp_check_event_handles [0x7f9c880c45f0]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 10: dli_fname=sdl-freerdp [0x55cf0cb95000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 11: dli_fname=/lib64/libstdc++.so.6 [0x7f9c87a00000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 12: dli_fname=/lib64/libc.so.6 [0x7f9c87813000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 13: dli_fname=/lib64/libc.so.6 [0x7f9c87813000], dli_sname=(null) [(nil)]
[23:06:32:19] [196777:000300ab] [WARN][com.freerdp.core.rdp] - [winpr_log_backtrace_ex][0x55cf0e1c4530]: 14: unresolvable, address=(nil)
[23:06:32:19] [196777:000300ab] [ERROR][com.freerdp.core.rdp] - [rdp_recv_callback_int][0x55cf0e1c4530]: CONNECTION_STATE_CAPABILITIES_EXCHANGE_DEMAND_ACTIVE status STATE_RUN_FAILED [-1]
[23:06:32:19] [196777:000300ab] [ERROR][com.freerdp.core.transport] - [transport_check_fds]: transport_check_fds: transport->ReceiveCallback() - STATE_RUN_FAILED [-1]
[23:06:32:19] [196777:000300ab] [ERROR][com.freerdp.core] - [freerdp_check_event_handles]: freerdp_check_fds() failed - 0
[23:06:32:19] [196777:000300ab] [ERROR][com.freerdp.client.SDL] - [sdl_client_thread_proc]: Failed to check FreeRDP event handles
[23:06:32:20] [196777:000300d6] [WARN][com.freerdp.channels.drdynvc.client] - [check_open_close_receive]: {Microsoft::Windows::RDS::DisplayControl:10} OnOpen=(nil), OnClose=0x7f9c883987b0
@akallabeth
Copy link
Member

actually sdl-freerdp properly terminates after receiving an invalid message.
the stack trace for wlfreerdp is useless without symbols, sorry :/

@slartibart70
Copy link
Author

yes, ok, pretty much understandable.
What can i do to provide those?

@akallabeth
Copy link
Member

if you´re using the default fedora packages they do provide some debug symbols, but I think you need to enable the repo for that and install these then.

@kotelnik
Copy link

kotelnik commented May 9, 2024

I'm confirming this bug for wlfreerdp3 (xfreerdp3 works) since version 3.5.0. For these trials it happens when connecting to Windows Server 2012 Standard. I don't have other Windows to test on.

I can reproduce this bug on 2 devices with Arch Linux. Notebook with intel CPU + intel graphics:
Intel Corporation Skylake GT2 [HD Graphics 520] (rev 07)

And another PC with intel CPU + Radeon graphics:
Advanced Micro Devices, Inc. [AMD/ATI] Navi 23 [Radeon RX 6650 XT / 6700S / 6800S] (rev c1)

Run wlfreerdp3 with arguments:
/u:administrator /d:WORKGROUP /p:"replaced_password" /size:1600x950 /v:10.2.0.138 /tls:seclevel:0 /timeout:80000

Full trace:
gdb.txt

I'll provide more info on demand :) And big thanks for developing this project!

EDIT: I also use Plasma 6.

@akallabeth
Copy link
Member

@kotelnik what is happening in your case? the trace you have does not contain any error.
this whole issue lacks a bit of detail and mixes every 'does not work like I expect' thing found under the same umbrella.

please clarify a bit.

@ZaWertun
Copy link

ZaWertun commented May 26, 2024

It looks like I've just stumbled into the same issue, and also I'm using Plasma 6 (Fedora 40) when trying to connect to the VM with Windows 10.
I've just created issue in the RedHat bugzilla, you can find all stacktrace logs here: https://bugzilla.redhat.com/show_bug.cgi?id=2283313

There is log from the console:

[16:38:06:07] [16581:000040c5] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_deprecated]: [deprecated] wlfreerdp client has been deprecated
[16:38:06:08] [16581:000040c5] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_deprecated]: As replacement there is a SDL based client available.
[16:38:06:08] [16581:000040c5] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_deprecated]: If you are interested in keeping wlfreerdp alive get in touch with the developers
[16:38:06:08] [16581:000040c5] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_deprecated]: The project is hosted at https://github.com/freerdp/freerdp and  developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org - dont hesitate to ask some questions. (replies might take some time depending on your timezone)
[16:38:06:370] [16581:000040c5] [WARN][com.freerdp.crypto] - [verify_cb]: Certificate verification failure 'self-signed certificate (18)' at stack position 0
[16:38:06:370] [16581:000040c5] [WARN][com.freerdp.crypto] - [verify_cb]: CN = DESKTOP-727F8Q5
[16:38:06:371] [16581:000040c5] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[16:38:06:371] [16581:000040c5] [ERROR][com.winpr.sspi.Kerberos] - [kerberos_AcquireCredentialsHandleA]: krb5_parse_name (Configuration file does not specify default realm [-1765328160])
[16:38:06:373] [16581:000040c5] [INFO][com.winpr.timezone] - [winpr_detect_windows_time_zone]: tzid: Europe/Moscow
[16:38:06:374] [16581:000040c5] [ERROR][com.winpr.timezone] - [winpr_get_current_time_zone_rule]: Unable to get current timezone rule
[16:38:06:375] [16581:000040c5] [WARN][com.freerdp.core.license] - [license_read_binary_blob_data]: license binary blob::type BB_ERROR_BLOB, length=0, skipping.
[16:38:07:936] [16581:000040c5] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Local framebuffer format  PIXEL_FORMAT_BGRA32
[16:38:07:937] [16581:000040c5] [INFO][com.freerdp.gdi] - [gdi_init_ex]: Remote framebuffer format PIXEL_FORMAT_BGRA32
[16:38:07:942] [16581:000040c5] [INFO][com.freerdp.channels.rdpsnd.client] - [rdpsnd_load_device_plugin]: [static] Loaded fake backend for rdpsnd
[16:38:07:942] [16581:000040e9] [INFO][com.freerdp.channels.rdpdr.client] - [devman_load_device_service]: Loading device service drive [home] (static)
[16:38:07:954] [16581:000040c5] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel ainput
[16:38:07:954] [16581:000040c5] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel rdpgfx
[16:38:07:954] [16581:000040c5] [INFO][com.freerdp.channels.drdynvc.client] - [dvcman_load_addin]: Loading Dynamic Virtual Channel rdpsnd
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [fatal_handler]: Caught signal 'Ошибка сегментирования' [11]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 0: dli_fname=/lib64/libwinpr3.so.3 [0x7fc848ee4000], dli_sname=winpr_backtrace [0x7fc848f2cd90]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 1: dli_fname=/lib64/libwinpr3.so.3 [0x7fc848ee4000], dli_sname=winpr_log_backtrace_ex [0x7fc848f2e6c0]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 2: dli_fname=/lib64/libfreerdp3.so.3 [0x7fc849000000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 3: dli_fname=/lib64/libc.so.6 [0x7fc848cf7000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 4: dli_fname=/lib64/libc.so.6 [0x7fc848cf7000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 5: dli_fname=wlfreerdp [0x5595ed090000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 6: dli_fname=wlfreerdp [0x5595ed090000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 7: dli_fname=wlfreerdp [0x5595ed090000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 8: dli_fname=/lib64/libc.so.6 [0x7fc848cf7000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 9: dli_fname=/lib64/libc.so.6 [0x7fc848cf7000], dli_sname=__libc_start_main [0x7fc848d210c0]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 10: dli_fname=wlfreerdp [0x5595ed090000], dli_sname=(null) [(nil)]
[16:38:07:968] [16581:000040c5] [ERROR][com.freerdp.utils.signal] - [winpr_log_backtrace_ex]: 11: unresolvable, address=(nil)
fish: Job 1, 'wlfreerdp -decorations +clipboa…' terminated by signal SIGSEGV (Address boundary error)
$ wlfreerdp --version
This is FreeRDP version 3.5.1 (n/a)

And some system info just in case:

Operating System: Fedora Linux 40
KDE Plasma Version: 6.0.5
KDE Frameworks Version: 6.2.0
Qt Version: 6.7.0
Kernel Version: 6.8.10-300.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 5700X 8-Core Processor
Memory: 31.2 ГиБ of RAM
Graphics Processor: NVIDIA GeForce RTX 3070/PCIe/SSE2
Manufacturer: ASUS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants