2 releases

0.4.1 Aug 2, 2024
0.4.0 Sep 7, 2023

#260 in Unix APIs

Download history 463/week @ 2024-07-29 329/week @ 2024-08-05 185/week @ 2024-08-12 165/week @ 2024-08-19 156/week @ 2024-08-26 252/week @ 2024-09-02 134/week @ 2024-09-09 195/week @ 2024-09-16 115/week @ 2024-09-23 257/week @ 2024-09-30 566/week @ 2024-10-07 245/week @ 2024-10-14 412/week @ 2024-10-21 343/week @ 2024-10-28 368/week @ 2024-11-04 138/week @ 2024-11-11

1,307 downloads per month

MIT license

16KB
268 lines

utwt

Crates.io Docs

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.

Usage

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.

Dependencies

~1–1.6MB
~28K SLoC