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

Random disconnects from RDP session on M1 macmini #20

Open
laggykiller opened this issue Aug 30, 2023 · 4 comments
Open

Random disconnects from RDP session on M1 macmini #20

laggykiller opened this issue Aug 30, 2023 · 4 comments
Assignees

Comments

@laggykiller
Copy link

laggykiller commented Aug 30, 2023

RDP session disconnects randomly. I cannot find specific actions that can trigger the disconnect, but seems like:

  • It usually occur when I open Brave Browser, interact with websites and closing the browser
  • No (or much less) crash if I am using Google Chrome
  • Sometimes when I am not using Brave Browser it still crashes
  • One way to trigger is to open youtube and scroll up and down
  • More disconnects if I am using Guacamole compared with Windows Remote Desktop

I installed following this guide: https://teamunstablers.notion.site/xrdp-Ulalaca-Getting-started-f82b0c55f0b540a6ac277cc5902361b1

Here is the settings for guacamole:

Settings for Guacamole

image
image

Note that I am using arm64 Ventura, not sure if this is related.

Here is xrdp log from one of the crashes, copied from console:

xrdp log
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               xrdp [1382]
Path:                  /opt/homebrew/*/xrdp
Identifier:            xrdp
Version:               ???
Code Type:             ARM-64 (Native)
Parent Process:        xrdp [291]
Responsible:           xrdp [291]
User ID:               0

Date/Time:             2023-08-31 00:46:00.1869 +0800
OS Version:            macOS 13.5.1 (22G90)
Report Version:        12
Anonymous UUID:        4E2F1B31-226E-7EA3-2481-927AA67C8976

Sleep/Wake UUID:       BAE791A1-478C-4930-80CD-FB00DFDB187E

Time Awake Since Boot: 2000 seconds
Time Since Wake:       1461 seconds

System Integrity Protection: enabled

Crashed Thread:        3

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Termination Reason:    Namespace SIGNAL, Code 6 Abort trap: 6
Terminating Process:   xrdp [1382]

Application Specific Information:
crashed on child side of fork pre-exec


Thread 0::  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	       0x19c8e4874 poll + 8
1   libcommon.0.dylib             	       0x100225a50 g_fd_can_read + 44
2   xrdp                          	       0x1001873d0 xrdp_mm_check_wait_objs + 240
3   xrdp                          	       0x10018b9cc xrdp_process_main_loop + 584
4   xrdp                          	       0x100181b28 xrdp_listen_main_loop + 552
5   xrdp                          	       0x10017c550 main + 2120
6   dyld                          	       0x19c5c3f28 start + 2236

Thread 1:
0   libsystem_kernel.dylib        	       0x19c8e4874 poll + 8
1   libulalaca.0.dylib            	       0x1003ec55c UnixSocketBase::poll(short, int) + 68
2   libulalaca.0.dylib            	       0x1003ee5d4 IPCConnection::workerLoop() + 132
3   libulalaca.0.dylib            	       0x1003ef7d8 void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (IPCConnection::*)(), IPCConnection*>>(void*) + 72
4   libsystem_pthread.dylib       	       0x19c91bfa8 _pthread_start + 148
5   libsystem_pthread.dylib       	       0x19c916da0 thread_start + 8

Thread 2:
0   libsystem_kernel.dylib        	       0x19c8df750 __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x19c91c574 _pthread_cond_wait + 1232
2   libc++.1.dylib                	       0x19c844ef0 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28
3   libc++.1.dylib                	       0x19c8459e8 std::__1::__assoc_sub_state::__sub_wait(std::__1::unique_lock<std::__1::mutex>&) + 56
4   libulalaca.0.dylib            	       0x1003f057c std::__1::__assoc_state<std::__1::unique_ptr<unsigned char, std::__1::default_delete<unsigned char>>>::move() + 60
5   libulalaca.0.dylib            	       0x1003ef8a0 std::__1::future<std::__1::unique_ptr<unsigned char, std::__1::default_delete<unsigned char>>>::get() + 28
6   libulalaca.0.dylib            	       0x1003ee9b4 std::__1::unique_ptr<ULIPCHeader, std::__1::function<void (void*)>> IPCConnection::read<ULIPCHeader>(unsigned long) + 132
7   libulalaca.0.dylib            	       0x1003ee8e4 IPCConnection::nextHeader() + 52
8   libulalaca.0.dylib            	       0x1003f1910 ProjectorClient::mainLoop() + 92
9   libulalaca.0.dylib            	       0x1003f275c void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (ProjectorClient::*)(), ProjectorClient*>>(void*) + 72
10  libsystem_pthread.dylib       	       0x19c91bfa8 _pthread_start + 148
11  libsystem_pthread.dylib       	       0x19c916da0 thread_start + 8

Thread 3 Crashed:
0   libsystem_kernel.dylib        	       0x19c8e4764 __pthread_kill + 8
1   libsystem_pthread.dylib       	       0x19c91bc28 pthread_kill + 288
2   libsystem_c.dylib             	       0x19c829ae8 abort + 180
3   libsystem_malloc.dylib        	       0x19c74ae28 malloc_vreport + 908
4   libsystem_malloc.dylib        	       0x19c74e6e8 malloc_report + 64
5   libsystem_malloc.dylib        	       0x19c75af20 find_zone_and_free + 308
6   libcommon.0.dylib             	       0x100229d38 trans_send_waiting + 152
7   libcommon.0.dylib             	       0x10022a20c trans_write_copy_s + 48
8   libxrdp.0.dylib               	       0x1002a6a8c xrdp_iso_send + 168
9   libxrdp.0.dylib               	       0x1002a8260 xrdp_mcs_send + 328
10  libxrdp.0.dylib               	       0x1002b2338 xrdp_sec_send + 324
11  libxrdp.0.dylib               	       0x1002aff74 xrdp_rdp_send_data + 356
12  libxrdp.0.dylib               	       0x10029b740 libxrdp_send_bitmap + 848
13  xrdp                          	       0x100189950 xrdp_painter_end_update + 356
14  xrdp                          	       0x1001879f4 server_end_update + 32
15  libulalaca.0.dylib            	       0x1003f3250 XrdpUlalacaPrivate::updateThreadLoop() + 1236
16  libulalaca.0.dylib            	       0x1003f4cc0 void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (XrdpUlalacaPrivate::*)(), XrdpUlalacaPrivate*>>(void*) + 72
17  libsystem_pthread.dylib       	       0x19c91bfa8 _pthread_start + 148
18  libsystem_pthread.dylib       	       0x19c916da0 thread_start + 8


Thread 3 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000000   x1: 0x0000000000000000   x2: 0x0000000000000000   x3: 0x0000000000000000
    x4: 0x0000000000000073   x5: 0x000000000000002e   x6: 0x0000000000000001   x7: 0xffffffffffffffff
    x8: 0xa16f29e3b44e324a   x9: 0xa16f29e2dbac424a  x10: 0xcccccccccccccccd  x11: 0x000000000000000a
   x12: 0x0000000000000000  x13: 0x0000000000000031  x14: 0x0000000141600000  x15: 0x0000000008008208
   x16: 0x0000000000000148  x17: 0x00000001fc4c33a0  x18: 0x0000000000000000  x19: 0x0000000000000006
   x20: 0x000000016fe27000  x21: 0x0000000000001b03  x22: 0x000000016fe270e0  x23: 0x000000016fe26ae0
   x24: 0x0000000000000000  x25: 0x0000000000000000  x26: 0x000000016fc87dd8  x27: 0x000000016fe27000
   x28: 0x0000000000000438   fp: 0x000000016fe26430   lr: 0x000000019c91bc28
    sp: 0x000000016fe26410   pc: 0x000000019c8e4764 cpsr: 0x40001000
   far: 0x0000000100320000  esr: 0x56000080  Address size fault

Binary Images:
       0x100178000 -        0x10019ffff xrdp (*) <cf73ed75-8172-381b-aa07-61fc8ae07a7c> /opt/homebrew/*/xrdp
       0x100220000 -        0x10022ffff libcommon.0.dylib (*) <ae810cae-07d0-3474-ac4c-ae25780bebb4> /opt/homebrew/*/libcommon.0.dylib
       0x100248000 -        0x10024ffff libipm.0.dylib (*) <0af66e55-6760-3128-b879-d8950ab81fe7> /opt/homebrew/*/libipm.0.dylib
       0x100298000 -        0x1002bbfff libxrdp.0.dylib (*) <d03f9002-99fd-30b7-b0ba-923049b2aa89> /opt/homebrew/*/libxrdp.0.dylib
       0x10035c000 -        0x1003b3fff libssl.3.dylib (*) <1769b221-ddf5-3d6c-8c6c-2554c6121cdd> /opt/homebrew/*/libssl.3.dylib
       0x100734000 -        0x10096ffff libcrypto.3.dylib (*) <07025f70-2853-3fc8-8637-5706991455ee> /opt/homebrew/*/libcrypto.3.dylib
       0x100260000 -        0x100267fff libtoml.1.dylib (*) <ee35930d-2475-30c3-b349-0a878bfe494c> /opt/homebrew/*/libtoml.1.dylib
       0x1003e8000 -        0x1003f7fff libulalaca.0.dylib (*) <62e058a7-9b25-3a6c-97b7-4d3967c71554> /opt/homebrew/*/libulalaca.0.dylib
       0x19c8db000 -        0x19c914ff7 libsystem_kernel.dylib (*) <08c5fe2a-b0bf-3ab6-bb42-460c18917d33> /usr/lib/system/libsystem_kernel.dylib
       0x19c5be000 -        0x19c64c587 dyld (*) <e7a99595-e0f8-34af-be8b-9347d0d658a4> /usr/lib/dyld
       0x19c915000 -        0x19c921fff libsystem_pthread.dylib (*) <1f30fb9a-bdf9-32db-a709-8417666a7e45> /usr/lib/system/libsystem_pthread.dylib
       0x19c832000 -        0x19c8beff7 libc++.1.dylib (*) <3ee92404-8fc3-374b-a598-d5c9a8cd64b5> /usr/lib/libc++.1.dylib
       0x19c7b3000 -        0x19c831ff7 libsystem_c.dylib (*) <949943e2-52cb-3c95-ab08-7ed984333d03> /usr/lib/system/libsystem_c.dylib
       0x19c73c000 -        0x19c767ffb libsystem_malloc.dylib (*) <8f26f714-85ae-355e-afcb-3530b09c76cd> /usr/lib/system/libsystem_malloc.dylib

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=811.6M resident=0K(0%) swapped_out_or_unallocated=811.6M(100%)
Writable regions: Total=1.4G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.4G(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Activity Tracing                   256K        1 
Kernel Alloc Once                   32K        1 
MALLOC                           304.2M       38 
MALLOC guard page                   96K        5 
MALLOC_MEDIUM (reserved)         784.0M        7         reserved VM address space (unallocated)
MALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)
STACK GUARD                       56.1M        4 
Stack                             9808K        4 
VM_ALLOCATE                         16K        1 
__AUTH                              46K       11 
__AUTH_CONST                        72K       38 
__DATA                             305K       43 
__DATA_CONST                       679K       47 
__DATA_DIRTY                        78K       22 
__LINKEDIT                       803.4M        9 
__OBJC_RO                         66.4M        1 
__OBJC_RW                         2012K        1 
__TEXT                            8416K       49 
dyld private memory                272K        2 
shared memory                       32K        2 
===========                     =======  ======= 
TOTAL                              2.4G      287 
TOTAL, minus reserved VM space     1.2G      287 



-----------
Full Report
-----------

{"app_name":"xrdp","timestamp":"2023-08-31 00:46:00.00 +0800","app_version":"","slice_uuid":"cf73ed75-8172-381b-aa07-61fc8ae07a7c","build_version":"","platform":1,"share_with_app_devs":0,"is_first_party":1,"bug_type":"309","os_version":"macOS 13.5.1 (22G90)","roots_installed":0,"incident_id":"797441B7-75EF-44C6-AEA0-B7DFE6DBBEFC","name":"xrdp"}
{
  "uptime" : 2000,
  "procRole" : "Unspecified",
  "version" : 2,
  "userID" : 0,
  "deployVersion" : 210,
  "modelCode" : "Macmini9,1",
  "coalitionID" : 253,
  "osVersion" : {
    "train" : "macOS 13.5.1",
    "build" : "22G90",
    "releaseType" : "User"
  },
  "captureTime" : "2023-08-31 00:46:00.1869 +0800",
  "incident" : "797441B7-75EF-44C6-AEA0-B7DFE6DBBEFC",
  "pid" : 1382,
  "translated" : false,
  "cpuType" : "ARM-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2023-08-31 00:45:55.8263 +0800",
  "procStartAbsTime" : 50057416867,
  "procExitAbsTime" : 50162065893,
  "procName" : "xrdp",
  "procPath" : "\/opt\/homebrew\/*\/xrdp",
  "parentProc" : "xrdp",
  "parentPid" : 291,
  "coalitionName" : "homebrew.mxcl.xrdp-git",
  "crashReporterKey" : "4E2F1B31-226E-7EA3-2481-927AA67C8976",
  "responsiblePid" : 291,
  "responsibleProc" : "xrdp",
  "codeSigningID" : "xrdp",
  "codeSigningTeamID" : "",
  "codeSigningFlags" : 570556929,
  "codeSigningValidationCategory" : 10,
  "codeSigningTrustLevel" : 0,
  "wakeTime" : 1461,
  "sleepWakeUUID" : "BAE791A1-478C-4930-80CD-FB00DFDB187E",
  "sip" : "enabled",
  "exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
  "termination" : {"flags":0,"code":6,"namespace":"SIGNAL","indicator":"Abort trap: 6","byProc":"xrdp","byPid":1382},
  "asi" : {"libsystem_c.dylib":["crashed on child side of fork pre-exec"]},
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 3,
  "threads" : [{"id":22574,"queue":"com.apple.main-thread","frames":[{"imageOffset":39028,"symbol":"poll","symbolLocation":8,"imageIndex":8},{"imageOffset":23120,"symbol":"g_fd_can_read","symbolLocation":44,"imageIndex":1},{"imageOffset":62416,"symbol":"xrdp_mm_check_wait_objs","symbolLocation":240,"imageIndex":0},{"imageOffset":80332,"symbol":"xrdp_process_main_loop","symbolLocation":584,"imageIndex":0},{"imageOffset":39720,"symbol":"xrdp_listen_main_loop","symbolLocation":552,"imageIndex":0},{"imageOffset":17744,"symbol":"main","symbolLocation":2120,"imageIndex":0},{"imageOffset":24360,"symbol":"start","symbolLocation":2236,"imageIndex":9}]},{"id":22613,"frames":[{"imageOffset":39028,"symbol":"poll","symbolLocation":8,"imageIndex":8},{"imageOffset":17756,"symbol":"UnixSocketBase::poll(short, int)","symbolLocation":68,"imageIndex":7},{"imageOffset":26068,"symbol":"IPCConnection::workerLoop()","symbolLocation":132,"imageIndex":7},{"imageOffset":30680,"symbol":"void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (IPCConnection::*)(), IPCConnection*>>(void*)","symbolLocation":72,"imageIndex":7},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":10},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":10}]},{"id":22614,"frames":[{"imageOffset":18256,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":8},{"imageOffset":30068,"symbol":"_pthread_cond_wait","symbolLocation":1232,"imageIndex":10},{"imageOffset":77552,"symbol":"std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&)","symbolLocation":28,"imageIndex":11},{"imageOffset":80360,"symbol":"std::__1::__assoc_sub_state::__sub_wait(std::__1::unique_lock<std::__1::mutex>&)","symbolLocation":56,"imageIndex":11},{"imageOffset":34172,"symbol":"std::__1::__assoc_state<std::__1::unique_ptr<unsigned char, std::__1::default_delete<unsigned char>>>::move()","symbolLocation":60,"imageIndex":7},{"imageOffset":30880,"symbol":"std::__1::future<std::__1::unique_ptr<unsigned char, std::__1::default_delete<unsigned char>>>::get()","symbolLocation":28,"imageIndex":7},{"imageOffset":27060,"symbol":"std::__1::unique_ptr<ULIPCHeader, std::__1::function<void (void*)>> IPCConnection::read<ULIPCHeader>(unsigned long)","symbolLocation":132,"imageIndex":7},{"imageOffset":26852,"symbol":"IPCConnection::nextHeader()","symbolLocation":52,"imageIndex":7},{"imageOffset":39184,"symbol":"ProjectorClient::mainLoop()","symbolLocation":92,"imageIndex":7},{"imageOffset":42844,"symbol":"void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (ProjectorClient::*)(), ProjectorClient*>>(void*)","symbolLocation":72,"imageIndex":7},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":10},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":10}]},{"triggered":true,"id":22615,"threadState":{"x":[{"value":0},{"value":0},{"value":0},{"value":0},{"value":115},{"value":46},{"value":1},{"value":18446744073709551615},{"value":11632562420480619082},{"value":11632562416846127690},{"value":14757395258967641293},{"value":10},{"value":0},{"value":49},{"value":5391777792},{"value":134251016},{"value":328},{"value":8527819680},{"value":0},{"value":6},{"value":6172078080},{"value":6915},{"value":6172078304},{"value":6172076768},{"value":0},{"value":0},{"value":6170377688},{"value":6172078080},{"value":1080}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6921763880},"cpsr":{"value":1073745920},"fp":{"value":6172075056},"sp":{"value":6172075024},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6921537380,"matchesCrashFrame":1},"far":{"value":4298244096}},"frames":[{"imageOffset":38756,"symbol":"__pthread_kill","symbolLocation":8,"imageIndex":8},{"imageOffset":27688,"symbol":"pthread_kill","symbolLocation":288,"imageIndex":10},{"imageOffset":486120,"symbol":"abort","symbolLocation":180,"imageIndex":12},{"imageOffset":60968,"symbol":"malloc_vreport","symbolLocation":908,"imageIndex":13},{"imageOffset":75496,"symbol":"malloc_report","symbolLocation":64,"imageIndex":13},{"imageOffset":126752,"symbol":"find_zone_and_free","symbolLocation":308,"imageIndex":13},{"imageOffset":40248,"symbol":"trans_send_waiting","symbolLocation":152,"imageIndex":1},{"imageOffset":41484,"symbol":"trans_write_copy_s","symbolLocation":48,"imageIndex":1},{"imageOffset":60044,"symbol":"xrdp_iso_send","symbolLocation":168,"imageIndex":3},{"imageOffset":66144,"symbol":"xrdp_mcs_send","symbolLocation":328,"imageIndex":3},{"imageOffset":107320,"symbol":"xrdp_sec_send","symbolLocation":324,"imageIndex":3},{"imageOffset":98164,"symbol":"xrdp_rdp_send_data","symbolLocation":356,"imageIndex":3},{"imageOffset":14144,"symbol":"libxrdp_send_bitmap","symbolLocation":848,"imageIndex":3},{"imageOffset":72016,"symbol":"xrdp_painter_end_update","symbolLocation":356,"imageIndex":0},{"imageOffset":63988,"symbol":"server_end_update","symbolLocation":32,"imageIndex":0},{"imageOffset":45648,"symbol":"XrdpUlalacaPrivate::updateThreadLoop()","symbolLocation":1236,"imageIndex":7},{"imageOffset":52416,"symbol":"void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (XrdpUlalacaPrivate::*)(), XrdpUlalacaPrivate*>>(void*)","symbolLocation":72,"imageIndex":7},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":10},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":10}]}],
  "usedImages" : [
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4296507392,
    "size" : 163840,
    "uuid" : "cf73ed75-8172-381b-aa07-61fc8ae07a7c",
    "path" : "\/opt\/homebrew\/*\/xrdp",
    "name" : "xrdp"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4297195520,
    "size" : 65536,
    "uuid" : "ae810cae-07d0-3474-ac4c-ae25780bebb4",
    "path" : "\/opt\/homebrew\/*\/libcommon.0.dylib",
    "name" : "libcommon.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4297359360,
    "size" : 32768,
    "uuid" : "0af66e55-6760-3128-b879-d8950ab81fe7",
    "path" : "\/opt\/homebrew\/*\/libipm.0.dylib",
    "name" : "libipm.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4297687040,
    "size" : 147456,
    "uuid" : "d03f9002-99fd-30b7-b0ba-923049b2aa89",
    "path" : "\/opt\/homebrew\/*\/libxrdp.0.dylib",
    "name" : "libxrdp.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4298489856,
    "size" : 360448,
    "uuid" : "1769b221-ddf5-3d6c-8c6c-2554c6121cdd",
    "path" : "\/opt\/homebrew\/*\/libssl.3.dylib",
    "name" : "libssl.3.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4302520320,
    "size" : 2342912,
    "uuid" : "07025f70-2853-3fc8-8637-5706991455ee",
    "path" : "\/opt\/homebrew\/*\/libcrypto.3.dylib",
    "name" : "libcrypto.3.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4297457664,
    "size" : 32768,
    "uuid" : "ee35930d-2475-30c3-b349-0a878bfe494c",
    "path" : "\/opt\/homebrew\/*\/libtoml.1.dylib",
    "name" : "libtoml.1.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4299063296,
    "size" : 65536,
    "uuid" : "62e058a7-9b25-3a6c-97b7-4d3967c71554",
    "path" : "\/opt\/homebrew\/*\/libulalaca.0.dylib",
    "name" : "libulalaca.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6921498624,
    "size" : 237560,
    "uuid" : "08c5fe2a-b0bf-3ab6-bb42-460c18917d33",
    "path" : "\/usr\/lib\/system\/libsystem_kernel.dylib",
    "name" : "libsystem_kernel.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6918234112,
    "size" : 583048,
    "uuid" : "e7a99595-e0f8-34af-be8b-9347d0d658a4",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6921736192,
    "size" : 53248,
    "uuid" : "1f30fb9a-bdf9-32db-a709-8417666a7e45",
    "path" : "\/usr\/lib\/system\/libsystem_pthread.dylib",
    "name" : "libsystem_pthread.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6920806400,
    "size" : 577528,
    "uuid" : "3ee92404-8fc3-374b-a598-d5c9a8cd64b5",
    "path" : "\/usr\/lib\/libc++.1.dylib",
    "name" : "libc++.1.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6920286208,
    "size" : 520184,
    "uuid" : "949943e2-52cb-3c95-ab08-7ed984333d03",
    "path" : "\/usr\/lib\/system\/libsystem_c.dylib",
    "name" : "libsystem_c.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6919798784,
    "size" : 180220,
    "uuid" : "8f26f714-85ae-355e-afcb-3530b09c76cd",
    "path" : "\/usr\/lib\/system\/libsystem_malloc.dylib",
    "name" : "libsystem_malloc.dylib"
  }
],
  "sharedCache" : {
  "base" : 6917570560,
  "size" : 3553361920,
  "uuid" : "fef86b08-91da-3ab8-a9eb-8221d20f213c"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=811.6M resident=0K(0%) swapped_out_or_unallocated=811.6M(100%)\nWritable regions: Total=1.4G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.4G(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nActivity Tracing                   256K        1 \nKernel Alloc Once                   32K        1 \nMALLOC                           304.2M       38 \nMALLOC guard page                   96K        5 \nMALLOC_MEDIUM (reserved)         784.0M        7         reserved VM address space (unallocated)\nMALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)\nSTACK GUARD                       56.1M        4 \nStack                             9808K        4 \nVM_ALLOCATE                         16K        1 \n__AUTH                              46K       11 \n__AUTH_CONST                        72K       38 \n__DATA                             305K       43 \n__DATA_CONST                       679K       47 \n__DATA_DIRTY                        78K       22 \n__LINKEDIT                       803.4M        9 \n__OBJC_RO                         66.4M        1 \n__OBJC_RW                         2012K        1 \n__TEXT                            8416K       49 \ndyld private memory                272K        2 \nshared memory                       32K        2 \n===========                     =======  ======= \nTOTAL                              2.4G      287 \nTOTAL, minus reserved VM space     1.2G      287 \n",
  "legacyInfo" : {
  "threadTriggered" : {

  }
},
  "logWritingSignature" : "513dc15a57ed5231d0571bc295731db9364dcb38"
}
@laggykiller laggykiller changed the title Random disconnects from RDP session Random disconnects from RDP session on M1 macmini Sep 1, 2023
@laggykiller
Copy link
Author

laggykiller commented Sep 1, 2023

I followed the instructions here to debug. Here is the log from sudo xrdp -n

log.txt

It ended with Segmentation fault.

Relevant lines before crash:

exerpt from xrdp log
[2023-09-01T18:35:04.659+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.659+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.659+0800] [ERROR] SSL_shutdown: Server closed TLS connection
[2023-09-01T18:35:04.659+0800] [DEBUG] Closed socket 11 (192.168.1.22:3389)
[2023-09-01T18:35:04.659+0800] [ERROR] Sending [ITU T.125] DisconnectProviderUltimatum failed
[2023-09-01T18:35:04.659+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.659+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.659+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.660+0800] [INFO ] lib_mod_end() called
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.660+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.661+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.662+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.663+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.664+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.665+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.666+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.667+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.668+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.669+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.670+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.671+0800] [DEBUG] mainLoop(): commiting update
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.671+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.672+0800] [ERROR] xrdp_sec_send: xrdp_mcs_send failed
[2023-09-01T18:35:04.672+0800] [ERROR] xrdp_rdp_send_data: xrdp_sec_send failed
[2023-09-01T18:35:04.672+0800] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[2023-09-01T18:35:04.672+0800] [ERROR] xrdp_mcs_send: xrdp_iso_send failed
[2023-09-01T18:35:04.672+0800] [ERROR] xrdp_sec_send: xrdp_mcs_s

@laggykiller
Copy link
Author

laggykiller commented Sep 2, 2023

I compiled and run as x86_64 on M1 macmini using Rosetta. floating point exception occured instead, in which this exception also occured on my intel hackintosh. Please refer to here: #21 (comment)

Note that this is probably a separate issue though

@laggykiller
Copy link
Author

laggykiller commented Sep 2, 2023

I have created a branch that adds more logging.

Specifically, I added few lines of LOG() in ssl_tls_write(): https://github.com/laggykiller/xrdp-tumod/blob/c086bb8270a70a392e9c4f2a460780a53c168ea5/common/ssl_calls.c#L1353

It seems like using guacamole is faster, but more easy to cause the crash (Just by opening youtube).

Using Windows remote desktop connection can also cause crash if you scroll up and down youtube many times quickly. Interestingly, sometimes xrdp closs connection but does not cause crash (No segmentation error and no crash log seen in console) if I use Windows remote desktop connection instead of guacamole.

xrdp crashes under different conditions produce different stdout and crash report.

Condition 1 (SSL_write: Failure in SSL library (protocol error?))

  • Using default value of ssl_protocols=TLSv1.2, TLSv1.3 instead of ssl_protocols=TLSv1.2 in xrdp.ini
  • Connect with windows remote desktop connection or guacamole (I reproduced using guacamole)
  • stdout: stdout1.txt
  • Crash report: Only connection lost, does not crash

Condition 2 (SSL_write: I/O error [Error code 5])

  • Using ssl_protocols=TLSv1.2 in `xrdp.ini
  • Connect with windows remote desktop connection
  • stdout: stdout2.txt
  • Crash report: crashreport2.txt

Condition 3 (malloc: Heap corruption)

  • Using ssl_protocols=TLSv1.2 in `xrdp.ini
  • Connect with guacamole
  • Crash immediately after connection, such as opening youtube.com on Brave browser and connect with guacamole
  • stdout: stdout3.txt
  • Crash report: crashreport3.txt

Condition 4 (segmentation fault)

  • Using ssl_protocols=TLSv1.2 in `xrdp.ini
  • Connect with guacamole
  • Crash after connection and seeing screen of the remote computer, such as connect with guacamole, then open youtube on Brave browser
  • stdout: stdout4.txt
  • Crash report: crashreport4.txt

Seems like condition 1 can be avoided by changing xrdp.ini:

ssl_protocols=TLSv1.2, TLSv1.3

to

ssl_protocols=TLSv1.2

Note that SSL error code 5 corresponds to SSL_ERROR_SYSCALL (https://github.com/openssl/openssl/blob/7b8e27bc2e02238986d89ef0ece067ec1b48e165/include/openssl/ssl.h.in#L1209C10-L1209C27)

@unstabler unstabler self-assigned this Sep 5, 2023
@unstabler
Copy link
Collaborator

unstabler commented Sep 5, 2023

(machine translated)

Sorry for the late reply.
I have not used Guacamole yet, but with the current Ulalaca implementation, if you use raw bitmap without using compression codecs such as RFX, the bandwidth usage becomes very high and flow control fails, The connection will be disconnected.

To solve this problem, it may be necessary to optimize Ulalaca's screen update logic. However, the following measures are currently available:

  • Use a client that supports compression codecs such as RFX (freerdp, mstsc.exe ...)
  • If these clients are not available, set a lower resolution to reduce bandwidth usage
  • Set sessionprojector.app to use a lower update rate

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

No branches or pull requests

2 participants