diff --git a/ldapserver/server.py b/ldapserver/server.py
index a69721382e144156432bad3a9c299cb394577fab..4b6d4bd17fc4db9d18aafaab65e1ab1da4caa1cb 100644
--- a/ldapserver/server.py
+++ b/ldapserver/server.py
@@ -395,6 +395,7 @@ class SimpleLDAPRequestHandler(BaseLDAPRequestHandler):
 		raise exceptions.LDAPAuthMethodNotSupported()
 
 	def handle_search(self, op, controls=None):
+		reject_critical_controls(controls)
 		for dn, attributes in self.do_search(op.baseObject, op.scope, op.filter):
 			pattributes = [ldap.PartialAttribute(name, values) for name, values in attributes.items()]
 			if 'subschemaSubentry' not in attributes and self.subschema is not None: