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

This commit is contained in:
2026-04-27 16:06:50 +09:00
parent 9c10b395d3
commit e5f1615f75
2 changed files with 24 additions and 5 deletions
+11 -5
View File
@@ -8,7 +8,7 @@ use zlink::{ReplyError, service::MethodReply};
use crate::{
proto::{WhodStatusUpdate, WhodUserEntry, finger_protocol::FingerResponseUserEntry},
server::{
fingerd::{self, FingerRequestInfo, FingerRequestNetworking},
fingerd::{self, FingerRequestInfo, FingerRequestNetworking, finger_utmp_users},
rwhod::RwhodStatusStore,
},
};
@@ -199,10 +199,16 @@ impl VarlinkRoowhoo2ClientServer {
}
})
.collect(),
None => {
// TODO: fetch logged in users using utmp entries
todo!()
}
None => finger_utmp_users(&request_info)
.into_iter()
.filter_map(|res| match res {
Ok(user_info) => Some(user_info),
Err(err) => {
tracing::error!("Error retrieving local user information: {}", err);
None
}
})
.collect(),
}
}
}