Commit Graph

119 Commits

Author SHA1 Message Date
oysteikt f281bff291 nix/vm: enable bsd-fingerd in container
Build and test / build (push) Successful in 1m52s
Build and test / test (push) Successful in 2m1s
Build and test / check (push) Successful in 2m6s
Build and test / docs (push) Successful in 5m7s
2026-07-21 05:19:19 +09:00
oysteikt a74421ca62 nix/packages/netkit-rwho: init 2026-07-21 05:17:55 +09:00
oysteikt 91201d334d rwhod: react to audit pam events to broadcast updates
Listen to read-only audit packets from the kernel to react on user
logins/logouts. This way, we can immediately notify other machines on
the network whenever there is a change to the user session list.
2026-07-21 03:00:38 +09:00
oysteikt 026c19acc7 roowhod: move config normalization to config.rs
Build and test / build (push) Successful in 1m45s
Build and test / test (push) Successful in 2m19s
Build and test / check (push) Successful in 2m30s
Build and test / docs (push) Successful in 4m8s
2026-07-20 23:46:37 +09:00
oysteikt 4373eec6b5 rwhod: put max cap on status update storage
Without a max cap, someone could potentially flood our memory by posting
tons and tons of spoofed status updates.
2026-07-20 23:42:02 +09:00
oysteikt 2b89f6c755 Create debs 2026-07-20 23:42:02 +09:00
oysteikt 536b0c4b54 rwhod: allow configuring packet send interval 2026-07-20 23:42:01 +09:00
oysteikt c0c0e47c8a nix/module: add ignoreUsers options
Build and test / check (push) Successful in 1m9s
Build and test / build (push) Successful in 1m38s
Build and test / test (push) Successful in 1m59s
Build and test / docs (push) Successful in 5m50s
These options are a variant of the `ignore_list_path` that makes it
easier to configure users to be ignored inline in the nixos config.
2026-07-20 21:32:11 +09:00
oysteikt f825d3761d ruptime: use mutex arg group for sorting flags
Build and test / build (push) Successful in 1m38s
Build and test / test (push) Successful in 2m9s
Build and test / check (push) Successful in 2m13s
Build and test / docs (push) Successful in 3m35s
2026-07-20 20:57:51 +09:00
oysteikt 219e4f7cdf ruptime: let --json be mutexed with sorting flags 2026-07-20 20:57:21 +09:00
oysteikt d67aaba58f rwhod: let users specify user-idle/machine-down timeouts 2026-07-20 20:57:21 +09:00
oysteikt 59621048f8 rwhod: implement packet sender if filtering 2026-07-20 20:57:21 +09:00
oysteikt dada91184d nix/module: add socketConfig option for rwhod 2026-07-20 19:51:50 +09:00
oysteikt 07d13de6a5 Provide times as unix seconds for all --json outputs
Build and test / build (push) Successful in 1m40s
Build and test / test (push) Successful in 2m12s
Build and test / check (push) Successful in 2m15s
Build and test / docs (push) Successful in 4m17s
2026-07-20 19:08:45 +09:00
oysteikt a89deefceb {flake.lock,Cargo.*}: bump
Build and test / check (push) Successful in 1m12s
Build and test / build (push) Successful in 1m40s
Build and test / test (push) Successful in 2m12s
Build and test / docs (push) Successful in 6m20s
2026-07-20 17:29:29 +09:00
oysteikt 3297d145b4 proto/rwhod: add forward-allowance based overflow correction
Build and test / check (push) Failing after 1m3s
Build and test / build (push) Successful in 1m44s
Build and test / test (push) Successful in 3m31s
Build and test / docs (push) Successful in 5m18s
2026-07-19 23:10:59 +09:00
oysteikt 3df4d638a9 proto/rwhod: split time correction logic into separate module 2026-07-19 16:07:10 +09:00
oysteikt 71d2b72c34 module.nix: filter nulls from config
Build and test / check (push) Successful in 1m9s
Build and test / test (push) Successful in 2m12s
Build and test / build (push) Successful in 2m37s
Build and test / docs (push) Successful in 3m25s
2026-06-24 13:37:18 +09:00
oysteikt a6a1bd2324 fingerd/local_email: write tests
Build and test / check (push) Successful in 1m8s
Build and test / build (push) Successful in 1m38s
Build and test / test (push) Successful in 1m54s
Build and test / docs (push) Successful in 4m46s
2026-06-24 13:27:40 +09:00
oysteikt 41d00321d5 ruptime: fix --all flag behaviour, move filtering to server
Build and test / check (push) Successful in 1m6s
Build and test / build (push) Successful in 1m38s
Build and test / test (push) Successful in 3m10s
Build and test / docs (push) Successful in 3m41s
2026-06-24 13:09:35 +09:00
oysteikt d1e1e30ee6 fixup! {rwhod,fingerd}: add ignore-user lists
Build and test / check (push) Successful in 1m26s
Build and test / build (push) Successful in 2m6s
Build and test / test (push) Successful in 2m9s
Build and test / docs (push) Successful in 4m41s
2026-06-24 12:57:29 +09:00
oysteikt 1bfc330000 {finger,ruptime,rwho}: render nicer varlink errors for users 2026-06-24 12:55:25 +09:00
oysteikt 21945c73ab {rwhod,fingerd}: disable varlink endpoints according to config 2026-06-24 12:55:24 +09:00
oysteikt 4af04d7dd6 {rwhod,fingerd}: add ignore-user lists 2026-06-24 12:55:24 +09:00
oysteikt b8b4d8dcc0 rwhod: warn incoming packets with weird timestamp orders 2026-06-24 12:53:45 +09:00
oysteikt de863408e4 rwhod: apply time correction to packets 2026-06-24 12:53:45 +09:00
oysteikt 736a962257 rwhod: filter idle users and down hosts serverside 2026-06-23 17:09:17 +09:00
oysteikt e594419aed proto/rwhod: ensure packets get truncated on conversion
Build and test / build (push) Successful in 1m36s
Build and test / check (push) Successful in 2m22s
Build and test / test (push) Successful in 2m22s
Build and test / docs (push) Successful in 4m34s
2026-06-23 01:40:16 +09:00
oysteikt 8e5f2849ff nix/module: allow access to /dev for fingerd
Build and test / check (push) Successful in 1m3s
Build and test / test (push) Successful in 1m54s
Build and test / build (push) Successful in 2m1s
Build and test / docs (push) Successful in 3m56s
2026-05-13 00:39:27 +09:00
oysteikt a7c678ce22 fingerd: mark X ttys as non-writable and non-idle 2026-05-13 00:39:11 +09:00
oysteikt 32625d4141 finger: format results 2026-05-13 00:28:51 +09:00
oysteikt fa466c00dd proto/finger: improve classic formatting of user sessions 2026-05-13 00:28:10 +09:00
oysteikt 9b37c6b3c8 proto/finger: skip failing tests
Build and test / build (push) Successful in 1m34s
Build and test / check (push) Successful in 1m38s
Build and test / test (push) Successful in 2m12s
Build and test / docs (push) Successful in 3m26s
2026-05-11 10:16:10 +09:00
oysteikt ad2a22e8bf proto/finger: rewrite user session idle time parser 2026-05-11 10:13:13 +09:00
oysteikt 61fef28133 proto/finger: partially fix parsing of user sessions
Build and test / build (push) Successful in 2m21s
Build and test / check (push) Successful in 1m24s
Build and test / test (push) Failing after 2m28s
Build and test / docs (push) Successful in 4m49s
2026-05-01 02:39:58 +09:00
oysteikt 11b97cb1b9 proto/finger: add classic formatter, split up parser 2026-04-30 22:00:20 +09:00
oysteikt 16b2bc5c27 proto/finger: parse timezones
Build and test / build (push) Successful in 1m34s
Build and test / check (push) Successful in 1m40s
Build and test / test (push) Successful in 1m52s
Build and test / docs (push) Successful in 3m49s
2026-04-29 08:27:31 +09:00
oysteikt ebad14aa02 proto/finger: parse pgp key, project and plan
Build and test / check (push) Successful in 1m6s
Build and test / build (push) Successful in 1m51s
Build and test / test (push) Successful in 1m51s
Build and test / docs (push) Successful in 3m43s
2026-04-29 08:09:21 +09:00
oysteikt be07298867 fingerd: add raw user response variant
Build and test / check (push) Successful in 1m34s
Build and test / build (push) Successful in 1m41s
Build and test / test (push) Successful in 2m4s
Build and test / docs (push) Successful in 3m19s
2026-04-29 06:22:20 +09:00
oysteikt 02279a9225 finger: add (but don't implement) --raw flag
Build and test / check (push) Successful in 1m3s
Build and test / build (push) Successful in 1m32s
Build and test / test (push) Successful in 2m3s
Build and test / docs (push) Successful in 3m28s
2026-04-29 06:12:14 +09:00
oysteikt ff38ea3a35 fingerd: demote local email parsing logs to trace level
Build and test / check (push) Successful in 1m4s
Build and test / build (push) Successful in 1m31s
Build and test / test (push) Successful in 1m52s
Build and test / docs (push) Successful in 4m6s
2026-04-29 06:03:42 +09:00
oysteikt a3aae2b28b bin/roowhod: configure loglevel via config file, use journald protocol 2026-04-29 06:03:11 +09:00
oysteikt 448ce6e500 server/rwhod: split into several files
Build and test / check (push) Successful in 1m3s
Build and test / build (push) Successful in 1m41s
Build and test / test (push) Successful in 1m50s
Build and test / docs (push) Successful in 3m20s
2026-04-29 05:22:01 +09:00
oysteikt f85d315aaa nix/vm: enable trace logging 2026-04-29 05:22:01 +09:00
oysteikt a0d5034e85 module.nix: grant CAP_DAC_READ_SEARCH to daemon 2026-04-29 05:22:00 +09:00
oysteikt b9b5fa5735 fingerd: add basic mailbox parsing functionality 2026-04-29 05:22:00 +09:00
oysteikt a1dea1b600 proto/finger: parse mail status
Build and test / check (push) Successful in 58s
Build and test / build (push) Successful in 1m39s
Build and test / test (push) Successful in 2m48s
Build and test / docs (push) Successful in 3m20s
2026-04-29 03:55:00 +09:00
oysteikt e741dfd3c1 fingerd: don't nest utmp entry requests
Build and test / check (push) Successful in 1m33s
Build and test / build (push) Successful in 1m42s
Build and test / test (push) Successful in 1m48s
Build and test / docs (push) Successful in 3m32s
2026-04-28 21:08:28 +09:00
oysteikt 3873c3a995 roowhod: add timeout to all actions
Build and test / check (push) Successful in 1m3s
Build and test / build (push) Successful in 1m41s
Build and test / test (push) Successful in 1m51s
Build and test / docs (push) Successful in 3m17s
2026-04-27 17:00:58 +09:00
oysteikt e5f1615f75 finger: add basic implementation for fetching utmp users
Build and test / check (push) Successful in 1m0s
Build and test / build (push) Successful in 1m38s
Build and test / test (push) Successful in 2m2s
Build and test / docs (push) Successful in 3m45s
2026-04-27 16:06:50 +09:00