Hi, On Monday, 5. September 2011, Serge A. Ribalchenko wrote: > Im trying to get a list of available entries from ldap by simple filter: > attribute cn must be less than 1000 and greater than 500. According to > Net::LDAP documentation this could be done like this: > > 019: filter => "&(cn<=1000)(cn>=500)"
The problem is not in perl-ldap, but on the server side. If the attributeType used in the does not support the ORDERING matching rule, then you are out of luck. You can find the matching rules supported by the various attributeTypes in the schema. Here's the definition taken from my OpenLDAP server (as OpenLDAP adheres to the RFCs vry strictly, I am pretty confident, it is exactly as in the RFCs): attributeTypes: ( 2.5.4.41 NAME 'name' DESC 'RFC4519: common supertype of name attributes' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} ) attributeTypes: ( 2.5.4.3 NAME ( 'cn' 'commonName' ) DESC 'RFC4519: common name(s) for which the entity is known by' SUP name ) It says: * the attributetype 'name' has matching rules for EQUALITY & SUBSTR only * 'cn' is derived from 'name' No luck in this case, sorry! Best Peter PS: It is possible that some LDAP server implementations implement extensions on the matching rules that are not shown in the schema, but as this is non- standard, the results depend in the specific implementation (e.g. lexical instead of numerical sorting, ...) -- Peter Marschall pe...@adpm.de