#login #utmp #linux

utmp-raw

Provides raw types for parsing login records in utmp file

6 releases (3 breaking)

0.4.0 Sep 27, 2024
0.3.0 Jul 24, 2022
0.2.0 Nov 21, 2021
0.1.2 Feb 9, 2020

#542 in Unix APIs

Download history 75/week @ 2024-08-17 67/week @ 2024-08-24 74/week @ 2024-08-31 61/week @ 2024-09-07 158/week @ 2024-09-14 248/week @ 2024-09-21 250/week @ 2024-09-28 143/week @ 2024-10-05 59/week @ 2024-10-12 53/week @ 2024-10-19 57/week @ 2024-10-26 69/week @ 2024-11-02 149/week @ 2024-11-09 199/week @ 2024-11-16 285/week @ 2024-11-23 221/week @ 2024-11-30

869 downloads per month
Used in 3 crates (via utmp-rs)

MIT license

10KB
179 lines

utmp-rs

Crates.io Docs

A Rust crate for parsing utmp files like /var/run/utmp and /var/log/wtmp.

Usage

Simplest way is to use parse_from_* functions, which returns a Vec<UtmpEntry> on success:

let entries = utmp_rs::parse_from_path("/var/run/utmp")?;
// ...

If you don't need to collect them all, UtmpParser can be used as an iterator:

use utmp_rs::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

~0.9–1.5MB
~27K SLoC