mirror of
https://github.com/samba-team/samba.git
synced 2025-01-14 19:24:43 +03:00
58d50a614f
people. Note that I decided to make it LGPL. ldb is not finished yet, but enough of it is there for people to get an idea of what it does, and quite a few simple tests work (This used to be commit dc6f41f9e777d37f883303ddef0d96840d80f78e)
42 lines
878 B
Plaintext
42 lines
878 B
Plaintext
The list of indexed fields
|
|
--------------------------
|
|
|
|
dn=@INDEXLIST
|
|
list of field names that are indexed
|
|
|
|
contains fields of type @IDXATTR which contain attriute names
|
|
of indexed fields
|
|
|
|
|
|
Data records
|
|
------------
|
|
|
|
for each user record in the db there is:
|
|
main record
|
|
key: DN=dn
|
|
data: packed attribute/value list
|
|
|
|
a index record for each indexed field in the record
|
|
|
|
|
|
Index Records
|
|
-------------
|
|
|
|
The index records contain the list of dn's that contain records
|
|
matching the index key
|
|
|
|
All index records are of the form:
|
|
dn=@INDEX:field:value
|
|
|
|
and contain fields of type @IDX which are the dns of the records
|
|
that have that value for some attribute
|
|
|
|
|
|
Search Expressions
|
|
------------------
|
|
|
|
Very similar to LDAP search expressions, but does not allow ~=, <= or >=
|
|
|
|
attrib0 := (field=value)
|
|
attrib := attrib0 | (attrib&&attrib) | (attrib||attrib) | !attrib
|