Commit Graph
112 Commits
Author SHA1 Message Date
Viktor Liu e54fbe7023 Stop retrying an Accept that will not recover 2026-08-31 15:10:13 +02:00
Viktor Liu 89aafa16eb Describe the approval no-match result and the cursor-skip key as they behave 2026-08-30 05:56:59 +02:00
Viktor Liu 8389211aa2 Refuse an ambiguous X display and settle the approval timeout race under one claim 2026-08-29 17:25:02 +02:00
Viktor Liu c49727fb73 Attach to the X server on the active VT and keep a retryable DXGI frame from tearing down the capturer 2026-08-29 16:59:05 +02:00
Viktor Liu ab3d72660d Keep DXGI on an idle desktop, honour the FreeBSD pitch when swizzling, close the handler-drain race 2026-08-29 16:25:07 +02:00
Viktor Liu 5b46753f1d Reject an unsupported VNC session id and say why a cursor rect was skipped 2026-08-29 16:09:47 +02:00
Viktor Liu 7781d1cb7a Require a real first DXGI frame and read the FreeBSD framebuffer at its true pitch 2026-08-29 15:51:19 +02:00
Viktor Liu 0adf5ca70d Authenticate the daemon and its VNC agent to each other without sending the token 2026-08-29 15:45:09 +02:00
Viktor Liu bba7acaafa Encode one framebuffer update at a single negotiated pixel format 2026-08-29 13:56:54 +02:00
Viktor Liu 424951c046 Scope crash recovery to Linux, drain connection handlers before teardown 2026-08-29 13:43:12 +02:00
Viktor Liu 32b3016589 Honour the negotiated pixel format for the cursor, enqueue key edges reliably, drop racy test writes 2026-08-29 12:40:14 +02:00
Viktor Liu b56da75718 Stop narrowing the shared runtime dir, close the injector on stop, allowlist VNC metrics 2026-08-29 10:29:17 +02:00
Viktor Liu 5ba3de375b Compare cursor serials by identity so returning to an earlier cursor updates 2026-08-29 10:25:09 +02:00
Viktor Liu ec320278e3 Collect auth requirements for bidirectional source peers and fix follow-up review findings 2026-08-29 09:57:07 +02:00
Viktor Liu 1c10c19d45 Persist virtual session processes for crash recovery and identify them by start time 2026-08-29 09:48:45 +02:00
Viktor Liu 42450dbfbe Make session key authorization atomic, unblock the encoder on teardown, drop agent privileges unconditionally 2026-08-29 09:12:33 +02:00
Viktor Liu 8b719f0b4e Resolve VNC authorized users on the components path and fix uinput, X11 and macOS input gaps 2026-08-29 09:04:02 +02:00
Viktor Liu a126479ec5 Accept bare marker protocols, reject msb_right framebuffers, split the policy row conversion 2026-08-29 08:24:36 +02:00
Viktor Liu 1e923ccb31 Fix framebuffer layout handling, capturer lifecycle and macOS pointer state races 2026-08-27 21:08:20 +02:00
Viktor Liu ab472f572d Close view-only input, approval-responder and inbound-block gaps in the VNC path 2026-08-27 21:07:03 +02:00
Viktor Liu e426401941 Split the status summary into per-section helpers and scope retrackConn to service mode 2026-08-27 19:49:39 +02:00
Viktor Liu 47d8f912e5 Address review findings on the VNC server, session auth and capture decoder 2026-08-27 18:33:52 +02:00
Viktor Liu a7de70691b Stamp modifiers on injected macOS key events so shifted input works 2026-08-07 16:04:23 +02:00
Viktor Liu e95365f8b1 Recycle the macOS VNC agent per connection so permission prompts work 2026-08-07 15:59:45 +02:00
Viktor Liu ed1fb4b309 Ask for Screen Recording from the agent and Accessibility on first input 2026-08-06 12:56:25 +02:00
Viktor Liu 6781cd74bb Fail fast when no console session exists and keep the SAS value type 2026-08-06 10:40:16 +02:00
Viktor Liu 2b0b6abfde Draw inverted monochrome cursor pixels so the text caret is visible 2026-08-03 10:07:53 +02:00
Viktor Liu eb26ecb669 Wait for the Windows VNC agent to respawn instead of refusing the connection 2026-08-03 09:31:27 +02:00
Viktor Liu add0561909 Treat an unreadable SoftwareSASGeneration as unknown rather than absent 2026-07-31 21:07:19 +02:00
Viktor Liu ae20413a1f Move the service agent accessor to the platforms that have one 2026-07-31 19:23:26 +02:00
Viktor Liu 063e9e5068 Restrict the SAS event to SYSTEM and restore its registry snapshot per cycle 2026-07-31 19:23:26 +02:00
Viktor Liu 8c0cebae62 Push a status snapshot when VNC sessions start or end 2026-07-30 15:18:31 +02:00
Viktor Liu 34669a0be8 Share one VNC session agent manager across all accept loops 2026-07-30 14:29:34 +02:00
Viktor Liu 4b946ec219 Support IPv6 for the embedded VNC server and browser proxy 2026-07-12 18:46:47 +02:00
Viktor Liu 4adaa73253 Fix review findings for embedded VNC server 2026-06-10 10:57:50 +02:00
Viktor Liu 88cf5f887d Capture listener locally in accept loops to avoid nil deref on Stop 2026-05-25 17:02:28 +02:00
Viktor Liu 6db4ecf9a5 Handle Lstat error in purgeStaleAgentSubdir 2026-05-25 15:52:30 +02:00
Viktor Liu f9959e5325 Split prepareAgentSocketDir to reduce cognitive complexity 2026-05-25 15:09:28 +02:00
Viktor Liu b1b96eeb89 Rename xauth_linux.go to xauth_x11.go so FreeBSD picks it up 2026-05-25 14:10:01 +02:00
Viktor Liu 0b27956b3e Authenticate virtual X11 sessions with per-session MIT-MAGIC-COOKIE-1 2026-05-25 13:26:29 +02:00
Viktor Liu ebbf052149 Reuse /var/run/netbird as VNC agent socket parent via configs.RuntimeDir 2026-05-25 11:11:07 +02:00
Viktor Liu a31677e33b Address CodeRabbit review on embedded VNC PR 2026-05-24 18:52:57 +02:00
Viktor Liu e77e0de7d8 Surface VNC initiator in status, clarify proxy logs, dampen capture noise 2026-05-24 17:07:59 +02:00
Viktor Liu 9e84c998b3 Harden VNC server, IPC, and management plumbing 2026-05-24 16:02:36 +02:00
Viktor Liu 03cf48f8cc Return error from gateApproval and log at the caller 2026-05-23 19:50:27 +02:00
Viktor Liu 5344b2cf8a Address CodeRabbit review and fix CI on embedded-vnc 2026-05-23 19:44:21 +02:00
Viktor Liu bde5c6fdcc Decline VNC approval early when no console user is logged in 2026-05-23 19:15:01 +02:00
Viktor Liu 544ebb3575 Address codespell and Sonar findings on embedded-vnc 2026-05-23 19:06:02 +02:00
Viktor Liu 7b1b3709f5 Evict orphaned packet captures and annotate VNC streams 2026-05-23 18:33:55 +02:00
Viktor Liu a70446b8af Add per-connection user-approval prompts for VNC 2026-05-23 18:33:55 +02:00