| 1942 | } |
| 1943 | |
| 1944 | static void runtime_reject_inline(cbm_daemon_ipc_connection_t *connection, const char *message) { |
| 1945 | cbm_daemon_runtime_connect_result_t result; |
| 1946 | runtime_result_rejected(&result, message); |
| 1947 | (void)runtime_send_hello_response(connection, &result); |
| 1948 | /* Same Windows named-pipe discard hazard as runtime_worker_finish: the |
| 1949 | * peer must get to read the rejection before the handle closes. */ |
| 1950 | cbm_daemon_ipc_connection_drain(connection, RUNTIME_REJECT_DRAIN_TIMEOUT_MS); |
| 1951 | cbm_daemon_ipc_connection_close(connection); |
| 1952 | } |
| 1953 | |
| 1954 | static void runtime_accept_connection(cbm_daemon_runtime_service_t *service, |
| 1955 | cbm_daemon_ipc_connection_t *connection) { |
no test coverage detected