Age | Commit message (Collapse) | Author | Files | Lines |
|
O(n) search for dsdb_attribute by msDS-IntId value was
replaced by binary-search in ordered index.
I've choosen the approach of separate index on msDS-IntId values
as I think it is more clear what we are searching for.
And it should little bit faster as we can clearly determine
in which index to perform the search based on ATTID value -
ATTIDs based on prefixMap and ATTIDs based on msDS-IntId
are in separate ranges.
Other way to implement this index was to merge msDS-IntId values
in attributeID_id index.
This led me to a shorted but not so obvious implementation.
|
|
The change here is to try and convert a per the previous rules, but if
we don't know a particular OID as a attributeID, then store it as an
OID (for example). This allows known values to be converted as
before, but still copes with unknown values.
Andrew Bartlett
Signed-off-by: Kamen Mazdrashki <kamenim@samba.org>
|
|
|
|
|
|
This uses the ldb sequence number, in a hope to detect an unchanged
schema quicker.
Andrew Bartlett
|
|
We now store the location of the schema in the schema, and provide
hooks for a future schema reloading mechanism.
Andrew Bartlett
|
|
metze
|
|
|
|
"discard_const_p"
|
|
The load of defaultObjectCategory as an extended DN means we need to
use the common parsing functions I just split out, rather than the
GET_DS_DN macro.
The objectGUIDs are loaded so that we can create the extended DN when
we load from LDIF (and are loaded for the other cases for
consistency).
Also adapt callers to API changes needed for common parsing code
Andrew Bartlett
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
Currenly those tests cover only the main part of the interface,
i.e. dsdb_schema_pfm_new(), dsdb_schema_pfm_make_attid()
and dsdb_schema_pfm_oid_from_attid()
|
|
This allows us to figure out what the system can add, which will not
be in possibleInferiors due to the systemOnly flag.
Andrew Bartlett
|
|
In time, this should avoid the astounding (order) complexity of the
objectclass sorting in objectclass.c eventually.
Andrew Bartlett
|
|
The previous code incorrectly assumed that attributes such as
subClassOf come over the wire as strings. In fact they come over as 32
bit integers which refer to goversIDs. We have to post-process these
as it sometimes happens that a governsID comes over the wire before
the record that defines what it means.
|
|
We are probably still using more memory here than we need to. That
needs to be looked at.
|
|
Sadly it still segfaults at this stage
Andrew Bartlett
|
|
This is all working towards supporting the full WSPP schema without a
major performance penalty.
We now use binary searches when looking up classes and attributes. We
also avoid the loop loading the attributes into ldb, by adding a hook
to override the ldb attribute search function in a module. The
attributes can thus be loaded once, and then saved as part of the
global schema.
Also added support for a few more key attribute syntaxes, as needed
for the full schema.
|
|
Until the extended DN work was compleated, there was no way to store
the additional metadata.
Andrew Bartlett
|
|
This makes clear there's an value stored in the schema,
as they can be '0'.
metze
|
|
This includes additional Samba-specific syntaxes made available from
the ldif_handlers code.
This commit also changes some table to use #defines, to ensure
consistancy in other parts of the code.
Andrew Bartlett
(This used to be commit e26a5efd9a580ed3728e1f449e367b1cd4a73b5f)
|
|
This merges the table once found in the oLschema2ldif tool (and moved
many times) with the table used for DRSUAPI.
The OpenLDAP schema map has been updated, to ensure that despite a
number of attributes being declared as OIDs, they are actually used as
strings (as they are actually LDAP class/attribute names).
Andrew Bartlett
(This used to be commit 61f2958c84beeedcf369ccdc02afed0c8055b108)
|
|
This reads the schema from the in-memory structure, when the magic
attributes are requested. The code is a modified version of that used
in the ad2oLschema tool (now shared).
The schema_fsmo module handles the insertion of the generated result.
As such, this commit also removes these entries from the setup/schema.ldif
Metze's previous stub of this functionality is also removed.
Andrew Bartlett
(This used to be commit c7c32ec7b42bdf0f7b669644516438c71b364e60)
|
|
This code is now in common with ad2oLschema.
Andrew Bartlett
(This used to be commit 0a797388ca442c3ad4809888897b1c63b65a7fdf)
|
|
This will allow the kludge_acl and schema code to leverage the same
work. (We might even get schema validation soon! :-)
Andrew Bartlett
(This used to be commit cecd04ce1f8ce2af2fb654b3abc1499092405d60)
|
|
metze
(This used to be commit 8538d305c803268c712a90879f29a2a74ba0ef03)
|
|
(This used to be commit 138aaef0781e0754cc17b3ffdaa6062ba70c0c6a)
|
|
(This used to be commit 85eeecf997a071ca7e7ad0247e8d34d49b7ffcbb)
|
|
(This used to be commit 1ce32673d960c8b05b6c1b1b99e1976a402417ae)
|
|
include the attribute allowedChildClassesEffective for MMC to allow
the creation of containers.
This may need further refinement, but it seems to work for now.
Andrew Bartlett
(This used to be commit d053b8e218767cb12e20a00fb18995e30869db11)
|
|
There are still a few tidyups of old FSF addresses to come (in both s3
and s4). More commits soon.
(This used to be commit fcf38a38ac691abd0fa51b89dc951a08e89fdafa)
|
|
metze
(This used to be commit e3be33c1d9f9e44ef37e6ef72a23576474f6e725)
|
|
metze
(This used to be commit 17c52ed27613051beecd5bbf72c6e6e749a21d27)
|
|
metze
(This used to be commit 1a21eb700003db1d7853c9be330b2583db9bff03)
|
|
metze
(This used to be commit 5440c0a99fd8dced9020a47af4dbee74df504219)
|
|
is the content of the schemaInfo attribute of the schema head object
metze
(This used to be commit bfb7756bb0f1bbd9a7a17c9689cf2ea351247116)
|
|
and attach the table to the dsdb_schema
metze
(This used to be commit df63995ec5f322d17145664c1f174783861e1723)
|
|
a generic location
- this struct should be also used by the dsdb/samdb/ldb_modules/schema.c
module later
- add functions to map from LDAP OID values to uint32_t values
- add torture test for the OID => uint32 mapping code
metze
(This used to be commit 58ba6ec195ce3a5e2352866809f6cb57f8d8260a)
|