summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r20809: rename struct partition into struct dsdb_control_current_partitionStefan Metzmacher1-9/+11
we'll soon pass this down as DSDB_CONTROL_CURRENT_PARTITION_OID control so that the repl_meta_data module knows where to update the replUpToDateVector attribute metze (This used to be commit e5de40f8c2377d6dce54109a8d8bf9c6b681b813)
2007-10-10r20780: keep a dsdb_schema_fsmo struct as private dataStefan Metzmacher1-0/+21
and remember if we're the schema master metze (This used to be commit c42dab21fb275ca36a517f97922af21447671785)
2007-10-10r20779: fix compiler warningsStefan Metzmacher1-1/+1
metze (This used to be commit 0b98f11d3eeee3eaf862dc06468332a20e22c059)
2007-10-10r20778: we don't need a talloc_steal hereStefan Metzmacher1-1/+1
metze (This used to be commit 0ef90769b49b93cb57e9a1ba2aea280ec70ae151)
2007-10-10r20776: require a loaded dsdb_schema for originating add and modify operationsStefan Metzmacher1-6/+26
(later we'll require it for all originating changes...) metze (This used to be commit fc1a836eccc0913fdab644341fa3e37a2f086de8)
2007-10-10r20771: add an ldb module which will force the Schema FSMO Role OwnerStefan Metzmacher2-0/+236
constraints and it also loads the dsdb_schema at startup. currently it only loads the dsdb_schema metze (This used to be commit d78de0fb68f8b4ef4c5372f3c3ed171e44cf2037)
2007-10-10r20762: load the default dn's after the rootdse module is initialized,Stefan Metzmacher1-0/+2
so that following module can access the default dn's. metze (This used to be commit a934da4dcfeae49fcfc901a071da2d41507da69b)
2007-10-10r20760: also handle the case where no private data is attached to the moduleStefan Metzmacher1-1/+1
metze (This used to be commit c8f5aad40af0741984ded2047931a77161f69ece)
2007-10-10r20729: add a version number to struct dsdb_extended_replicated_objectsStefan Metzmacher3-1/+22
metze (This used to be commit 2e79863d54030526841e5858e7be6a815c25593b)
2007-10-10r20728: the DSDB_CONTROL_REPLICATED_OBJECT_OID control isn't used anymoreStefan Metzmacher3-60/+0
because we now use DSDB_EXTENDED_REPLICATED_OBJECTS_OID extended operation metze (This used to be commit 4380cc9ed6ac2e6c133b5a36f922b341474a8e7e)
2007-10-10r20727: implement basic merging of replicated objects when it already existStefan Metzmacher1-4/+246
in the ldb metze (This used to be commit 262e42123d0bca77560fbb5a33c13a9c275ba3ec)
2007-10-10r20726: - only add the rdn attribute and it's meta_data when the 'name' ↵Stefan Metzmacher2-0/+20
attribute is there - add the values for objectGUID and whenChanged inside the ldb module, so that the ldb module has only replicated attributes as input metze (This used to be commit 0ecb07e0526462529fb21cec30e789a9002b30a1)
2007-10-10r20716: add a dsdb_cache ldb module which will load the dsdb_schema and ↵Stefan Metzmacher2-0/+59
other things on startup into memory structures in future. metze (This used to be commit fbb1f85e320830f52bdf410ad61f2ec60e168d80)
2007-10-10r20713: sort the cursors in replUpToDateVector by source_dsa_invocation_id,Stefan Metzmacher1-0/+13
w2k3 seems to do the same. It's later useful, when we would have a large array be could use a binary search metze (This used to be commit cd654f20e16c32f82ceb2b66453ce8d1be7020dd)
2007-10-10r20710: update or create the "repsFrom" values after applying replicated objectsStefan Metzmacher1-1/+93
metze (This used to be commit 665d8f9626f8ef1c64f6fac79bdc40d14330f126)
2007-10-10r20709: pass a repsFromTo1 struct down as it contains all needed info for ↵Stefan Metzmacher2-6/+8
the source dsa and the highwater mark vector metze (This used to be commit a31e017e5388e5abd6ed9d09adcf26d2527954a6)
2007-10-10r20705: store the "replUpToDateVector" attribute in ↵Stefan Metzmacher2-2/+339
DSDB_EXTENDED_REPLICATED_OBJECTS metze (This used to be commit c9e7a58f6a16dfa28323fd0fd01ad6ee516c51b0)
2007-10-10r20704: add functions to get and set the ntds objectGUID and invocationIdStefan Metzmacher1-0/+186
metze (This used to be commit c271ad824f763ba10ee74517062c6283fa20be89)
2007-10-10r20703: fix minor memory leakStefan Metzmacher1-0/+1
metze (This used to be commit 4012e54ef22fc9a18d4533f6b48530ddc9c67992)
2007-10-10r20682: make the dsdb_extended_replicated_objects_commit() interface a bit ↵Stefan Metzmacher1-15/+10
more useful, so that we can apply the schema partition objects with one call metze (This used to be commit 165ff94b8a89ef4b9145405633ed11ab9567376b)
2007-10-10r20681: implement the DSDB_EXTENDED_REPLICATED_OBJECTS operation.Stefan Metzmacher2-3/+374
the merging of existing objects is not implemented yet... there are a few ifdef REPLMD_FULL_ASYNC because we need to workarouns ldb's async infrastructure (which don't handle full async sub requests nicely) metze (This used to be commit da4ff0e7ccde47b3e092313ba22422350cf50f78)
2007-10-10r20680: prepare the helper functions for applying replicated objectsStefan Metzmacher1-0/+3
to pass all needed info to the repl_meta_data module metze (This used to be commit d5db31cde279cf05bd13bcf0da03767ab3498079)
2007-10-10r20679: make the init_handle stuff a bit easier and get rid of really ugly ↵Stefan Metzmacher1-26/+15
talloc_get_type() usage simo: if you change more modules, please include also this change metze (This used to be commit 88051a82c4918ba8183e0d6909161b2af2109446)
2007-10-10r20629: add a wrapper function for ldb_extended(ldb, ↵Stefan Metzmacher1-0/+10
DSDB_EXTENDED_REPLICATED_OBJECTS_OID, out, &ext_res); which prepares the replicated objects, the repl_meta_data ldb module will then add the uSNCreated, uSNChanged and some other things and will apply the objects to the partition specific ldb metze (This used to be commit 48d568a75b8109807af29f5d9604240c20c1a116)
2007-10-10r20622: Add in a hack to avoid permitting searches on the value of protectedAndrew Bartlett1-1/+23
attributes. Andrew Bartlett (This used to be commit 5aa2195ec26d9ddf82e51f2b242cdf7c8ab52f52)
2007-10-10r20599: - forward extended operations in the partitions moduleStefan Metzmacher2-3/+47
- by default the operations goes to all partitions - but some wellkown ones will go to just one partition (DSDB_EXTENDED_REPLICATED_OBJECTS_OID for now) I'll soon change the partitions module so that it'll attach a DSDB_CONTROL_PARTITION_CONTEXT_OID control to give the repl_meta_data or other partition specific modules a chance to to know for which partition it should work. metze (This used to be commit 0ed53c6d0f4a4e43ff9c8943730eeb57c735201b)
2007-10-10r20587: prepare the DSDB_EXTENDED_REPLICATED_OBJECTS_OID handlingStefan Metzmacher2-0/+21
metze (This used to be commit ef3b325db060d43a7c2e058f6b8914b5867cd321)
2007-10-10r20580: pass the DSDB_CONTROL_REPLICATED_OBJECT_OID with the ldb_add requestStefan Metzmacher3-17/+88
when applying replicated objects. the samldb module ignores such requests now... and the repl_meta_data module has different functions for the replicated and originating cases... metze (This used to be commit a4d5e0126cfd6135ab829f4984269e265a868a28)
2007-10-10r20529: very, very ugly...Stefan Metzmacher1-4/+2
But this is currently needed to make regpatch linking in the dsdb/schema/schema_*.o object files. the problem is that the linker doesn't find any references to public symbols in this files and removes them from the link list. gnu ld has a --whole-archive option, but it seems to be not portable... I think the solution with prelinking using 'ld -r' to create one object file for a subsystem instead of using 'ar -rcs' to create an archive for a subsystem... jelmer: any ideas about this problem? metze (This used to be commit 46df7ff6e5e74eddcb81b5a195e82688d83afaf4)
2007-10-10r20522: make a copy of the objectguid ldb module because:Stefan Metzmacher2-0/+275
- I'll add handling of replication meta data to it for orginating changes - I'll pass replication meta data via a ldb control for applying replicated changes - It will also update the replUpToDateVector attribute in in root object of the partition - It will handle deleted records by adding the isDeleted=TRUE attribute and move them to the CN=Deleted Objects container of the partition - I make a copy to play with the code without breaking the LDAP backend setup metze (This used to be commit 045ddfe1ec626fab5e8fd75c5b47f0525b7ebb01)
2007-10-10r20492: Add in instructions/sample LDIF to setup Fedora DS as a backend.Andrew Bartlett1-1/+249
Add a new module entrypoint to handle the new, interesting and different mappings required for Fedora DS. Andrew Bartlett (This used to be commit 600c7f1a68c175b835ce45d13794a6f66bcc8493)
2007-10-10r20460: Simplfy the handling of password hashes in the samba3sam module.Andrew Bartlett1-7/+3
Andrew Bartlett (This used to be commit 2959b4ba8bb5764ea654ae7b152284a4e02405ab)
2007-10-10r20455: Apply some of the patches from Martin Kuehl <kuehl@univention.de> toAndrew Bartlett2-66/+116
better handle the Samba3 backend. I've refactored the password format patch to use the routines in lib/samba3/smbpasswd.c, which has required me to move this into a seperate subsystem, due to recursive dependencies. Andrew Bartlett (This used to be commit 14e2c877a82d1fcf060455f9b46de5767b71438d)
2007-10-10r20420: create infrastructure to convert attribute values from drsuapi to ldbStefan Metzmacher1-0/+1
metze (This used to be commit 17c52ed27613051beecd5bbf72c6e6e749a21d27)
2007-10-10r20398: Revert this patch, which caused failures in the samba3sam.js build ↵Andrew Bartlett1-12/+6
farm test. The interaction of the samldb.c module and this function is complex... Andrew Bartlett (This used to be commit bf7ab75875f722cc8499d24d455a94dd83b986ad)
2007-10-10r20395: Decode more unknowns in the IDL. These are language and codepage IDs!Andrew Bartlett1-0/+1
Try to pass more of the CrackNames test. Make the test quieter. Andrew Bartlett (This used to be commit a6bbfebf52f53f99b0edf52d3c23b72785b97469)
2007-10-10r20377: Rework the CrackNames implementation to handle some of the BUILTIN sidAndrew Bartlett2-32/+44
cases. Adjust our 'look for this value in this attribute, of the result' function samdb_find_attribute() to use the correct comparison function, no matter what that may be. Andrew Bartlett (This used to be commit 3c5ff4e68748cce0bb93d7d141083922d92c3845)
2007-10-10r20375: Work to improve our CrackNames implementation.Andrew Bartlett2-25/+144
We now correctly handle the canonical name as a CrackNames source, for more than just the DNS domain object. Andrew Bartlett (This used to be commit 629c72f0c27333cc9ede158e3525e8b03dd295d3)
2007-10-10r20321: fix the samdb_partitions_dn() and samdb_sites_dn() calls,Stefan Metzmacher1-4/+18
to use the new samdb_config_dn() call. also add samdb_ wrappers for samdb_schema_dn() and samdb_config_dn() metze (This used to be commit 80b8a968243aadeef7512c03278dbb0d4e88a9f2)
2007-10-10r20315: Implement the server side of DsGetDomainControllerInfo. This is aAndrew Bartlett2-45/+81
supprisingly complex call... It turns out that the in/out parameter 'level' is not in/out, but set seperatly by the server-side code from r->req.req1.level. This commit also breaks out some common code from samldb into samdb. Andrew Bartlett (This used to be commit 2eb9e6445c64840399171f4f56b1e43786dbcfa7)
2007-10-10r20306: remove the static oid mapping tableStefan Metzmacher1-0/+1
and attach the table to the dsdb_schema metze (This used to be commit df63995ec5f322d17145664c1f174783861e1723)
2007-10-10r20233: add functions to create a dsdb_attribute and dsdb_class fromStefan Metzmacher1-0/+1
a drsuapi_DsReplicaObject metze (This used to be commit 9168236ddd3d8ed9daa1e47be1e6b12d2bc348b6)
2007-10-10r20221: - move the dsdb_schema, dsdb_attribute, dsdb_class structs intoStefan Metzmacher1-0/+1
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)
2007-10-10r20184: change ldb_attrib_handler into ldb_schema_attribute, which has a pointerStefan Metzmacher1-3/+3
to a ldb_schema_syntax struct. the default attribute handler is now registered dynamicly as "*" attribute, instead of having its own code path. ldb_schema_attribute's can be added to the ldb_schema given a ldb_schema_syntax struct or the syntax name we may also need to introduce a ldb_schema_matching_rule, and add a pointer to a default ldb_schema_matching_rule in the ldb_schema_syntax. metze (This used to be commit b97b8f5dcbce006f005e53ca79df3330e62f117b)
2007-10-10r20149: Remove the smb.conf distinction between PDC and BDC. Now the correctAndrew Bartlett1-24/+133
way to setup a Samba4 DC is to set 'server role = domain controller'. We use the fSMORoleOwner attribute in the base DN to determine the PDC. This patch is quite large, as I have corrected a number of places that assumed taht we are always the PDC, or that used the smb.conf lp_server_role() to determine that. Also included is a warning fix in the SAMR code, where the IDL has seperated a couple of types for group display enumeration. We also now use the ldb database to determine if we should run the global catalog service. In the near future, I will complete the DRSUAPI DsGetDomainControllerInfo server-side on the same basis. Andrew Bartlett (This used to be commit 67d8365e831adf3eaecd8b34dcc481fc82565893)
2007-10-10r20034: Start using ldb_search_exp_fmt()Simo Sorce1-11/+6
(This used to be commit 4f07542143ddf5066f0360d965f26a8470504047)
2007-10-10r19869: fix memleaksSimo Sorce1-6/+3
(This used to be commit 3a662a2d985bf801284c5dc1123dec6705e6d092)
2007-10-10r19832: better prototypes for the linearization functions:Simo Sorce9-30/+28
- ldb_dn_get_linearized returns a const string - ldb_dn_alloc_linearized allocs astring with the linearized dn (This used to be commit 3929c086d5d0b3f08b1c4f2f3f9602c3f4a9a4bd)
2007-10-10r19831: Big ldb_dn optimization and interfaces enhancement patchSimo Sorce14-151/+149
This patch changes a lot of the code in ldb_dn.c, and also removes and add a number of manipulation functions around. The aim is to avoid validating a dn if not necessary as the validation code is necessarily slow. This is mainly to speed up internal operations where input is not user generated and so we can assume the DNs need no validation. The code is designed to keep the data as a string if possible. The code is not yet 100% perfect, but pass all the tests so far. A memleak is certainly present, I'll work on that next. Simo. (This used to be commit a580c871d3784602a9cce32d33419e63c8236e63)
2007-10-10r19757: Don't do the strrchr twice. Pointed out by Martin Kuhl.Andrew Bartlett1-1/+1
Andrew Bartlett (This used to be commit c4bf9cc09b36d8dcc465608b55bbf5dc07aed9e4)