summaryrefslogtreecommitdiff
path: root/server/util
AgeCommit message (Collapse)AuthorFilesLines
2009-08-11Make child processes exit when parent diesJakub Hrozek3-1/+46
The child processes call prctl() and when their parent process is killed, they are sent SIGTERM using prctl. This is currently Linux-specific, for non-Linuxes, a similar effect is achieved by catching a set of common termination signals and sending SIGTERM to the process group.
2009-08-05Fix broken ifndefsSimo Sorce1-9/+0
ifndef doesn't work for those functions that aren't already macro definitions in tevent.h like tevent_req_data. However if tevent_req_data is defined in tevent.h, all other functions are available as well. So just check for tevent_req_data and define all of them if it is not available. This should fix compiling on distros with the latsest tevent.
2009-08-05Move parsing of names and domains into util/Jakub Hrozek2-0/+134
2009-08-05Consolidate tevent helpersJakub Hrozek1-0/+25
2009-07-20Add option to add timestamps to debug outputSimo Sorce3-4/+32
use '--debug-timestamps' at the command line or set 'debug-timestamps = TRUE' in the configuration file.
2009-07-20Instrument memberof for debuggingSimo Sorce1-1/+3
Fix ldb debug to avoid printing the debug function name, it's useless.
2009-07-10add a short explanation about the used debug levelsSumit Bose1-0/+14
2009-07-02PRINT and ERROR macrosJakub Hrozek1-0/+3
2009-06-19Allow the use of custom CFLAGS on the make command lineStephen Gallagher1-0/+1
Setting CFLAGS explicitly in configure.ac means that they would be overwritten when using e.g. make CFLAGS="-O0 -g" This replaces the explicit setting of CFLAGS with an AM_CONDITIONAL to have Makefile.am set these instead. Also fixes a missing #include that was coincidentally obscured because gcc's -O2 happened to be able to locate it. Setting -O0 revealed the problem.
2009-06-17Create gettext framework for SSSD daemonStephen Gallagher2-0/+14
2009-06-11Add missing configure check for getpgrpStephen Gallagher1-1/+1
2009-06-10Turn sssd_mem_takeover into sssd_mem_attachSimo Sorce2-25/+51
The old function was not used anywhere, and this function uses better semantics, including not using void ** which gives strict aliasing problems. Also add a generic password destroy function
2009-06-08Fix invalid pointer error in ldb_debug_messagesStephen Gallagher1-2/+19
2009-06-02add utility function talloc_zfreeSimo Sorce1-0/+4
2009-05-28Suppress "rootdse" error messages.Stephen Gallagher2-0/+29
We will trap all LDB debug messages and pipe them into our internal DEBUG() function. LDB FATAL messages will still be printed by default, WARNING and TRACE functions will be at debug level 3 and 9, respectively.
2009-05-28Use PTR_2_INT for alignment calculationsSimo Sorce1-4/+5
This version should be pointer size agnostic. Should make this code safe on both 32bit and 64bit.
2009-05-26Silence warningsSimo Sorce1-0/+2
2009-05-18Fix crypt functions to not use static buffers.Simo Sorce2-320/+318
Also fix style, clarify, and simplify some logic.
2009-05-08Chdir to / when daemonizingJakub Hrozek1-0/+11
2009-05-08Use tevent for shutdown signals, remove old pidfile, make sssd single-instance.Jakub Hrozek1-1/+9
Use tevent signal handling facilities for handlong SIGTERM and SIGINT in the monitor. Remove pidfile on SIGTERM and SIGINT. Make sssd single-instance by checking if we suceeded in signaling the process in the pidfile.
2009-04-07Clean up warnings in SSSDStephen Gallagher1-12/+12
2009-03-20Enhance server_setupSimo Sorce2-0/+11
Now it can load from scratch default configuration that is valid for all daemons. First thing, make it possible for each daemon/provider to set its own debug level in its configuration entry.
2009-03-13Better error reporting for pidfile()Simo Sorce1-7/+11
This should help understanding what's going on if the server fails to create a pid file.
2009-03-11Fix calling setsid and resolve the sssd signal bugSimo Sorce1-11/+1
For some reason we were not testing for HAVE_SETSID in configure therefore the setsid() function was never called. This failed to set the process group after the first fork. Remove ifdef because we depend on setsid() anyway, so if it is not available on some platform it is better to fail rather then silently succeed but not have the right process group set up.
2009-03-02Do not steal memory in btreemaps.Simo Sorce1-4/+7
Just make sure that the memory passed in is either static or allocated on the same memory context that is parent of the btreemap.
2009-03-02Implement GetUserAttributes in the InfoPipeStephen Gallagher1-1/+3
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-03-02first version of LOCAL pam backendSumit Bose2-0/+422
2009-02-28Fix confdb issues.Simo Sorce1-9/+4
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 Gallagher2-9/+39
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 Sorce5-16/+18
dependencies based on the latest samba code. Convert all references to the old events library to use the renamed tevent library.
2009-02-24Adding support for CheckPermissions to InfoPipe.Stephen Gallagher2-0/+38
CheckPermissions will currently return unrestricted access to the root user, and no access to any other user. Once we decide on an ACL mechanism, this will be easy to change. I have also added very basic tests for the Introspect and CheckPermissions methods.
2009-02-16Enhancements and bugfixes to util/btreemap.c 1) Remove useless and unused ↵Stephen Gallagher2-22/+34
btreemap_new() 2) Fix potentially serious memory allocation error. btreemap now requires a TALLOC_CTX to be passed in for assignment to the top node of the tree. Previously it was creating a new root TALLOC_CTX 3) Add new function btreemap_get_keys that will return a sorted array (newly allocated using talloc_realloc()) of keys (const void *) 4) Change the btreemap to use (const void *) keys instead of (void *)
2009-02-13Always pass teh database path explicitly, so that test cases can useSimo Sorce1-1/+9
throw away databases Check version and init main db if empty
2009-02-12Fix copy&paste errorSimo Sorce1-1/+1
2009-02-12Adding sysdb_store_group_posix with unit testStephen Gallagher1-1/+1
2009-01-27Refactoring the monitor code and SBUS utility functions.Stephen Gallagher2-130/+0
2009-01-09Minor change to btreemap to use an enum for the return codes of ↵Stephen Gallagher2-17/+24
btreemap_search_key.
2009-01-08The code now successfully sends a getpwnam request to a remote LDAP server,Simo Sorce1-0/+2
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.
2008-12-22libevents renamed upstream to libteventSimo Sorce2-3/+4
events.h -> tevent.h
2008-12-15Adding a parameter to the sbus_service_sbus_init function to allow passing ↵Stephen Gallagher2-3/+5
in an sbus_conn_destructor_fn to the sbus_new_connection() function. Fixing minor warning about the usage of talloc_reference.
2008-12-10Convert leading tabs to 4 spacesSimo Sorce1-36/+36
2008-12-08Change data provider into a hub, where backends (ldap, nis, ipa providers)Simo Sorce3-21/+8
and frontends (pam, nss, ... modules) can connect to.
2008-11-25Make a binary out of each major sssd component instead ofSimo Sorce2-115/+48
using the same binary to fork off all services.
2008-11-25Move all server helpers in util/server.cSimo Sorce2-161/+400
2008-11-24point PIPE_PATH at /var/lib/sss/pipes, not just the private path so that theSimo Sorce1-1/+2
same config option can be used for the nss service
2008-11-24Replacing hard-coded paths with configure script substitutions.Stephen Gallagher2-3/+5
Changing the default SBUS locations to be configure script parameters
2008-11-24Fix indentationSimo Sorce2-5/+5
2008-11-20Created a helper function sssd_service_sbus_init() to simplify creating the ↵Stephen Gallagher2-0/+138
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.
2008-11-20Start conversion from a fork() and live to a fork()/exec() model.Simo Sorce3-3/+69
To start the dameon now you need to pass the option -s monitor Still have some problems communicating with children.
2008-11-19btreemap.c and btreemap.h seem to be missing from an earlier commit. Adding ↵Stephen Gallagher2-0/+207
them.