summaryrefslogtreecommitdiffstats
path: root/server/db/sysdb.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix nested group membershipsSimo Sorce2009-12-071-2/+11
| | | | | | | | | Search the local db to find the local DN using the original DN as search key. This way we do not have to rely on weak and faulty heuristicts based on DN names. Add a few helper functions in the process and change the way we pass members to sysdb_store_group_send(), instead of passing users and groups list, just add member DNs to the other sysdb attrs.
* Make strdn build functions more availableSimo Sorce2009-12-071-0/+4
|
* Add sysdb_search_custom requestSumit Bose2009-12-071-1/+10
|
* Use memberuid and not member in group enumerationsSimo Sorce2009-12-031-1/+1
| | | | | | This allows for correctly reporting nested group members, while at the same time not paying a too high price for caluclating nested groups at runtime e very time a search is made.
* Optimize sysdb_enumgrentSimo Sorce2009-11-201-3/+7
| | | | | This brings down the time needed to enumerate my group database from 2.4 seconds to 0.15 seconds.
* Improve handling of ccache filesSumit Bose2009-11-201-0/+1
| | | | | | | - save current ccache file to sysdb - use the saved ccache file if the user has running processes - create an empty ccache if offline - return enviroment variables if offline
* Change initgroups code to use and check the cacheSimo Sorce2009-11-181-22/+11
| | | | | | | We were previously always ending up contacting the backend because we had no way to know if an initgroups call for the same user had ever been called. Add attribute to hold this information and rely on backends to update it. If they don't we fallback to the previous behvior of asking the backend.
* Refactor delete functions and add a fewSimo Sorce2009-11-101-18/+37
| | | | | | Refactor user/group delete functions so that they can be used without a transaction (they autostart an operation). Add user and group search function where a subfilter can be specified.
* added access module of IPA providerSumit Bose2009-11-071-0/+4
|
* Always set last update and expire timeSimo Sorce2009-11-061-2/+4
| | | | | modifications to existing users/groups were setting metadata, but creation was not. Fixes #259
* Make available method to quickly retrive stringSimo Sorce2009-11-061-0/+3
| | | | | sysdb_attrs has a lot of methods to add them but very little to get information out. Start adding a way to retrieve a single valued attribute as a string.
* Add sysdb_attrs_replace_name to sysdb API.Sumit Bose2009-11-041-0/+3
|
* Rename sdap_id_map to sdap_attr_mapSimo Sorce2009-11-031-0/+3
| | | | | | Also start adding some infrastructure to use the USN counter when available. In particular add a place to add generic attrs mapping, ie attributes that are neither user nor group specific.
* add sysdb_delete_recursive request to sysdb APISumit Bose2009-11-021-0/+10
|
* Allow sysdb_search_entry request to return more than one resultSumit Bose2009-10-291-1/+2
|
* added a ASQ search API for sysdbSumit Bose2009-10-291-0/+12
|
* Move responsibility for entry expiration timeoutSimo Sorce2009-10-271-8/+12
| | | | | The providers are now responsible for determining how long a cached entry is considered valid. The default is the same as before (600s)
* Add support for offline auth cache timeoutStephen Gallagher2009-10-221-0/+1
| | | | | | | | | This adds a new option (offline_credentials_expiration) to the [PAM] section of the sssd.conf If the user does not perform an online authentication within the timeout (in days), they will be denied auth once the timeout passes.
* add store/search/delete interface for custom sysdb objectsSumit Bose2009-10-221-0/+35
|
* Complete the removal of "legacy" option.Simo Sorce2009-09-111-1/+5
| | | | | | | | | The code was still dependent on it for the ldap driver. Changed the driver code to depend on the schema type. Fix defaults for user and groups trees. ATM if you use the rfc2307bis schema you have to put users and groups in 2 separate trees (what people does by default anyway. If this limitation will turn to be too hard, we will change this later.
* Split database in multiple filesSimo Sorce2009-09-081-2/+16
| | | | | The special persistent local database retains the original name. All other backends now have their own cache-NAME.ldb file.
* Speed-up enumerations.Simo Sorce2009-08-281-1/+5
| | | | | | | This patch reduces the time needed to enumerate groups of a midsized domain from 12 seconds to 4.4 Optimizes enumerations by doing only 2 ldb searches and some ordering instead of a number of searches proportional to the number of groups
* Remove redunant function and always pass attrs.Simo Sorce2009-08-271-15/+4
|
* Always save using member/memberOfSimo Sorce2009-08-271-6/+8
| | | | | First pass to remove the legacy option and make it just a property of the provider
* store additional LDAP attributesSumit Bose2009-08-211-0/+13
| | | | | If available the original DN and the user principle will be stored in sysdb.
* Consolidate tevent helpersJakub Hrozek2009-08-051-26/+0
|
* Add ignore_not_found parameter to sysdb delete functionsJakub Hrozek2009-07-311-3/+6
| | | | Also add tests
* Implement the ldap identity module.Simo Sorce2009-07-081-7/+15
| | | | This uses and exapands the async helpers.
* Unify password caching ops in sysdbSimo Sorce2009-07-081-7/+20
|
* Add async helper functionsSimo Sorce2009-07-081-0/+7
| | | | | | These functions use the tevent_req async model, where a pair of _send/_recv functions pilot requests, with additional helpers like _done functions, and where needed multiple stage helpers.
* Expose sysdb function to parse sysdb_attrsSimo Sorce2009-07-081-0/+2
|
* Rework transaction code to use tevent_reqSimo Sorce2009-07-031-106/+265
| | | | | | This is part of a set of patches to rewrite sysdb to a hopefully better API, that will also let use use tevent_req async style calls to manipulate our cache.
* Rename sysdb_req to sysdb_handle.Simo Sorce2009-07-031-21/+21
| | | | | | | | | This sysdb_req has always really been a transaction handle and not a request. This is part of a set of patches to rewrite transaction support in sysdb to a hopefully better API, that will also let use use tevent_req async style to manipulate our cache.
* added prototype for sysdb_set_cached_passwordSumit Bose2009-05-191-0/+6
|
* Move actual password caching into sysdbSimo Sorce2009-05-181-1/+0
| | | | Convert auth modules to do the caching themselves
* Fixes for porting SSSD to Debian-based platformsStephen Gallagher2009-05-041-1/+0
|
* Use different attribute for cached passwordsSimo Sorce2009-04-271-0/+2
| | | | | | | This fixes a bug with legacy backends where the cached password would be cleared on a user update. Using a different attribute we make sure a userPassword coming from the remote backend does not interfere with a cachedPassword (and vice versa).
* Always pass full domain infoSimo Sorce2009-04-131-7/+9
| | | | | Change sysdb to always passwd sss_domain_info, not just the domain name. This way domain specific options can always be honored at the db level.
* Add way to use files as a proxy backend fro LOCALSimo Sorce2009-04-011-2/+3
| | | | | | | | | | | | Makes LOCAL a normal backend removing some special handling. Fix/Add id range filtering and name filtering Filters uid=0 and gid=0 in the proxy backend as 0 is invalid within sysdb and was causing getxxent calls to fail completely. Fix nss_ncache_check_xxx calls to avoid dirtying the 'ret' variable and causing some unwanted failures. Change sysdb to always return the uid number when searching member entries so that id range filtering can be perfomed also in group searhes (does not work with legacy backends)
* Fix returning user with missing optional attributes.Simo Sorce2009-03-101-2/+2
| | | | | | | | | Gecos, homedir and shell are optional, fix the responder not to refuse to return the user completely if they are missing, replace an empty homedir with "/". Also fix fullname vs gecos, and always return gecos for NSS data. On user creation set gecos to the same value as the user Full Name, to help populate the gecos field with data that makes sense.
* If a domain is MPG enabled return users a groupsSimo Sorce2009-03-101-0/+4
| | | | Turn user entries to Magic Private Groups when groups are quesried.
* Always pass sss_domain_info to sysdb functions.Simo Sorce2009-03-091-16/+8
|
* Move MPG checks within sysdb.Simo Sorce2009-03-091-10/+15
| | | | | This allows to perform checks and modifications in one transaction. Uses configuration stored in confdb to determins if a domain uses MPGs.
* Do not duplicate attribute names macros.Simo Sorce2009-03-091-21/+18
| | | | Also shorten names oh other user attributes.
* Implement SetGroupGID in the InfoPipeStephen Gallagher2009-03-091-0/+5
|
* Implement CreateUser in InfoPipeStephen Gallagher2009-03-061-1/+1
| | | | | | | | | | | Changed the order of the arguments to CreateUser in the Introspection XML to match the other functions (domain belongs second on the list) A few other minor fixes as well: Fixed a typo in SYSDB_GETCACHED_FILTER and sysdb_transaction_end(). Added missing error handling in infp_do_user_set_uid().
* Fix reporting non-default users.Simo Sorce2009-03-061-0/+4
| | | | | We need to add the domain when users are not part of the default domain, otherwise name conflicts may happen.
* Remove _PW_ and _GR_ from SYSDB_ definesSimo Sorce2009-03-051-27/+24
| | | | Also unify SYSDB_PW_NAME and SYSDB_GR_NAME in SYSDB_NAME and make it "name"
* Implement GetCachedUsers in the InfoPipeStephen Gallagher2009-03-051-0/+3
| | | | | | | | | | | | | This function allows a caller to retrieve a list of users who have logged in on the system, specifying an optional minimum last login time to trim the list. I modified sysdb_enumpwent to accept an optional search argument. GetCachedUsers takes advantage of this argument to limit the search by the last login time. I also found and fixed a few additional low-memory conditions around D-BUS message replies.
* Add functions to add regular users and groupsSimo Sorce2009-03-051-0/+13
| | | | | | Calulates next id automatically if uid/gid are not specified. Fixes to sysdb_get_next_available_id. Add tests to create users and groups through the new functions.