void gnutls_transport_set_errno(gnutls_session_t session, int err);
is a gnutls_session_t structure.
error value to store in session-specific errno variable.
Store err in the session-specific errno variable. Useful values
for err is EAGAIN and EINTR, other values are treated will be
treated as real errors in the push/pull function.
This function is useful in replacement push/pull functions set by
gnutls_transport_set_pullpush_function under Windows, where the
replacement push/pull may not have access to the same errno
variable that is used by GnuTLS (e.g., the application is linked to
msvcr71.dll and gnutls is linked to msvcrt.dll).
If you don't have the session variable easily accessible from the
push/pull function, and don't worry about thread conflicts, you can
also use gnutls_transport_set_global_errno().