summaryrefslogtreecommitdiffstats
path: root/src/db/sysdb.h
Commit message (Collapse)AuthorAgeFilesLines
* sysdb: add sysdb_search_object_by_sid()Sumit Bose2013-05-021-0/+8
| | | | | | The patch add a new sysdb to find objects based on their SID. Currently only the basic attributes needed to map SIDs to POSIX IDs and names are requested, but this list can be extended for future use cases.
* Remove the alt_db_path parameter of sysdb_initMichal Zidek2013-03-051-1/+0
| | | | | | This parameter was never used. https://fedorahosted.org/sssd/ticket/1765
* sysdb: try dealing with binary-content attributesJan Engelhardt2013-02-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | https://fedorahosted.org/sssd/ticket/1818 I have here a LDAP user entry which has this attribute loginAllowedTimeMap:: AAAAAAAAAP///38AAP///38AAP///38AAP///38AAP///38AAAAAAAAA In the function sysdb_attrs_add_string(), called from sdap_attrs_add_ldap_attr(), strlen() is called on this blob, which is the wrong thing to do. The result of strlen is then used to populate the .v_length member of a struct ldb_val - and this will set it to zero in this case. (There is also the problem that there may not be a '\0' at all in the blob.) Subsequently, .v_length being 0 makes ldb_modify(), called from sysdb_set_entry_attr(), return LDB_ERR_INVALID_ATTRIBUTE_SYNTAX. End result is that users do not get stored in the sysdb, and programs like `id` or `getent ...` show incomplete information. The bug was encountered with sssd-1.8.5. sssd-1.5.11 seemed to behave fine, but that may not mean that is the absolute lower boundary of introduction of the problem.
* Change the way domains are linked.Simo Sorce2013-02-101-5/+2
| | | | | | | | | | | | | | | | | | | - Use a double-linked list for domains and subdomains. - Never remove a subdomain, simply mark it as disabled if it becomes unused. - Rework the way subdomains are refreshed. Now sysdb_update_subdomains() actually updates the current subdomains and marks as disabled the ones not found in the sysdb or add new ones found. It never removes them. Removal of missing domains from sysdb is deferred to the providers, which will perform it at refresh time, for the ipa provider that is done by ipa_subdomains_write_mappings() now. sysdb_update_subdomains() is then used to update the memory hierarchy of the subdomains. - Removes sysdb_get_subdomains() - Removes copy_subdomain() - Add sysdb_subdomain_delete()
* Remove sysdb_subdom completelySimo Sorce2013-02-101-11/+1
| | | | | struct sss_domain_info is always used to represent domains now. Adjust tests accordingly.
* Add sysdb_subdomain_store() functionSimo Sorce2013-02-101-0/+5
| | | | Replaces sysdb_add_subdomain_attributes and is a public sysdb interface.
* Refactor sysdb_master_domain_add_info()Simo Sorce2013-02-101-3/+3
|
* Update main domain info in placeSimo Sorce2013-02-101-4/+1
|
* Avoid sysdb_subdom in sysdb_get_subdomains()Simo Sorce2013-02-101-3/+3
|
* SYSDB: make the sss_ldb_modify_permissive function publicJakub Hrozek2013-01-231-0/+4
|
* Tidy up BASE dn macrosSimo Sorce2013-01-161-4/+4
|
* Stop creating fake sysdb contextsSimo Sorce2013-01-151-5/+0
| | | | | | Now that the sysdb context does not contain anymore domain related data we can simply stop creating faxe sysdb context and just reference the parent context.
* Add domain to some subdomain functionsSimo Sorce2013-01-151-0/+2
|
* Add domain arguemnt to sysdb_get_real_name()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_idmap_ funcitonsSimo Sorce2013-01-151-3/+2
|
* Add domain argument to sysdb_remove_attrs()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_has/set_enumerated()Simo Sorce2013-01-151-0/+2
|
* Add domain arg to sysdb_search/delete_netgroup()Simo Sorce2013-01-151-0/+2
|
* Add domain argument to sysdb_delete_group()Simo Sorce2013-01-151-3/+1
| | | | Also remove sysdb_delete_domgroup()
* Add domain argument to sysdb_search_groups()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_delete_user()Simo Sorce2013-01-151-5/+1
| | | | Also remove sysdb_delete_domuser()
* Add domain arg to sysdb_search_users()Simo Sorce2013-01-151-0/+1
|
* Add domain to sysdb_delete_customSimo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_search_custom()Simo Sorce2013-01-151-0/+2
| | | | Also changes sysdb_search_custom_by_name()
* Add domain argument to sysdb_store_custom()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_cache_auth()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_cache_password()Simo Sorce2013-01-151-0/+1
|
* Add domain arg to sysdb group member functionsSimo Sorce2013-01-151-0/+3
|
* Add domain argument to sysdb_store_group()Simo Sorce2013-01-151-6/+1
| | | | Also remove sysdb_store_domgroup()
* Add domain argument to sysdb_store_user()Simo Sorce2013-01-151-11/+1
| | | | Also remove sysdb_store_domuser()
* Add domain arguments to sysdb_add_inetgroup fns.Simo Sorce2013-01-151-0/+2
|
* Add domain arguments to sysdb_add_group functions.Simo Sorce2013-01-151-0/+3
|
* Add domain argument to sysdb_add_user()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_add_basic_user()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_get_new_id()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_set_netgroup_attr()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_set_group_attr()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_set_user_attr()Simo Sorce2013-01-151-0/+1
|
* Add domain arg to sysdb_search_netgroup_by_name()Simo Sorce2013-01-151-0/+1
|
* Add domain to sysdb_search_group_by_gid()Simo Sorce2013-01-151-5/+1
| | | | Also remove unused sysdb_search_domgroup_by_gid()
* Add domain to sysdb_search_group_by_name()Simo Sorce2013-01-151-5/+1
| | | | Also remove unused sysdb_search_domgroup_by_name()
* Add domain to sysdb_search_user_by_uid()Simo Sorce2013-01-151-5/+1
| | | | Also remove unused sysdb_search_domuser_by_uid()
* Add domain to sysdb_search_user_by_name()Simo Sorce2013-01-151-5/+1
| | | | Also remove unused sysdb_search_domuser_by_name()
* Add domain argument to sysdb_get_user_attr()Simo Sorce2013-01-151-0/+1
|
* Add domain argument to sysdb_initgroups()Simo Sorce2013-01-151-0/+1
|
* Add domain option to sysdb_get/netgr/attrs() fnsSimo Sorce2013-01-151-0/+2
|
* Pass domain to sysdb_enum<pw/gr>ebt() functionsSimo Sorce2013-01-151-0/+2
|
* Pass domain to sysdb_get<pwu/grg><id() functionsSimo Sorce2013-01-151-0/+2
|
* Pass domain to sysdb_get<pw/gr>nam() functionsSimo Sorce2013-01-151-9/+2
| | | | | | Also allows us to remove sysdb_subdom_get<pw/gr>nam() wrappers and restore fqnames proper value in subdomains, by testing for a parent domain being present or not.
* Move range objects into their own top-level tree.Simo Sorce2013-01-151-1/+1
| | | | | | | | | | | Storing ranges for multiple domains under any specific domain is somewhat aritrary and unnecessary. Put ranges under cn=ranges,cn=sysdb, without involving any specific domain subtree. This allows us to avoid using sysdb->domain in ranges functions. Also storing other subdomains data under the parent domain tree felt wrong, all other domain specific data is under their own subtree. Moving this data in its own place seems a better solution.