| 263 | } |
| 264 | |
| 265 | static void *bootstrap_thread_execute(void *opaque) { |
| 266 | bootstrap_thread_call_t *call = opaque; |
| 267 | atomic_fetch_add(call->ready, 1); |
| 268 | while (!atomic_load(call->go)) { |
| 269 | const struct timespec pause = {0, 1000000L}; |
| 270 | (void)cbm_nanosleep(&pause, NULL); |
| 271 | } |
| 272 | call->status = cbm_daemon_bootstrap_execute_with_ops(call->config, call->ops, &call->result); |
| 273 | return NULL; |
| 274 | } |
| 275 | |
| 276 | static cbm_daemon_process_role_t classify(int argc, char **argv) { |
| 277 | return cbm_daemon_process_role(argc, argv); |
nothing calls this directly
no test coverage detected