diff --git a/lib/krb5/store_sock.c b/lib/krb5/store_sock.c index af1d687b9..72d3e9d22 100644 --- a/lib/krb5/store_sock.c +++ b/lib/krb5/store_sock.c @@ -82,10 +82,13 @@ static void socket_free(krb5_storage * sp) { int save_errno = errno; - if (rk_IS_SOCKET_ERROR(rk_closesocket(SOCK(sp)))) + if (rk_IS_SOCKET_ERROR(rk_closesocket(SOCK(sp)))) { +#ifdef WIN32 errno = rk_SOCK_ERRNO; - else +#endif + } else { errno = save_errno; + } } /**