aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAntonio Quartulli2020-04-18 03:18:49 +0200
committerGert Doering2020-04-19 11:50:17 +0200
commit74fadcf4ebe860c15d12cb4e065c7ca0e0dc4497 (patch)
tree6b8c7834cf1372344df5af9cbfcdeaf2a17eea98 /src
parent37bc691e7d26ea4eb61a8a434ebd7a9ae76225ab (diff)
downloadopenvpn-74fadcf4ebe860c15d12cb4e065c7ca0e0dc4497.zip
openvpn-74fadcf4ebe860c15d12cb4e065c7ca0e0dc4497.tar.gz
sitnl: fix failure reporting by keeping error negative
The err->errno value reported by netlink is already negative. Prepending ierr->errno with '-' when forwarding it to the caller results in a positive value and thus not detected as error. Fix error handling in sitnl by not negating the sign of the value returned by sitnl_send() in case of generic error. While at it, print the errno in decimal form along with its string represenation. Reported-by: Richard Bonhomme <tincanteksup@gmail.com> Signed-off-by: Antonio Quartulli <a@unstable.cc> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <20200418011849.382-1-a@unstable.cc> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg19773.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
Diffstat (limited to 'src')
-rw-r--r--src/openvpn/networking_sitnl.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/openvpn/networking_sitnl.c b/src/openvpn/networking_sitnl.c
index b93697e..7adcb64 100644
--- a/src/openvpn/networking_sitnl.c
+++ b/src/openvpn/networking_sitnl.c
@@ -365,9 +365,9 @@ sitnl_send(struct nlmsghdr *payload, pid_t peer, unsigned int groups,
}
else
{
- msg(M_WARN, "%s: rtnl: generic error: %s",
- __func__, strerror(-err->error));
- ret = -err->error;
+ msg(M_WARN, "%s: rtnl: generic error (%d): %s",
+ __func__, err->error, strerror(-err->error));
+ ret = err->error;
}
}
goto out;