mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-03 01:01:44 +00:00
wldap32: Fix build against latest OpenLDAP release.
This commit is contained in:
parent
8ae0eeafc6
commit
032dbfe474
10
configure
vendored
10
configure
vendored
|
@ -12902,11 +12902,19 @@ LIBS="$LIBS $LDAPLIBS $LIBPTHREAD"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for ac_func in \
|
for ac_func in \
|
||||||
ldap_count_references \
|
ldap_count_references \
|
||||||
ldap_first_reference \
|
ldap_first_reference \
|
||||||
ldap_next_reference \
|
ldap_next_reference \
|
||||||
ldap_parse_reference
|
ldap_parse_reference \
|
||||||
|
ldap_parse_sort_control \
|
||||||
|
ldap_parse_sortresponse_control \
|
||||||
|
ldap_parse_vlv_control \
|
||||||
|
ldap_parse_vlvresponse_control
|
||||||
do
|
do
|
||||||
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
|
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
|
||||||
{ echo "$as_me:$LINENO: checking for $ac_func" >&5
|
{ echo "$as_me:$LINENO: checking for $ac_func" >&5
|
||||||
|
|
|
@ -864,7 +864,11 @@ then
|
||||||
ldap_count_references \
|
ldap_count_references \
|
||||||
ldap_first_reference \
|
ldap_first_reference \
|
||||||
ldap_next_reference \
|
ldap_next_reference \
|
||||||
ldap_parse_reference,
|
ldap_parse_reference \
|
||||||
|
ldap_parse_sort_control \
|
||||||
|
ldap_parse_sortresponse_control \
|
||||||
|
ldap_parse_vlv_control \
|
||||||
|
ldap_parse_vlvresponse_control,
|
||||||
[$LDAPLIBS $LIBPTHREAD])
|
[$LDAPLIBS $LIBPTHREAD])
|
||||||
fi
|
fi
|
||||||
WINE_NOTICE_IF([test "x$LDAPLIBS" = "x"],[libldap (OpenLDAP) development files not found.
|
WINE_NOTICE_IF([test "x$LDAPLIBS" = "x"],[libldap (OpenLDAP) development files not found.
|
||||||
|
|
|
@ -325,7 +325,13 @@ ULONG CDECL ldap_parse_sort_controlW( WLDAP32_LDAP *ld, PLDAPControlW *control,
|
||||||
#ifdef HAVE_LDAP
|
#ifdef HAVE_LDAP
|
||||||
char *attrU = NULL;
|
char *attrU = NULL;
|
||||||
LDAPControl **controlU = NULL;
|
LDAPControl **controlU = NULL;
|
||||||
|
#ifdef HAVE_LDAP_PARSE_SORT_CONTROL
|
||||||
unsigned long res;
|
unsigned long res;
|
||||||
|
#elif defined(HAVE_LDAP_PARSE_SORTRESPONSE_CONTROL)
|
||||||
|
ber_int_t res;
|
||||||
|
LDAPControl *sortcontrol = NULL;
|
||||||
|
unsigned int i;
|
||||||
|
#endif
|
||||||
|
|
||||||
TRACE( "(%p, %p, %p, %p)\n", ld, control, result, attr );
|
TRACE( "(%p, %p, %p, %p)\n", ld, control, result, attr );
|
||||||
|
|
||||||
|
@ -336,10 +342,29 @@ ULONG CDECL ldap_parse_sort_controlW( WLDAP32_LDAP *ld, PLDAPControlW *control,
|
||||||
if (!controlU) return WLDAP32_LDAP_NO_MEMORY;
|
if (!controlU) return WLDAP32_LDAP_NO_MEMORY;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = ldap_parse_sort_control( ld, controlU, &res, &attrU );
|
#ifdef HAVE_LDAP_PARSE_SORT_CONTROL
|
||||||
|
if (!(ret = ldap_parse_sort_control( ld, controlU, &res, &attrU )))
|
||||||
*result = res;
|
{
|
||||||
*attr = strUtoW( attrU );
|
*result = res;
|
||||||
|
*attr = strUtoW( attrU );
|
||||||
|
}
|
||||||
|
#elif defined(HAVE_LDAP_PARSE_SORTRESPONSE_CONTROL)
|
||||||
|
for (i = 0; controlU[i]; i++)
|
||||||
|
{
|
||||||
|
if (!strcmp( LDAP_SERVER_RESP_SORT_OID, controlU[i]->ldctl_oid ))
|
||||||
|
sortcontrol = controlU[i];
|
||||||
|
}
|
||||||
|
if (!sortcontrol)
|
||||||
|
{
|
||||||
|
controlarrayfreeU( controlU );
|
||||||
|
return WLDAP32_LDAP_CONTROL_NOT_FOUND;
|
||||||
|
}
|
||||||
|
if (!(ret = ldap_parse_sortresponse_control( ld, sortcontrol, &res, &attrU )))
|
||||||
|
{
|
||||||
|
*result = res;
|
||||||
|
*attr = strUtoW( attrU );
|
||||||
|
}
|
||||||
|
#endif
|
||||||
controlarrayfreeU( controlU );
|
controlarrayfreeU( controlU );
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -405,7 +430,13 @@ INT CDECL ldap_parse_vlv_controlW( WLDAP32_LDAP *ld, PLDAPControlW *control,
|
||||||
int ret = LDAP_NOT_SUPPORTED;
|
int ret = LDAP_NOT_SUPPORTED;
|
||||||
#ifdef HAVE_LDAP
|
#ifdef HAVE_LDAP
|
||||||
LDAPControl **controlU = NULL;
|
LDAPControl **controlU = NULL;
|
||||||
|
#ifdef HAVE_LDAP_PARSE_VLV_CONTROL
|
||||||
unsigned long pos, count;
|
unsigned long pos, count;
|
||||||
|
#elif defined(HAVE_LDAP_PARSE_VLVRESPONSE_CONTROL)
|
||||||
|
ber_int_t pos, count;
|
||||||
|
LDAPControl *vlvcontrol = NULL;
|
||||||
|
unsigned int i;
|
||||||
|
#endif
|
||||||
|
|
||||||
TRACE( "(%p, %p, %p, %p, %p, %p)\n", ld, control, targetpos,
|
TRACE( "(%p, %p, %p, %p, %p, %p)\n", ld, control, targetpos,
|
||||||
listcount, context, errcode );
|
listcount, context, errcode );
|
||||||
|
@ -417,11 +448,31 @@ INT CDECL ldap_parse_vlv_controlW( WLDAP32_LDAP *ld, PLDAPControlW *control,
|
||||||
if (!controlU) return WLDAP32_LDAP_NO_MEMORY;
|
if (!controlU) return WLDAP32_LDAP_NO_MEMORY;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = ldap_parse_vlv_control( ld, controlU, &pos, &count,
|
#ifdef HAVE_LDAP_PARSE_VLV_CONTROL
|
||||||
(struct berval **)context, errcode );
|
if (!(ret = ldap_parse_vlv_control( ld, controlU, &pos, &count,
|
||||||
|
(struct berval **)context, errcode )))
|
||||||
*targetpos = pos;
|
{
|
||||||
*listcount = count;
|
*targetpos = pos;
|
||||||
|
*listcount = count;
|
||||||
|
}
|
||||||
|
#elif defined(HAVE_LDAP_PARSE_VLVRESPONSE_CONTROL)
|
||||||
|
for (i = 0; controlU[i]; i++)
|
||||||
|
{
|
||||||
|
if (!strcmp( LDAP_CONTROL_VLVRESPONSE, controlU[i]->ldctl_oid ))
|
||||||
|
vlvcontrol = controlU[i];
|
||||||
|
}
|
||||||
|
if (!vlvcontrol)
|
||||||
|
{
|
||||||
|
controlarrayfreeU( controlU );
|
||||||
|
return WLDAP32_LDAP_CONTROL_NOT_FOUND;
|
||||||
|
}
|
||||||
|
if (!(ret = ldap_parse_vlvresponse_control( ld, vlvcontrol, &pos, &count,
|
||||||
|
(struct berval **)context, errcode )))
|
||||||
|
{
|
||||||
|
*targetpos = pos;
|
||||||
|
*listcount = count;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
controlarrayfreeU( controlU );
|
controlarrayfreeU( controlU );
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -190,6 +190,14 @@ typedef struct WLDAP32_berval
|
||||||
#define LDAP_PAGED_RESULT_OID_STRING_W (const WCHAR []){'1','.','2','.', \
|
#define LDAP_PAGED_RESULT_OID_STRING_W (const WCHAR []){'1','.','2','.', \
|
||||||
'8','4','0','.','1','1','3','5','5','6','.','1','.','4','.','3','1','9',0}
|
'8','4','0','.','1','1','3','5','5','6','.','1','.','4','.','3','1','9',0}
|
||||||
|
|
||||||
|
#define LDAP_SERVER_RESP_SORT_OID "1.2.840.113556.1.4.474"
|
||||||
|
#define LDAP_SERVER_RESP_SORT_OID_W (const WCHAR []){'1','.','2','.', \
|
||||||
|
'8','4','0','.','1','1','3','5','5','6','.','1','.','4','.','4','7','4',0}
|
||||||
|
|
||||||
|
#define LDAP_CONTROL_VLVRESPONSE "2.16.840.1.113730.3.4.10"
|
||||||
|
#define LDAP_CONTROL_VLVRESPONSE_W (const WCHAR []){'2','.','1','6','.', \
|
||||||
|
'8','4','0','.','1','.','1','1','3','7','3','0','.','3','.','4','.','1','0',0}
|
||||||
|
|
||||||
typedef struct ldapcontrolA
|
typedef struct ldapcontrolA
|
||||||
{
|
{
|
||||||
PCHAR ldctl_oid;
|
PCHAR ldctl_oid;
|
||||||
|
|
|
@ -288,6 +288,18 @@
|
||||||
/* Define to 1 if you have the `ldap_parse_reference' function. */
|
/* Define to 1 if you have the `ldap_parse_reference' function. */
|
||||||
#undef HAVE_LDAP_PARSE_REFERENCE
|
#undef HAVE_LDAP_PARSE_REFERENCE
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `ldap_parse_sortresponse_control' function. */
|
||||||
|
#undef HAVE_LDAP_PARSE_SORTRESPONSE_CONTROL
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `ldap_parse_sort_control' function. */
|
||||||
|
#undef HAVE_LDAP_PARSE_SORT_CONTROL
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `ldap_parse_vlvresponse_control' function. */
|
||||||
|
#undef HAVE_LDAP_PARSE_VLVRESPONSE_CONTROL
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `ldap_parse_vlv_control' function. */
|
||||||
|
#undef HAVE_LDAP_PARSE_VLV_CONTROL
|
||||||
|
|
||||||
/* Define if you have libaudioIO */
|
/* Define if you have libaudioIO */
|
||||||
#undef HAVE_LIBAUDIOIO
|
#undef HAVE_LIBAUDIOIO
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue