Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
2025-05-14
| ||
19:43 | (net) add option to mask source from being announced This is another step towards directed launch_target, a mask is set alongside the ephemeral key the server-side source uses. Before announcing a new source, check so that the client attached to a worker is eligible (we'll also need to ensure that for diropen request, as well as a netstate type for a mask that applies to a single client, and drop such client-source pairs on leave). Leaf check-in: 2b287b13b5 user: letoram tags: master, trunk | |
19:40 | (net) add BTYPE_META to supported bstream types check-in: 179a01fef5 user: letoram tags: master, trunk | |
2025-05-13
| ||
16:10 | (doc) protocol updates for indexing and metadata signatures check-in: f5a97869db user: letoram tags: master, trunk | |
05:14 | (net) clean up identifier use between main<->work<->ctrl This was a low priority fixme until it became a blocker for launch_target(clid). Now the worker to ctrl identifier sent in NETSTATE is H(Kpub | applname) that is used for server-side state persistence. To do that the applname is sent upon parent permission check (as the worker doesn't track, only forward the IDENT event when joining). At the same time, the client provided IDENT petname (which was used as prefix for MESSAGE when in ctrl-less broadcast mode) will be forwarded to ctrl process after resolving collision in order to be used for reverse requests where mapping from a ctrl- local numerical ID to the corresponding struct dircl necessary for parent to find the worker process. check-in: ac5ebe7254 user: letoram tags: master, trunk | |
2025-05-12
| ||
20:39 | (net) add system_load to dir-ctrl check-in: 533bac3d75 user: letoram tags: master, trunk | |
15:19 | (net) expose "rescan_appl" as a config.lua scope:d function This is mainly useful as a custom .admin command to force re-indexing remotely. check-in: 86d830d1d1 user: letoram tags: master, trunk | |
14:56 | (net) permit _ctrl permissions to access to ctrl_data data store check-in: 2d8a336b2b user: letoram tags: master, trunk | |
2025-05-11
| ||
13:08 | (platform/video) don't mark-dirty/synch frame-cookie for displays pending flip Credits-To: Bohdan check-in: feab7c35ab user: letoram tags: master, trunk | |
2025-05-10
| ||
15:01 | (net) change download appl transfer semantics to use empty name and TYPE_APPL on the stream. check-in: e2e4ed9a93 user: letoram tags: master, trunk | |
11:32 | (build) adds missing shmif sources to build.zig check-in: cc955b5918 user: cipharius tags: master, trunk | |
2025-05-08
| ||
17:47 | (doc) start drafting documents on a12-directory development check-in: f908196506 user: letoram tags: master, trunk | |
17:46 | (net) flush out ping packets from inbound buffer to stop (100%) check-in: 77a92550ac user: letoram tags: master, trunk | |
2025-05-07
| ||
23:35 | (platform) mostly decouples event platform form engine. Arcan trace is still pulled in from engine. Stubs out LED related code in event platform - LED support should be handled by encode framserver. Leaf check-in: 68588cacda user: cipharius tags: arcan-platform-refactor | |
22:19 | (net) a lot of plumbing to route appl requested ctrl namespace resources It's not completely there, but now the path: appl -> open_nonblock -> arcan-net -> [a12] -> worker -> directory-runner -> ctrl_load entrypoint (for mapping / mutation) -> parent -> runner -> worker is followed, though there is still something going on with the way the worker defines the corresponding bstream on the main channel. The reason this is so layered is that the runner is sandboxed and doesn't have access to the filesystem, and that we want to be able to let the ctrl script define other possible stores for retrieving a file, either through linked directories and a cache or an external storage system like IPFS. check-in: 4af1c4607b user: letoram tags: master, trunk | |
2025-05-06
| ||
17:28 | (net) arcan-net @host appl adjustments to changes from debug-if/watchdog check-in: a3740b7ffe user: letoram tags: master, trunk | |
2025-05-03
| ||
23:57 | (net) same IN/OUT flip for dir-cl launching appl check-in: 6ad8f56d69 user: letoram tags: master, trunk | |
23:52 | (fsrv-net) swap IN/OUT before passing to a12 This was another source of the upload / download headache. Events coming from open_nonblock with nowrite comes as OUT into the frameserver. Thus the frameserver is to provide data. That means the event forwarded to a12 should be IN as it is expecting input. check-in: 5693406013 user: letoram tags: master, trunk | |
15:39 | (net) worker: don't drop request_resource evqueue item That causes the ioevs[0].iv to get closed twice, first in drop_evqueue_item then again in the next call into shmif, leading to a deferred descriptor failure when queue_node has filled buffer space so the next time queue_node fires it will be gone. check-in: ac9273e62a user: letoram tags: master, trunk | |
2025-05-02
| ||
18:02 | (net) more verbose logging on descriptor ops check-in: 6d16b2fba3 user: letoram tags: master, trunk | |
11:00 | (net) start prepping for launch_target direct to client check-in: 55caf11695 user: letoram tags: master, trunk | |
10:59 | (net) actually forward script-set ident rather than placeholder check-in: 6fb24f3bf1 user: letoram tags: master, trunk | |
10:59 | (net) don't allocate the temporary trace-a12 struct on the stack check-in: a5e4ffd901 user: letoram tags: master, trunk | |
2025-05-01
| ||
23:21 | (net) split out process_command:dirlist into command_dirlist for easier breakpointing check-in: f5b993d900 user: letoram tags: master, trunk | |
23:21 | (net) don't set directory index on placeholder logging trace_state check-in: 5bc87f2497 user: letoram tags: master, trunk | |
2025-04-27
| ||
10:49 | (evdev) layout dynamic override used options arg Credit-to: @bohdan check-in: bfe1df4aa9 user: letoram tags: master, trunk | |
10:47 | (tui) raster, clipping calculation wrong for some alignments check-in: fc35bc83e6 user: letoram tags: master, trunk | |
02:37 | (platform) adds missing files for the previous commit check-in: 056b763daf user: cipharius tags: arcan-platform-refactor | |
02:28 | (platform) checkpoint commit for arcan platform decoupling and libification. Zig build currently can build a library containing OS platform abstractions, but there are still more to go: video, audio, event, fsrv and agp. CMake build currently does not build the platform library and keeps using platform layer the same as before. This commit also provides basic length based string module to provide more ergonomic and safer primitives to work with byte strings. For simplicity and sanity, the byte string module functions are tested using zig test runner. check-in: 280f9b1072 user: cipharius tags: arcan-platform-refactor | |
2025-04-26
| ||
09:04 | (doc) export public arcan lua functions for LSP usage Running "ruby docgen.rb lspdefinition" will now generate a LSP definition file for use with luals. Symlinking the generated spec.lua to the root of your Lua project will cause luals to automatically pick up all Arcan functions and autocomplete them, including showing the documentation. This patch also slightly improves the man pages by adding parameter highlighting to the synopsis. check-in: 842240e7e5 user: vimpostor tags: master, trunk | |
08:48 | (arcterm) fallback to wcwidth for Unicode charwidth This change allows double-width characters on the tsm engine side. It fixes incorrect cursor movements over those characters (e.g. with CSI), a minimal reproducible example is: printf 'test?\xF0\x9F\x94\xA7\033[3D!' In theory wcwidth could have replaced the entire mk_wcwidth implementation, but we are going for a minimally invasive change and the quality of wcwidth differs a lot between different libc implementations, e.g. muslc has a reasonable default lookup table, while glibc has a very bad default when LC_CTYPE is uninitialized (-1 outside of ascii), but then a more complete table otherwise. Since tsm_draw_callback right now does not propagate width to tui, the second double-width cell's ch is also set to space to avoid rendering artifacts from uninitialized memory in that field. A proper follow-up patch would also propagate that information to tui, so that the double-width character can be rendered correctly. check-in: 6a739ae808 user: vimpostor tags: master, trunk | |
04:36 | (tui/lua) apply suffix for nbio:write() on empty lines check-in: 9f161d96bc user: letoram tags: master, trunk | |
04:29 | (tui/lua) allow "suffix" key for nbio:write() This was prompted by cat9 copy/slicing where linefeeds might have been stripped and it being very expensive to rework the table to be written to support re-adding it. check-in: 2b6c1f11db user: letoram tags: master, trunk | |
2025-04-25
| ||
10:29 | (platform/evdev) support ABS_THROTTLE check-in: 589220a34a user: letoram tags: master, trunk | |
10:26 | (build) make libvlc optional for _decode check-in: 66162c05de user: letoram tags: master, trunk | |
2025-04-23
| ||
09:39 | (tests) added fsrv/hidden, interactive/textsurf check-in: 3f703120df user: letoram tags: master, trunk | |
09:25 | (lua) text_surface resize backing store during inplace update check-in: ae75fa405f user: letoram tags: master, trunk | |
2025-04-21
| ||
08:21 | (build) missing header/sprintf use warning on OBSD check-in: 2b1b7cef67 user: letoram tags: master, trunk | |
2025-04-19
| ||
08:38 | (tui-lua) fix to utf8step for negative direction check-in: 27b211df9a user: letoram tags: master, trunk | |
2025-04-09
| ||
10:14 | (net) expose match_keys, store_keys and get_key for config.lua check-in: 6bae821d18 user: letoram tags: master, trunk | |
05:04 | (a12) rework of logging and tunneling This was a heavy one, first rework so that key authentication functions and others more consistently pass the a12_state around as it will be needed for attaching auxiliary keys later. Then add a tracetag member to the a12_state and add it to all a12int_trace related calls, this had some ugly macroing to be workable since it is used allover. Lastly, rework so that we can start to handle multiple tunnels. The linked directory server will need this shortly. This means that each worker that pokes the tunnels gets a thread and a signal pipe to the ioloop to notify when there is outbound data to be forwarded from a12_write_tunnel. check-in: 9572f6b818 user: letoram tags: master, trunk | |
2025-04-08
| ||
02:10 | (shmif) resize() revoke pending buffer This should fix -net hosting a source on resize, though we likely need some invalidation of STEPFRAME events that can have been returned already so that doesn't lead to backpressure. check-in: ef1eb6171b user: letoram tags: master, trunk | |
2025-04-07
| ||
14:30 | (net) keystore tag strstr needle/haystack switched This cause 'outbound' without a tag to not resolve in the interactive trust remember command. check-in: ed537cea8d user: letoram tags: master, trunk | |
2025-04-06
| ||
05:34 | (doc) changelog lagging behind check-in: 5afb11ce6e user: letoram tags: master, trunk | |
05:28 | (net) add a launch_target option for config.lua This lets the global config script launch dynamic sources without going through a controller appl. This is a step towards making tunneling local sources more robust (and track down the issues it has now) but also to force-namespace sources spawned from the controller and make it so they are only visible and sink-able by clients that have joined the related groups. check-in: cd9ae34344 user: letoram tags: master, trunk | |
2025-04-05
| ||
18:39 | (net) dirlink request and process list Full path goes through on test setup, time to compare indexes and request responses. There seem to be a regression with dd directory sending stream completion before everything has been sent on large files that need to be looked into. check-in: ff2a9e84a8 user: letoram tags: master, trunk | |
15:56 | (net) mark state-failures with reason, propagate on last-words Getting errors across from why a directory-link failed was annoying as the log-trace still isn't getting propagated and we needed a short message for the event handler to make key-failures more noticeable. Dynamic changes should now be enumerated from the directory link stage, only synch and .appl / .appl-controller request todo there. Then we need to be able to specify which level of synch the linked directory should have. The issue there is who is the authority on which .appl it is that should be distributed. Simply having a timestamp and sending the latest isn't viable as one might want to rollback when a deployment is broken. check-in: f06db63b9e user: letoram tags: master, trunk | |
01:04 | (net) consolidate worker<->parent blocking request This code will be re-used with the link- worker, since it is fairly complicated it is best to share it between the two. check-in: 9f6d52a64e user: letoram tags: master, trunk | |
2025-04-03
| ||
21:12 | (build) explicity define luajit+openal build byproducts Otherwise the build graph doesn't capture this dependency for lwa, which completely breaks ninja and causes a race condition when using make if one finishes building before the other. check-in: 7de1c636d3 user: vimpostor tags: master, trunk | |
2025-04-02
| ||
04:34 | (net) move appl- index handling to support This (together with blocked request through parent) should be consolidated to dir_supp in order to be shared between srv_worker and srv_link. check-in: 7e633fc2bf user: letoram tags: master, trunk | |
02:20 | (net) start exposing events into link_directory callback This provides a feedback path into config.lua so we don't have to rely on tracing at that level for initial configuration option. It will also be needed for handling netsplits and recovery. check-in: 7593356ea7 user: letoram tags: master, trunk | |