Commit Graph

97 Commits

Author SHA1 Message Date
Viktor Liu
fb9c0ef602 Make session key authorization atomic, unblock the encoder on teardown, drop agent privileges unconditionally 2026-08-29 09:12:33 +02:00
Viktor Liu
95e86deeb8 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
432d249cde Accept bare marker protocols, reject msb_right framebuffers, split the policy row conversion 2026-08-29 08:24:36 +02:00
Viktor Liu
913a1c6033 Fix framebuffer layout handling, capturer lifecycle and macOS pointer state races 2026-08-27 21:08:20 +02:00
Viktor Liu
071bd94d14 Close view-only input, approval-responder and inbound-block gaps in the VNC path 2026-08-27 21:07:03 +02:00
Viktor Liu
4d7ca23184 Split the status summary into per-section helpers and scope retrackConn to service mode 2026-08-27 19:49:39 +02:00
Viktor Liu
90483da26b Address review findings on the VNC server, session auth and capture decoder 2026-08-27 18:33:52 +02:00
Viktor Liu
a730672a4e Stamp modifiers on injected macOS key events so shifted input works 2026-08-07 16:04:23 +02:00
Viktor Liu
12b18f5bbb Recycle the macOS VNC agent per connection so permission prompts work 2026-08-07 15:59:45 +02:00
Viktor Liu
ef1d406edd Ask for Screen Recording from the agent and Accessibility on first input 2026-08-06 12:56:25 +02:00
Viktor Liu
78bc6560b8 Fail fast when no console session exists and keep the SAS value type 2026-08-06 10:40:16 +02:00
Viktor Liu
4984e8efef Draw inverted monochrome cursor pixels so the text caret is visible 2026-08-03 10:07:53 +02:00
Viktor Liu
3d4137ae19 Wait for the Windows VNC agent to respawn instead of refusing the connection 2026-08-03 09:31:27 +02:00
Viktor Liu
a117c19b0d Treat an unreadable SoftwareSASGeneration as unknown rather than absent 2026-07-31 21:07:19 +02:00
Viktor Liu
59c75127a4 Move the service agent accessor to the platforms that have one 2026-07-31 19:23:26 +02:00
Viktor Liu
9c3347021a Restrict the SAS event to SYSTEM and restore its registry snapshot per cycle 2026-07-31 19:23:26 +02:00
Viktor Liu
90d2687e48 Push a status snapshot when VNC sessions start or end 2026-07-30 15:18:31 +02:00
Viktor Liu
8e919b4ee9 Share one VNC session agent manager across all accept loops 2026-07-30 14:29:34 +02:00
Viktor Liu
cec9ea8c00 Support IPv6 for the embedded VNC server and browser proxy 2026-07-12 18:46:47 +02:00
Viktor Liu
f2c79201b3 Fix review findings for embedded VNC server 2026-06-10 10:57:50 +02:00
Viktor Liu
144dfbc12c Capture listener locally in accept loops to avoid nil deref on Stop 2026-05-25 17:02:28 +02:00
Viktor Liu
6c9465df54 Handle Lstat error in purgeStaleAgentSubdir 2026-05-25 15:52:30 +02:00
Viktor Liu
6cd5d6084f Split prepareAgentSocketDir to reduce cognitive complexity 2026-05-25 15:09:28 +02:00
Viktor Liu
3bcacffd2c Rename xauth_linux.go to xauth_x11.go so FreeBSD picks it up 2026-05-25 14:10:01 +02:00
Viktor Liu
65f302b698 Authenticate virtual X11 sessions with per-session MIT-MAGIC-COOKIE-1 2026-05-25 13:26:29 +02:00
Viktor Liu
2f67841b1e Reuse /var/run/netbird as VNC agent socket parent via configs.RuntimeDir 2026-05-25 11:11:07 +02:00
Viktor Liu
bf2fb2fd44 Address CodeRabbit review on embedded VNC PR 2026-05-24 18:52:57 +02:00
Viktor Liu
4e3e3ce6d3 Surface VNC initiator in status, clarify proxy logs, dampen capture noise 2026-05-24 17:07:59 +02:00
Viktor Liu
5e2830be8a Harden VNC server, IPC, and management plumbing 2026-05-24 16:02:36 +02:00
Viktor Liu
f557e665a5 Return error from gateApproval and log at the caller 2026-05-23 19:50:27 +02:00
Viktor Liu
fa57eedaf5 Address CodeRabbit review and fix CI on embedded-vnc 2026-05-23 19:44:21 +02:00
Viktor Liu
7cb6388349 Decline VNC approval early when no console user is logged in 2026-05-23 19:15:01 +02:00
Viktor Liu
1f912be673 Address codespell and Sonar findings on embedded-vnc 2026-05-23 19:06:02 +02:00
Viktor Liu
8d329da591 Evict orphaned packet captures and annotate VNC streams 2026-05-23 18:33:55 +02:00
Viktor Liu
8e72967bbe Add per-connection user-approval prompts for VNC 2026-05-23 18:33:55 +02:00
Viktor Liu
c29ef638f4 Switch VNC daemon-to-agent IPC to Unix sockets and audit-log every connection 2026-05-22 15:32:35 +02:00
Viktor Liu
97b7b010f5 Fold init-only VNC and SSH setters into Config-struct constructors 2026-05-22 13:32:25 +02:00
Viktor Liu
030c57150f Signal Zlib encode failure and fall back to Raw 2026-05-22 12:06:52 +02:00
Viktor Liu
1cc5967198 Address follow-up CodeRabbit VNC findings 2026-05-22 11:35:16 +02:00
Viktor Liu
412193c602 Address CodeRabbit VNC review feedback 2026-05-21 18:09:07 +02:00
Viktor Liu
5e67febf57 Address Sonar findings and move noise to direct dependency 2026-05-21 17:55:27 +02:00
Viktor Liu
ee348ba007 Abort VNC agent dial retry loop on server shutdown 2026-05-21 17:44:22 +02:00
Viktor Liu
3d3055dc7f Replace VNC JWT auth with a Noise_IK handshake bound to ACL-pushed pubkeys 2026-05-21 17:36:15 +02:00
Viktor Liu
2f4ddf0796 Emit explicit Fn flagsChanged transitions around macOS navigation keys 2026-05-21 12:30:14 +02:00
Viktor Liu
98d533c8e8 Address CodeRabbit feedback on VNC server agent matching and session lifecycle 2026-05-21 12:01:45 +02:00
Viktor Liu
ef4ea2e311 Set Fn flag on macOS navigation keycodes so the next key isn't treated as Fn-modified 2026-05-20 18:03:38 +02:00
Viktor Liu
b41d11bbbe Allow Cursor pseudo-encoding in session mode and cache last XFixes sprite 2026-05-20 17:39:07 +02:00
Viktor Liu
f37e228cc2 Replace magic env-var and subcommand strings with named constants 2026-05-20 17:22:02 +02:00
Viktor Liu
640a267556 Address CodeRabbit feedback on VNC server 2026-05-20 17:16:55 +02:00
Viktor Liu
17359cdc1e Fix VNC lint, 386 atomic alignment, and Sonar code smells 2026-05-20 16:34:29 +02:00