]> git.sur5r.net Git - openldap/blobdiff - libraries/liblutil/nt_err.c
Fix ldaps / TLS processing...
[openldap] / libraries / liblutil / nt_err.c
index a45d74e29b38dc39f0c1bbd5dd5b468a8bccbf00..691c19caa61f89497d582de5c115c90c69c5ae67 100644 (file)
@@ -1,5 +1,95 @@
+/* $OpenLDAP$ */
+#include "portable.h"
+
 #include <windows.h>
-#include <winerror.h>
+
+#ifdef HAVE_WINSOCK2
+#include <winsock2.h>
+#elif HAVE_WINSOCK
+#include <winsock.h>
+#endif /* HAVE_WINSOCK(2) */
+
+#define __RETSTR( x ) case x: return #x;
+
+char *WSAGetErrorString( int err )
+{
+       switch( err )
+       {
+               __RETSTR( WSAEINTR )
+               __RETSTR( WSAEBADF )
+               __RETSTR( WSAEACCES )
+               __RETSTR( WSAEFAULT )
+               __RETSTR( WSAEINVAL )
+               __RETSTR( WSAEMFILE )
+               __RETSTR( WSAEWOULDBLOCK )
+               __RETSTR( WSAEINPROGRESS )
+               __RETSTR( WSAEALREADY )
+               __RETSTR( WSAENOTSOCK )
+               __RETSTR( WSAEDESTADDRREQ )
+               __RETSTR( WSAEMSGSIZE )
+               __RETSTR( WSAEPROTOTYPE )
+               __RETSTR( WSAENOPROTOOPT )
+               __RETSTR( WSAEPROTONOSUPPORT )
+               __RETSTR( WSAESOCKTNOSUPPORT )
+               __RETSTR( WSAEOPNOTSUPP )
+               __RETSTR( WSAEPFNOSUPPORT )
+               __RETSTR( WSAEAFNOSUPPORT )
+               __RETSTR( WSAEADDRINUSE )
+               __RETSTR( WSAEADDRNOTAVAIL )
+               __RETSTR( WSAENETDOWN )
+               __RETSTR( WSAENETUNREACH )
+               __RETSTR( WSAENETRESET )
+               __RETSTR( WSAECONNABORTED )
+               __RETSTR( WSAECONNRESET )
+               __RETSTR( WSAENOBUFS )
+               __RETSTR( WSAEISCONN )
+               __RETSTR( WSAENOTCONN )
+               __RETSTR( WSAESHUTDOWN )
+               __RETSTR( WSAETOOMANYREFS )
+               __RETSTR( WSAETIMEDOUT )
+               __RETSTR( WSAECONNREFUSED )
+               __RETSTR( WSAELOOP )
+               __RETSTR( WSAENAMETOOLONG )
+               __RETSTR( WSAEHOSTDOWN )
+               __RETSTR( WSAEHOSTUNREACH )
+               __RETSTR( WSAENOTEMPTY )
+               __RETSTR( WSAEPROCLIM )
+               __RETSTR( WSAEUSERS )
+               __RETSTR( WSAEDQUOT )
+               __RETSTR( WSAESTALE )
+               __RETSTR( WSAEREMOTE )
+               __RETSTR( WSASYSNOTREADY )
+               __RETSTR( WSAVERNOTSUPPORTED )
+               __RETSTR( WSANOTINITIALISED )
+               __RETSTR( WSAEDISCON )
+
+#ifdef HAVE_WINSOCK2
+               __RETSTR( WSAENOMORE )
+               __RETSTR( WSAECANCELLED )
+               __RETSTR( WSAEINVALIDPROCTABLE )
+               __RETSTR( WSAEINVALIDPROVIDER )
+               __RETSTR( WSASYSCALLFAILURE )
+               __RETSTR( WSASERVICE_NOT_FOUND )
+               __RETSTR( WSATYPE_NOT_FOUND )
+               __RETSTR( WSA_E_NO_MORE )
+               __RETSTR( WSA_E_CANCELLED )
+               __RETSTR( WSAEREFUSED )
+#endif // HAVE_WINSOCK2        
+
+               __RETSTR( WSAHOST_NOT_FOUND )
+               __RETSTR( WSATRY_AGAIN )
+               __RETSTR( WSANO_RECOVERY )
+               __RETSTR( WSANO_DATA )
+       }
+       return "unknown";
+}
+
+char *WSAGetLastErrorString( void )
+{
+       return WSAGetErrorString( WSAGetLastError() );
+}
+
+#undef __RETSTR
 
 char *GetErrorString( int err )
 {
@@ -10,6 +100,7 @@ char *GetErrorString( int err )
                NULL,
                err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
                msgBuf, 1024, NULL );
+
        return msgBuf;
 }
 
@@ -18,4 +109,5 @@ char *GetLastErrorString( void )
        return GetErrorString( GetLastError() );
 }
 
-#undef __RETSTR
\ No newline at end of file
+
+