Add OpenBSD support for uptime using utmp-classic crate to parse UTMP file (/var/run/utmp by default): get uptime and count of logged users.
Enable tests for uptime (previously disabled on OpenBSD) and add a new specific test for OpenBSD (parse UTMP file, same as used for users test).
Fix #5664
Build and tests OK on OpenBSD current/amd64 and Linux Debian/testing with Rust 1.79.0
Unit tests:
$ cargo test -v --no-default-features --features uptime
(...)
test test_uptime::test_failed ... ok
test test_uptime::test_invalid_arg ... ok
test test_uptime::test_uptime ... ok
test test_uptime::test_uptime_check_users_openbsd ... ok
test test_uptime::test_uptime_with_dir ... ok
test test_uptime::test_uptime_since ... ok
test test_uptime::test_uptime_with_extra_argument ... ok
test test_uptime::test_uptime_with_non_existent_file ... ok
test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
uptime
usingutmp-classic
crate to parse UTMP file (/var/run/utmp
by default): get uptime and count of logged users.uptime
(previously disabled on OpenBSD) and add a new specific test for OpenBSD (parse UTMP file, same as used forusers
test).Fix #5664
Build and tests OK on OpenBSD current/amd64 and Linux Debian/testing with Rust 1.79.0
Unit tests:
Test for
uptime --since
Comparison with GNU
uptime
(binary =guptime
on OpenBSD, installed viacoreutils-9.5
package)