| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
This converts the code from using the binary DN code in ldb_dn to
using a special Samba-specfic wrapper around ldb_dn.
We also use the dsdb_dn code for DN+Binary and DN+String comparisons
(changed from treating them as Binary blobs)
Andrew Bartlett
|
| |
|
|
|
|
|
|
|
| |
This will help simplify boilerplate comparison functions where we
don't have a shortcut way to compare.
Andrew Bartlett
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than have a repeat of the bugs we found at the plugfest where
hexidecimal strings must be in upper or lower case in particular
places, ensure that each caller chooses which case they want.
This reverts most of the callers back to upper case, as things were
before tridge's patch. The critical call in the extended DN code is
of course handled in lower case.
Andrew Bartlett
|
| |
|
|
|
|
|
|
| |
This size constraint is not correct in it's current form, as windows
does send us rDN values for CN with lengths longer than 64. Once we
know how this constraint really works we can add it back in.
|
|
|
|
|
|
| |
This fixes up the broken "send" method of the python bindings and corrects some
other parameter lists in parsing functions (this is only cosmetic). The reason
for the bug was a superfluous "|"!
|
| |
|
|
|
|
| |
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
|
|
|
|
| |
Signed-off-by: Nadezhda Ivanova <nadezhda.ivanova@postpath.com>
Author: Zahari Zahariev <zahari.zahariev@postpath.com>
|
| |
|
| |
|
|
|
|
| |
"msg_delete_attribute" doesn't return an LDB result constant.
|
| |
|
|
|
|
|
|
|
|
| |
scope rather than "int""
This reverts commit 4f8826ff7f4789c5b5f363b733a42053f72aa526.
Jelmer pointed out that the "enum"s don't work so well in combination with python.
|
|
|
|
|
|
|
| |
Calling it from samdb_connect() can cause a stale schema to be put
into the global schema.
Thanks to Andrew Bartlett for spotting this.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This helps pin down where errors occour, by printing a call stack and
setting error strings and trace messages in the transaction case.
Andrew Bartlett
|
|\ |
|
| |
| |
| |
| |
| |
| | |
I think this is better since "ldb_backend_connect" and "ldb_connect" which
propagate those values should return only LDB constants. Therefore a conversion
(especially for "-1") would be needed.
|
|/
|
|
|
|
|
| |
The ldb_dn_explode code normally enforces all special characters,
including a '=', must be escaped. Unfortunately this conflicts with
the ltdb index DNs, which for binary attributes may be base64
encoded. This allows a unescaped '=' as a special case for index DNs.
|
| |
|
| |
|
| |
|
|
|
|
| |
We may have modified index objects in the in-memory index tdb
|
|
|
|
| |
rather than "int"
|
|
|
|
|
| |
If we don't include Python.h first then we get a pile of warnings due
to broken redefines of XOPEN_SOURCE in the Python includes.
|
| |
|
| |
|
|
|
|
|
| |
This will be used to allow cancelling of transactions in a child after
a fork()
|
|
|
|
|
|
|
|
|
| |
This allows us to reuse a ldb context if it is open twice, instead
of going through the expensive process of a full ldb open. We can
reuse it if all of the parameters are the same.
The change relies on callers using talloc_unlink() or free of a parent
to close a ldb context.
|
|
|
|
|
|
| |
This patch adds a system_session cache, preventing us from having to
recreate it on every ldb open, and allowing us to detect when the same
session is being used in ldb_wrap
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
These will be used by ldb_index.c
|
|
|
|
| |
We compare identical ldb_val values surprisingly often
|
|
|
|
|
|
|
|
| |
first list
Intuitively you would think it couldn't be longer than the minimum of
the two lists, but we are deliberately allowing for duplicates at this
level of the indexing code, which means the result can be longer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This gets rid of the @IDXPTR approach to in-transaction indexing,
instead using an in-memory tdb to hold index values during a
transaction. This also cleans up a lot of the internal indexing logic,
hopefully making it easier to understand.
One of the big changes is in memory management, with a lot more use
made of talloc tricks to avoid copying dn lists, and shortcuts used to
avoid high intersection and union calculation costs.
The overall result is that a re-provision on my laptop goes from 48s
to a bit over 10s.
|
| |
|
|
|
|
| |
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
|
|
|
|
|
| |
On OpenSolaris MAP_RENAME and friends are defined in <sys/mman.h> e.g. mmap and friends. So on these systems MAP_* have a meaning. Cleaned up LDB name space by adding LDB_ in front of MAP_* e.g. MAP_RENAME => LDB_MAP_RENAME
Signed-off-by: Torgeir Lerkerød <torgeir.lerkerod@gmail.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
|
|
| |
The strlen() could go past the end of a non-null terminated value
|
|
|
|
|
|
|
|
| |
We need to keep the old 'ares' from the remote server around so we can forward
it back to the caller. We can't send the same controls (from the last search
entry) twice (and it makes no sense anyway).
Andrew Bartlett
|