osmux: Log sendto() error
Change-Id: Icd91b725ac6b5ef2b9307cc99d67d60efdfa32cb
diff --git a/src/libosmo-mgcp/mgcp_osmux.c b/src/libosmo-mgcp/mgcp_osmux.c
index 98f2639..f15f37c 100644
--- a/src/libosmo-mgcp/mgcp_osmux.c
+++ b/src/libosmo-mgcp/mgcp_osmux.c
@@ -48,6 +48,7 @@
{
struct osmux_handle *handle = data;
socklen_t dest_len;
+ int rc;
switch (handle->rem_addr.u.sa.sa_family) {
case AF_INET6:
@@ -58,8 +59,14 @@
dest_len = sizeof(handle->rem_addr.u.sin);
break;
}
- sendto(osmux_fd.fd, batch_msg->data, batch_msg->len, 0,
- (struct sockaddr *)&handle->rem_addr.u.sa, dest_len);
+ rc = sendto(osmux_fd.fd, batch_msg->data, batch_msg->len, 0,
+ (struct sockaddr *)&handle->rem_addr.u.sa, dest_len);
+ if (rc < 0) {
+ char errbuf[129];
+ strerror_r(errno, errbuf, sizeof(errbuf));
+ LOGP(DOSMUX, LOGL_NOTICE, "osmux sendto(%s) failed: %s\n",
+ osmo_sockaddr_to_str(&handle->rem_addr), errbuf);
+ }
msgb_free(batch_msg);
}