pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-mgw/+/39137?usp=email )
Change subject: mgcp-client: Fix wrong value passed to strerror()
......................................................................
mgcp-client: Fix wrong value passed to strerror()
errno is positive, hence we need to change the value of "res" being
passed to strerror().
While at it, use thread-safe variant strerror_r().
Change-Id: Ibc278199bc8f66e5521bff72bad150f44716f3eb
---
M src/libosmo-mgcp-client/mgcp_client.c
1 file changed, 6 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/37/39137/1
diff --git a/src/libosmo-mgcp-client/mgcp_client.c
b/src/libosmo-mgcp-client/mgcp_client.c
index bcd1268..e577b34 100644
--- a/src/libosmo-mgcp-client/mgcp_client.c
+++ b/src/libosmo-mgcp-client/mgcp_client.c
@@ -786,8 +786,10 @@
struct mgcp_client *mgcp = osmo_iofd_get_data(iofd);
if (res <= 0) {
+ char errbuf[128] = "";
+ strerror_r(-res, errbuf, sizeof(errbuf));
LOGPMGW(mgcp, LOGL_ERROR, "Failed to read: %s: %d='%s'\n",
- osmo_iofd_get_name(iofd), res, strerror(res));
+ osmo_iofd_get_name(iofd), res, errbuf);
msgb_free(msg);
return;
@@ -822,8 +824,10 @@
struct mgcp_client *mgcp = osmo_iofd_get_data(iofd);
if (OSMO_UNLIKELY(res != msg->len)) {
+ char errbuf[128] = "";
+ strerror_r(-res, errbuf, sizeof(errbuf));
LOGPMGW(mgcp, LOGL_ERROR, "Failed to Tx MGCP: %s: %d='%s'; msg: len=%u
'%s'...\n",
- osmo_iofd_get_name(mgcp->iofd), res, strerror(res),
+ osmo_iofd_get_name(mgcp->iofd), res, errbuf,
msg->len, osmo_escape_str((const char *)msg->data, OSMO_MIN(42, msg->len)));
}
}
--
To view, visit
https://gerrit.osmocom.org/c/osmo-mgw/+/39137?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: Ibc278199bc8f66e5521bff72bad150f44716f3eb
Gerrit-Change-Number: 39137
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>