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}