summaryrefslogtreecommitdiff
path: root/source4/dsdb/common
AgeCommit message (Collapse)AuthorFilesLines
2010-05-04s4/rodc: Support read-only databaseAnatoliy Atanasov1-0/+1
Check on modify if we are RODC and return referral. On the ldap backend side now we pass context and ldb_modify_default_callback to propagate the referral error to the client.
2010-05-03s4/rodc: Implement msDS-isRODC constructed attrAnatoliy Atanasov1-6/+15
2010-04-29s4/rodc: RODC FAS initial implementationAnatoliy Atanasov1-0/+28
2010-04-28s4/dsdb: dsdb_validate_invocation_id() should validate by objectGUIDKamen Mazdrashki1-18/+18
This function is used in DRSUpdateRefs() implementation where we get DSA's objectGUID rather than invocationId
2010-04-27s4:dsdb/common: if we don't have the ip of the client return the server site ↵Stefan Metzmacher1-0/+8
as client site metze
2010-04-27s4:util - add a function which finds the matching client site using the ↵Matthias Dieter Wallnöfer1-0/+90
client address The lookup of the client site is done using the subnets in the configuration partition. If no one matches we use the Windows Server fallback mechansim. This means: if only one site is available just use it. If they're more set the output variable to "". Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-22s4-drs: removed dsdb_validate_client_flags()Andrew Tridgell1-30/+0
This test is in the wrong place. We end up validating our own flags. Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-22s4-dsdb: added dsdb_validate_invocation_id()Andrew Tridgell1-0/+87
this validates that a invocationID matches an account sid This will be used to ensure that we don't allow DRS replication from someone a non-DC or administrator Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-22s4-dsdb: added dsdb_get_extended_dn_sid()Andrew Tridgell1-0/+29
This will be used by the RODC code Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-22s4-drs: Use new samdb_rodc() function in s4 codeFernando J V da Silva1-1/+1
This patch fits the calling to the new samdb_rodc() function and fix a little bug in this function. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-22s4-drs: dsdb_validate_client_flags() functionFernando J V da Silva1-0/+28
This function is intended to check if some client is not lying about his flags. At this moment, it only checks for RODC flags. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-22s4-drs: samdb_is_rodc() function and new samdb_rodc() functionFernando J V da Silva1-32/+41
This patch creates the samdb_is_rodc() function, which looks for the NTDSDSA object for a DC that has a specific invocationId and if msDS-isRODC is present on such object and it is TRUE, then consider the DC as a RODC. The new samdb_rodc() function uses the samdb_is_rodc() function for the local server. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-20s4:provision Pass in the invoication ID and NTDS Settings DN to Schema()Andrew Bartlett1-1/+38
By putting these values into the cache on the LDB, this reduces some of the noise in provision, particularly with the LDAP backend. Andrew Bartlett
2010-04-16s4:Replaced dsdb_get_dom_sid_from_ldb_message() with samdb_result_dom_sid()Nadezhda Ivanova1-31/+2
2010-04-13s4:samdb_server_site_name - fix indentationMatthias Dieter Wallnöfer1-4/+6
2010-04-13s4:dsdb/common/util.c - add a call which determines centrally the forest DNS ↵Matthias Dieter Wallnöfer1-0/+19
domainname
2010-04-13s4:remove "samdb_root_dn", "samdb_base_dn", "samdb_config_dn" and ↵Matthias Dieter Wallnöfer1-20/+0
"samdb_schema_dn" They aren't needed anymore.
2010-04-13Revert "s4:prefer "samdb_*_dn" basedn calls over the "ldb_get_*_dn" functions"Matthias Dieter Wallnöfer1-6/+8
We should use the "ldb_get_*_basedn" calls since they are available in the LDB library.
2010-04-11s4:samdb_server_site_dn - free unused DNs in the right wayMatthias Dieter Wallnöfer1-2/+2
2010-03-22s4:dsdb Move dsdb_save_partition_usn() to be a module helper functionAndrew Bartlett1-88/+0
This function should not traverse the module stack again, but instead run from this point. Also add a matching dsdb_module_load_partition_usn() and change repl_meta_data to match. Andrew Bartlett
2010-03-12Split the dsdb_access_check_on_dn.Nadezhda Ivanova1-36/+49
Split the dsdb_access_check_on_dn so it can be reused for checks from both within the module stack and outside it.
2010-03-12Moved access_check_on_dn from acl module as an utility.Nadezhda Ivanova1-0/+181
Made this an utility function so it can be used for access checking outside of the acl ldb module, such as checking validated writes and control access rights in other protocols (e. g drs)
2010-03-09A helper function to get the Infrastructure DN.Nadezhda Ivanova1-0/+12
2010-03-05s4:dsdb/util - Change also here counters to "unsigned"Matthias Dieter Wallnöfer1-13/+16
No need to have "signed" counters at those places.
2010-03-01s4/rodc: Implement samdb_rodc with ldb contextAnatoliy Atanasov1-7/+61
2010-02-26s4-dsdb: fixed the fetch of the server site nameAndrew Tridgell1-1/+7
when the ntds objects were moved by a recent change it broke the calculation of the server site Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-02-21s4:dsdb/util.c - Use LDB result constants in some more helper functionsMatthias Dieter Wallnöfer1-11/+11
Always better to rely on the standards rather than on custom results.
2010-02-16s4-dsdb: return LDB_ERR_CONSTRAINT_VIOLATION on num_recs != 1Andrew Tridgell1-1/+1
In a single record search, LDB_ERR_CONSTRAINT_VIOLATION is more useful than the generic LDB_ERR_OPERATIONS_ERROR Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-02-16s4-dsdb: added dsdb_search_one() and cleanup dsdb_find_dn_by_guid()Andrew Tridgell2-11/+73
dsdb_find_dn_by_guid() now takes a struct GUID instead of a guid_string. All the callers in fact wanted a struct GUID, so we now avoid the extra conversion. Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-02-16s4-dsdb: replace dsdb_find_dn_by_guid() with a dsdb_search() callAndrew Tridgell1-67/+84
much simpler code by using dsdb_flags Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-02-16s4-dsdb: change dsdb_search_dn_with_deleted() to dsdb_search_dn() with ↵Andrew Tridgell1-56/+58
dsdb_flags Allows for arbitrary controls
2010-02-16s4-dsdb: change samdb_replace() to dsdb_replace() and allow for dsdb_flagsAndrew Tridgell2-72/+28
This allows for controls to be added easily where they are needed.
2010-02-16s4-dsdb: replace dsdb_modify_permissive() with dsdb_modify() and dsdb_flagsAndrew Tridgell2-38/+41
2010-02-16s4-dsdb: move dsdb_request_add_controls() into dsdb/common/util.cAndrew Tridgell2-0/+102
This will be used to allow the flag based ldb functions to work on both a ldb or a module, thus saving a lot of specialist functions.
2010-02-15s4-dsdb: added dsdb_modify_permissive()Andrew Tridgell1-0/+36
This will be used in the drsuapi server
2010-02-13s4:util.c - Corrected the location of the "Directory Service" objectMatthias Dieter Wallnöfer1-1/+1
I wonder why nobody noticed this since for sure this "tombstone" functionality was broken till now.
2010-02-13s4-dsdb: use TYPESAFE_QSORT() in dsdb codeAndrew Tridgell1-10/+5
2010-02-02Change uint_t to unsigned int in source4Matt Kraai1-8/+8
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-01-16s4-dsdb: add our local cursor and sort in dsdb_load_udv_*()Andrew Tridgell1-19/+65
This makes things much simpler for the callers
2010-01-16s4-dsdb: added dsdb_load_udv_v2() and dsdb_load_udv_v1()Andrew Tridgell1-0/+82
2010-01-14s4-drs: Store uSNUrgent for Urgent ReplicationFernando J V da Silva1-5/+23
When a object or attribute is created/updated/deleted, according to [MS-ADTS] 3.1.1.5.1.6, it stores the uSNUrgent on @REPLCHANGED for the partitions that it belongs. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-01-13s4:dsdb/common: fix major bug in lsa_BinaryString to ldb_val conversation.Stefan Metzmacher1-2/+2
In lsa_BinaryString length and size are byte counts! TODO: we may need to do byte order conversion in this functions too... metze
2010-01-13s4:dsdb/common: let samdb_msg_add_uint() call samdb_msg_add_int()Stefan Metzmacher1-2/+1
This is important as LDAP servers always play with int32 values and we have to encode 0x80000000 as "-2147483648" instead of "2147483648". metze
2010-01-13s4:dsdb/common: let samdb_msg_add_uint64() call samdb_msg_add_int64()Stefan Metzmacher1-2/+1
This is important as LDAP servers always play with int64 values and we have to encode 0x8000000000000000LL as "-9223372036854775808" instead of "9223372036854775808". metze
2010-01-10s4-dsdb: added samdb_domain_sid_cache_only()Andrew Tridgell1-1/+8
2010-01-09s4-dsdb: added samdb_ldb_val_case_cmp()Andrew Tridgell1-0/+16
2010-01-09s4-drs: added filtering by udv in getncchangesAndrew Tridgell1-0/+6
When a client supplied an uptodateness_vector, we can use it to filter what objects we return. This greatly reduces the amount of replication traffic between DCs.
2010-01-08s4-dsdb: added dsdb_find_guid_attr_by_dn()Andrew Tridgell1-5/+18
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-08s4-dsdb: added samdb_rid_set_dn()Andrew Tridgell1-0/+18
This returns the DN of our RID Set object Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-01-08s4-dsdb: added samdb_reference_dn()Andrew Tridgell1-0/+62
This returns a 'reference' DN, which is a link to a DN, from the specified object. It is then used by samdb_server_reference_dn() which returns the serverReference DN, and samdb_rid_manager_dn() which returns the rIDManagerReference DN.