]> git.sur5r.net Git - openldap/commitdiff
ITS#5409 fix from HEAD
authorHoward Chu <hyc@openldap.org>
Wed, 9 Apr 2008 03:12:47 +0000 (03:12 +0000)
committerHoward Chu <hyc@openldap.org>
Wed, 9 Apr 2008 03:12:47 +0000 (03:12 +0000)
servers/slapd/back-bdb/search.c
servers/slapd/controls.c

index 880c091fcfba02379ba75add1d4874cfb2436e7a..c11439ef606683672e95b9f6e68470aeec02b295 100644 (file)
@@ -1221,20 +1221,6 @@ parse_paged_cookie( Operation *op, SlapReply *rs )
                        goto done;
                }
 
-       } else {
-               /* Initial request.  Initialize state. */
-#if 0
-               if ( op->o_conn->c_pagedresults_state.ps_cookie != 0 ) {
-                       /* There's another pagedResults control on the
-                        * same connection; reject new pagedResults controls 
-                        * (allowed by RFC2696) */
-                       rs->sr_text = "paged results cookie unavailable; try later";
-                       rc = LDAP_UNWILLING_TO_PERFORM;
-                       goto done;
-               }
-#endif
-               ps->ps_cookie = 0;
-               ps->ps_count = 0;
        }
 
 done:;
index 59057d8b1c62df70a5c2fd7fbcc8c65b99ceaf70..ad36d014bdf2de4368c124c29efac35f8d6991e8 100644 (file)
@@ -1001,6 +1001,10 @@ static int parsePagedResults (
        *ps = op->o_conn->c_pagedresults_state;
        ps->ps_size = size;
        op->o_pagedresults_state = ps;
+       if ( !cookie.bv_len ) {
+               ps->ps_count = 0;
+               ps->ps_cookie = 0;
+       }
 
        /* NOTE: according to RFC 2696 3.: