summaryrefslogtreecommitdiffstats
path: root/src/providers
Commit message (Collapse)AuthorAgeFilesLines
* Rename proxy_ctx to proxy_id_ctx for clarityStephen Gallagher2010-06-301-14/+15
|
* Make RootDSE optionalStephen Gallagher2010-06-282-3/+17
| | | | | | | | | | | In violation of the standard, some LDAP servers control access to the RootDSE, thus preventing us from being able to read it before performing a bind. This patch will allow us to continue on if the RootDSE was inaccessible. All of the places that we use the return value of the RootDSE after this are already checked for NULL and use sane defaults if the RootDSE is unavailable
* Add explicit requests for several operational attrsAlexander Gordeev2010-06-281-1/+12
| | | | | | | | | | | | | | | | Operational attributes are not returned in searched requests unless explicitly requested according to RFC 4512 section 5.1. Therefore to get several standard attributes of root DSE we have to request for them. The requested attrs are: - altServer - namingContexts - supportedControl - supportedExtension - supportedFeatures - supportedLDAPVersion - supportedSASLMechanisms Signed-off-by: Alexander Gordeev <lasaine@lvk.cs.msu.su>
* Fix SASL authenticationSumit Bose2010-06-281-2/+2
|
* Protect against segfault in remove_ldap_connection_callbacksStephen Gallagher2010-06-181-1/+6
| | | | | | | | | If sdap_mark_offline() is called before a live connection is established, sdap_fd_events could be NULL, causing a segfault when remove_ldap_connection_callbacks() attempts to free the sdap_fd_events->conncb https://fedorahosted.org/sssd/ticket/545
* Fix return value from remove_connection_callback() destructorStephen Gallagher2010-06-181-9/+2
| | | | | ldap_get_option() can only fail if the option we're removing has already been removed. It is sufficient to log this and continue.
* Standardize on correct spelling of "principal" for krb5Stephen Gallagher2010-06-163-6/+6
| | | | https://fedorahosted.org/sssd/ticket/542
* Don't segfault if ldap_access_filter is unspecifiedStephen Gallagher2010-06-141-12/+13
| | | | https://fedorahosted.org/sssd/ticket/539
* Remove krb5_changepw_principal optionJakub Hrozek2010-06-146-44/+23
| | | | Fixes: #531
* Eliminate unused variable from pc_init_timeout()Stephen Gallagher2010-06-101-4/+0
| | | | https://fedorahosted.org/sssd/ticket/525
* Check return code of hash_delete in proxy_child_destructorStephen Gallagher2010-06-101-1/+7
| | | | | | | We can't do much about an error here, but we should be reporting it. https://fedorahosted.org/sssd/ticket/534
* Properly check that the timeout event was created for cleanup/enumStephen Gallagher2010-06-102-2/+46
| | | | | | | | | We need to make sure that if we didn't create the timeout, that we cancel the request so there's no chance of ending up with two enumerations/cleanups running simultaneously. We'll attempt to reschedule later, if possible. https://fedorahosted.org/sssd/ticket/524
* Check the correct variable for NULL after creating timerStephen Gallagher2010-06-101-1/+1
| | | | | | | | | In several places, we were creating a new timer and assigning it to the tev variable, but then we were checking for NULL from the te variable (which, incidentally, is guaranteed never to be NULL in this situation) https://fedorahosted.org/sssd/ticket/523
* Properly handle missing originalMemberOf entry in initgroupsStephen Gallagher2010-06-101-0/+1
| | | | | | | Failing to return after the tevent_req_post() here can result in a null-pointer dereference (along with other hard-to-track bugs) https://fedorahosted.org/sssd/ticket/507
* Avoid potential NULL dereferenceStephen Gallagher2010-06-101-3/+5
| | | | https://fedorahosted.org/sssd/ticket/506
* Properly handle read() and write() throughout the SSSDStephen Gallagher2010-06-101-7/+18
| | | | | | | We need to guarantee at all times that reads and writes complete successfully. This means that they must be checked for returning EINTR and EAGAIN, and all writes must be wrapped in a loop to ensure that they do not truncate their output.
* Add a missing initializerSumit Bose2010-06-091-1/+1
|
* Allow ldap_access_filter values wrapped in parenthesesStephen Gallagher2010-06-092-3/+21
|
* Disable connection callbacks when going onlineStephen Gallagher2010-06-093-0/+27
| | | | | | | | Under certain circumstances, the openldap libraries will continue internally trying to reconnect to a connection lost (as during a cable-pull test). We need to drop the reconnection callbacks when marking the backend offline in order to guarantee that they are not called with an invalid sdap_handle.
* Fix Incorrect NULL check in get_server_common()Jakub Hrozek2010-06-091-1/+1
| | | | Fixes: #518
* Fix potential NULL dereference in fail_over.cJakub Hrozek2010-06-091-2/+5
| | | | Fixes: #505
* Fix realm_str dereferenceJakub Hrozek2010-06-091-1/+1
| | | | Fixes: #508
* Don't return uninitialized value in proxy providerJakub Hrozek2010-06-061-1/+4
| | | | Fixes: #498
* Fix broken build against older versions of OpenLDAPStephen Gallagher2010-06-062-2/+12
| | | | | | OpenLDAP < 2.4 used LDAP_OPT_ERROR_STRING. It was changed to LDAP_OPT_DIAGNOSTIC_MESSAGE in 2.4. This patch will allow the TLS error messages to be displayed on either version.
* Initialize pam_data in Kerberos child.Sumit Bose2010-06-061-1/+1
|
* Unify sdap and sysdb data handlingSumit Bose2010-06-021-85/+104
|
* Compare full service nameSumit Bose2010-06-021-1/+2
|
* Remove service groupsSumit Bose2010-06-022-193/+7
| | | | | Because the memberOf attribute is now set for the service objects we do not need to fetch the service groups separately anymore.
* Use new schema for HBAC service checksSumit Bose2010-06-022-21/+641
|
* Use sysdb_attrs_get_string_array() instead of sysdb_attrs_get_el()Sumit Bose2010-06-021-23/+12
| | | | | | | | sysdb_attrs_get_el() creates an empty element in the sysdb_attrs structure if the requested element does not exist. Recent versions of libldb do not accept empty elements when writing new objects to disk. sysdb_attrs_get_string_array() does not create an empty element but returns ENOENT.
* Check ipaEnabledFlagSumit Bose2010-05-271-5/+23
|
* Remove signal event if child was terminated by a signalSumit Bose2010-05-272-6/+29
|
* Fix check if LDAP id provider is already initializedSumit Bose2010-05-271-1/+1
|
* Reset run_online_cb flag even if there are no callbacksSumit Bose2010-05-271-8/+10
|
* Add ldap_access_filter optionStephen Gallagher2010-05-278-3/+561
| | | | | | | | | | This option (applicable to access_provider=ldap) allows the admin to set an additional LDAP search filter that must match in order for a user to be granted access to the system. Common examples for this would be limiting access to users by in a particular group, for example: ldap_access_filter = memberOf=cn=access_group,ou=Groups,dc=example,dc=com
* Add offline callback to disconnect global SDAP handleSumit Bose2010-05-274-1/+24
|
* Add krb5 SIGTERM handler to ipa auth providerSumit Bose2010-05-271-0/+6
|
* Refactor krb5 SIGTERM handler installationSumit Bose2010-05-273-14/+39
|
* Add callback to remove krb5 info files when going offlineSumit Bose2010-05-275-40/+162
|
* Add run_callbacks flagSumit Bose2010-05-272-2/+25
|
* Refactor krb5_finalize()Sumit Bose2010-05-271-12/+27
|
* Add offline callbacksSumit Bose2010-05-273-1/+32
|
* Refactor data provider callbacksSumit Bose2010-05-273-142/+187
|
* Revert "Create kdcinfo and kpasswdinfo file at startup"Sumit Bose2010-05-273-50/+1
| | | | This reverts commit f3c31d11bf365eb6a79c4f698667915a4c81eeb7.
* Support password changes in chpass_provider = proxyStephen Gallagher2010-05-271-5/+73
| | | | | We were not passing the old authtok to the pam_chauthtok() function, causing it to return PAM_AUTH_ERR.
* Proxy provider PAM handling in child processStephen Gallagher2010-05-273-136/+1525
| | | | | | | | | | | | | This patch adds a new tevent_req to the proxy provider, which will spawn short-lived child processes to handle PAM requests. These processes then call the proxied PAM stack and return the results via SBUS method reply. Once it is returned, the parent process kills the child. There is a maximum of ten child processes running simultaneously, after which requests will be queued for sending once a child slot frees up. The maximum processes will be made configurable at a later date (as this would violate string freeze).
* Copy pam data from DBus messageSumit Bose2010-05-273-54/+75
| | | | | | | | Instead of just using references to the pam data inside of the DBus message the data is copied. New the DBus message can be freed at any time and the pam data is part of the memory hierarchy. Additionally it is possible to overwrite the authentication tokens in the DBus message, because it is not used elsewhere.
* Fix error reporting for be_pam_handlerStephen Gallagher2010-05-271-1/+1
|
* Make data provider id_callback publicStephen Gallagher2010-05-272-2/+3
|
* Fix handling of ccache file when going offlineSumit Bose2010-05-262-32/+76
| | | | | | | The ccache file was removed too early if system is offline but the backend was not already marked offline. Now we remove the ccache file only if the successfully got a new one and it is not the same as the old one.