uds: Convey transmit path errors to the caller.

The transport layer's functional interface foresees having error codes
percolate back up to the caller.  However, up until now, the uds module
simply returned -1 for any error.  This patch lets the code return the
specific error instead.  In addition, it removes the gratuitous printing
of the error message, leaving that task up to caller, just like the other
transport modules.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
master
Richard Cochran 2020-04-30 06:11:37 -07:00
parent b2bf55aebd
commit 0d82c41ac1
1 changed files with 2 additions and 3 deletions

5
uds.c
View File

@ -119,8 +119,8 @@ static int uds_send(struct transport *t, struct fdarray *fda,
addr = &uds->address;
cnt = sendto(fd, buf, buflen, 0, &addr->sa, addr->len);
if (cnt <= 0 && errno != ECONNREFUSED) {
pr_err("uds: sendto failed: %m");
if (cnt < 1) {
return -errno;
}
return cnt;
}
@ -144,4 +144,3 @@ struct transport *uds_transport_create(void)
uds->t.release = uds_release;
return &uds->t;
}