| 414 | } |
| 415 | |
| 416 | static uint32_t cli_activation_remaining_timeout( |
| 417 | const cli_activation_production_context_t *context) { |
| 418 | uint64_t now = cbm_now_ms(); |
| 419 | if (!context || now >= context->control_deadline_ms) { |
| 420 | return 1U; |
| 421 | } |
| 422 | uint64_t remaining = context->control_deadline_ms - now; |
| 423 | return remaining >= UINT32_MAX ? UINT32_MAX - 1U : (uint32_t)remaining; |
| 424 | } |
| 425 | |
| 426 | static uint64_t cli_activation_count_add(uint64_t left, uint64_t right) { |
| 427 | return left > UINT64_MAX - right ? UINT64_MAX : left + right; |
no test coverage detected