1*549b59edSchristos /* $NetBSD: nt_err.c,v 1.3 2021/08/14 16:14:55 christos Exp $ */ 24e6df137Slukem 3d11b170bStron /* $OpenLDAP$ */ 42de962bdSlukem /* This work is part of OpenLDAP Software <http://www.openldap.org/>. 52de962bdSlukem * 6*549b59edSchristos * Copyright 1998-2021 The OpenLDAP Foundation. 72de962bdSlukem * All rights reserved. 82de962bdSlukem * 92de962bdSlukem * Redistribution and use in source and binary forms, with or without 102de962bdSlukem * modification, are permitted only as authorized by the OpenLDAP 112de962bdSlukem * Public License. 122de962bdSlukem * 132de962bdSlukem * A copy of this license is available in the file LICENSE in the 142de962bdSlukem * top-level directory of the distribution or, alternatively, at 152de962bdSlukem * <http://www.OpenLDAP.org/license.html>. 162de962bdSlukem */ 172de962bdSlukem 18376af7d7Schristos #include <sys/cdefs.h> 19*549b59edSchristos __RCSID("$NetBSD: nt_err.c,v 1.3 2021/08/14 16:14:55 christos Exp $"); 20376af7d7Schristos 212de962bdSlukem #include "portable.h" 222de962bdSlukem 232de962bdSlukem #ifdef HAVE_WINSOCK2 242de962bdSlukem #include <winsock2.h> 25d11b170bStron #elif defined(HAVE_WINSOCK) 262de962bdSlukem #include <winsock.h> 272de962bdSlukem #endif /* HAVE_WINSOCK(2) */ 282de962bdSlukem 292de962bdSlukem #define LBER_RETSTR( x ) case x: return #x; 302de962bdSlukem ber_pvt_wsa_err2string(int err)312de962bdSlukemchar *ber_pvt_wsa_err2string( int err ) 322de962bdSlukem { 332de962bdSlukem switch( err ) { 342de962bdSlukem LBER_RETSTR( WSAEINTR ) 352de962bdSlukem LBER_RETSTR( WSAEBADF ) 362de962bdSlukem LBER_RETSTR( WSAEACCES ) 372de962bdSlukem LBER_RETSTR( WSAEFAULT ) 382de962bdSlukem LBER_RETSTR( WSAEINVAL ) 392de962bdSlukem LBER_RETSTR( WSAEMFILE ) 402de962bdSlukem LBER_RETSTR( WSAEWOULDBLOCK ) 412de962bdSlukem LBER_RETSTR( WSAEINPROGRESS ) 422de962bdSlukem LBER_RETSTR( WSAEALREADY ) 432de962bdSlukem LBER_RETSTR( WSAENOTSOCK ) 442de962bdSlukem LBER_RETSTR( WSAEDESTADDRREQ ) 452de962bdSlukem LBER_RETSTR( WSAEMSGSIZE ) 462de962bdSlukem LBER_RETSTR( WSAEPROTOTYPE ) 472de962bdSlukem LBER_RETSTR( WSAENOPROTOOPT ) 482de962bdSlukem LBER_RETSTR( WSAEPROTONOSUPPORT ) 492de962bdSlukem LBER_RETSTR( WSAESOCKTNOSUPPORT ) 502de962bdSlukem LBER_RETSTR( WSAEOPNOTSUPP ) 512de962bdSlukem LBER_RETSTR( WSAEPFNOSUPPORT ) 522de962bdSlukem LBER_RETSTR( WSAEAFNOSUPPORT ) 532de962bdSlukem LBER_RETSTR( WSAEADDRINUSE ) 542de962bdSlukem LBER_RETSTR( WSAEADDRNOTAVAIL ) 552de962bdSlukem LBER_RETSTR( WSAENETDOWN ) 562de962bdSlukem LBER_RETSTR( WSAENETUNREACH ) 572de962bdSlukem LBER_RETSTR( WSAENETRESET ) 582de962bdSlukem LBER_RETSTR( WSAECONNABORTED ) 592de962bdSlukem LBER_RETSTR( WSAECONNRESET ) 602de962bdSlukem LBER_RETSTR( WSAENOBUFS ) 612de962bdSlukem LBER_RETSTR( WSAEISCONN ) 622de962bdSlukem LBER_RETSTR( WSAENOTCONN ) 632de962bdSlukem LBER_RETSTR( WSAESHUTDOWN ) 642de962bdSlukem LBER_RETSTR( WSAETOOMANYREFS ) 652de962bdSlukem LBER_RETSTR( WSAETIMEDOUT ) 662de962bdSlukem LBER_RETSTR( WSAECONNREFUSED ) 672de962bdSlukem LBER_RETSTR( WSAELOOP ) 682de962bdSlukem LBER_RETSTR( WSAENAMETOOLONG ) 692de962bdSlukem LBER_RETSTR( WSAEHOSTDOWN ) 702de962bdSlukem LBER_RETSTR( WSAEHOSTUNREACH ) 712de962bdSlukem LBER_RETSTR( WSAENOTEMPTY ) 722de962bdSlukem LBER_RETSTR( WSAEPROCLIM ) 732de962bdSlukem LBER_RETSTR( WSAEUSERS ) 742de962bdSlukem LBER_RETSTR( WSAEDQUOT ) 752de962bdSlukem LBER_RETSTR( WSAESTALE ) 762de962bdSlukem LBER_RETSTR( WSAEREMOTE ) 772de962bdSlukem LBER_RETSTR( WSASYSNOTREADY ) 782de962bdSlukem LBER_RETSTR( WSAVERNOTSUPPORTED ) 792de962bdSlukem LBER_RETSTR( WSANOTINITIALISED ) 802de962bdSlukem LBER_RETSTR( WSAEDISCON ) 812de962bdSlukem 822de962bdSlukem #ifdef HAVE_WINSOCK2 832de962bdSlukem LBER_RETSTR( WSAENOMORE ) 842de962bdSlukem LBER_RETSTR( WSAECANCELLED ) 852de962bdSlukem LBER_RETSTR( WSAEINVALIDPROCTABLE ) 862de962bdSlukem LBER_RETSTR( WSAEINVALIDPROVIDER ) 872de962bdSlukem LBER_RETSTR( WSASYSCALLFAILURE ) 882de962bdSlukem LBER_RETSTR( WSASERVICE_NOT_FOUND ) 892de962bdSlukem LBER_RETSTR( WSATYPE_NOT_FOUND ) 902de962bdSlukem LBER_RETSTR( WSA_E_NO_MORE ) 912de962bdSlukem LBER_RETSTR( WSA_E_CANCELLED ) 922de962bdSlukem LBER_RETSTR( WSAEREFUSED ) 932de962bdSlukem #endif /* HAVE_WINSOCK2 */ 942de962bdSlukem 952de962bdSlukem LBER_RETSTR( WSAHOST_NOT_FOUND ) 962de962bdSlukem LBER_RETSTR( WSATRY_AGAIN ) 972de962bdSlukem LBER_RETSTR( WSANO_RECOVERY ) 982de962bdSlukem LBER_RETSTR( WSANO_DATA ) 992de962bdSlukem } 1002de962bdSlukem return "unknown WSA error"; 1012de962bdSlukem } 102