Commit message (Collapse)AuthorAgeFilesLines
* clients: use poll instead of selectsssd-1.5.1-34.el6Simo Sorce2011-05-031-9/+6
| | | | | | | select is limited to fd numbers up to 1024, we need to use poll() here to avoid causing memory corruption in the calling process. Fixes:
* Return pam data to the renewal item if renewal failsSumit Bose2011-05-021-4/+9
| | | | | | | | | A previous patch changed a talloc_steal() into a talloc_move(). Now it is not enough to change the parent memory context with talloc_steal to give back the data, but it has to be assigned back too. Additionally this patch uses the missing pam data as an indication that a renewal request for this data is currently running.
* Fix bad password caching when using automatic TGT renewalStephen Gallagher2011-04-291-3/+12
* Fix regressions in the negative cachesssd-1.5.1-30.el6Stephen Gallagher2011-04-153-28/+48
| | | | | | | | | | Do not throw a DP error when failing to delete a nonexistent entity Add debug logging to the negative cache Fix a regression with the negative cache in multi-domain configurations Fix regression where nonexistent entries were never added to the negative cache
* memberof: free delete operation payload once donesssd-1.5.1-29.el6Simo Sorce2011-04-141-1/+14
| | | | | | | | | | | | | | memberof: fix calculation of replaced members We were skipping the check on the next value in the added list when a match was found for the currentr value being checked. memberof: free delete operation apyload once done Large memberof delete operations can cause quite a number of searches and the results are attached to a delop operation structure. Make sure we free this payload once the operation is done and these results are not used anymore so that we get a smaller total memory footprint.
* Never remove gecos from the sysdb cachesssd-1.5.1-28.el6Stephen Gallagher2011-04-121-0/+9
| | | | | Now that gecos can come from either the 'gecos' or 'cn' attributes, we need to ensure that we never remove it from the cache.
* Initialise rootdse to NULL if not availablesssd-1.5.1-27.el6Sumit Bose2011-04-121-0/+1
* Initialise srv_opts even if rootDSE is missingsssd-1.5.1-26.el6Sumit Bose2011-04-112-46/+49
* Remove detection of duplicates from SRV result processingJakub Hrozek2011-04-111-9/+0
* Read only rootDSE data if rootDSE is availableSumit Bose2011-04-081-20/+22
* Do not attempt to resolve nameless serverssssd-1.5.1-24.el6Jakub Hrozek2011-04-011-1/+1
| | | | | | | | | | | The failover code is not strictly in charge of resolving. Its main function is to provide a server to connect to for a service. It is legal, although not currently used, to have a server that has no name (server->common == NULL). In this case, no resolving should be done and it is assumed that the failover user, which are the SSSD back ends in our case, would perform any resolving out of band, perhaps using the user_data attribute of fo_server structure.
* Fall back to cn if gecos is not availablesssd-1.5.1-23.el6Stephen Gallagher2011-03-301-0/+9
| | | | | | | | | | | | | We were not fully compliant with section 5.3 of RFC 2307 which states: An account's GECOS field is preferably determined by a value of the gecos attribute. If no gecos attribute exists, the value of the cn attribute MUST be used. (The existence of the gecos attribute allows information embedded in the GECOS field, such as a user's telephone number, to be returned to the client without overloading the cn attribute. It also accommodates directories where the common name does not contain the user's full name.)
* Always complete the transaction in sdap_process_group_members_2307sssd-1.5.1-21.el6Stephen Gallagher2011-03-281-3/+24
| | | | | | | | | | | | If the loop ran through at least one sdap_process_missing_member_2307() call and errored out later, we were not canceling the transaction. RFC2307: Ignore zero-length member names in group lookups Mark transaction as done when cancelled Fix typo in sdap_nested_group_process_step
* Return from functions in LDAP provider after marking request as failedsssd-1.5.1-20.el6Jakub Hrozek2011-03-251-1/+4
* sss_obfuscate: Avoid traceback on ctrl+dStephen Gallagher2011-03-251-5/+21
| | | | | | | | | sss_obfuscate: abort on ctrl+c There is a python bug ( where getpass.getpass() does not throw KeyboardInterrupt on ctrl+c. This workaround is the closest we can get: if we detect the control character in the string that we read, we'll cancel.
* Fix potential crashes in sysdb_attrs_primary_nameStephen Gallagher2011-03-231-4/+6
| | | | | | | | | | | | | | Don't crash if we get a multivalued name without an origDN Coverity 10740 and 10739 Don't crash on error if _name parameter unspecified Coverity 10738 Check result of talloc_strdup() properly Coverity 10737
* Add sysdb_attrs_primary_name_list() routineStephen Gallagher2011-03-233-18/+81
| | | | | | This routine will replace the use of sysdb_attrs_to_list() for any case where we're trying to get the name of the entry. It's a necessary precaution in case the name is multi-valued.
* Use fake groups during IPA initgroupsJakub Hrozek2011-03-234-119/+441
| | | | | | | | | | Add originalDN to fake groups Use fake groups during IPA schema initgroups Use sysdb_attrs_primary_name() in sdap_initgr_nested_store_group
* Ignore alternate names for users and groupsStephen Gallagher2011-03-233-70/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create sysdb_get_rdn() function This function takes a DN formatted string and returns the RDN value from it. Add sysdb_attrs_primary_name() This function will check a sysdb_attrs struct for the primary name of the entity it represents. If there are multiple entries, it will pick the one that matches the RDN. If none match, it will throw an error. Ignore aliases for users Users in ldap with multiple values for their username attribute will now be compared against the RDN of the entry to determine the "primary" username. We will save only this primary name to the ldb cache. RFC2307: Ignore aliases for groups Groups in ldap with multiple values for their groupname attribute will now be compared against the RDN of the entry to determine the "primary" group name. We will save only this primary group name to the ldb cache. RFC2307bis: Ignore aliases for groups Groups in ldap with multiple values for their groupname attribute will now be compared against the RDN of the entry to determine the "primary" group name. We will save only this primary group name to the ldb cache.
* Sanitize DN when searching the original DN in the cacheSumit Bose2011-03-221-1/+9
* Add support for krb5 access provider to SSSDConfig APIStephen Gallagher2011-03-172-1/+3
* Fix incorrect return value checkStephen Gallagher2011-03-171-1/+1
* Ignore users and groups that lack mandatory attributesStephen Gallagher2011-03-173-37/+60
| | | |
* Run callbacks if server IP changesJakub Hrozek2011-03-093-2/+20
* Release handle if not connectedSumit Bose2011-03-091-0/+1
* Change state of hash entry if netgroup cannot be parsedSumit Bose2011-03-091-0/+2
* Always expire host name resolutionJakub Hrozek2011-03-081-8/+7
| | | | | | The previous version of the patch only expired a resolved host name if the port was being reset. We want to always expire it so we notice IP address changes even if the previous server is still up.
* Use realm for basedn instead of IPA domainJakub Hrozek2011-03-076-48/+66
| | | |
* Add missing name to struct getent_ctx for missing netgroupSumit Bose2011-03-071-4/+13
| | | | | | | | | | Refactor set_netgroup_entry() To avoid wrong or missing netgroup names in the getent_ctx destructor set_netgroup_entry() now takes the name out of the getent_ctx struct instead of using a separate argument.
* Prevent segfault in failover codeJakub Hrozek2011-03-071-2/+3
* Do not try to delete sysbd memberOf attributeSumit Bose2011-03-071-0/+4
* Fixes for dynamic DNS updateSumit Bose2011-03-071-16/+87
| | | | | | | | | | | | | | The current code assumed that only one server is given in the ipa_server config option and fails if multiple servers were given. To fix this nsupdate is first called without a server name assuming that nsupdate is able to find the name of the master DNS server of the zone by reading the SOA record. If this fails the IP address of the currently active LDAP server is used and nsupdate is called again. If there is no default realm given in /etc/krb5.conf nsupdate start trying to find a realm based on the DNS domain which might lead to wrong results. To be on the safe side the realm was added to the message send to nsupdate.
* Reset server status after timeoutJakub Hrozek2011-03-071-1/+11
| | | |
* Fix uninitialized value error in ipa_get_id_options()Stephen Gallagher2011-02-221-7/+7
| | | | | | | | | | Previously, we were only constructing the basedn variable if the ldap_search_base was not specified (which is unlikely to be in use when using the IPA provier). However, if it did happen, constrcuction of the compat search base for netgroups would be using an uninitialized value. Fixes
* Add krb5_realm to the basic IPA optionsStephen Gallagher2011-02-222-2/+4
| | | | | | | Previously, this was only handled by the internal LDAP and Kerberos providers, but this wasn't available early enough to properly handle setting up the krb5_service for failover and creating the krb5info files.
* Check ccache file for renewable TGTs at startupSumit Bose2011-02-223-0/+241
* Allow krb5_realm to override ipa_domainStephen Gallagher2011-02-223-18/+37
| | | | | | It is possible to set up FreeIPA servers where the Kerberos realm differs from the IPA domain name. We need to allow setting the krb5_realm explicitly to handle this.
* IPA provider: remove deleted groups during initgroups()Stephen Gallagher2011-02-211-3/+112
| | | | | | | The IPA provider was not properly removing groups in the cache that the user was no longer a member of.
* Perform initgroups lookups for all domainsStephen Gallagher2011-02-211-3/+5
| | | | | | | | | | Previously, we were setting the client context PAM lookup timeout after the first domain replied. However, if the user wasn't a member of the first domain, their information wasn't being updated. This patch ensures that we only set this timeout after the user has been found or all domains were searched.
* Point the IPA provider at the compat tree for netgroupsStephen Gallagher2011-02-191-0/+19
| | | | | | We don't yet have support for IPA's internal representation of netgroups, so we need to use its compatibility mode for the time being.
* Remove cached user entry if initgroups returns ENOENTStephen Gallagher2011-02-191-0/+11
| | | | | This behavior was present for getpwnam() but was lacking for initgroups.
* Remove renewal item if it is not re-addedSumit Bose2011-02-191-1/+34
* Do not attempt to use START_TLS on SSL connectionsStephen Gallagher2011-02-154-11/+43
| | | | | | | Not all LDAP servers are capable of handling dual-encryption with both TLS and SSL.
* Check that the socket is really ours before attempting to close it.Simo Sorce2011-02-151-13/+42
| | | | Fixes:
* Only print "no matching service rule" when appropriateStephen Gallagher2011-02-151-6/+6
* sss_obfuscate fixesStephen Gallagher2011-02-152-14/+26
| | | | | | | | | | | | | | | | Make the domain argument mandatory in sss_obfuscate It doesn't make sense to set a "default" domain. We should require that the domain always be specified. Gracefully handle permission errors in sss_obfuscate Make SSSDConfig API configuration readable Previously, only root could read these files, but it makes sense to allow non-root users to prototype sssd.conf files. removing password option functionality
* Sanitize search filters for nested group lookupsStephen Gallagher2011-02-151-3/+17
* Add option to disable TLS for LDAP authsssd-1_5_1Stephen Gallagher2011-01-275-4/+25
| | | | | Option is named to discourage use in production environments and is intentionally not listed in the SSSDConfig API.
* Do not fail if attributes are emptySumit Bose2011-01-271-16/+29
| | | | | | | Currently we fail if attributes are empty. But there are some use cases where requested attributes are empty. E.g Active Directory uses an empty member attribute to indicate that a subset of the members are in a range sub-attribute.
* Updating uk translationYuri Chornoivan2011-01-271-88/+118
| | | | Signed-off-by: Stephen Gallagher <>