Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
2025-06-07
| ||
02:50 | (net) pull in full monocypher for the time being The way the codebase is structured makes it a bit annoying to just get the ed25519 parts, something to reconsider later as we just want 'pure' primitives and not helpers. With the way we intend to use ed signatures the SHA512 part for key 'extension' isn't particularly helpful or useful, and primitive accumulation bloat (initially only X25519+BLAKE3, with Ed suddenly BLAKE2 and SHA512 joins in even though BLAKE3 alone works just fine for the purpose). Leaf check-in: ec4d82196f user: letoram tags: master, trunk | |
02:40 | (platform) frameserver structure reconstruction from memfd+socket fix The memfd branch condition was inverted check-in: c2394d5a25 user: letoram tags: master, trunk | |
2025-06-06
| ||
03:20 | (shmif) change server_inherit_connection to handle memfd Now that the semaphores are out of the system, it's possible to create server- end shmifsrv_client struct from descriptor primitives (socket+memory) and pass a preconfigured client around between processes. This lets us remove the POSIX UB with continued execution after fork in arcan-net. check-in: 872772cc60 user: letoram tags: master, trunk | |
2025-06-04
| ||
00:43 | (net) early-out tick if the client hasn't passed check-in: d2f16a9cbd user: letoram tags: master, trunk | |
00:40 | (net) tunnel-shutdown wakeup should go to the right fd state check-in: d894391fd1 user: letoram tags: master, trunk | |
00:36 | (shmif) _server should use correct clockreq id check-in: 35d34c12f4 user: letoram tags: master, trunk | |
2025-06-03
| ||
21:52 | (console) updates builtin/keyboard.lua use to the new API check-in: 9e4af8a937 user: cipharius tags: master, trunk | |
2025-06-02
| ||
19:49 | (net) synching linked directory unknown appllist working check-in: 0e69813c3d user: letoram tags: master, trunk | |
08:46 | (net) accidental vframe-method force-zstd added to previous commit check-in: daa70b8f22 user: letoram tags: master, trunk | |
08:21 | (net) add helpers for record/replay troubleshooting There is an issue with --host-appl that causes the tunneled state machine to randomly enter an invalid state specifically between command boundaries. Hosting the same runner/appl without the directory wrapper is fine. Since the MAC for the outer packet is correct, it should be something in the path of reading/writing to/from the tunnel. To help capture things like that, this adds a _DEBUG only entrypoint for recording the decrypted pre-authenticated bytestream, and another for later replaying it (disabling decryption and MAC comparison). check-in: b04a3ec04a user: letoram tags: master, trunk | |
2025-06-01
| ||
17:19 | (net) shutdown dir_cl --host-appl if tunnel closes check-in: b1c0363797 user: letoram tags: master, trunk | |
11:02 | (build) fix compilation on OpenBSD 7.7 check-in: 3c87f21be3 user: letoram tags: master, trunk | |
2025-05-30
| ||
20:32 | (net) applhost- feature almost working check-in: 97d7d2a716 user: letoram tags: master, trunk | |
07:10 | (net) push-new-appl working These do not get persisted by default, so a server restart would lose the entry. Pending the move to db-backed appl+ctrl storage, this is fine as it is just to support a quicker developer workflow. Persisting should likely be a function in config.lua space, with an option to autopersist with version history and the option to rollback. check-in: 3a82979783 user: letoram tags: master, trunk | |
00:03 | (net) ensure --push-appl on new goes through with install permissions This should take care of allocating a new slot and alerting workers, but still the download fails. check-in: 1e46f9378f user: letoram tags: master, trunk | |
2025-05-28
| ||
22:38 | (shmif/net/a12) refer to netstate namespace as ns This fixes compilation with C++ including the headers, as namespace is a reserved keyword there. check-in: 2f76360cf0 user: vimpostor tags: master, trunk | |
22:34 | (shmif) add missed early return when opening connection Otherwise if both the ARCAN_SOCKIN_FD and the conn_src branch are not entered, then the if condition immediately below will unconditionally be run as res.keyfile remains 0. This is semantically incorrect and would also hide the real error message. check-in: d7d9e9634a user: vimpostor tags: master, trunk | |
2025-05-27
| ||
17:45 | (tests) glcube - fix race condition in multi-threaded mode There is a race condition in multi-threaded glcube, where the newly created pthread is likely to reach its make_current() call, before the main thread reaches the next iteration of setting up a new extended segment. This means that the OpenGL context is still current in the main thread (from setup_segment), which will lead to EGL_BAD_ACCESS in the new thread: visually all but the first and last window show a black window. Thus as a workaround we make the main segment's OpenGL context current again before dispatching the thread. Technically we could also setup the whole segment in the new thread, but the attack plan in the initial glcube commit mentions surviving moving between threads. check-in: 9cc550513e user: vimpostor tags: master, trunk | |
17:02 | (net) resolve some undefined refs in dir_supp due to afsrv_net check-in: 1afac17cae user: letoram tags: master, trunk | |
2025-05-26
| ||
13:00 | (net) prepare for appl-selfhost (server-side arcan_lwa) This unifies the process spawning from launch_target to a function that can be used elsewhere for server-side launched sources. The main purpose for this is to let (with permission) a client source an appl that is ran server-side as a source for when the full arcan-stack isn't available locally but the smash viewer is. check-in: 25b9cd524e user: letoram tags: master, trunk | |
2025-05-23
| ||
02:41 | (net) only flag in-monitor if that's the join-pair sent to ctrl check-in: 3d44e26989 user: letoram tags: master, trunk | |
2025-05-22
| ||
14:47 | (shmif/net/a12) expand NETSTATE and DYNSOURCE to cover ns Most of the chain from appl to srv to worker to source to sink chain of the launch_target(dircl) directed path. The protocol changes is to allow the server to notifiy the sink that a source is intended explicitly for them and suggest that it should be sinked immediately or risk a timeout/drop. check-in: f1fbfd2c93 user: letoram tags: master, trunk | |
2025-05-21
| ||
23:28 | (shmif) fix regression in backpressure regulation This was a fun one. For sources that has a long buffer chain, not all will be synched when the shmif stage is filled. It can then enter a deadlock as aready will be reset but the buffer-bitmap still has entries. check-in: 9ca7d1d099 user: letoram tags: master, trunk | |
2025-05-20
| ||
10:32 | (net) erroneous rejection of some multi-tagged keys check-in: ce396db2e1 user: letoram tags: master, trunk | |
2025-05-18
| ||
15:06 | (net) ensure source_mask is applied in locked state Potential data-race if multiple clients join and _launch_target is triggered on each if the source manages to join while the mask is set for the one and not the other. check-in: bcebb83e34 user: letoram tags: master, trunk | |
12:46 | (net) find_client with matching identifier didn't unlock mutex check-in: 4a6896832c user: letoram tags: master, trunk | |
2025-05-16
| ||
01:55 | (net) apply source-mask in dynlist and on-join-appl check-in: 4a57b3828a user: letoram tags: master, trunk | |
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). 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 | |