network_protocol/utils/
time.rs

1use std::time::{Duration, SystemTime, UNIX_EPOCH};
2
3/// Returns current UNIX timestamp (seconds)
4pub fn now_secs() -> u64 {
5    SystemTime::now()
6        .duration_since(UNIX_EPOCH)
7        .unwrap_or(Duration::from_secs(0))
8        .as_secs()
9}
10
11/// Returns UNIX timestamp (milliseconds)
12pub fn now_millis() -> u128 {
13    SystemTime::now()
14        .duration_since(UNIX_EPOCH)
15        .unwrap_or(Duration::from_millis(0))
16        .as_millis()
17}
18
19/// Check if TTL has expired
20pub fn expired(since: u64, ttl_secs: u64) -> bool {
21    now_secs() > (since + ttl_secs)
22}