summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/openvpn/socket.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/openvpn/socket.c b/src/openvpn/socket.c
index af13e36..bff22a9 100644
--- a/src/openvpn/socket.c
+++ b/src/openvpn/socket.c
@@ -215,10 +215,13 @@ openvpn_getaddrinfo (unsigned int flags,
}
else
{
+ /* turn success into failure (interrupted syscall) */
if (0 == status) {
ASSERT(res);
freeaddrinfo(*res);
- res = NULL;
+ *res = NULL;
+ status = EAI_SYSTEM;
+ errno = EINTR;
}
goto done;
}