summaryrefslogtreecommitdiff
path: root/server/confdb/confdb.c
AgeCommit message (Collapse)AuthorFilesLines
2009-03-04Add internal min/max/next id management fucntionsSimo Sorce1-1/+43
Retrieve minID and maxID from domain configuration so that lower and upper bounds can be set per domain. Add function that keeps track of the next available id, increments and returns it on requests, avoiding collisions with existing ids.
2009-03-02Implement GetUserAttributes in the InfoPipeStephen Gallagher1-2/+2
This patch adds support for requesting user data in the sysdb via the InfoPipe. It currently has support for reading defined entries of integral, floating-point or string types. Tasks remaining: 1) Implement call to the provider when cache is out of date 2) Support byte arrays for userpic and similar I modified sysdb_search_ctx in sysdb_search.c to accept an array of attributes to pass into the LDB search. I also made one additional related fix: the btreemap now sorts in the correct order. Previously I had accidentally transposed the two values for sorting, so the map would always have been in exact reverse order.
2009-02-28Fix confdb issues.Simo Sorce1-91/+52
Avoid uninitialized memory messages in valgrind (in _btreemap_get_keys). Do not free memory we just stored in the btree (in confdb_get_domains_list). Streamline confdb_get_domains() and remove extra calls when we already have all the information handy. Do not store basedn in domain info, the base dn is always calculated out of the domain name. Remove the "provider" attribute, it was really used only to distinguish between LOCAL and other domains, directly check for LOCAL as a special case instead.
2009-02-27Refactor creation of domain_map into confdbStephen Gallagher1-20/+117
The NSS provider, the Data Provider backends and the InfoPipe all need access to the domain map provided by the confdb. Instead of reimplimenting it in multiple places, it is now provided in a pair of helper functions from the confdb. confdb_get_domains() returns a domain map by reference. Always returns the most up-to-date set of domains from the confdb. confdb_get_domains_list() returns an array of strings of all the domain names. Always returns the most up-to-date set of domains from the confdb. This patch also modifies the btreemap_get_keys() function to better handle memory and report allocation failures.
2009-02-26Rebase the code to use talloc, tdb, tevent, ldb as externalSimo Sorce1-4/+1
dependencies based on the latest samba code. Convert all references to the old events library to use the renamed tevent library.
2009-02-24Spec file patch Take 2:Stephen Gallagher1-0/+4
Adding support for generating RPMS for sssd. Fixing TDB autoconf macros to require version 1.1.3 and support for the tdb_repack symbol (required by LDB) Updating tdb.h to #include <sys/stat.h> for proper autoconf Build system modifications to simplify RPM generation Fixing RPM build system as recommended during code review Minor tweaks to Makefile and sssd.spec Make policykit and infopipe configurable Soname and symlinks
2009-02-20Add helper function to get booleans from confdbSimo Sorce1-9/+42
2009-02-20Completely rework the nss interface to be able to use 2Simo Sorce1-15/+0
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).
2009-02-13Always pass teh database path explicitly, so that test cases can useSimo Sorce1-12/+3
throw away databases Check version and init main db if empty
2009-01-27Add skeleton for PolicyKit back-endStephen Gallagher1-0/+16
2009-01-27Add skeleton for InfoPipe serviceStephen Gallagher1-3/+15
2009-01-27Automatically generate the config.ldb if it doesn't exist (i.e. First startup)Stephen Gallagher1-6/+83
2009-01-09Fix a bug in confdb_get_string where attempting to return a default string ↵Stephen Gallagher1-1/+11
of NULL would erroneously report ENOMEM.
2008-11-24Replacing hard-coded paths with configure script substitutions.Stephen Gallagher1-2/+13
Changing the default SBUS locations to be configure script parameters
2008-11-07Store all domains served by the SSSD to a binary-tree map for fast NSS lookup.Stephen Gallagher1-3/+90
Changed the "section" feature of confdb.c to use '/' as a delimiter instead of '.', because this conflicted with the ability to use dots in domain names.
2008-11-04Add some more service functionsSimo Sorce1-0/+42
2008-11-03Add support for dbus comunication in the nss serviceSimo Sorce1-0/+34
Add utility function in confdb Make all component fetch the dbus socket from the confdb
2008-10-20Add configuration database functions.Simo Sorce1-0/+372
Convert nss responder to use the confdb