Coder Social home page Coder Social logo

team-unstablers / ulalaca Goto Github PK

View Code? Open in Web Editor NEW
56.0 3.0 1.0 397 KB

xrdp-powered remote session broker / projector for macOS

License: Apache License 2.0

Swift 82.05% Objective-C 2.81% Objective-C++ 3.77% C++ 5.06% C 6.31%
macos rdp remote-desktop xrdp

ulalaca's Introduction

麗 -Ulalaca-

xrdp-powered remote session broker / projector for macOS

Screenshot_20220527_171145

image

NOTE

  • STILL IN HEAVY DEVELOPMENT, NOT SUITABLE FOR PRODUCTION USE YET

  • This software requires xrdp and XrdpUlalaca to be installed for work.

  • This software uses ScreenCaptureKit which introduced with macOS 12.3, so macOS 12.3 or higher version is required.

  • The name of this project, '麗 -Ulalaca-' is derived from the song "Urara" from the music simulation game beatmania IIDX.

INSTALLATION

USING PRE-BUILT BINARIES

To install 麗 -Ulalaca- on your system, Please check our INSTALLATION GUIDE.

BUILD FROM SOURCE

Also, you can build 麗 -Ulalaca- from source code. Since 麗 -Ulalaca- has no external dependencies yet, so you can build apps by just open the project with Xcode.

You can also check ulalaca-installer repository for automated build scripts.

NOTE FOR DEVELOPERS

  • sessionprojector.app MUST BE signed with valid Apple Developer ID, or it will requests screen recording permission on every build.
  • sessionbroker should be run as root.

AUTHOR

This software brought to you by team unstablers.

team unstablers

  • Gyuhwan Park (@unstabler)

THANKS TO

  • @am0c - 형 앞으로도 계속 하늘에서 저 지켜봐 주세요!! \ ' ')/

ulalaca's People

Contributors

jankais3r avatar unstabler avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

jevinskie

ulalaca's Issues

Connect to RDP session causes crash on hackintosh with RX580

I am testing on a hackintosh with i7-12700F, RX580, running Ventura. xrdp immediately crash after logging in the session. The session screen remains blue. On rare occasion I can move the mouse cursor for a bit before the crash.

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

The specs and the EFI is given here: https://github.com/laggykiller/Hackintosh_MSI_B660M-A_WIFI_DDR4

Note that I also have a RTX2070 inserted into motherboard, but disabled by EFI. Not sure if this is the culprit?

Here is the crash report:

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

Process:               xrdp [682]
Path:                  /usr/local/Cellar/xrdp-git/HEAD-fc31b39/sbin/xrdp
Identifier:            xrdp
Version:               ???
Code Type:             X86-64 (Native)
Parent Process:        xrdp [292]
Responsible:           xrdp [292]
User ID:               0

Date/Time:             2023-09-01 17:12:10.9127 +0800
OS Version:            macOS 13.5.1 (22G90)
Report Version:        12
Anonymous UUID:        D177EA49-7E28-DE3D-E7E5-EBB64D6AA5B9


Time Awake Since Boot: 110 seconds

System Integrity Protection: enabled

Crashed Thread:        3

Exception Type:        EXC_ARITHMETIC (SIGFPE)
Exception Codes:       0x0000000000000001, 0x0000000000000000

Termination Reason:    Namespace SIGNAL, Code 8 Floating point exception: 
8
Terminating Process:   exc handler [682]

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


Thread 0::  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	    0x7ff8160e22ae poll + 10
1   libcommon.0.dylib             	       0x1059884ca g_fd_can_read + 
38
2   xrdp                          	       0x1058f7531 
xrdp_process_main_loop + 687
3   xrdp                          	       0x1058ec5fa 
xrdp_listen_main_loop + 560
4   xrdp                          	       0x1058e6e85 main + 2213
5   dyld                          	    0x7ff815dc041f start + 1903

Thread 1:
0   libsystem_kernel.dylib        	    0x7ff8160e22ae poll + 10
1   libulalaca.0.dylib            	       0x105b357fc 
UnixSocketBase::poll(short, int) + 52
2   libulalaca.0.dylib            	       0x105b37535 
IPCConnection::workerLoop() + 141
3   libulalaca.0.dylib            	       0x105b387a7 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*) + 62
4   libsystem_pthread.dylib       	    0x7ff81611a1d3 _pthread_start 
+ 125
5   libsystem_pthread.dylib       	    0x7ff816115bd3 thread_start + 
15

Thread 2:
0   libsystem_kernel.dylib        	    0x7ff8160de0fe __psynch_cvwait 
+ 10
1   libsystem_pthread.dylib       	    0x7ff81611a758 
_pthread_cond_wait + 1242
2   libc++.1.dylib                	    0x7ff8160571e2 
std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) 
+ 18
3   libc++.1.dylib                	    0x7ff816057a51 
std::__1::__assoc_sub_state::__sub_wait(std::__1::unique_lock<std::__1::mutex>&) 
+ 45
4   libulalaca.0.dylib            	       0x105b3a517 
std::__1::__assoc_state<std::__1::unique_ptr<unsigned char, 
std::__1::default_delete<unsigned char>>>::move() + 51
5   libulalaca.0.dylib            	       0x105b39c34 
std::__1::future<std::__1::unique_ptr<unsigned char, 
std::__1::default_delete<unsigned char>>>::get() + 28
6   libulalaca.0.dylib            	       0x105b37981 
std::__1::unique_ptr<ULIPCHeader, std::__1::function<void (void*)>> 
IPCConnection::read<ULIPCHeader>(unsigned long) + 163
7   libulalaca.0.dylib            	       0x105b3789b 
IPCConnection::nextHeader() + 45
8   libulalaca.0.dylib            	       0x105b3a841 
ProjectorClient::mainLoop() + 99
9   libulalaca.0.dylib            	       0x105b3b6dd 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*) + 62
10  libsystem_pthread.dylib       	    0x7ff81611a1d3 _pthread_start 
+ 125
11  libsystem_pthread.dylib       	    0x7ff816115bd3 thread_start + 
15

Thread 3 Crashed:
0   libulalaca.0.dylib            	       0x105b3c447 
XrdpUlalacaPrivate::createCopyRects(std::__1::vector<ULIPCRect, 
std::__1::allocator<ULIPCRect>>&, int) const + 117
1   libulalaca.0.dylib            	       0x105b3c1bd 
XrdpUlalacaPrivate::updateThreadLoop() + 1095
2   libulalaca.0.dylib            	       0x105b3e071 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*) + 62
3   libsystem_pthread.dylib       	    0x7ff81611a1d3 _pthread_start 
+ 125
4   libsystem_pthread.dylib       	    0x7ff816115bd3 thread_start + 
15


Thread 3 crashed with X86 Thread State (64-bit):
  rax: 0x00000000004c2600  rbx: 0x0000000000000000  rcx: 
0x0000000000000000  rdx: 0x0000000000000000
  rdi: 0x000000010596b080  rsi: 0x0000000000000003  rbp: 
0x000070000f19ee80  rsp: 0x000070000f19edd0
   r8: 0x0000000000000ffe   r9: 0x00007f9d4bf00000  r10: 
0x0000000000000192  r11: 0x00007f9d4bf04080
  r12: 0x000070000f19eeb0  r13: 0x00007f9d4bf05630  r14: 
0x00007f9d4c853a00  r15: 0x00007f9d4bf05648
  rip: 0x0000000105b3c447  rfl: 0x0000000000010206  cr2: 
0x0000000112337000
  
Logical CPU:     4
Error Code:      0x00000000 
Trap Number:     0

Thread 3 instruction stream:
  cb 48 89 55 c8 49 89 f6-49 89 fc bf 30 00 00 00  .H.U.I..I...0...
  e8 44 30 00 00 49 89 c5-0f 57 c0 0f 11 40 08 48  [email protected]
  8b 05 fb 4c 00 00 48 83-c0 10 49 89 45 00 4d 8d  ...L..H...I.E.M.
  7d 18 41 0f 11 45 18 49-c7 45 28 00 00 00 00 4c  }.A..E.I.E(....L
  89 bd 70 ff ff ff 4c 89-ad 78 ff ff ff 41 0f bf  ..p...L..x...A..
  4e 19 41 0f bf 46 1b 0f-af c1 89 d9 0f af cb 99  N.A..F..........
 [f7]f9 48 63 f0 4c 89 ff-e8 fa 03 00 00 85 db 4c  ..Hc.L.........L	
<==
  89 7d a0 0f 84 3e 03 00-00 4c 89 6d 88 4c 89 a5  .}...>...L.m.L..
  68 ff ff ff 41 0f bf 46-19 89 45 90 0f 57 c0 f3  h...A..F..E..W..
  0f 2a c0 89 5d ac f3 0f-2a d3 f3 0f 5e c2 66 0f  .*..]...*...^.f.
  3a 0a c0 0a 41 0f bf 46-1b 89 45 98 f3 0f 2a c8  :...A..F..E...*.
  f3 0f 2c c8 f3 0f 11 55-b0 f3 0f 5e ca 0f 57 c0  ..,....U...^..W.

Binary Images:
       0x1058e1000 -        0x10590cfff xrdp (*) 
<d4030975-c4cf-38b1-9f26-5b171eeec96a> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/sbin/xrdp
       0x105982000 -        0x105991fff libcommon.0.dylib (*) 
<4107ae6e-3ccd-3cbe-a0a2-3d9f422616dd> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/lib/xrdp/libcommon.0.dylib
       0x1059a2000 -        0x1059a9fff libipm.0.dylib (*) 
<191ffd40-c22c-3db9-9bf7-1342f1adf53a> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/lib/xrdp/libipm.0.dylib
       0x1059e7000 -        0x105a0afff libxrdp.0.dylib (*) 
<eab43044-1201-3936-a699-bf70cafb224b> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/lib/xrdp/libxrdp.0.dylib
       0x105aa5000 -        0x105b00fff libssl.3.dylib (*) 
<ffa75e91-86e1-3f3e-8bdf-37ed77cc6176> 
/usr/local/Cellar/openssl@3/3.1.2/lib/libssl.3.dylib
       0x105f5a000 -        0x106279fff libcrypto.3.dylib (*) 
<1fcd44a2-e972-3d3d-95d1-4b7bf8459e95> 
/usr/local/Cellar/openssl@3/3.1.2/lib/libcrypto.3.dylib
       0x1059b6000 -        0x1059bdfff libtoml.1.dylib (*) 
<c9819b99-ddd0-3ccd-ac46-2ef287b05017> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/lib/xrdp/libtoml.1.dylib
       0x105b31000 -        0x105b40fff libulalaca.0.dylib (*) 
<6c6f50a5-c545-3c52-bb99-e7d8df016668> 
/usr/local/Cellar/xrdp-git/HEAD-fc31b39/lib/xrdp/libulalaca.0.dylib
    0x7ff8160da000 -     0x7ff816113fff libsystem_kernel.dylib (*) 
<642737ce-21cf-3d87-a7b6-7eea2c080a7e> 
/usr/lib/system/libsystem_kernel.dylib
    0x7ff815dba000 -     0x7ff815e525ef dyld (*) 
<31e1c182-e611-3883-97a3-4334a21c90bd> /usr/lib/dyld
    0x7ff816114000 -     0x7ff81611ffff libsystem_pthread.dylib (*) 
<3a3fa85c-f1fe-336c-bf68-924fc947ade3> 
/usr/lib/system/libsystem_pthread.dylib
    0x7ff816049000 -     0x7ff8160c4ff7 libc++.1.dylib (*) 
<8b258faf-4392-3385-a019-d80f49c5af31> /usr/lib/libc++.1.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=181.2M resident=0K(0%) 
swapped_out_or_unallocated=181.2M(100%)
Writable regions: Total=1.1G written=0K(0%) resident=0K(0%) 
swapped_out=0K(0%) unallocated=1.1G(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Activity Tracing                   256K        1 
Kernel Alloc Once                    8K        1 
MALLOC                           278.3M       31 
MALLOC guard page                   24K        6 
MALLOC_MEDIUM (reserved)         480.0M        4         reserved VM 
address space (unallocated)
MALLOC_NANO (reserved)           384.0M        1         reserved VM 
address space (unallocated)
STACK GUARD                       56.0M        4 
Stack                             9752K        4 
VM_ALLOCATE                          4K        1 
__DATA                             344K       45 
__DATA_CONST                       726K       41 
__DATA_DIRTY                        67K       24 
__LINKEDIT                       171.9M       10 
__OBJC_RO                         66.3M        1 
__OBJC_RW                         2013K        2 
__TEXT                            9488K       49 
dyld private memory                260K        2 
shared memory                       20K        3 
===========                     =======  ======= 
TOTAL                              1.4G      230 
TOTAL, minus reserved VM space   595.0M      230 



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

{"app_name":"xrdp","timestamp":"2023-09-01 17:12:10.00 
+0800","app_version":"","slice_uuid":"d4030975-c4cf-38b1-9f26-5b171eeec96a","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":"F16EB652-61D0-4651-87C4-4C378A7964C3","name":"xrdp"}
{
  "uptime" : 110,
  "procRole" : "Unspecified",
  "version" : 2,
  "userID" : 0,
  "deployVersion" : 210,
  "modelCode" : "MacPro7,1",
  "coalitionID" : 283,
  "osVersion" : {
    "train" : "macOS 13.5.1",
    "build" : "22G90",
    "releaseType" : "User"
  },
  "captureTime" : "2023-09-01 17:12:10.9127 +0800",
  "incident" : "F16EB652-61D0-4651-87C4-4C378A7964C3",
  "pid" : 682,
  "cpuType" : "X86-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2023-09-01 17:12:07.0412 +0800",
  "procStartAbsTime" : 110891407191,
  "procExitAbsTime" : 114762014961,
  "procName" : "xrdp",
  "procPath" : "\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/sbin\/xrdp",
  "parentProc" : "xrdp",
  "parentPid" : 292,
  "coalitionName" : "homebrew.mxcl.xrdp-git",
  "crashReporterKey" : "D177EA49-7E28-DE3D-E7E5-EBB64D6AA5B9",
  "responsiblePid" : 292,
  "responsibleProc" : "xrdp",
  "codeSigningID" : "",
  "codeSigningTeamID" : "",
  "codeSigningValidationCategory" : 0,
  "codeSigningTrustLevel" : 0,
  "sip" : "enabled",
  "exception" : {"codes":"0x0000000000000001, 
0x0000000000000000","rawCodes":[1,0],"type":"EXC_ARITHMETIC","signal":"SIGFPE"},
  "termination" : 
{"flags":0,"code":8,"namespace":"SIGNAL","indicator":"Floating point 
exception: 8","byProc":"exc handler","byPid":682},
  "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":6156,"queue":"com.apple.main-thread","frames":[{"imageOffset":33454,"symbol":"poll","symbolLocation":10,"imageIndex":8},{"imageOffset":25802,"symbol":"g_fd_can_read","symbolLocation":38,"imageIndex":1},{"imageOffset":91441,"symbol":"xrdp_process_main_loop","symbolLocation":687,"imageIndex":0},{"imageOffset":46586,"symbol":"xrdp_listen_main_loop","symbolLocation":560,"imageIndex":0},{"imageOffset":24197,"symbol":"main","symbolLocation":2213,"imageIndex":0},{"imageOffset":25631,"symbol":"start","symbolLocation":1903,"imageIndex":9}]},{"id":6173,"frames":[{"imageOffset":33454,"symbol":"poll","symbolLocation":10,"imageIndex":8},{"imageOffset":18428,"symbol":"UnixSocketBase::poll(short, 
int)","symbolLocation":52,"imageIndex":7},{"imageOffset":25909,"symbol":"IPCConnection::workerLoop()","symbolLocation":141,"imageIndex":7},{"imageOffset":30631,"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":62,"imageIndex":7},{"imageOffset":25043,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":10},{"imageOffset":7123,"symbol":"thread_start","symbolLocation":15,"imageIndex":10}]},{"id":6174,"frames":[{"imageOffset":16638,"symbol":"__psynch_cvwait","symbolLocation":10,"imageIndex":8},{"imageOffset":26456,"symbol":"_pthread_cond_wait","symbolLocation":1242,"imageIndex":10},{"imageOffset":57826,"symbol":"std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&)","symbolLocation":18,"imageIndex":11},{"imageOffset":59985,"symbol":"std::__1::__assoc_sub_state::__sub_wait(std::__1::unique_lock<std::__1::mutex>&)","symbolLocation":45,"imageIndex":11},{"imageOffset":38167,"symbol":"std::__1::__assoc_state<std::__1::unique_ptr<unsigned 
char, std::__1::default_delete<unsigned 
char>>>::move()","symbolLocation":51,"imageIndex":7},{"imageOffset":35892,"symbol":"std::__1::future<std::__1::unique_ptr<unsigned 
char, std::__1::default_delete<unsigned 
char>>>::get()","symbolLocation":28,"imageIndex":7},{"imageOffset":27009,"symbol":"std::__1::unique_ptr<ULIPCHeader, 
std::__1::function<void (void*)>> 
IPCConnection::read<ULIPCHeader>(unsigned 
long)","symbolLocation":163,"imageIndex":7},{"imageOffset":26779,"symbol":"IPCConnection::nextHeader()","symbolLocation":45,"imageIndex":7},{"imageOffset":38977,"symbol":"ProjectorClient::mainLoop()","symbolLocation":99,"imageIndex":7},{"imageOffset":42717,"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":62,"imageIndex":7},{"imageOffset":25043,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":10},{"imageOffset":7123,"symbol":"thread_start","symbolLocation":15,"imageIndex":10}]},{"triggered":true,"id":6175,"instructionState":{"instructionStream":{"bytes":[203,72,137,85,200,73,137,246,73,137,252,191,48,0,0,0,232,68,48,0,0,73,137,197,15,87,192,15,17,64,8,72,139,5,251,76,0,0,72,131,192,16,73,137,69,0,77,141,125,24,65,15,17,69,24,73,199,69,40,0,0,0,0,76,137,189,112,255,255,255,76,137,173,120,255,255,255,65,15,191,78,25,65,15,191,70,27,15,175,193,137,217,15,175,203,153,247,249,72,99,240,76,137,255,232,250,3,0,0,133,219,76,137,125,160,15,132,62,3,0,0,76,137,109,136,76,137,165,104,255,255,255,65,15,191,70,25,137,69,144,15,87,192,243,15,42,192,137,93,172,243,15,42,211,243,15,94,194,102,15,58,10,192,10,65,15,191,70,27,137,69,152,243,15,42,200,243,15,44,200,243,15,17,85,176,243,15,94,202,15,87,192],"offset":96}},"threadState":{"r13":{"value":140313560634928},"rax":{"value":4990464},"rflags":{"value":66054},"cpu":{"value":4},"r14":{"value":140313570392576},"rsi":{"value":3},"r8":{"value":4094},"cr2":{"value":4600328192},"rdx":{"value":0},"r10":{"value":402},"r9":{"value":140313560612864},"r15":{"value":140313560634952},"rbx":{"value":0},"trap":{"value":0},"err":{"value":0},"r11":{"value":140313560629376},"rip":{"value":4390634567,"matchesCrashFrame":1},"rbp":{"value":123145555668608},"rsp":{"value":123145555668432},"r12":{"value":123145555668656},"rcx":{"value":0},"flavor":"x86_THREAD_STATE","rdi":{"value":4388728960}},"frames":[{"imageOffset":46151,"symbol":"XrdpUlalacaPrivate::createCopyRects(std::__1::vector<ULIPCRect, 
std::__1::allocator<ULIPCRect>>&, int) 
const","symbolLocation":117,"imageIndex":7},{"imageOffset":45501,"symbol":"XrdpUlalacaPrivate::updateThreadLoop()","symbolLocation":1095,"imageIndex":7},{"imageOffset":53361,"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":62,"imageIndex":7},{"imageOffset":25043,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":10},{"imageOffset":7123,"symbol":"thread_start","symbolLocation":15,"imageIndex":10}]}],
  "usedImages" : [
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4388163584,
    "size" : 180224,
    "uuid" : "d4030975-c4cf-38b1-9f26-5b171eeec96a",
    "path" : "\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/sbin\/xrdp",
    "name" : "xrdp"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4388823040,
    "size" : 65536,
    "uuid" : "4107ae6e-3ccd-3cbe-a0a2-3d9f422616dd",
    "path" : 
"\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/lib\/xrdp\/libcommon.0.dylib",
    "name" : "libcommon.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4388954112,
    "size" : 32768,
    "uuid" : "191ffd40-c22c-3db9-9bf7-1342f1adf53a",
    "path" : 
"\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/lib\/xrdp\/libipm.0.dylib",
    "name" : "libipm.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4389236736,
    "size" : 147456,
    "uuid" : "eab43044-1201-3936-a699-bf70cafb224b",
    "path" : 
"\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/lib\/xrdp\/libxrdp.0.dylib",
    "name" : "libxrdp.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4390014976,
    "size" : 376832,
    "uuid" : "ffa75e91-86e1-3f3e-8bdf-37ed77cc6176",
    "path" : 
"\/usr\/local\/Cellar\/openssl@3\/3.1.2\/lib\/libssl.3.dylib",
    "name" : "libssl.3.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4394950656,
    "size" : 3276800,
    "uuid" : "1fcd44a2-e972-3d3d-95d1-4b7bf8459e95",
    "path" : 
"\/usr\/local\/Cellar\/openssl@3\/3.1.2\/lib\/libcrypto.3.dylib",
    "name" : "libcrypto.3.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4389036032,
    "size" : 32768,
    "uuid" : "c9819b99-ddd0-3ccd-ac46-2ef287b05017",
    "path" : 
"\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/lib\/xrdp\/libtoml.1.dylib",
    "name" : "libtoml.1.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4390588416,
    "size" : 65536,
    "uuid" : "6c6f50a5-c545-3c52-bb99-e7d8df016668",
    "path" : 
"\/usr\/local\/Cellar\/xrdp-git\/HEAD-fc31b39\/lib\/xrdp\/libulalaca.0.dylib",
    "name" : "libulalaca.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 140703498608640,
    "size" : 237568,
    "uuid" : "642737ce-21cf-3d87-a7b6-7eea2c080a7e",
    "path" : "\/usr\/lib\/system\/libsystem_kernel.dylib",
    "name" : "libsystem_kernel.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 140703495331840,
    "size" : 624112,
    "uuid" : "31e1c182-e611-3883-97a3-4334a21c90bd",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 140703498846208,
    "size" : 49152,
    "uuid" : "3a3fa85c-f1fe-336c-bf68-924fc947ade3",
    "path" : "\/usr\/lib\/system\/libsystem_pthread.dylib",
    "name" : "libsystem_pthread.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 140703498014720,
    "size" : 507896,
    "uuid" : "8b258faf-4392-3385-a019-d80f49c5af31",
    "path" : "\/usr\/lib\/libc++.1.dylib",
    "name" : "libc++.1.dylib"
  }
],
  "sharedCache" : {
  "base" : 140703494709248,
  "size" : 21474836480,
  "uuid" : "08a60487-01b2-3cd1-a713-ab9ca254667b"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=181.2M 
resident=0K(0%) swapped_out_or_unallocated=181.2M(100%)\nWritable regions: 
Total=1.1G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) 
unallocated=1.1G(100%)\n\n                                VIRTUAL   REGION 
\nREGION TYPE                        SIZE    COUNT (non-coalesced) 
\n===========                     =======  ======= \nActivity Tracing                   
256K        1 \nKernel Alloc Once                    8K        1 \nMALLOC                           
278.3M       31 \nMALLOC guard page                   24K        6 
\nMALLOC_MEDIUM (reserved)         480.0M        4         reserved VM 
address space (unallocated)\nMALLOC_NANO (reserved)           384.0M        
1         reserved VM address space (unallocated)\nSTACK GUARD                       
56.0M        4 \nStack                             9752K        4 
\nVM_ALLOCATE                          4K        1 \n__DATA                             
344K       45 \n__DATA_CONST                       726K       41 
\n__DATA_DIRTY                        67K       24 \n__LINKEDIT                       
171.9M       10 \n__OBJC_RO                         66.3M        1 
\n__OBJC_RW                         2013K        2 \n__TEXT                            
9488K       49 \ndyld private memory                260K        2 \nshared 
memory                       20K        3 \n===========                     
=======  ======= \nTOTAL                              1.4G      230 
\nTOTAL, minus reserved VM space   595.0M      230 \n",
  "legacyInfo" : {
  "threadTriggered" : {

  }
},
  "logWritingSignature" : "c6d121640235f01fffb2e2236b6f06a9b9fad9e9"
}

Btw I also tested with Sonoma. After logging in, xrdp does not crash, but the rdp screen stays at blue screen. The mouse cursor is teleported to left upper corner, and I cannot move it in the RDP session. However if I left click in RDP session, I can see that it went through and responded to my left click.

The package requires a newer system version

Hello! I'm installing release of ulalaca session broker (0.2.2 and 0.2.3-pre1) on Monterey ( fresh install, on Proxmox) and got this error

image

How to solwe it ? xrdp-tumod installed

Random disconnects from RDP session on M1 macmini

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"
}

sessionprojector.app crashes when disk running out of space

ENVIRONMENT

  • Mac Mini (M1, 2020, 16GB)
  • macOS 14 Sonoma (14.0; 23A344)

SUMMARY

// Thread 34 Queue : com.apple.NSXPCConnection.m-user.com.apple.replayd (serial)
// #2	0x0000000100e01e7c in SCScreenRecorder.stream(_:didStopWithError:) at /Users/cheesekun/works/ulalaca/sessionprojector/sessionprojector/recorder/SCScreenRecorder.swift:217

extension SCScreenRecorder: SCStreamDelegate {
    public func stream(_ stream: SCStream, didStopWithError error: Error) {
        logger.error("didStopWithError: \(error.localizedDescription)")
        //                                ^^^^^ Thread 34: EXC_BAD_ACCESS (code=1, address=0x0)

        delegateQueue.async {
            self.delegate?.screenRecorder(didStopWithError: error)
        }
    }
}
; Thread 34 Queue : com.apple.NSXPCConnection.m-user.com.apple.replayd (serial)
; #4	0x00000001f28f71f0 in -[SCStreamManager stream:didStopWithError:] ()

    0x1f28f71d4 <+428>: bl     0x1f291cb80               ; objc_msgSend$delegate
    0x1f28f71d8 <+432>: mov    x29, x29
    0x1f28f71dc <+436>: bl     0x1f290a5f8               ; symbol stub for: objc_retainAutoreleasedReturnValue
    0x1f28f71e0 <+440>: mov    x21, x0
    0x1f28f71e4 <+444>: mov    x2, x22
    0x1f28f71e8 <+448>: mov    x3, x20
    0x1f28f71ec <+452>: bl     0x1f291fa80               ; objc_msgSend$stream:didStopWithError:
->  0x1f28f71f0 <+456>: mov    x0, x21
    0x1f28f71f4 <+460>: bl     0x1f290a5b8               ; symbol stub for: objc_release
    0x1f28f71f8 <+464>: b      0x1f28f7218               ; <+496>
    0x1f28f71fc <+468>: cmp    w8, #0x2
    0x1f28f7200 <+472>: b.hi   0x1f28f7218               ; <+496>


(lldb) register read --all
General Purpose Registers:
       x19 = 0x00006000007039c0
       x20 = 0x0000000000000000 ; <-- ???????????????????????????
       x21 = 0x00006000020c78d0
       x22 = 0x0000600002ec0700
       x23 = 0x0000000000000001
       x24 = 0x0000000000000001
       x25 = 0x0000000000000000
       x26 = 0x0000600002dc0000
       x27 = 0x0000000000000001
       x28 = 0x000060000076eb40
        fp = 0x000000016f0c1f60
        sp = 0x000000016f0c1ef0
        pc = 0x00000001f28f71f0  ScreenCaptureKit`-[SCStreamManager stream:didStopWithError:] + 456
       w19 = 0x007039c0
       w20 = 0x00000000
48 registers were unavailable.
  • ScreenCaptureKit calls SCStreamDelegate::stream: (SCStream!) stream didStopWithError: (Error!) error when something is going wrong
    • error parameter is marked as nonnull, but ScreenCaptureKit(or ReplayKit) actually passes nil

어떻게 해야 하지

  • Apple에 버그 리포트?

  • guard let error = (error as? Any) as? Error 같은 임시 조치를 해야 하는데, 이게 먹을까?

  • nonnull이라면서 왜 null인데.. 얼탱이 X

Crash after logging in via xrdp

Hello, I have followed the guide here
ulalaca-xrdp
and installed the Session Projector app, but uppon connection with the RDP client mstsc.exe from another computer, I get the "Your Remote Desktop Services session has ended." message immediately after signing in via the xrdp gui. I am using MacOS Ventura Hackintosh with an RX 580 and attached is my /etc/xrdp/xrdp.ini which has been edited per the guide.
Any help would be much appreciated, thanks
xrdp.ini.zip

mouse cursor position issues with HiDPI (Retina) displays

증세

  • Retina 디스플레이에서 sessionprojector.app을 통해 세션에 연결한 경우, 마우스 좌표 계산이 이상하다.

임시 해결 방법

  • Retina가 아닌 Low-res 해상도를 설정한다. (1920x1080@1x ...)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.