[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
ITS#4545 bug in libldap
I haven't quite figured out everything that's going on, but this patch
definitely shows when it occurs in test036:
Index: result.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/libraries/libldap/result.c,v
retrieving revision 1.140
diff -u -r1.140 result.c
--- result.c 3 Dec 2006 23:11:12 -0000 1.140
+++ result.c 12 Dec 2006 22:53:25 -0000
@@ -914,6 +914,10 @@
}
if ( lr != NULL ) {
+ if ( tag == LDAP_RES_SEARCH_RESULT ) {
+ Debug( LDAP_DEBUG_TRACE, "request done: ld %p
msgid %ld but mis-handled!\n",
+ (void *)ld, (long) id, 0 );
+ }
ldap_return_request( ld, lr, 0 );
lr = NULL;
}
The response is actually returned to the caller properly, but we never
decide to "mark request completed." Setting a breakpoint here will let
you poke around at it. v3ref is set to V3REF_TOAPP at this point. This
should mean that the result included a referral and it will be returned
to the caller, which means that we can dispose of the request, but we
never do.
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
OpenLDAP Core Team http://www.openldap.org/project/