| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add {nis,schema-compat}-ignore-subtree (subtrees under which we ignore
contents and updates )and {nis,schema-compat}-restrict-subtree (subtrees
out of which we ignore contents and updates, if set) settings, and
default the former to "cn=tasks,cn=config".
This should avoid cases where we're looking through the ldbm backend for
entries which have a dangling reference to a newly-added task (which,
because it's in the DSE, means we acquire an ldbm lock after acquiring
our internal lock) while also updating a compat entry after its source
entry is modified (for example, by the memberOf plugin, which results in
us attempting to acquire our lock while the ldbm lock is already held).
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add a schema-compat-relevant-subtree configuration option, listing the
only parts of the DIT that we should ever look at, either as source
entries or as other entries which contain data which might be pulled in
as part of computing the contents of compat entries.
This is more or less the whitelist to schema-compat-ignore-subtree's
blacklist.
|
|
|
|
|
|
|
| |
Add a schema-compat-ignore-subtree configuration option, listing parts
of the DIT that we should never look at, neither as source entries nor
as random other entries which contain data which might be pulled in as
part of computing the contents of compat entries.
|
|
|
|
|
| |
- add missing newlines at the end of a couple of messages
- make that one bit that we compare to zero unsigned instead of signed
|
|
|
|
|
|
|
|
|
| |
* Check for BETXN support at build-time, provide options for disabling
or requiring that it be available for build to succeed.
* Track whether or not BETXN support is enabled in the plugin-local
state.
* Skip processing in post/internalpost callbacks if BETXN support is enabled.
* Skip work in betxnpost callbacks if BETXN support is disabled.
|
|
|
|
|
|
|
| |
Transaction support the way we added it is an all-or-nothing proposition
for a server installation, which turned out to be problematic, so 389 is
going to pursue another strategy for that. The new way requires that we
not register as a betxn plugin, ever.
|
| |
|
| |
|
|
|
|
|
|
| |
already have, so that we can pass the transaction ID around; this
includes additional parameters for a number of functions and a new
callback data type for backend_set_config_entry_add_cb()
|
|
|
|
|
|
| |
allocates internal state each time but doesn't clean up any that's
aready there if you reuse the block
- correctly free values we use when constructing compat entries
|
|
|
|
| |
failure
|
| |
|
| |
|
|
|
|
| |
passing the TXN ID around, which means we deadlock if we actually do it
|
|
|
|
| |
data, and when we're later called for a modify request which doesn't modify any of those attributes, skip recalculating the entry contents (should make a dent in #771493).
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- where we were applying a filter test after retrieving an entry, just
let the retrieval function do it
|
| |
|
|
|
|
|
| |
- make the nis plugin register two types of internal plugins,
since it can't just be a postop plugin any more
|
| |
|
|
|
|
| |
tracking multi-hop backreferences
|
| |
|
|
|
|
|
| |
- warn if a map is going to be empty, because it usually signals a
misconfiguration of some kind
|
| |
|
|
|
|
|
|
| |
- when reading NIS configuration, treat having an explicitly specified
key-format or keys-format as reason to discard the defaults for both,
and treat value-format and values-format similarly
|
|
|
|
|
|
|
|
|
| |
- double-check that arrays aren't NULL before
indexing then
backend_gather_data()
- in the event of a parsing error, actually return zero
as the length of the arrays we'd be populating
- correctly NULL terminate the list of results we hand back
|
|
|
|
|
| |
- factor out code which retrieves key and keys lists so that it can be reused
to pull up value data, too
|
| |
|
|
|
|
| |
- LDAP_SCOPE_SUB->LDAP_SCOPE_SUBTREE
|
| |
|
|
|
|
| |
value, for when we want to remove a default key-format and add a keys-format
|
| |
|
|
|
|
| |
rather than overwriting the default with NULL if we fail to find one
|
| |
|
| |
|
|
|
|
|
| |
- use shared vattr-aware attribute reading functions to cut down the amount of
code we use to read the configuration
|
| |
|
|
|
|
|
| |
just expect the specific backend to return a filter when checking if an entry
is is a set configuration
|
|
|
|
| |
- rename check_aci to check_access
|
| |
|
|
|
|
|
|
|
| |
configuration for the referred-to map
- free map configurations correctly
- if needed, wrap a user-supplied filter in "()" when the formatter asks for
the filter
|
|
|
|
| |
drop accessors for reading the shared parts
|
| |
|
| |
|
|
|
|
| |
- start adding configuration for the schema plugin
|