2 * WLDAP32 - LDAP support for Wine
4 * Copyright 2005 Hans Leidekker
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 #include "wine/port.h"
24 #include "wine/debug.h"
35 #define LDAP_SUCCESS 0x00
38 #include "winldap_private.h"
41 WINE_DEFAULT_DEBUG_CHANNEL(wldap32);
43 void ldap_memfreeA( PCHAR block )
45 TRACE( "(%p)\n", block );
49 void ldap_memfreeW( PWCHAR block )
51 TRACE( "(%p)\n", block );
55 ULONG WLDAP32_ldap_result( WLDAP32_LDAP *ld, ULONG msgid, ULONG all,
56 struct l_timeval *timeout, WLDAP32_LDAPMessage **res )
58 ULONG ret = WLDAP32_LDAP_NOT_SUPPORTED;
61 TRACE( "(%p, 0x%08lx, 0x%08lx, %p, %p)\n", ld, msgid, all, timeout, res );
63 if (!ld || !res) return ~0UL;
64 ret = ldap_result( ld, msgid, all, (struct timeval *)timeout, res );
70 ULONG ldap_value_freeA( PCHAR *vals )
72 TRACE( "(%p)\n", vals );
74 strarrayfreeA( vals );
78 ULONG ldap_value_freeW( PWCHAR *vals )
80 TRACE( "(%p)\n", vals );
82 strarrayfreeW( vals );
86 int LdapUnicodeToUTF8( LPCWSTR src, int srclen, LPSTR dst, int dstlen )
88 return WideCharToMultiByte( CP_UTF8, 0, src, srclen, dst, dstlen, NULL, NULL );
91 int LdapUTF8ToUnicode( LPCSTR src, int srclen, LPWSTR dst, int dstlen )
93 return MultiByteToWideChar( CP_UTF8, 0, src, srclen, dst, dstlen );