| 542 | } |
| 543 | |
| 544 | static uint64_t ipc_now_ms(void) { |
| 545 | struct timespec now; |
| 546 | if (clock_gettime(CLOCK_MONOTONIC, &now) != 0) { |
| 547 | return 0; |
| 548 | } |
| 549 | return (uint64_t)now.tv_sec * 1000U + (uint64_t)now.tv_nsec / 1000000U; |
| 550 | } |
| 551 | |
| 552 | static uint64_t ipc_deadline_after(uint32_t timeout_ms) { |
| 553 | if (timeout_ms == CBM_DAEMON_IPC_WAIT_FOREVER) { |
no outgoing calls
no test coverage detected