From: Nikos Mavrogiannopoulos Date: Sat, 20 Aug 2011 08:47:48 +0000 (+0200) Subject: Added hack for AIX systems that may not set errno property on EAGAIN. X-Git-Tag: gnutls_3_0_1~2^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0dd016245762d9e0c3b15cc3237ca67d49f2bb40;p=thirdparty%2Fgnutls.git Added hack for AIX systems that may not set errno property on EAGAIN. --- diff --git a/lib/gnutls_buffers.c b/lib/gnutls_buffers.c index 5478b3ffa4..1956c333cb 100644 --- a/lib/gnutls_buffers.c +++ b/lib/gnutls_buffers.c @@ -137,11 +137,17 @@ reset_errno (gnutls_session_t session) inline static int get_errno (gnutls_session_t session) { +int ret; + if (session->internals.errnum != 0) - return session->internals.errnum; + ret = session->internals.errnum; else - return session->internals.errno_func (session-> + ret = session->internals.errno_func (session-> internals.transport_recv_ptr); +#if defined(_AIX) || defined(AIX) + if (ret == 0) ret = EAGAIN; +#endif + return ret; }