summaryrefslogtreecommitdiffstats
path: root/server/providers
Commit message (Collapse)AuthorAgeFilesLines
* Convert sync calls in sysdb to async, transaction dependent, calls.Simo Sorce2009-02-281-350/+610
|
* Rebase the code to use talloc, tdb, tevent, ldb as externalSimo Sorce2009-02-267-20/+24
| | | | | | dependencies based on the latest samba code. Convert all references to the old events library to use the renamed tevent library.
* added more ldap backend options and an example configurationSumit Bose2009-02-251-68/+92
| | | | Signed-off-by: Simo Sorce <ssorce@redhat.com>
* Add PAM responderSumit Bose2009-02-246-2/+1232
| | | | | | | Also move responders under server/responder with shared code in server/responder/common Signed-off-by: Simo Sorce <ssorce@redhat.com>
* Proper fix for memory handling problem.Simo Sorce2009-02-242-57/+79
| | | | | | | | | | sbus_message_handler is not responsible anymore for sending back data in any case. Transfer this responsibility to the handler function called. This way both synchronous and asynchronous funstions use the interface the same way and can properly free memory referenced by the reply after the send buffer has been filled in and all copies are done in sbus_conn_send_reply()
* Revert "Fixing serious memory allocation bug in sbus_message_handler."Simo Sorce2009-02-242-51/+66
| | | | | | | | | | | | | | | This reverts commit 13421cbe0af4343f9d110600755ffa756690b282. Conflicts: server/infopipe/infopipe.c server/infopipe/infopipe.h While this solution fixed the contingent memory problem it introduced other problems in handling asynchronous replies. Reverting in preparation for a different way to solve it. Conflicts have been taken care of.
* Fixing serious memory allocation bug in sbus_message_handler.Stephen Gallagher2009-02-232-66/+51
| | | | | | | | | | | | dbus_message_append_args() adds a reference to memory that is not copied to the outgoing message until dbus_connection_send() is called. Since we compile our reply messages in functions and then return the reply, we need a mechanism for deleting allocated memory after invoking dbus_connection_send. I have changed the arguments to sbus_msg_handler_fn so that it takes a talloc ctx containing the sbus_message_handler_ctx and a pointer to a reply object. We can now allocate memory as a child of the reply context and free it after calling dbus_connection_send.
* Completely rework the nss interface to be able to use 2Simo Sorce2009-02-202-31/+190
| | | | | | | | | | | | | | | | | | | | | | | | | types of domains: modern and legacy modern uses member/meberof, legacy uses memberUid for group memberships. Rework the proxy backend to use the legacy style as that's the format the data comes in (trying to convert would require too many transformations and increased the number of queries). Add support for fetching groups in nss. Add support for enumerating users and groups (requires to enable enumeration in config) both in nss and in the proxy provider. Remove confdb_get_domain_basedn() and substitute with generic calls in the nss init function. Store a domain structure in the btree not the basedn so that we can add enumeration flags. Also make sure NSS understand how to make multiple calls on enumerations, also make passing the domian parameter always mandatory, passing in domain=* is not valid anymore. This work fixes also a few memory, degfault, and logic bugs found while testing all nss functions (there are still some to fix that are less critical and much harder to find yet).
* Make backend requests asyncSimo Sorce2009-02-134-72/+599
|
* Always pass teh database path explicitly, so that test cases can useSimo Sorce2009-02-131-1/+1
| | | | | throw away databases Check version and init main db if empty
* Remove dp_cli_sbus_initSimo Sorce2009-02-123-128/+5
|
* - make all functions supposed to get input in posix formatSimo Sorce2009-02-121-12/+12
| | | | | | | | use the same namespace (sysdb_posix_) - no need to explicitly start a transaction if only one operation is performed using a synchronous interface - split _add_remove_ functions into separate functions, don't let ldap madness creep into out interfaces
* Refactoring the monitor code and SBUS utility functions.Stephen Gallagher2009-01-276-20/+247
|
* Add code to make it easier to reconnect in case the serverSimo Sorce2009-01-143-15/+15
| | | | | is not available immediately or drops the dbus connection. First step is the nss connection to the data provider.
* Fix return, dbus would abort because we were passing values andSimo Sorce2009-01-131-3/+3
| | | | | not pointers to values. Check domain is never null (or dbus will abort).
* Add placeholders for new configuration reload methods. The monitor will be ↵Stephen Gallagher2009-01-121-0/+12
| | | | able to call the reloadConfig DBUS method on any or all of its children to force them to reread their configuration from the confdb.
* Regroup database rleated functions under db andSimo Sorce2009-01-125-475/+11
| | | | rename everything with the sysdb suffix.
* Use a unified base (temp. dc=sssd), for all domain including LOCAL.Simo Sorce2009-01-111-27/+28
| | | | | | | It makes no sense to have internal attribute names user configurable, remove that option and use macros internally. Also now always pass the domain name to all nss_ldb_* calls.
* Add support for getpwuid in proxy backendSimo Sorce2009-01-113-25/+160
|
* Turn ldap_provider.c into proxy.c and make it possible to load just anySimo Sorce2009-01-113-32/+62
| | | | libnss library through config directives on the domain object
* Lots of little nasty bugs fixed.Simo Sorce2009-01-091-9/+21
| | | | | | | I was finally able to get a getpwnam() request go through sssd, hit the remote ldap server and get the answer back with 'getent passwd foo' Yupiee!
* The code now successfully sends a getpwnam request to a remote LDAP server,Simo Sorce2009-01-084-50/+93
| | | | | | and caches the result in LDAP. Still chasing a bug that does not let NSS known that the BE was successful. This makes NSS timeout the client and not return any results yet.
* Add more infrastructure to data provider to dispatch requests (still untested).Simo Sorce2009-01-067-172/+1061
| | | | | Add helper functions to connect to the data provider. Add some plumbing to the ldap provider (still untested).
* Fix dp client to connect to the right dbus pipeSimo Sorce2009-01-052-19/+24
|
* libevents renamed upstream to libteventSimo Sorce2008-12-221-1/+1
| | | | events.h -> tevent.h
* Modified sbus_server_new() to take a talloc memory context to useStephen Gallagher2008-12-151-1/+2
| | | | as a parent for the new server context object.
* Adding a parameter to the sbus_service_sbus_init function to allow passing ↵Stephen Gallagher2008-12-152-2/+2
| | | | in an sbus_conn_destructor_fn to the sbus_new_connection() function. Fixing minor warning about the usage of talloc_reference.
* Disconnected client SBUS connections would delete the master set of ↵Stephen Gallagher2008-12-151-1/+5
| | | | | | | | sbus_method_ctx entries, meaning that the next connection to attempt to disconnect would receive a segmentation fault also trying to delete them. They are now talloc_reference()-ed to their connection context and talloc_unlink()-ed upon deletion. I have also modified the sbus_new_server() call to take a reference to an sbus_srv_ctx object as a return argument, so that the calling function can keep track of the SBUS server context if it so chooses.
* Initial work on a test provider using the gross hack of dlopen()ing nss_ldapSimo Sorce2008-12-103-8/+186
| | | | :-)
* Fix dbus related memory leaksSimo Sorce2008-12-091-8/+12
|
* Change data provider into a hub, where backends (ldap, nis, ipa providers)Simo Sorce2008-12-083-156/+748
| | | | and frontends (pam, nss, ... modules) can connect to.
* Make a binary out of each major sssd component instead ofSimo Sorce2008-11-251-0/+43
| | | | using the same binary to fork off all services.
* Remove the service stuff that we stopped using when we moved toSimo Sorce2008-11-251-1/+0
| | | | the forl/exec model
* point PIPE_PATH at /var/lib/sss/pipes, not just the private path so that theSimo Sorce2008-11-242-2/+3
| | | | same config option can be used for the nss service
* Replacing hard-coded paths with configure script substitutions.Stephen Gallagher2008-11-242-22/+52
| | | | Changing the default SBUS locations to be configure script parameters
* change structure nameSimo Sorce2008-11-242-7/+13
|
* Created a helper function sssd_service_sbus_init() to simplify creating the ↵Stephen Gallagher2008-11-202-49/+13
| | | | initial connection to the monitor service within the child services. It will create the D-BUS connection to the monitor and configure the service to handle the mandatory getIdentity and ping methods.
* Make it possible to use an arbitrary command to start servicesSimo Sorce2008-11-201-1/+1
|
* Remove unused code and fix message handlers in dpSimo Sorce2008-11-201-24/+10
|
* Start conversion from a fork() and live to a fork()/exec() model.Simo Sorce2008-11-203-24/+21
| | | | | To start the dameon now you need to pass the option -s monitor Still have some problems communicating with children.
* Add some infrastructure code to add data providers.Simo Sorce2008-11-193-0/+509
This currently breacks the dameon because of a problem with destroying the monitor dbus server in the children after fork()