Searching for uids less than 1000 and gt 500... Net::LDAP=HASH(0x22d4e
+e0) sending:
0000 82: SEQUENCE {
0002 1: INTEGER = 2
0005 77: [APPLICATION 3] {
0007 39: STRING = 'ou=slurm,dc=lomonosov,dc=parallel,dc=ru'
0030 1: ENUM = 2
0033 1: ENUM = 2
0036 1: INTEGER = 0
0039 1: INTEGER = 0
003C 1: BOOLEAN = FALSE
003F 17: [CONTEXT 6] {
0041 9: STRING = 'uidNumber'
004C 4: STRING = '1000'
0052 : }
0052 0: SEQUENCE {
0054 : }
0054 : }
0054 : }
Net::LDAP=HASH(0x22d4ee0) received:
0000 12: SEQUENCE {
0002 1: INTEGER = 2
0005 7: [APPLICATION 5] {
0007 1: ENUM = 0
000A 0: STRING = ''
000C 0: STRING = ''
000E : }
000E : }
Ok
Found:
I suppose that 'context 6' in this context means 'less or equal'; according to rfc,
LDAPMessage ::= SEQUENCE {
messageID MessageID,
protocolOp CHOICE {
bindRequest BindRequest,
bindResponse BindResponse,
unbindRequest UnbindRequest,
searchRequest SearchRequest,
searchResEntry SearchResultEntry,
searchResDone SearchResultDone,
[...]
SearchRequest ::= [APPLICATION 3] SEQUENCE {
baseObject LDAPDN,
scope ENUMERATED {
baseObject (0),
singleLevel (1),
wholeSubtree (2),
... },
derefAliases ENUMERATED {
neverDerefAliases (0),
derefInSearching (1),
derefFindingBaseObj (2),
derefAlways (3) },
sizeLimit INTEGER (0 .. maxInt),
timeLimit INTEGER (0 .. maxInt),
typesOnly BOOLEAN,
filter Filter,
attributes AttributeSelection }
[...]
Filter ::= CHOICE {
[...]
greaterOrEqual [5] AttributeValueAssertion,
lessOrEqual [6] AttributeValueAssertion,
[...]
AttributeValueAssertion ::= SEQUENCE {
attributeDesc AttributeDescription,
assertionValue AssertionValue }
AttributeDescription ::= LDAPString
-- Constrained to <attributedescriptio
+n>
-- [RFC4512]
AssertionValue ::= OCTET STRING
Everything seems to be OK, but *why* console utility 'ldapsearch' returns ~200 entries, and Net::LDAP doesn't?
|