Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
|
2026-03-21
| ||
| 14:36 | (evdev) propagate utf8 info even with alt modifiers held Many applications rely on the text data for shortcuts that use alt, so forward the utf8 data without accidentally triggering any input_utf8 handlers. Note that before this patch the ltlut lookup returned 0 unconditionally. Leaf check-in: 4f2a4052fa user: vimpostor tags: trunk, master | |
| 01:16 | (lwa) add _paste entrypoint and handle CLIPBOARD_PASTE NEWSEGMENT push check-in: 7a498dde86 user: letoram tags: trunk, master | |
|
2026-03-20
| ||
| 18:37 | (core) start re-adding shaper support in-engine This is still incomplete (yet functional) as it enforces harfbuzz rather than have it as a 'if-available-with-fallback'. Due to upstream flirting with slopping future features we also need an alternative to avoid the taint. The form here "should" now respect ligatures but we need controls in the format string and respect-geohint for _lwa. Size-estimation is still not correct, xadvance is only considered from the metrics of FreeType and not from the shaper (some mess needed to jump between em, pt matched to dpi). These still block support for other script measures. The bigger find though was that the cache mechanism had a subtle break when mixing calls between 'by index' (SizeChain default) and 'by codepoint' (RenderChain) where the cache entry would be set in the index call, causing the wrong glyph being used to render, which was fun to debug. check-in: 30b89a34b1 user: letoram tags: trunk, master | |
|
2026-03-18
| ||
| 01:21 | (shmif/lua) have recordtarget forward appl-temp basedir This fixes afsrv_encode proto=png storing files outside of the appl. check-in: 19b0f85df3 user: letoram tags: trunk, master | |
|
2026-03-17
| ||
| 11:58 | (shmif) extend DEVICE_NODE with starting directory and map that+keystore in preroll check-in: 5004ee540c user: letoram tags: trunk, master | |
| 04:17 | (lua) let arcantarget_hint target subsegments, expose more events (bchunkstate, alert, ident) check-in: cf43778b79 user: letoram tags: trunk, master | |
| 02:56 | (platform) always create a new session between watchdog and main process check-in: 0df39f4a9a user: letoram tags: trunk, master | |
|
2026-03-13
| ||
| 01:24 | (platform/evdev) map in libseat dispatch forward to command-mapping This brings us to VT switch-away working. For switching back we need to handle the release_device parts by having separate tracking for path<->device_id. check-in: 0191e86cc2 user: void tags: trunk, master | |
|
2026-03-12
| ||
| 21:43 | (platform/posix) psep_open libseat- access device working-ish Only tested using seat-launch arcan durden so far, next up is to detect the ctrl-alt-Fn switch requests as that can potentially come from us or from external. check-in: b0544a5ab6 user: void tags: trunk, master | |
| 20:29 | (platform/evdev) missed one patch in previous commit check-in: d2b532e908 user: letoram tags: trunk, master | |
| 20:08 | (platform/evdev) wire in opt-in libseat Untested still, need to prepare a box for this specifically. check-in: f549a043d5 user: letoram tags: trunk, master | |
| 20:08 | (net) hook up bprogress feedback check-in: 69d1c62fe2 user: letoram tags: trunk, master | |
|
2026-03-11
| ||
| 17:10 | (doc) fix crash when generating LSP spec.lua While we are at it, also fix the botched indentation introduced in [842240e7e5] check-in: 776a605c76 user: vimpostor tags: trunk, master | |
|
2026-03-10
| ||
| 18:11 | (doc) large update harmonising fields/arguments and adding config/controller scope check-in: 8d7511b7b9 user: void tags: trunk, master | |
|
2026-03-09
| ||
| 13:14 | (afsrv-net) run app from cache if present Left should just be progress now and synch the afsrv_encode bits and we can finally test/prod at the usecase of 'diropen from durden, share into appl'. check-in: ff84203702 user: letoram tags: trunk, master | |
|
2026-03-08
| ||
| 19:06 | (core) wire up -N for passing config.lua to afsrv_net This will be force-injected during net_open calls when connecting as a directory client. This should probably also be done in afsrv_remoting and afsrv_encode as both of those also benefit from the dynamic evaluation of encoding parameters. check-in: 4d8a4af815 user: letoram tags: trunk, master | |
| 09:47 | (net) crypto_kem_enc ran twice in [57be8cef9c] check-in: b8c1108917 user: letoram tags: trunk, master | |
|
2026-03-07
| ||
| 23:45 | (afsrv-net) fix regression from missing unpack_dir This happened with the config.lua refactor for arcan-net as they shared codepath for unpack. Next-up, forward the actual config.lua from up the chain, make sure that the keystore actually uses that path and then add .fap cache support for afsrv_net as well. check-in: 07469c69e5 user: letoram tags: trunk, master | |
| 17:58 | (net) Handles crypto_kem_* return values that are marked as non-ignorable check-in: 57be8cef9c user: cipharius tags: trunk, master | |
| 12:44 | (afsrv-net) first step towards consolidating config.lua Right now the behaviour between arcan-net and afsrv_net is much too different. This becomes problematic especially when arcan-net is used to launch-boostrap the first appl, then net-open to nest/embed a different appl from the directory. This pulls in the LuaVM + config parsing into afsrv-net. Then we need a way to propagate the config.lua choice into it. That'll likely come from CLI arguments first - then eventually be able to use the same model to config the arcan instance, removing some of the need for arcan_db arcan k/v namespace. check-in: 4d243620b9 user: letoram tags: trunk, master | |
|
2026-03-06
| ||
| 22:51 | (net) expose API_ENGINE_BUILD in dirsrv_ctrl lua VM Added to be able to share some builtin/ scripts verbatim check-in: 63162317d3 user: letoram tags: trunk, master | |
| 22:50 | (net) drop unnecessary warning on_directory -> false check-in: ba86ce9d51 user: letoram tags: trunk, master | |
| 15:00 | (net) omit sending state if there are no keys before and after exec Prior to this commit there would always be a state file created in directory even if the appl didn't commit state. This patch tracks the number of keys loaded initially and the number of keys in the return from cmd_dumpkeys. If both are zero, omit sending empty state (which would cause an unnecessary roundtrip next execution because of the state file being present). This can still happen in the corner case where an appl first commits keys to state, but then decides to remove them. check-in: 960fe5d1b8 user: letoram tags: trunk, master | |
| 14:58 | (shmif) null-deref in agp_fenv post 9d76d2d268 The previous commit changing agp_fenv from static struct to static* struct means that the check for fenv being initialized would deref nullptr when looking for the function member being resolved. check-in: 7dbbb10831 user: letoram tags: trunk, master | |
| 14:28 | (net) regression in dir_cl on script error dump-sending This was caused by some of the work in driving arcan_lwa from a debugger. With a monitor attached and the engine exiting, the exit_code will be success even in the case of a 'failure'. Propagate that the state output contains debuginfo and set the type accordingly. check-in: ffb893632d user: letoram tags: trunk, master | |
|
2026-03-05
| ||
| 23:33 | (video) Replaces internal agp_glinit_fenv use with agp_alloc_fenv check-in: 9d76d2d268 user: cipharius tags: trunk, master | |
| 12:24 | (net) openBSD build fix and allocation-id error on --push-appl for new slot Poor symbol naming had the wrong appl being returned as the 'new' slot causing a directory entry with an empty identifier. check-in: 57e7fe07a3 user: letoram tags: trunk, master | |
|
2026-03-02
| ||
| 22:55 | (shmif) restore thread primary_id on migrate This fixes clients being unable to migrate multiple times in a row, as otherwise primary_id remains 0, thus causing an early return in the same method with SHMIF_MIGRATE_BAD_SOURCE. check-in: bd05d50c47 user: vimpostor tags: trunk, master | |
| 11:02 | (shmif) don't enforce watchdog ppid if it doesn't respond on acquire This might have some consequences if the server dies just as the connection is made, but then the socket itself would also fail and the normal route triggered. The reason for this change is when running inside a pid separated namespace on linux the socket and memory-fd might be passed but watchdog pid not exposed. Since we can't rely on pidfd passing for portability and the refactoring that would take it is not worth it for the very fringe benefits, this is the next best option. check-in: 8936b9b6b3 user: letoram tags: trunk, master | |
|
2026-02-26
| ||
| 16:59 | (lua) open_nonblock failed to pass on ARES_RDONLY causing O_RDWR check-in: 5bc056570a user: letoram tags: trunk, master | |
| 02:40 | (video) Fixes the AGP stub build, and improves AGP and video platform seperation check-in: 9ca860cc42 user: cipharius tags: trunk, master | |
|
2026-02-24
| ||
| 15:36 | (net) path from source_client to sink_client almost working The requests go through, but for some reason the new segment becomes a new window in the outer arcan environment rather than in the appl. check-in: 51f31dacdb user: letoram tags: trunk, master | |
|
2026-02-23
| ||
| 13:25 | (net) another fix for .fap cached and no .state not triggering binary_handler Catch the event in on_cl_event (as we can't swallow internally due to reqfail being overloaded for other requests as well) and forward as a failed state transfer into the dir_cl binary handler. check-in: ac6c7ded02 user: letoram tags: trunk, master | |
| 12:23 | (net) incorrectly logged public key for cl_setup While only useful for troubleshooting, after the private key was retrieved from the keystore we didn't actually calculate the public side for the security-debug log. The correct key was still used in all other layers. check-in: 2f9e13a716 user: letoram tags: trunk, master | |
|
2026-02-22
| ||
| 22:43 | (net) wire in the last of status routing for source_client Untested still. check-in: 59f6a47f9f user: letoram tags: trunk, master | |
| 15:16 | (net) start wiring in the server side bits for source/sink_client _appl side, register_source and _leave/_join left. check-in: ebfd28f0eb user: letoram tags: trunk, master | |
|
2026-02-20
| ||
| 09:38 | (net) with REGISTER afsrv_encode via tunnel shows signs of life First toe wiggling, next would be to also have the ctrl instruct another client to source it rather than going manually from arcan-net. Then we need some manual verification of life-cycle (shutdown / cleanup) and framequeue / session for multiple sinks. check-in: 18a7ae5654 user: letoram tags: trunk, master | |
|
2026-02-19
| ||
| 14:58 | (net) numerous fixes to --tunnel for the afsrv_encode via directory appl case Several minor things around keys used for the tunnel specifically not matching the protocol for how DIROPENED is to be interpreted, along with minor descriptor leaks due to dir_cl now being used to handover exec. The main culprit was that a12_write_tunnel specifically didn't chunk before forwarding to the internal queueing. This caused blob packets to be created with the wrong size field, which then caused MAC tag failures. What remains is likely that _encode doesn't bring new clients in correctly, it just starts sending video frames. That means REGISTER doesn't happen on the sink-side, so no window means shmif_signal will block indefinetely. The correct fix there will be to send REGISTER and wait for ACTIVATE before actually pushing frames. check-in: 1a135846b2 user: letoram tags: trunk, master | |
|
2026-02-17
| ||
| 23:19 | (build) Brings back shmif/platform/fdpassing.c to build.zig check-in: 4c34d3b6c6 user: cipharius tags: trunk, master | |
| 20:46 | (build) Updates build.zig to support zig 0.15.2 and adds mlkem a12 dependency check-in: b72decbb27 user: cipharius tags: trunk, master | |
| 05:55 | (net/encode) fixes unveiled with ongoing source_target implementation This reworks some of the directory-tunnel sourcing in afsrv_encode that was never really correct. Spawning encode from arcan-net also unveiled some descriptors leaking that were ok in arcan-lwa context but not in afsrv_decode. Worse still was that the double-fork detach for encode triggered SIGCHLD which caused dir_supp.c:ioloop to exit out. check-in: 6e494808a1 user: letoram tags: trunk, master | |
| 01:20 | (video) Respect frameset's active frame when updating obj_storage_sz uniform check-in: 20f53410bc user: cipharius tags: trunk, master | |
|
2026-02-15
| ||
| 15:58 | (net) cursed placeholder for define-recordtarget into directory That this even worked is a thing. So there are many many many ways to try and solve pairing define_recordtarget with providing a source into the same directory you were connected to. All of them are very very complicated with tradeoffs that all affect security in one way or another. This approach will try and use the @stdin handle to route the NEWSEGMENT for the encoder into arcan-net. Instead of trying to map that to a channel and then have the directory server expose that channel as a sink and then responding to people trying to sink it etc. what this is going for is to fire up afsrv_encode (actual arg transfer still pending) and make a new outbound connection to get some process isolation, and ideally be able to re-use the idea for afsrv_net when that time comes. Then we can re-use the arcan-net-session code to provide the frame-cache and re-use that way >or< have the server side spawn the arcan-net-session multiplexer, have that sink the source and loopback as another source. The point of that dance is to let others in a unified network load-balance the transcode cost. check-in: 1ed76b5a3f user: letoram tags: trunk, master | |
| 15:39 | (net) trigger COMPLETED event on the empty-non-streaming case More than a bit of a hack here, but it checks out. If we get a blob packet with no-data, treat it as we were sent an empty file and forego trying to process it. check-in: 3d8d13c57a user: letoram tags: trunk, master | |
| 15:38 | (net) don't mark the empty-blob-transfer as streaming check-in: 185e57eaae user: letoram tags: trunk, master | |
| 15:06 | (net) try out workaround for 0-byte file This currently causes .state download with cached fap to fail starting as the event handlers never get triggered as the server never sends state req failure. check-in: b393a1237e user: letoram tags: trunk, master | |
| 15:04 | (shmif) stub shmifsrv- import shmif-cont This shouldn't take more than a few minor patches and checks as the work has been done on the platform layer already, but there is not much usecase (yet). check-in: 499a19c156 user: letoram tags: trunk, master | |
| 08:23 | (net) support reconnecting/rejoining appl running Basic bringup working. When the ioloop detects that the server connection has been severed, it switches into a shmif-poll + reconnect loop until either the shmif connection is terminated (application closed by user) or connection is re-established. The two caveats where this gets slightly more complicated is first when there is an active tunnel-runner going for sourcing a directory hosted sink as part of the appl. Then the question is what to do with the pending user-state, since that has not yet been synched and might never/not be in a while - should that be kept locally (e.g. timestamp in the associated database and check before we fetch state?). The other is that afsrv-net doesn't respect this behaviour yet. check-in: ee7204e6e1 user: letoram tags: trunk, master | |
|
2026-02-14
| ||
| 19:10 | (net) typo in previous file-type mapping check-in: 8861db5e0d user: letoram tags: trunk, master | |
| 19:04 | (net) change naming pattern for cached entries and type-fix to .state check-in: 93ad58f440 user: letoram tags: trunk, master | |