path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Updating translations for the 1.11 beta1 releasesssd-1_11_0_beta1sssd-1_10_90Jakub Hrozek2013-06-2815-3715/+4331
* IPA: Look up AD users directly if IPA server mode is onJakub Hrozek2013-06-286-6/+168
| | | | | | | | If the ipa_server_mode is selected IPA subdomain user and group lookups are not done with the help of the extdom plugin but directly against AD using the AD ID code.
* IPA: Create and remove AD id_ctx for subdomains discovered in server modeJakub Hrozek2013-06-281-0/+182
| | | | | | | | | When IPA server mode is on, then this patch will create an ad_id_ctx for each subdomain discovered in IPA provider. The ID context is needed to perform direct lookups using the AD provider. Subtask of:
* AD: Move storing sdap_domain for subdomain to generic LDAP codeJakub Hrozek2013-06-283-65/+78
| | | | | | | | Makes creating the sdap_domain structure for a subdomain reusable outside AD subdomain code where it was created initially. Subtask of:
* IPA: Initialize server mode ctx if server mode is onJakub Hrozek2013-06-284-0/+62
| | | | | | | | | | This patch introduces a new structure that holds information about a subdomain and its ad_id_ctx. This structure will be used only in server mode to make it possible to search subdomains with a particular ad_id_ctx. Subtask of:
* AD: initialize failover with custom realm, domain and failover serviceJakub Hrozek2013-06-283-28/+41
| | | | | | | | | | This is needed so we can initialize failover using IPA realm and on-the-fly discovered DNS domain. The subdomains discovered on-thefly will use the subdomain name for realm, domain and failover service to avoid conflicts. Subtaks of:
* AD: decouple ad_id_ctx initializationJakub Hrozek2013-06-283-102/+285
| | | | | | | | | The IPA subdomain code will perform lookups on its own in the server mode. For this, the AD provider must offer a way to initialize the ad_id_ctx for external consumers. Subtask of:
* LDAP: Add utility function sdap_copy_mapJakub Hrozek2013-06-282-0/+45
| | | | | | | | | The AD subdomains will only use default options values. This patch introduces a new utility function sdap_copy_map() that copies the default options map. Subtask of:
* IPA: Add a server mode optionJakub Hrozek2013-06-284-0/+22
| | | | | | | | | | | SSSD needs to know that it is running on an IPA server and should not look up trusted users and groups with the help of the extdom plugin but do the lookups on its own. For this a new boolean configuration option, is introduced which defaults to false but is set to true during ipa-server-install or during updates of the FreeIPA server if it is not already set.
* Read mpg state for subdomains from cacheSumit Bose2013-06-284-11/+30
| | | | | 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-285-13/+54
| | | | | | 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.
* IPA: read ranges before subdomainsSumit Bose2013-06-281-29/+27
| | | | | | | Since FreIPA will start to support external mapping for trusted domains as well the range type for the domain must be know before the domain object is created. The reason is that external mapping will not use magic private groups (mpg) while algorithmic mapping will use them.
* Replace new_subdomain() with find_subdomain_by_name()Sumit Bose2013-06-285-16/+11
| | | | | | new_subdomain() will create a new domain object and should not be used anymore in the priovder code directly. Instead a reference to the domain from the common domain object should be used.
* Add support for new ipaRangeType attributeSumit Bose2013-06-285-6/+54
| | | | | | | | | 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
* Add ipa_idmap_init()Sumit Bose2013-06-283-1/+275
| | | | | | Use the sdap_idmap context for the IPA provider as well.
* Replace SDAP_ID_MAPPING checks with sdap_idmap_domain_has_algorithmic_mappingSumit Bose2013-06-285-14/+38
| | | | | | | | | | Currently the decision if external or algorithmic mapping should be used in the LDAP or AD provider was based on the value of the ldap_id_mapping config option. Since now all information about ID mapping is handled by libsss_idmap the check for this options can be replace with a call which checks the state via libss_idmap.
* Add sdap_idmap_domain_has_algorithmic_mapping()Sumit Bose2013-06-282-0/+62
| | | | | | | This patch implements a wrapper for sss_idmap_domain_has_algorithmic_mapping() for the sdap ID mapping. Fixes
* Allow different methods to find new domains for idmappingSumit Bose2013-06-282-3/+24
| | | | | | | | | | | | | | | | | Currently the range management code is in the generic LDAP provider and can be used by the LDAP and AD provider. New ranges are allocated with the help of a hash value of the domain SID. If the IPA provider cannot find a range for a given domain it cannot allocate a new range on its own but has to look up the idrange objects on the FreeIPA server and use them accordingly. To allow the LDAP, AD and IPA provider to use as much common code as possible a plugin interface, similar to the one used to find the DNS site, to find a missing range would be useful. The default plugin will be used by the LDAP and the AD provider and the IPA provider will implement a plugin to read the data from the server. Fixes
* SDAP IDMAP: Add configured domain to idmap contextSumit Bose2013-06-281-0/+70
| | | | | | To allow libsss_idmap to manage all id-ranges the id-ranges of the domains configured in sssd.conf which are currently unmanaged must be added to libsss_idmap.
* Add now options ldap_min_id and ldap_max_idSumit Bose2013-06-287-0/+33
| | | | | | | Currently the range for Posix IDs stored in an LDAP server is unbound. This might lead to conflicts in a setup with AD and trusts when the configured domain uses IDs from LDAP. With the two noe options this conflict can be avoided.
* Add cmocka based tests for libsss_idmapSumit Bose2013-06-281-0/+421
| | | | | This patch implements some unit tests for the recent enhancements to libsss_idmap.
* idmap: add sss_idmap_domain_has_algorithmic_mappingSumit Bose2013-06-282-0/+55
| | | | | | | | | | With this call it can be checked if for a given domain algorithmic mapping is available or if the ID must be read from an external source. The default if an error occurs or no matching range was found is false, i.e external mapping, to meet the requirements for simple LDAP based domains where only external mapping is available. Fixes
* idmap: add calls to check if ID mapping conforms to rangesSumit Bose2013-06-282-0/+186
| | | | | | | When ID are mapped externally it must be checked if the extern ID falls into the right configured range to avoid ID conflicts. Fixes
* idmap: allow NULL domain sid for external mappingsSumit Bose2013-06-281-32/+44
| | | | | | | | | | Since it is planned that the LDAP based ID providers (LDAP, AD, IPA) will always use libsss_idmap to map ID or get information about how to map it, it must be possible to add domains to libsss_idmap which do not have a SID or where is SID is not known when external mapping is used. Algorithmic mapping always requires a domain SID. Fixes
* idmap: add option to indicate external_mappingSumit Bose2013-06-282-4/+43
| | | | | | | | | | The idea is that ranges for IDs from AD can be used in libsss_idmap as well, but whenever a mapping is requested for this range a specific error code IDMAP_EXTERNAL is returned to tell SSSD to do an AD lookup. This way SSSD does not need to inspect the ranges itself but all is done inside if libsss_idmap. Fixes
* idmap: add optional unique range idSumit Bose2013-06-282-1/+17
| | | | | | | | To be able to detect configuration changes in idranges managed by FreeIPA an identifier should be stored on the client together with the other idrange related data. Fixes
* idmap: allow first RID to be setSumit Bose2013-06-282-20/+109
| | | | | | | | | | | | Currently libss_idmap implicitly assumes that the RID 0 is always mapped to the first ID of the given range. This is not the case anymore when multiple ranges are used e.g. for trusted domains in FreeIPA. A new call sss_idmap_add_domain_ex() was added which can take the first RID as an argument. This new call will get more options with other patches hence I didn't change the library version with this patch. Fixes
* Update the translations for the 1.10.0 releaseJakub Hrozek2013-06-2715-520/+287
* Do not call sss_cmd_done in function check_cache.Lukas Slebodnik2013-06-271-6/+0
| | | | | | | | Function sysdb_getpwnam return more results than 1 and therefore sss_cmd_done was called. Inside of function sss_cmd_done memory was freed, but this freed memory was used in caller functions, therefore sssd crashed.
* Handle too many results from getnetgr.Lukas Slebodnik2013-06-271-1/+13
* SSH: Update known_hosts file after unsuccessful requests as well.Jan Cholasta2013-06-271-20/+36
| | | |
* SSH: When host is removed from LDAP, remove it from the cache as wellJan Cholasta2013-06-271-1/+8
| | | |
* Add missing argument to DEBUG messageLukas Slebodnik2013-06-271-1/+1
* Fix compilation warningJakub Hrozek2013-06-271-1/+1
* AD: Write out domain-realm mappingsJakub Hrozek2013-06-277-189/+197
| | | | | This patch reuses the code from IPA provider to make sure that domain-realm mappings are written even for AD sub domains.
* KRB5: guess UPN for subdomain usersJakub Hrozek2013-06-277-18/+43
* sudo responder: use different callback for oob refreshPavel Březina2013-06-271-6/+8
| | | | | | | | | Since we don't care about returned values from out of band refresh, we do not need to set callback data. However, this caused talloc to abort as it considers it as type mismatch when called from tevent_req_callback_data().
* AD: kinit with the local DC even when talking to a GCJakub Hrozek2013-06-262-4/+21
| | | | | | | | We tried to use the GC address even for kinit which gave us errors like: "Realm not local to KDC while getting initial credentials". This patch adds a new AD_GC service that is only used for ID lookups, any sort of Kerberos operations are done against the local servers.
* Use forest for GC SRV lookupsSumit Bose2013-06-261-12/+40
| | | |
* Do not switch to credentials everytime.Lukas Slebodnik2013-06-261-4/+69
| | | | | | | | | If user decide to kinit as another user we do not want to switch back to user ccache at another login. We will switch to new ccache if and only if default principal name is the same as current principal name, or there is not any default ccache.
* Every time return directory for krb5 cache collection.Lukas Slebodnik2013-06-262-4/+64
| | | | | | | | Function krb5_cc_get_full_name is called only as a way to validate that, we have the right cache. Instead of returned name, location will be returned from function cc_dir_cache_for_princ.
* Fix wrong detection of krb5 ccnameLukas Slebodnik2013-06-261-1/+4
| | | | | DIR:/run/user/1000/krb5cc is valid ccname, but function sss_krb5_cc_file_path returned NULL in this case.
* Revert "Implicitly activate the PAC responder for AD provider"Sumit Bose2013-06-261-2/+1
| | | | This reverts commit 7527ec8ab2b79ec576ace2da9e2c158b849adfa6.
* fix dead code in fail_over_srv.cPavel Březina2013-06-251-11/+12
| | | | | | | | The dead code is in fo_discover_servers_primary_done(). By fixing it I have also added a debug message on ret != EOK. This change is done also in fo_discover_servers_backup_done().
* init script: source /etc/sysconfig/sssdPavel Březina2013-06-253-0/+18
| | | |
* krb5: do not use enterprise principals for renewalsSumit Bose2013-06-251-1/+6
| | | | | | When renewing a ticket we already know the canonical principal hence it is not needed to expand it to an enterprise principal but we can contact the KDC of the corresponding realm directly.
* krb5: do not send pac for IPA users from the local domainSumit Bose2013-06-255-10/+20
| | | | | | | | | | | | | So far we didn't send the PAC of IPA users to the PAC responder during password authentication because group memberships for IPA users can be retrieved efficiently with LDAP calls. Recently patches added PAC support for the AD provider as well and removed the restriction for the IPA users. This patch restores the original behaviour by introducing a new flag in struct krb5_ctx which is only set for the IPA provider. Additionally a different flag is renamed to make it's purpose more clear. Fixes
* Revert "Always send the PAC to the PAC responder"Sumit Bose2013-06-251-18/+20
| | | | This reverts commit d153941864fe481399665be8fe583c9317194a99.
* Fix typo in pack_authtok()Sumit Bose2013-06-241-1/+1
* KRB5: use the right authtok type for renewalsSumit Bose2013-06-241-3/+20