Viktor Liu
|
9ede661bab
|
Retrack the agent connection once it is wrapped with the granted peer address
|
2026-09-23 15:05:30 +02:00 |
|
Viktor Liu
|
c26b17653a
|
Accept named-pipe agent connections, carry the remote peer through the agent handshake, and treat pipe disconnects as probes
|
2026-09-23 14:03:59 +02:00 |
|
Viktor Liu
|
b9264d2824
|
Serve the Windows VNC agent on a ProtectedPrefix named pipe and verify the server PID
|
2026-09-23 13:23:50 +02:00 |
|
Viktor Liu
|
c02a181e43
|
Place the Windows VNC agent socket under SystemTemp, falling back to Windows\Temp where it does not exist
|
2026-09-23 12:55:13 +02:00 |
|
Viktor Liu
|
e42fe6dfc0
|
Bound the Windows clipboard read by the block size instead of scanning for a NUL
|
2026-09-23 12:37:05 +02:00 |
|
Viktor Liu
|
8f158a0827
|
Reset X11 button state on reconnect, read the Shift+AltGr console table, sync remote Caps Lock with macOS, and restore the FreeBSD stride test
|
2026-09-23 10:18:13 +02:00 |
|
Viktor Liu
|
395d6521f2
|
Make the token-leak, VNC port-scoping and bidirectional-SSH tests able to fail
|
2026-09-23 08:57:38 +02:00 |
|
Viktor Liu
|
d6f46b79a3
|
Count in-flight writes in the final metrics tick and scope the agent token constants to their platforms
|
2026-09-23 08:54:08 +02:00 |
|
Viktor Liu
|
adcd8e3ec5
|
Report FBU metrics as untracked for service-mode proxied sessions instead of as zero
|
2026-09-23 08:51:31 +02:00 |
|
Viktor Liu
|
e0fe7cccb7
|
Make the VNC server single-use and recognise crash-leftover desktop processes by their recorded command
|
2026-09-23 08:36:59 +02:00 |
|
Viktor Liu
|
f1a5538840
|
Map uinput keysyms and typed text through the console's active keymap, and cover the keypad, lock and AltGr keysyms
|
2026-09-23 08:23:18 +02:00 |
|
Viktor Liu
|
3cc3da41c1
|
Open the FreeBSD framebuffer read-only and decode depth-24 as 32-bit storage, validate X11 byte order and visual masks, honour destination stride, and drop the cached frame on close
|
2026-09-23 08:16:15 +02:00 |
|
Viktor Liu
|
47c51fa3c4
|
Keep Windows input state per session, reject unmappable VkKeyScanA results, queue clipboard and paste reliably, and deselect the GDI bitmap before deleting it
|
2026-09-23 08:12:31 +02:00 |
|
Viktor Liu
|
ff4d6928f7
|
Fix macOS input permissions, Caps Lock, scroll and layout-independent typing, reconnect the X11 injector, and release VNC resources when start fails
|
2026-09-23 08:07:11 +02:00 |
|
Viktor Liu
|
9b0a3d3b29
|
Hand the macOS agent token over stdin, refuse a pre-existing SAS event, bound session writes, and stop the service agent after handlers drain
|
2026-09-23 07:43:28 +02:00 |
|
Viktor Liu
|
574e68a9e6
|
Harden the xauth traversal walk against symlinks, keep the runtime dir readable, and enable SeIncreaseQuotaPrivilege for agent spawning
|
2026-09-22 21:09:53 +02:00 |
|
Viktor Liu
|
d0e705bb25
|
Make the agent token-leak assertion able to fail
|
2026-09-22 21:06:07 +02:00 |
|
Viktor Liu
|
8f06a43d93
|
Fix gosec bounds in the byte swizzle, drop the now-unused releaseCapture, and make the SSH and approval-reuse tests actually exercise their paths
|
2026-09-22 21:03:30 +02:00 |
|
Viktor Liu
|
90450bd83b
|
Frame the VNC session metrics explicitly instead of inferring updates from payload bytes
|
2026-09-22 20:14:53 +02:00 |
|
Viktor Liu
|
88dbac029e
|
Order macOS pointer events by the previous button state, scale the cursor position into framebuffer pixels, and escalate crash cleanup to SIGKILL
|
2026-09-22 20:10:15 +02:00 |
|
Viktor Liu
|
a5c146ccda
|
Restore Windows privileges on shutdown, refuse approval on a locked session, and stop sessions reading a recycled capture buffer
|
2026-09-22 20:05:54 +02:00 |
|
Viktor Liu
|
b703eb4409
|
Support scroll wheel and the missing modifier keysyms on uinput, and keep X11 capture when XTest is absent
|
2026-09-22 19:58:14 +02:00 |
|
Viktor Liu
|
d1d8c19fc7
|
Retry a transient cursor-source failure and stop reporting stale framebuffer geometry
|
2026-09-22 19:56:19 +02:00 |
|
Viktor Liu
|
67c786b4f4
|
Report the MDM VNC keys to the UI and bound the copyrect tile-hash map
|
2026-09-22 19:53:43 +02:00 |
|
Viktor Liu
|
24f832e032
|
Fix big-endian pixel swizzle, closed-capturer panic on FreeBSD, and the macOS agent socket dir symlink race
|
2026-09-22 19:50:21 +02:00 |
|
Viktor Liu
|
2f03ea4051
|
Copy authorization slices on update, drain queued input on close, and drop input when the desktop switch fails
|
2026-09-22 19:46:36 +02:00 |
|
Viktor Liu
|
921aa2b543
|
Refuse ambiguous X11 display selection, harden the xauth temp file, and reset the service-agent latch on restart
|
2026-09-22 19:34:11 +02:00 |
|
Viktor Liu
|
c622075088
|
Carry the VNC authorization across a listener rebind
|
2026-09-09 09:23:58 +02:00 |
|
Viktor Liu
|
8e0f8d02d0
|
Retry VNC accept on transient connection and resource errors
|
2026-09-03 10:05:09 +02:00 |
|
Viktor Liu
|
410faf9db0
|
Say whether an approval was refused, unanswered, or never shown
|
2026-08-31 15:15:37 +02:00 |
|
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 |
|