Code

sysdb.git
10 years agosocket frontend: Split connection accepting into its own function.
Sebastian Harl [Fri, 25 Oct 2013 15:50:17 +0000 (17:50 +0200)]
socket frontend: Split connection accepting into its own function.

10 years agosocket frontend: Manage open connections in listen_and_serve().
Sebastian Harl [Fri, 25 Oct 2013 15:40:57 +0000 (17:40 +0200)]
socket frontend: Manage open connections in listen_and_serve().

For that purpose, added a new object data type wrapping a connection. All open
connections are managed in a linked-link in the socket object. The main loop
now also waits data to be available on an open connection and then passed on
the connection object to the connection handler thread which is then supposed
to handle requests (not implemented yet).

10 years agochannel_test: Updated timeout check according to latest changes.
Sebastian Harl [Fri, 25 Oct 2013 15:30:12 +0000 (17:30 +0200)]
channel_test: Updated timeout check according to latest changes.

I.e. check errno rather than the return value.

10 years agoutils llist: Added sdb_llist_iter_remove_current().
Sebastian Harl [Fri, 25 Oct 2013 15:23:32 +0000 (17:23 +0200)]
utils llist: Added sdb_llist_iter_remove_current().

This function may be used to remove the current (the one returned by the last
sdb_llist_iter_get_next() call) iterator value from the list.

Note, that this function is not safe if another iterator is used in parallel
at the same time.

10 years agoMade log prefixes slightly more generic.
Sebastian Harl [Tue, 22 Oct 2013 16:53:34 +0000 (18:53 +0200)]
Made log prefixes slightly more generic.

Changed "plugin" to "core" and "sock" to "frontend". Those names better
identify the context in which the error happened.

10 years agodaemon: Terminate backend thread after frontends have stopped.
Sebastian Harl [Tue, 22 Oct 2013 07:10:38 +0000 (09:10 +0200)]
daemon: Terminate backend thread after frontends have stopped.

10 years agodaemon: Exit if adding a listener fails.
Sebastian Harl [Tue, 22 Oct 2013 07:08:37 +0000 (09:08 +0200)]
daemon: Exit if adding a listener fails.

10 years agosocket frontend: Improved error reporting.
Sebastian Harl [Tue, 22 Oct 2013 07:00:55 +0000 (09:00 +0200)]
socket frontend: Improved error reporting.

10 years agodaemon: Added "Listen" config option.
Sebastian Harl [Tue, 22 Oct 2013 06:54:20 +0000 (08:54 +0200)]
daemon: Added "Listen" config option.

The main thread listens on all configured addresses and serves requests
through the frontend socket module. The backend collector loop now runs in its
own background thread.

10 years agofrontend: Use channel shutdown to synchronize handler thread shutdown.
Sebastian Harl [Mon, 21 Oct 2013 07:15:24 +0000 (09:15 +0200)]
frontend: Use channel shutdown to synchronize handler thread shutdown.

This allows the handler to fully control the shutdown procedure.
pthread_cancel did not play well with pthread_cond_*wait in multiple threads
and the respective locked mutex.

10 years agoutils channel: Added sdb_channel_shutdown().
Sebastian Harl [Mon, 21 Oct 2013 07:10:08 +0000 (09:10 +0200)]
utils channel: Added sdb_channel_shutdown().

This function initiates a shutdown of the channel, forbidding any subsequent
writes. However, readers are still able to empty the buffer. Then, EBADF will
be returned through errno. This allows for graceful shutdowns.

10 years agoutils channel: Normalize time before passing it to phtread_cond_timedwait.
Sebastian Harl [Mon, 21 Oct 2013 06:59:03 +0000 (08:59 +0200)]
utils channel: Normalize time before passing it to phtread_cond_timedwait.

10 years agoutils channel: Unlock mutex before returning on error.
Sebastian Harl [Sun, 20 Oct 2013 20:20:36 +0000 (22:20 +0200)]
utils channel: Unlock mutex before returning on error.

10 years agoutils channel: Update timeout in channel_select when needed.
Sebastian Harl [Sun, 20 Oct 2013 19:56:44 +0000 (21:56 +0200)]
utils channel: Update timeout in channel_select when needed.

10 years agoutils channel: Let channel_select() set errno.
Sebastian Harl [Sun, 20 Oct 2013 19:38:23 +0000 (21:38 +0200)]
utils channel: Let channel_select() set errno.

10 years agoutils channel: Changed abstime argument to a timeout.
Sebastian Harl [Sun, 20 Oct 2013 19:30:55 +0000 (21:30 +0200)]
utils channel: Changed abstime argument to a timeout.

10 years agofrontend/sock: Added loop control to the socket handler.
Sebastian Harl [Sun, 20 Oct 2013 14:54:12 +0000 (16:54 +0200)]
frontend/sock: Added loop control to the socket handler.

10 years agoAdded framework for frontend connection handling.
Sebastian Harl [Sun, 20 Oct 2013 14:30:45 +0000 (16:30 +0200)]
Added framework for frontend connection handling.

frontend/sock supports UNIX domain sockets for now. It doesn't do much expect
for managing listening sockets and accepting connections on them which are
then handled in the background. So far, each connection is closed right away.

10 years agot/utils/channel_test: Added a test-case for sdb_channel_select().
Sebastian Harl [Sun, 20 Oct 2013 13:37:03 +0000 (15:37 +0200)]
t/utils/channel_test: Added a test-case for sdb_channel_select().

10 years agoutils channel: Added sdb_channel_select().
Sebastian Harl [Sun, 20 Oct 2013 13:35:35 +0000 (15:35 +0200)]
utils channel: Added sdb_channel_select().

This function behaves similar to select(2) providing to passively block on a
channel operation until it becomes ready for reading and / or writing.
Optionally, a deadline may be specified.

10 years agoutils/channel: Use a mutex instead of a rwlock.
Sebastian Harl [Sat, 19 Oct 2013 09:58:11 +0000 (11:58 +0200)]
utils/channel: Use a mutex instead of a rwlock.

All access to the channel needs to be fully synchronized.

10 years agot/utils/channel_test: Added some more write/read tests.
Sebastian Harl [Sat, 19 Oct 2013 09:55:07 +0000 (11:55 +0200)]
t/utils/channel_test: Added some more write/read tests.

10 years agot/: Added tests for the channel implementation.
Sebastian Harl [Sat, 19 Oct 2013 08:52:48 +0000 (10:52 +0200)]
t/: Added tests for the channel implementation.

10 years agoutils/channel: Added an asynchronous I/O multiplexer.
Sebastian Harl [Sat, 19 Oct 2013 08:50:11 +0000 (10:50 +0200)]
utils/channel: Added an asynchronous I/O multiplexer.

A channel is a buffered pipe supporting multiple parallel readers and writers.

10 years agoconfigure: Don't fail if CHECK is not available.
Sebastian Harl [Tue, 15 Oct 2013 07:05:23 +0000 (09:05 +0200)]
configure: Don't fail if CHECK is not available.

10 years agostrbuf.h: Include unistd.h.
Sebastian Harl [Mon, 14 Oct 2013 21:15:54 +0000 (23:15 +0200)]
strbuf.h: Include unistd.h.

Required for ssize_t on GCC 4.4.

10 years agostore: Make sure not to store duplicate host entries.
Sebastian Harl [Wed, 2 Oct 2013 19:54:35 +0000 (21:54 +0200)]
store: Make sure not to store duplicate host entries.

10 years agodaemon: Treat parser errors different from daemon/libsysdb errors.
Sebastian Harl [Wed, 2 Oct 2013 19:39:13 +0000 (21:39 +0200)]
daemon: Treat parser errors different from daemon/libsysdb errors.

10 years agoplugin: Unregister all callbacks if module/plugin init failed.
Sebastian Harl [Wed, 2 Oct 2013 09:07:03 +0000 (11:07 +0200)]
plugin: Unregister all callbacks if module/plugin init failed.

10 years agoutils llist: Fixed a segfault in functions doing lookups.
Sebastian Harl [Wed, 2 Oct 2013 09:06:08 +0000 (11:06 +0200)]
utils llist: Fixed a segfault in functions doing lookups.

10 years agoutils llist: Made lookup's user-data a constant pointer.
Sebastian Harl [Wed, 2 Oct 2013 09:04:42 +0000 (11:04 +0200)]
utils llist: Made lookup's user-data a constant pointer.

10 years agoutils llist: Added sdb_llist_remove().
Sebastian Harl [Mon, 30 Sep 2013 16:24:33 +0000 (18:24 +0200)]
utils llist: Added sdb_llist_remove().

10 years agoutils llist: Updated documentation.
Sebastian Harl [Mon, 30 Sep 2013 16:19:36 +0000 (18:19 +0200)]
utils llist: Updated documentation.

10 years agoutils llist: Added lookup callback type to be used for llist_search.
Sebastian Harl [Mon, 30 Sep 2013 16:16:26 +0000 (18:16 +0200)]
utils llist: Added lookup callback type to be used for llist_search.

Lookups should be more flexible than comparing two objects.

10 years agoutils llist: Added sdb_llist_cmp_cb type.
Sebastian Harl [Wed, 25 Sep 2013 20:11:20 +0000 (22:11 +0200)]
utils llist: Added sdb_llist_cmp_cb type.

This is to make sure that comparators always use the same signature.

10 years agoplugin: Removed sdb_ prefix from private functions.
Sebastian Harl [Wed, 25 Sep 2013 19:49:42 +0000 (21:49 +0200)]
plugin: Removed sdb_ prefix from private functions.

10 years agoplugin: Store real plugin name and filename in the context.
Sebastian Harl [Wed, 25 Sep 2013 19:43:32 +0000 (21:43 +0200)]
plugin: Store real plugin name and filename in the context.

10 years agoplugin: Store plugin info attributes in the plugin context.
Sebastian Harl [Wed, 25 Sep 2013 09:02:01 +0000 (11:02 +0200)]
plugin: Store plugin info attributes in the plugin context.

10 years agoplugin: Manage all context information in the core.
Sebastian Harl [Wed, 25 Sep 2013 08:53:06 +0000 (10:53 +0200)]
plugin: Manage all context information in the core.

Store the new dynamic context in callbacks. The daemon may no longer set the
context before loading a plugin. Instead, sdb_plugin_load now accepts a second
parameter specifying the public context attributes.

10 years agoplugin: Made plugin context a dynamic object.
Sebastian Harl [Wed, 18 Sep 2013 08:40:36 +0000 (10:40 +0200)]
plugin: Made plugin context a dynamic object.

A custom type is used for that. The previous context type is used as a public
member of the new internal type. Thus, the external interface does not change.

10 years agoplugin: Dynamically allocate plugin info attributes.
Sebastian Harl [Wed, 18 Sep 2013 08:26:05 +0000 (10:26 +0200)]
plugin: Dynamically allocate plugin info attributes.

This will allow to keep the information around forever.

10 years agounit tests: Added basic tests for unixsock utils; mocking libc I/O functions.
Sebastian Harl [Mon, 16 Sep 2013 07:07:20 +0000 (09:07 +0200)]
unit tests: Added basic tests for unixsock utils; mocking libc I/O functions.

GNU libc's fopencookie is used to mock fdopen() and socket handling. This
allows to mock a UNIX socket.

10 years agoutils unixsock: Explicitely enable line-buffering.
Sebastian Harl [Mon, 16 Sep 2013 07:01:59 +0000 (09:01 +0200)]
utils unixsock: Explicitely enable line-buffering.

The module is based on that, so say it explicitely.

10 years agot/utils/strbuf_test: Added lists of golden data for various checks.
Sebastian Harl [Mon, 9 Sep 2013 17:22:07 +0000 (19:22 +0200)]
t/utils/strbuf_test: Added lists of golden data for various checks.

This makes it much easier to add more checks for particular functions.

10 years agosysdb.h.in: Reintroduced SDB_STATIC_ARRAY_LEN().
Sebastian Harl [Fri, 6 Sep 2013 06:53:38 +0000 (08:53 +0200)]
sysdb.h.in: Reintroduced SDB_STATIC_ARRAY_LEN().

Previously only added to the auto-generated sysdb.h :-/ D'oh!

10 years agot/: Added unit tests for the string buffer utilities.
Sebastian Harl [Fri, 6 Sep 2013 06:41:16 +0000 (08:41 +0200)]
t/: Added unit tests for the string buffer utilities.

10 years agoutils strbuf: Fixed a wrong assertion.
Sebastian Harl [Thu, 5 Sep 2013 16:27:10 +0000 (18:27 +0200)]
utils strbuf: Fixed a wrong assertion.

10 years agoutils strbuf: Allow the initial size to be zero.
Sebastian Harl [Wed, 4 Sep 2013 20:41:03 +0000 (22:41 +0200)]
utils strbuf: Allow the initial size to be zero.

10 years agot/utils/: Name test-cases after the tested function.
Sebastian Harl [Wed, 4 Sep 2013 08:59:49 +0000 (10:59 +0200)]
t/utils/: Name test-cases after the tested function.

This might make it possible to do coverage tests.

10 years agot/utils/dbi_test: Added test queries covering 2-5 columns.
Sebastian Harl [Wed, 4 Sep 2013 08:52:09 +0000 (10:52 +0200)]
t/utils/dbi_test: Added test queries covering 2-5 columns.

10 years agot/utils/dbi_test: Fixed further indexing.
Sebastian Harl [Wed, 4 Sep 2013 08:48:29 +0000 (10:48 +0200)]
t/utils/dbi_test: Fixed further indexing.

10 years agot/utils/dbi_test: Fixed indexing into the golden_data array.
Sebastian Harl [Tue, 3 Sep 2013 18:05:52 +0000 (20:05 +0200)]
t/utils/dbi_test: Fixed indexing into the golden_data array.

10 years agot/utils/dbi_test: Added missing cases in dbi_result_get_field_length_idx().
Sebastian Harl [Tue, 3 Sep 2013 09:05:38 +0000 (11:05 +0200)]
t/utils/dbi_test: Added missing cases in dbi_result_get_field_length_idx().

10 years agot/utils/dbi_test: Verify the received data.
Sebastian Harl [Tue, 3 Sep 2013 09:03:32 +0000 (11:03 +0200)]
t/utils/dbi_test: Verify the received data.

10 years agot/utils/dbi_test: Added mock queries covering various corner cases.
Sebastian Harl [Mon, 2 Sep 2013 16:28:22 +0000 (18:28 +0200)]
t/utils/dbi_test: Added mock queries covering various corner cases.

10 years agot/utils/dbi_test: Mock some actual query results; added simple query.
Sebastian Harl [Mon, 2 Sep 2013 16:24:02 +0000 (18:24 +0200)]
t/utils/dbi_test: Mock some actual query results; added simple query.

The unit-test now supports mocking arbitrary query results. For that,
appropriate mocks for the dbi_result_get*() functions have been added.

The test now executes a simple query returning one column of data.

10 years agot/libsysdb_test: Use a list of test-suite creators.
Sebastian Harl [Wed, 28 Aug 2013 19:16:47 +0000 (21:16 +0200)]
t/libsysdb_test: Use a list of test-suite creators.

… rather than adding a new block for each new test-suite.

10 years agot/utils/dbi_test: Added a simple test-case for query execution.
Sebastian Harl [Wed, 28 Aug 2013 19:09:35 +0000 (21:09 +0200)]
t/utils/dbi_test: Added a simple test-case for query execution.

Added simple mocks for query and result handling.

10 years agot/: Added initial version of unit tests for utils/dbi.
Sebastian Harl [Tue, 27 Aug 2013 16:08:32 +0000 (18:08 +0200)]
t/: Added initial version of unit tests for utils/dbi.

The test cases mocks out any (expected) calls to libdbi.

10 years agot/: Make the test-suite compile with strict compiler flags.
Sebastian Harl [Tue, 27 Aug 2013 06:04:45 +0000 (08:04 +0200)]
t/: Make the test-suite compile with strict compiler flags.

10 years agot/: Fixed header include order.
Sebastian Harl [Tue, 27 Aug 2013 05:53:21 +0000 (07:53 +0200)]
t/: Fixed header include order.

10 years agoMakefile, t/Makefile: Added 'test' alias for 'check'.
Sebastian Harl [Mon, 26 Aug 2013 06:54:01 +0000 (08:54 +0200)]
Makefile, t/Makefile: Added 'test' alias for 'check'.

10 years agot/utils/llist_test: Check sdb_llist_create() return value in setup().
Sebastian Harl [Mon, 26 Aug 2013 06:52:28 +0000 (08:52 +0200)]
t/utils/llist_test: Check sdb_llist_create() return value in setup().

10 years agot/utils/llist_test: Added tests for clone and destroy.
Sebastian Harl [Fri, 23 Aug 2013 19:03:25 +0000 (21:03 +0200)]
t/utils/llist_test: Added tests for clone and destroy.

10 years agoAdded unit testing framework based on ‘check’.
Sebastian Harl [Fri, 23 Aug 2013 18:44:10 +0000 (20:44 +0200)]
Added unit testing framework based on ‘check’.

For now, some basic tests for utils::list have been added.

10 years agoconfigure: Added cname::dns to summary output.
Sebastian Harl [Thu, 22 Aug 2013 19:13:44 +0000 (21:13 +0200)]
configure: Added cname::dns to summary output.

10 years agosysdbd.conf(5): Added a short description for each plugin.
Sebastian Harl [Wed, 21 Aug 2013 19:42:39 +0000 (21:42 +0200)]
sysdbd.conf(5): Added a short description for each plugin.

10 years agoobject: Removed support for cloning typed objects.
Sebastian Harl [Sat, 17 Aug 2013 20:21:51 +0000 (22:21 +0200)]
object: Removed support for cloning typed objects.

This is not used currently. Since it only introduces unneeded complexity (and
somewhat ugly code in some cases), it's better to remove it.

10 years agostore: Support NULL attribute values.
Sebastian Harl [Sat, 17 Aug 2013 20:09:10 +0000 (22:09 +0200)]
store: Support NULL attribute values.

10 years agostore: Handle cname translation centrally.
Sebastian Harl [Sat, 17 Aug 2013 20:05:41 +0000 (22:05 +0200)]
store: Handle cname translation centrally.

10 years agostore: Handle locking correctly when storing attributes.
Sebastian Harl [Sat, 17 Aug 2013 19:58:00 +0000 (21:58 +0200)]
store: Handle locking correctly when storing attributes.

We cannot release the lock before the attribute update is finished.

10 years agostore: Use generic store function also to store attributes.
Sebastian Harl [Sat, 17 Aug 2013 19:53:15 +0000 (21:53 +0200)]
store: Use generic store function also to store attributes.

Except for small special cases, this is exactly the same as storing other
store objects.

10 years agostore: Pass the right timestamp to newly created store objects.
Sebastian Harl [Sat, 17 Aug 2013 19:28:51 +0000 (21:28 +0200)]
store: Pass the right timestamp to newly created store objects.

Also, fixed object initialization.

10 years agostore: Use sdb_object_vcreate() when creating objects from super-class.
Sebastian Harl [Sat, 17 Aug 2013 19:20:41 +0000 (21:20 +0200)]
store: Use sdb_object_vcreate() when creating objects from super-class.

This allows to pass all required arguments to the init function.

10 years agoobject: Added sdb_object_vcreate().
Sebastian Harl [Sat, 17 Aug 2013 18:35:00 +0000 (20:35 +0200)]
object: Added sdb_object_vcreate().

This function expects an va_list argument rather than a "true" variadic list
of arguments.

10 years agostore: Use store super-class when storing objects.
Sebastian Harl [Sat, 17 Aug 2013 18:23:07 +0000 (20:23 +0200)]
store: Use store super-class when storing objects.

This makes the function even more flexible.

10 years agostore: Canonicalize hostname before storing a service.
Sebastian Harl [Sat, 17 Aug 2013 18:10:45 +0000 (20:10 +0200)]
store: Canonicalize hostname before storing a service.

Else, host to service mapping is not correct.

10 years agostore: Refactored host/service store code.
Sebastian Harl [Sat, 17 Aug 2013 18:07:13 +0000 (20:07 +0200)]
store: Refactored host/service store code.

Simplified the code based on the new internal data structures.

10 years agostore: Unified host and service objects into a hierarchical store object.
Sebastian Harl [Sat, 17 Aug 2013 17:22:23 +0000 (19:22 +0200)]
store: Unified host and service objects into a hierarchical store object.

This allows both hosts and services to support attributes. Also, hosts and
services may be children of other objects allowing to represent dependencies
or other hierarchical structures.

The external interface does not support hierarchical stores yet, though.

10 years agostore: Removed now duplicate code.
Sebastian Harl [Sat, 17 Aug 2013 16:55:16 +0000 (18:55 +0200)]
store: Removed now duplicate code.

When creating a new host object, the services/attributes list are always
initialized to an empty list object. No need to further check this anymore.
This was only required in earlier code when copying a user-provided host
object.

10 years agostore: Let store object-types be private types.
Sebastian Harl [Fri, 2 Aug 2013 00:11:14 +0000 (17:11 -0700)]
store: Let store object-types be private types.

The user should interact through the objects names or 'features' rather than
accessing any of the objects themselves.

10 years agostore: Let sdb_store_service() accept const arguments.
Sebastian Harl [Thu, 1 Aug 2013 23:59:19 +0000 (16:59 -0700)]
store: Let sdb_store_service() accept const arguments.

There's no need in letting the caller construct a service object. All passed
in strings are treated as constant values anyway.

10 years agostore: Let sdb_store_attribute() accept const arguments.
Sebastian Harl [Thu, 1 Aug 2013 23:47:39 +0000 (16:47 -0700)]
store: Let sdb_store_attribute() accept const arguments.

… rather than an attribute object. This eases memory management for the caller
and removes unnecessary string duplicates.

10 years agostore: Removed unused function sdb_store_get_service().
Sebastian Harl [Thu, 1 Aug 2013 23:36:15 +0000 (16:36 -0700)]
store: Removed unused function sdb_store_get_service().

This may be reintroduced if and when it's needed.

10 years agostore: Removed unsed function sdb_service_create().
Sebastian Harl [Thu, 1 Aug 2013 23:34:05 +0000 (16:34 -0700)]
store: Removed unsed function sdb_service_create().

There is no need to expose this data-type.

10 years agostore: Removed unused sdb_attribute_create().
Sebastian Harl [Wed, 24 Jul 2013 04:02:51 +0000 (21:02 -0700)]
store: Removed unused sdb_attribute_create().

10 years agostore: Renamed sdb_store_get_host() to sdb_store_has_host().
Sebastian Harl [Wed, 24 Jul 2013 01:45:40 +0000 (18:45 -0700)]
store: Renamed sdb_store_get_host() to sdb_store_has_host().

… and make the function return a boolean value. We don't currently need a
function to access the actual host object. So, don't expose it that way.

10 years agostore: Simplified sdb_store_host().
Sebastian Harl [Wed, 24 Jul 2013 01:42:04 +0000 (18:42 -0700)]
store: Simplified sdb_store_host().

Let the function accept constant arguments describing the hostname and last
update timestamp rather than a host object. This is more flexible for the
caller.

10 years agostore: Removed unused sdb_host_create() function.
Sebastian Harl [Wed, 24 Jul 2013 01:30:13 +0000 (18:30 -0700)]
store: Removed unused sdb_host_create() function.

10 years agostore: Renamed 'parent' attribute to 'super'.
Sebastian Harl [Mon, 22 Jul 2013 15:20:55 +0000 (08:20 -0700)]
store: Renamed 'parent' attribute to 'super'.

We might use 'parent' in different places in the future.

10 years agosysdbd.conf: Improved 'cname' documentation.
Sebastian Harl [Sat, 20 Jul 2013 00:40:53 +0000 (17:40 -0700)]
sysdbd.conf: Improved 'cname' documentation.

10 years agosysdbd.conf: Added and documented a sample LoadPlugin "cname::dns".
Sebastian Harl [Sat, 20 Jul 2013 00:37:40 +0000 (17:37 -0700)]
sysdbd.conf: Added and documented a sample LoadPlugin "cname::dns".

10 years agocname::dns: Added first version of a plugin to query DNS for cnames.
Sebastian Harl [Sat, 20 Jul 2013 00:11:44 +0000 (17:11 -0700)]
cname::dns: Added first version of a plugin to query DNS for cnames.

10 years agoplugin/store: Added support for "cname" plugins.
Sebastian Harl [Sat, 20 Jul 2013 00:08:27 +0000 (17:08 -0700)]
plugin/store: Added support for "cname" plugins.

This type of plugins may be used to canonicalize hostnames. Before storing a
new hosts, all registered cname callbacks will be used to translate the
specified hostname before actually storing it.

10 years agoplugin: Added formatting log functions.
Sebastian Harl [Sat, 20 Jul 2013 00:06:35 +0000 (17:06 -0700)]
plugin: Added formatting log functions.

10 years agoplugin: Removed another custom lookup-by-name function.
Sebastian Harl [Thu, 18 Jul 2013 01:56:44 +0000 (18:56 -0700)]
plugin: Removed another custom lookup-by-name function.

… and use sdb_llist_search_by_name() instead.

10 years agoLet objects be named.
Sebastian Harl [Thu, 18 Jul 2013 01:50:27 +0000 (18:50 -0700)]
Let objects be named.

This allows to move common code into helper functions. The objects module now
provides a function to compare two objects by name and linked-lists support to
lookup objects by name now.

This removes the need for various custom and somewhat ugly helper functions
and data-types.

10 years agosysdbd.conf(5): Added 'syslog' plugin.
Sebastian Harl [Wed, 10 Jul 2013 14:58:43 +0000 (16:58 +0200)]
sysdbd.conf(5): Added 'syslog' plugin.

10 years agoerror: Updated documentation; removed obsolete TODO note.
Sebastian Harl [Wed, 10 Jul 2013 14:56:22 +0000 (16:56 +0200)]
error: Updated documentation; removed obsolete TODO note.

10 years agosyslog plugin: Added plugin to log to syslog.
Sebastian Harl [Wed, 10 Jul 2013 14:55:16 +0000 (16:55 +0200)]
syslog plugin: Added plugin to log to syslog.