A Rust crate for parsing utmp
files like /var/run/utmp
and /var/log/wtmp
.
Note: This project has been forked from utmp-rs since September of 2023, but a lot has changed.
Simplest way is to use parse_from_*
functions,
which returns a Vec<UtmpEntry>
on success:
let entries = utwt::parse_utmp()?;
// or specify a path explicitly
let entries = utwt::parse_from_path("/var/run/utmp")?;
//
If you don't need to collect them all,
UtmpParser
can be used as an iterator:
use utwt::UtmpParser;
for entry in UtmpParser::from_path("/var/run/utmp")? {
let entry = entry?;
// ...
}
All the parse_from_*
functions as well as UtmpParser
parse utmp
file
based on the native format for the target platform.
If cross-platform parsing is needed,
Utmp32Parser
or Utmp64Parser
can be used instead of UtmpParser
.