summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb/ldb_modules
AgeCommit message (Collapse)AuthorFilesLines
2009-11-16s4:dsdb LDB attribute lists must always be a static const char **.Andrew Bartlett1-1/+1
(If they are not, then due to the async code, they will cause a segfault as they reference a reclaimed portion of the stack). Andrew Bartlett
2009-11-16s4:provision - Removed dependency on full Samba 3 schema from FDSEndi S. Dewata1-41/+0
2009-11-15Fixed some major bugs in inheritance and access checks.Nadezhda Ivanova2-105/+258
Fixed sd creation not working on LDAP modify. Fixed incorrect replacement of CO and CG. Fixed incorrect access check on modify for SD modification. Fixed failing sec_descriptor test and enabled it. Fixed failing sd add test in ldap.python
2009-11-15s4:SAMLDB module - Add support for required and generated schema attributesAndrew Bartlett1-7/+285
This missing support found by Microsoft test suite at AD interop event. Patch by Andrew Bartlett Enhancements by Matthias Dieter Wallnöfer
2009-11-12s4:dsdb Make callbacks in extended_dn_out clearer to followAndrew Bartlett1-1/+6
2009-11-12s4:repl_meta_data Parse linked attributes with schema syntaxesAndrew Bartlett1-39/+44
The bug here was that by assuming all linked attributes were 'normal DNs', we would miss the binary portion of DN+Binary. This patch then has us reparse the string to determine it's GUID, for the GUID lookup, but maintains the binary porition into the on-disk format. Andrew Bartlett
2009-11-12s4:dsdb Improve debug message in extended_dn_outAndrew Bartlett1-1/+3
2009-11-12s4:dsdb Cosmetic fixes found by metze in review of dsdb_dn changesAndrew Bartlett2-29/+36
These changes include reworking the code to call ldb_module_get_ctx() less often (avoid the function calls, particularly during the step into a complex function). Andrew Bartlett
2009-11-12s4:dsdb Use new dsdb_dn code in LDB modules and Samba4 schemaAndrew Bartlett2-45/+72
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
2009-11-12lib/util Split data_blob_hex_string() into upper and lowerAndrew Bartlett1-5/+5
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
2009-11-09s4-samdb: remove the rDN size constraint of 64Andrew Tridgell1-3/+10
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.
2009-11-06s4/drs: remove unused num_prefixes and prefixes from dsdb_schemaKamen Mazdrashki1-1/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06s4/drs: dsdb_map_oid2int() replaced by dsdb_schema_pfm_make_attid()Kamen Mazdrashki1-2/+2
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-05Version 1.0 of the directory service acls module.Nadezhda Ivanova2-963/+346
At this point, support for checks on LDAP add, delete, rename and modify. Old kludge_acl is still there to handle the searches. This module is synchronous as the async version was impossible to debug, will be converted to async after some user testing.
2009-11-04s4:provisioning - Fixed minor bugs in provisioning tool and partition module.Endi S. Dewata1-2/+2
2009-11-03Added some dn to the info in the log messages.Nadezhda Ivanova1-3/+3
2009-11-02s4:dsdb Fix up after the MAP_ constants became LDB_MAP_Andrew Bartlett1-13/+13
2009-11-02s4 - SID allocation using FDS DNA pluginEndi S. Dewata1-10/+19
2009-11-02s4:dsdb - Removed redundant domain SID filter.Endi S. Dewata1-29/+1
2009-11-02s4:dsdb - Store SID as string in FDS.Endi S. Dewata2-5/+45
2009-11-02s4 - Mapped AD schema to existing FDS schema.Endi S. Dewata1-2/+159
2009-11-02s4:dsdb - Fixed attribute dereferencing for FDSEndi S. Dewata2-18/+124
2009-11-02s4:dsdb Revert back to using DN:filename in the partitions recordAndrew Bartlett2-46/+102
This allows us to change the escaping function without breaking existing installs. The new escaping function (used for new databases) is RFC1738 URI encoding, except for the trivial cases without special characters. The new databases are also placed in a subdirectory, sam.ldb.d per an earlier suggestion by metze. Andrew Bartlett
2009-10-27s4-dsdb: always cancel transactions on all partitionsAndrew Tridgell1-13/+19
If we get an error ending a transaction on one partition we need to continue on the other partitions.
2009-10-27s4:dsdb Rework partitions module for better tracingAndrew Bartlett3-97/+76
This means we need to create a fake 'module' which only has a 'next' pointer, so that we can now ldb_next_request() (which incorporates tracing). The remainaing stub of partition_request() is retained so that we can indicate which partition an operation is destined for. Similar tracing is added to the transaction handlers. Andrew Bartlett
2009-10-27s4:dsdb Remove partition_extended_schema_update_nowAndrew Bartlett1-51/+0
The schema update now request is now handled above the partitions module. Andrew Bartlett
2009-10-26s4-ldb: fixed request handling for schemaUpdateNow opAndrew Tridgell3-3/+3
2009-10-25s4-dsdb: ensure that new partitions inherit any transactionAndrew Tridgell3-11/+26
2009-10-24s4:dsdb/partition_init: don't leak a talloc_new() in case we have no data yetStefan Metzmacher1-2/+5
metze
2009-10-23s4:dsdb 'attrs' must be static (otherwise segv with async)Andrew Bartlett1-1/+2
The async code makes this really easy to mess up... Andrew Bartlett
2009-10-23s4:dsdb Fix samba3sam test again.Andrew Bartlett1-6/+9
We again need to be careful not to call 'ldb_next_request' based functions in the partitions module. Or, we need to instead go back to having that work, and ditch the partition_request stuff... Andrew Bartlett
2009-10-23s4:dsdb Add error string in 'no such object' because of 0 replies caseAndrew Bartlett1-0/+3
2009-10-23s4:dsdb Remove unused variablesAndrew Bartlett1-2/+0
2009-10-23s4:dsdb Do less allocation when searching for partitions modulesAndrew Bartlett1-8/+10
(it didn't help that the previous allocation was on the wrong long-term context) Andrew Bartlett
2009-10-23s4:dsdb Split schema loading and schema data managementAndrew Bartlett3-231/+313
By splitting the module this way, we can load the schema at startup, after the partitions module is operational, but we leave the 'mess with details of entries in the partitions' module to operate only on the partitions module. Loading the schema later allows us to set the @ATTRIBUTES correctly on all the databases. Andrew Bartlett
2009-10-23s4:dsdb Set partitions metadata as soon as it is set up.Andrew Bartlett1-3/+3
2009-10-22s4:dsdb Use the 'correct' case for the namingContext values in rootDSEAndrew Bartlett1-0/+22
This makes the namingContext attributes in the rootDSE a little more pretty, by using the exact same values as used in the database DNs. Andrew Bartlett
2009-10-22s4:dsdb Add default modules list to samba3samAndrew Bartlett1-1/+2
This is needed because the work to allow existing databases to be loaded now moves the 'you have an old @PARTITION' record to the presense or absence of this attribute. Andrew Bartlett
2009-10-21S4: ldb_map modules uses defines that are reservedTorgeir Lerkerød2-117/+117
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>
2009-10-21s4:dsdb Allow loading of old-style partition recordsAndrew Bartlett1-19/+36
This should make upgrades easier
2009-10-21s4:dsdb Make the 'relative path' code in partitions handle tdb://Andrew Bartlett1-7/+12
The previous code would fail if the caller used tdb:// in the URL for the top-level database. Andrew Bartlett
2009-10-21s4:dsdb talloc_steal the backend module to under the partitionAndrew Bartlett1-0/+1
2009-10-21s4:dsdb Remove potentially confusing 'partition' control from resultAndrew Bartlett1-3/+15
This ensures that the partition control, needed here for repl_meta_data's internal work, is not pushed up to other callers. Andrew Bartlett
2009-10-21s4:dsdb Allow creation of new partitionsAndrew Bartlett2-70/+101
This is a collection of fixes to allow the creation of new partitions, as well as adding debugging that may be useful in chasing down future failures. Andrew Bartlett
2009-10-21s4:dsdb Remove default instanceType from repl_meta_dataAndrew Bartlett1-9/+0
This is no longer required, as the instancetype module is now above repl_meta_data. Andrew Bartlett
2009-10-21s4:dsdb Remove workaround for two partition head recordsAndrew Bartlett1-16/+1
The problem here has been avoided in repl_meta_data, and so this is no longer required. Andrew Bartlett
2009-10-21s4:dsdb Use 'partition modified' information to update @REPLCHANGEDAndrew Bartlett1-356/+189
This major rework of repl_meta_data changes it from using a static list of partitions to a dynamic list created from the controls placed on returned ldb results. To process these in one place, the similar but distinct callbacks are combined into a single replmd_op_callback(), which handles both the 'normal operation' and 'inbound replication' case. This allows new partitions to be created, and replication events for these new partitions to be scheduled immediately. Also in this commit: We no longer specify the target partition for new or modified objects - instead we allow the partitions module to use the DN as normal. THis avoids the issue where we would create two partition head records. Andrew Bartlett
2009-10-21s4:repl Pass schema as argument to replmd_update_rpmd()Andrew Bartlett1-6/+5
2009-10-21s4:dsdb In partitions module, tell the caller what partition was used.Andrew Bartlett1-1/+17
This means we don't return any control for modifications to the control records in sam.ldb, but do if they modified one of the actual data LDB files. Andrew Bartlett
2009-10-21s4:dsdb Load new partitions in a running LDB if metadata changesAndrew Bartlett2-144/+151
This allows one instance of LDB to add a partition, and another to use it without first closing the database. Andrew Bartlett