From 27a3964ff7891a5f240ef08b3294714ef6e28074 Mon Sep 17 00:00:00 2001 From: Sam Roberts Date: Tue, 21 Feb 2012 13:11:39 -0800 Subject: [PATCH] socket_strerror() sometimes maps errno, instead of its argument Looks like a historical bug. Its err argument is an error number, but if it isn't using a custom error message for it, it just calls strerror() with the errno global, effectively ignoring its argument and returning a semi-random string. --- src/usocket.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/usocket.c b/src/usocket.c index 46087c6..3221cb9 100644 --- a/src/usocket.c +++ b/src/usocket.c @@ -418,8 +418,8 @@ const char *socket_strerror(int err) { case ECONNREFUSED: return "connection refused"; case ECONNABORTED: return "closed"; case ECONNRESET: return "closed"; - case ETIMEDOUT: return "timedout"; - default: return strerror(errno); + case ETIMEDOUT: return "timeout"; + default: return strerror(err); } }