]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/search.c
Per ITS#419, don't require SLAPD_RLOOKUPS when HAVE_TCPD
[openldap] / servers / slapd / search.c
index 8d98fb0ae439580f7030cb29a977f8db9e94364b..10e6d67b27601e43d908f32e34f1b7621eaf620d 100644 (file)
@@ -18,6 +18,7 @@
 #include <ac/string.h>
 #include <ac/socket.h>
 
+#include "ldap_pvt.h"
 #include "slap.h"
 
 
@@ -107,7 +108,7 @@ do_search(
 
        nbase = ch_strdup( base );
 
-       if( dn_normalize_case( nbase ) == NULL ) {
+       if( dn_normalize( nbase ) == NULL ) {
                send_ldap_result( conn, op, LDAP_INVALID_DN_SYNTAX,
                        NULL, "invalid DN", NULL, NULL );
                rc = -1;
@@ -203,6 +204,14 @@ do_search(
                goto return_results;
        }
 
+       /* make sure this backend recongizes critical controls */
+       rc = backend_check_controls( be, conn, op ) ;
+
+       if( rc != LDAP_SUCCESS ) {
+               send_ldap_result( conn, op, rc,
+                       NULL, NULL, NULL, NULL );
+       }
+
        /* deref the base if needed */
        nbase = suffix_alias( be, nbase );