summaryrefslogtreecommitdiff
path: root/source4/dsdb/common/util.c
AgeCommit message (Collapse)AuthorFilesLines
2010-05-24s4:dsdb Allow a NULL search expression in dsdb_search()Andrew Bartlett1-2/+5
The NULL search expression expands to (objectClass=*), but %s expands NULL to (NULL) which doesn't parse... Andrew Bartlett
2010-05-18Finish removal of iconv_convenience in public API's.Jelmer Vernooij1-7/+5
2010-05-17s4-rodc: Cache am_rodc flagAnatoliy Atanasov1-0/+29
2010-05-13s4:dsdb: fix samdb_result_logon_hours() and don't hardcode units_per_weekStefan Metzmacher1-4/+11
metze
2010-05-11s4:dsdb: cached results of samdb_rodc()Stefan Metzmacher1-1/+29
metze
2010-05-10s4:samdb_set_password - adapt it for the user password change handlingMatthias Dieter Wallnöfer1-0/+12
Make use of the new "change old password checked" control.
2010-05-10s4:samdb_set_password/samdb_set_password_sid - ReworkMatthias Dieter Wallnöfer1-256/+134
Adapt the two functions for the restructured "password_hash" module. This means that basically all checks are now performed in the mentioned module. An exception consists in the SAMR password change calls since they need very precise NTSTATUS return codes on wrong constraints ("samr_password.c") file
2010-05-10s4:dsdb/util.c - Add a new function for retrieving password change attributesMatthias Dieter Wallnöfer1-0/+41
This is needed since we have not only reset operations on password fields (attributes marked with REPLACE flag) but also change operations which can be performed by users itself. They have one attribute with the old value marked with the REMOVE flag and one with the new one marked with the ADD flag. This function helps to retrieve them (argument "new" is used for the new password on both reset and change).
2010-05-09s4:dsdb Provide an intelegent fallback if not CN=Subnets is foundAndrew Bartlett1-3/+7
We may as well fall back rather than return NULL (which callers don't do useful things with). Andrew Bartlett
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-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-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 Tridgell1-11/+72
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 Tridgell1-72/+27
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 Tridgell1-38/+40
2010-02-16s4-dsdb: move dsdb_request_add_controls() into dsdb/common/util.cAndrew Tridgell1-0/+71
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