summaryrefslogtreecommitdiffstats
path: root/src/db
Commit message (Collapse)AuthorAgeFilesLines
* Read enumerate state for subdomains from cacheJakub Hrozek2013-08-281-1/+15
| | | | | The enumerate flag will be read from the cache for subdomains and the domain object will be created accordingly.
* SYSDB: Store enumerate flag for subdomainJakub Hrozek2013-08-282-3/+27
|
* DB: remove unused realm parameter from sysdb_master_domain_add_infoJakub Hrozek2013-08-282-22/+2
| | | | The parameter was not used at all.
* DB: Update sss_domain_info with new updated dataJakub Hrozek2013-08-281-5/+5
|
* ipa-server-mode: add IPA group memberships to AD usersSumit Bose2013-08-281-0/+1
| | | | | | | | | | | | | | | | When IPA trusts an AD domain the AD user or groups can be placed into IPA groups e.g. to put AD users under the control of HBAC. Since IPA group can only have members from the IPA directory tree and the AD users and groups are not stored there a special IPA object called external group was introduced. SIDs of users and groups can be added to the external group and since the external groups are in the IPA directory tree they can be member of IPA groups. To speed things up and to remove some load from the IPA servers SSSD reads all external groups and stores them in memory for some time before rereading the data. Enhances https://fedorahosted.org/sssd/ticket/1962
* sysdb_add_incomplete_group: store SID string is availableSumit Bose2013-08-192-1/+9
| | | | | | During initgroups request we read the SID of a group from the server but do not save it to the cache. This patch fixes this and might help to avoid an additional lookup of the SID later.
* fill_initgr: add original primary GID if availableSumit Bose2013-08-191-0/+1
| | | | | | | | | | | | | In some cases when MPG domains are used the information about the original primary group of a user cannot be determined by looking at the explicit group memberships. In those cases the GID related to the original primary group is stored in a special attribute of the user object. This patch adds the GID of the original primary group when available and needed. Fixes https://fedorahosted.org/sssd/ticket/2027
* sdap_save_user: save original primary GID of subdomain usersSumit Bose2013-08-191-0/+1
| | | | | | | | | | | | | | If ID mapping is enabled we use magic private groups (MPG) for subdomains, i.e. the UID and the primary GID of the user will have the same numerical value. As a consequence the information about the original primary group might get lost because neither in AD domains nor on a typical UNIX system the user is an explicit member of it's primary group. With this patch the mapped GID or the original primary group is saved in the cached user object under a new attribute. Fixes https://fedorahosted.org/sssd/ticket/2027
* Use functionm ldb_dn_get_linearized to format struct ldb_dnLukas Slebodnik2013-07-191-3/+6
|
* DB: sysdb_search_user_by_name: search by both name and aliasJakub Hrozek2013-07-091-2/+17
|
* Read mpg state for subdomains from cacheSumit Bose2013-06-281-5/+19
| | | | | The mpg flag will be read from the cache for subdomains and the domain object will be created accordingly.
* Save mpg state for subdomainsSumit Bose2013-06-282-4/+33
| | | | | | The information of a subdomain will use magic private groups (mpg) or not will be stored together with other information about the domain in the cache.
* Add support for new ipaRangeType attributeSumit Bose2013-06-282-0/+18
| | | | | | | | | Recent versions of FreeIPA support a range type attribute to allow different type of ranges for sub/trusted-domains. If the attribute is available it will be used, if not the right value is determined with the help of the other idrange attributes. Fixes https://fedorahosted.org/sssd/ticket/1961
* DB: Don't add invalid rangesOndrej Kos2013-06-091-7/+10
| | | | | | | | https://fedorahosted.org/sssd/ticket/1816 When saving or updating ranges, skip those which are invalid (not provided ipaNTTrustedDomainSID or ipaSecondaryBaseRID, or both provided at the same time)
* New utility function sss_get_domain_nameJakub Hrozek2013-06-071-14/+4
| | | | | Instead of copying a block of code that checks whether domain is a subdomain and uses only name of FQDN as appropriate, wrap the logic into a function.
* Read SIDs of groups with sysdb_initgroups() as wellSumit Bose2013-06-061-0/+1
|
* Add utility functions for formatting fully-qualified namesJakub Hrozek2013-05-301-4/+2
| | | | | | Instead of using printf-like functions directly, provide two wrappers that would encapsulate formatting the fully-qualified names. No functional change is present in this patch.
* Fixing critical format string issues.Lukas Slebodnik2013-05-201-1/+2
| | | | | | --missing arguments. --format '%s', but argument is integer. --wrong format string, examle: '%\n'
* sysdb: add sysdb_search_object_by_sid()Sumit Bose2013-05-022-0/+62
| | | | | | 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.
* Only try to relink ghost users if we're not enumeratingJakub Hrozek2013-04-291-4/+9
| | | | | | | | https://fedorahosted.org/sssd/ticket/1893 When SSSD is not enumerating (which is the default), we are trying to link any "ghost" entries with a newly created user entry. However, when enumeration is on, this means a spurious search on adding any user.
* Move SELinux processing to provider.Michal Zidek2013-03-191-107/+0
| | | | | | | | | | | | The SELinux processing was distributed between provider and pam responder which resulted in hard to maintain code. This patch moves the logic to provider. IT ALSO REQUIRES CHANGE IN THE SELINUX POLICY, because the provider also writes the content of selinux login file to disk (which was done by responder before). https://fedorahosted.org/sssd/ticket/1743
* Fix initialization of multiple variablesOndrej Kos2013-03-131-1/+1
|
* Remove the alt_db_path parameter of sysdb_initMichal Zidek2013-03-052-11/+2
| | | | | | This parameter was never used. https://fedorahosted.org/sssd/ticket/1765
* Use SSSD specific errors for offline authSimo Sorce2013-03-041-8/+9
| | | | | | This prevents reportin false errors when internal functions return a generic EINVAL or EACCES that should just be treated as internal errors.
* sysdb: try dealing with binary-content attributesJan Engelhardt2013-02-262-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Introduce IS_SUBDOMAIN() macroSimo Sorce2013-02-101-2/+2
| | | | Fixes https://fedorahosted.org/sssd/ticket/1766
* Change the way domains are linked.Simo Sorce2013-02-102-106/+68
| | | | | | | | | | | | | | | | | | | - 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-102-30/+6
| | | | | struct sss_domain_info is always used to represent domains now. Adjust tests accordingly.
* Add sysdb_subdomain_store() functionSimo Sorce2013-02-102-37/+103
| | | | Replaces sysdb_add_subdomain_attributes and is a public sysdb interface.
* Refactor sysdb_master_domain_add_info()Simo Sorce2013-02-102-27/+22
|
* Update main domain info in placeSimo Sorce2013-02-102-36/+30
|
* Avoid sysdb_subdom in sysdb_get_subdomains()Simo Sorce2013-02-102-58/+38
|
* SYSDB: Expire group if adding ghost users fails with EEXISTJakub Hrozek2013-01-231-2/+36
|
* SYSDB: make the sss_ldb_modify_permissive function publicJakub Hrozek2013-01-232-2/+11
|
* sudo responder: change num_rules type from size_t to uint32_tPavel Březina2013-01-222-5/+5
| | | | | | | | https://fedorahosted.org/sssd/ticket/1779 2^32 should be enough to store sudo rules. size_t type was causing troubles on big endian architectures, because it wasn't used correctly in combination with D-Bus.
* LDAP: Compare lists of DNs when saving autofs entriesJakub Hrozek2013-01-212-9/+31
| | | | | | | | | | | | https://fedorahosted.org/sssd/ticket/1758 The autofs entries do not have the key as an unique identifier, but rather the full (key, value) tuple as some keys have a special meaning, such as the direct mount key (/-) and may be present in a single map multiple times. Comparing the full DN that contains both the key and the value will allow for working updates if either key or value changes.
* Tidy up BASE dn macrosSimo Sorce2013-01-161-4/+4
|
* Stop creating fake sysdb contextsSimo Sorce2013-01-152-25/+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.
* Kill sysdb->domainSimo Sorce2013-01-153-5/+0
| | | | Finally remove this upside-down dependency.
* Move mpg flag to the domain where it belongsSimo Sorce2013-01-155-16/+8
| | | | | A sysdb contains now multiple domains, but the mpg property is a property of a specific domain not of the underlying database.
* Pass the domain to upgrade functionsSimo Sorce2013-01-153-13/+17
|
* Add domain to some subdomain functionsSimo Sorce2013-01-152-5/+8
|
* Add domain arguments to sysdb sudo functionsSimo Sorce2013-01-152-26/+42
|
* Add domain arguments to sysdb ssh functionsSimo Sorce2013-01-152-8/+20
|
* Add domain arguments to sysdb services functionsSimo Sorce2013-01-152-20/+34
| | | | also fix sysdb_svc_add declarations
* Add domain argument to sysdb selinux functionsSimo Sorce2013-01-152-15/+27
|
* Add domain argument to sysdb autofs functionsSimo Sorce2013-01-153-16/+34
|
* Add domain arguemnt to sysdb_get_real_name()Simo Sorce2013-01-152-1/+3
|
* Add domain argument to sysdb_idmap_ funcitonsSimo Sorce2013-01-152-13/+11
|
* Add domain argument to sysdb_remove_attrs()Simo Sorce2013-01-154-7/+11
|