canic-core 0.65.4

Canic — a canister orchestration and management toolkit for the Internet Computer
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// ReplayTtlError
///
/// Validation error emitted by replay TTL checks.
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub enum ReplayTtlError {
    InvalidTtl { ttl_ns: u64, max_ttl_ns: u64 },
}

/// validate_replay_ttl
///
/// Enforce root replay TTL bounds as a pure mechanical check.
pub const fn validate_replay_ttl(ttl_ns: u64, max_ttl_ns: u64) -> Result<(), ReplayTtlError> {
    if ttl_ns == 0 || ttl_ns > max_ttl_ns {
        return Err(ReplayTtlError::InvalidTtl { ttl_ns, max_ttl_ns });
    }

    Ok(())
}