[PATCH v3 2/7] wldap32: Implement ldap_search_abandon_page.
Dmitry Timoshkov
dmitry at baikal.ru
Fri Apr 17 04:11:57 CDT 2020
Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
dlls/wldap32/page.c | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/dlls/wldap32/page.c b/dlls/wldap32/page.c
index d2d86e34af..09ca19c6c3 100644
--- a/dlls/wldap32/page.c
+++ b/dlls/wldap32/page.c
@@ -262,10 +262,31 @@ ULONG CDECL ldap_parse_page_controlW( WLDAP32_LDAP *ld, PLDAPControlW *ctrls,
ULONG CDECL ldap_search_abandon_page( WLDAP32_LDAP *ld, PLDAPSearch search )
{
- FIXME( "(%p, %p)\n", ld, search );
+#ifdef HAVE_LDAP
+ LDAPControlW **ctrls;
+
+ TRACE( "(%p, %p)\n", ld, search );
+
+ if (!ld || !search) return ~0u;
+
+ strfreeW( search->dn );
+ strfreeW( search->filter );
+ strarrayfreeW( search->attrs );
+ ctrls = search->serverctrls;
+ controlfreeW( ctrls[0] ); /* page control */
+ ctrls++;
+ while (*ctrls) controlfreeW( *ctrls++ );
+ heap_free( search->serverctrls );
+ controlarrayfreeW( search->clientctrls );
+ if (search->cookie)
+ ber_bvfree( search->cookie );
+ heap_free( search );
- if (!ld) return ~0u;
return WLDAP32_LDAP_SUCCESS;
+
+#else
+ return WLDAP32_LDAP_NOT_SUPPORTED;
+#endif
}
PLDAPSearch CDECL ldap_search_init_pageA( WLDAP32_LDAP *ld, PCHAR dn, ULONG scope,
--
2.25.2
More information about the wine-devel
mailing list