Skip to content
Snippets Groups Projects
Commit 3719b4b4 authored by Libor Peltan's avatar Libor Peltan Committed by Daniel Salzman
Browse files

requestor: return proper errcode when send fails

parent 6ef979ee
No related merge requests found
......@@ -96,7 +96,9 @@ static int request_send(knot_request_t *request, int timeout_ms)
} else {
ret = net_dgram_send(request->fd, wire, wire_len, NULL);
}
if (ret != wire_len) {
if (ret < 0) {
return ret;
} else if (ret != wire_len) {
return KNOT_ECONN;
}
......
......@@ -101,8 +101,8 @@ static void test_disconnected(knot_requestor_t *requestor,
{
knot_request_t *req = make_query(requestor, dst, src);
int ret = knot_requestor_exec(requestor, req, TIMEOUT);
/* ECONNREFUSED is OK too on FreeBSD. */
ret = (ret == KNOT_ECONNREFUSED) ? KNOT_ECONN : ret;
/* ECONNREFUSED on FreeBSD, ETIMEOUT on NetBSD/OpenBSD/macOS. */
ret = (ret == KNOT_ECONNREFUSED || ret == KNOT_ETIMEOUT) ? KNOT_ECONN : ret;
is_int(KNOT_ECONN, ret, "requestor: disconnected/exec");
knot_request_free(req, requestor->mm);
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment