Code

sysdb.git
10 years agosysdbd(1): Documented all signals handled by the daemon.
Sebastian Harl [Fri, 9 May 2014 14:25:25 +0000 (16:25 +0200)]
sysdbd(1): Documented all signals handled by the daemon.

10 years agosysdb(7): Added a manpage providing an overview of SysDB.
Sebastian Harl [Tue, 6 May 2014 08:45:03 +0000 (10:45 +0200)]
sysdb(7): Added a manpage providing an overview of SysDB.

10 years agosysdbql(7): Fixed a typo.
Sebastian Harl [Mon, 5 May 2014 15:46:12 +0000 (17:46 +0200)]
sysdbql(7): Fixed a typo.

10 years agosysdb(1): Added sysdbql(7) to "see also".
Sebastian Harl [Mon, 5 May 2014 15:37:23 +0000 (17:37 +0200)]
sysdb(1): Added sysdbql(7) to "see also".

10 years agosysdbql(7): Document the query language.
Sebastian Harl [Mon, 5 May 2014 15:35:20 +0000 (17:35 +0200)]
sysdbql(7): Document the query language.

10 years agodocumentation: Unified author information.
Sebastian Harl [Sun, 4 May 2014 16:13:03 +0000 (18:13 +0200)]
documentation: Unified author information.

10 years agosysdb(1): Be more verbose about the exit status when using the -c option.
Sebastian Harl [Sun, 4 May 2014 16:05:45 +0000 (18:05 +0200)]
sysdb(1): Be more verbose about the exit status when using the -c option.

10 years agocoverage.sh: Refresh build system (and meta information).
Sebastian Harl [Sat, 3 May 2014 21:31:35 +0000 (23:31 +0200)]
coverage.sh: Refresh build system (and meta information).

10 years agointegration/test_lib: Manage the sysdbd PID centrally.
Sebastian Harl [Fri, 2 May 2014 15:36:08 +0000 (17:36 +0200)]
integration/test_lib: Manage the sysdbd PID centrally.

This way, we actually get the right PID outside of the wrapper function and
test_lib can make sure the process is terminated on EXIT.

10 years agosysdb: Fixed incompatible pointer type warning reported by clang.
Sebastian Harl [Fri, 2 May 2014 15:27:40 +0000 (17:27 +0200)]
sysdb: Fixed incompatible pointer type warning reported by clang.

10 years agocibuild.sh: Don't run regular tests when using the address sanitizer.
Sebastian Harl [Fri, 2 May 2014 15:15:57 +0000 (17:15 +0200)]
cibuild.sh: Don't run regular tests when using the address sanitizer.

valgrind does not play well with the address sanitizer. Also, there's no need
to rerun the regular tests on asan generated code (which is a test on its
own).

10 years agointegration tests: Use LD_PRELOAD only when running SysDB tools.
Sebastian Harl [Fri, 2 May 2014 15:13:15 +0000 (17:13 +0200)]
integration tests: Use LD_PRELOAD only when running SysDB tools.

Just as a cleanup.

10 years agotools: Log library versions as well on startup.
Sebastian Harl [Thu, 1 May 2014 21:19:50 +0000 (23:19 +0200)]
tools: Log library versions as well on startup.

10 years agodoc/Makefile: Added all asciidoc files to EXTRA_DIST and clean up all doc.
Sebastian Harl [Thu, 1 May 2014 21:05:03 +0000 (23:05 +0200)]
doc/Makefile: Added all asciidoc files to EXTRA_DIST and clean up all doc.

10 years agointegration/test_lib: Pass -U mockuser to sysdb.
Sebastian Harl [Thu, 1 May 2014 20:55:39 +0000 (22:55 +0200)]
integration/test_lib: Pass -U mockuser to sysdb.

getpwuid_r on Travis leaks some memory which causes the valgrind tests to fail
:-/

10 years agointegration tests: Use LD_PRELOAD instead of chrpath.
Sebastian Harl [Thu, 1 May 2014 19:57:55 +0000 (21:57 +0200)]
integration tests: Use LD_PRELOAD instead of chrpath.

chrpath requires that the new path be shorter or the same length as the
previous path.

10 years agointegration/simple_query: More explicitly document expected exit codes.
Sebastian Harl [Thu, 1 May 2014 14:20:10 +0000 (16:20 +0200)]
integration/simple_query: More explicitly document expected exit codes.

10 years agointegration/simple_query: Added more types of simple queries.
Sebastian Harl [Thu, 1 May 2014 14:15:43 +0000 (16:15 +0200)]
integration/simple_query: Added more types of simple queries.

10 years agosysdb: When handling a reply, base further actions on the response code.
Sebastian Harl [Thu, 1 May 2014 14:02:59 +0000 (16:02 +0200)]
sysdb: When handling a reply, base further actions on the response code.

This will actually enable the command handler to see whether a log message or
a query response was received.

Also, this ensures that the command handler may correctly detect errors during
query execution and exit with a non-zero code accordingly. The simple_query
integration test was updated to reflect this new, corrected behavior. Thanks
to the test for actually catching this misbehavior! :-)

10 years agosysdb: When using -c, wait for the server's final response.
Sebastian Harl [Thu, 1 May 2014 13:56:23 +0000 (15:56 +0200)]
sysdb: When using -c, wait for the server's final response.

There might be some intermediate log messages, which should be printed but
then we need to wait for further replies.

10 years agointegration/simple_query.sh: Test a failing command.
Sebastian Harl [Wed, 30 Apr 2014 21:50:09 +0000 (23:50 +0200)]
integration/simple_query.sh: Test a failing command.

10 years agosysdb: When using -c, exit non-zero if any command failed.
Sebastian Harl [Wed, 30 Apr 2014 21:49:25 +0000 (23:49 +0200)]
sysdb: When using -c, exit non-zero if any command failed.

10 years agointegration/simple_query.sh: Added some more simple queries.
Sebastian Harl [Wed, 30 Apr 2014 21:47:15 +0000 (23:47 +0200)]
integration/simple_query.sh: Added some more simple queries.

10 years agobuild system: Disable integration tests if valgrind or chrpath are missing.
Sebastian Harl [Wed, 30 Apr 2014 21:16:12 +0000 (23:16 +0200)]
build system: Disable integration tests if valgrind or chrpath are missing.

10 years agoREADME: Updated documentation about (integration) tests.
Sebastian Harl [Wed, 30 Apr 2014 21:01:38 +0000 (23:01 +0200)]
README: Updated documentation about (integration) tests.

10 years agoMerged branch 'master' of git://git.tokkee.org/sysdb.
Sebastian Harl [Wed, 30 Apr 2014 20:58:52 +0000 (22:58 +0200)]
Merged branch 'master' of git://git.tokkee.org/sysdb.

10 years agointegration/test_lib.sh: Copy binaries from $TOP_SRCDIR.
Sebastian Harl [Wed, 30 Apr 2014 20:58:29 +0000 (22:58 +0200)]
integration/test_lib.sh: Copy binaries from $TOP_SRCDIR.

D'oh!

10 years agointegration tests: Run all invocations through valgrind's memcheck.
Sebastian Harl [Wed, 30 Apr 2014 09:43:24 +0000 (11:43 +0200)]
integration tests: Run all invocations through valgrind's memcheck.

… covering, both, sysdb and sysdbd. For that to work, copy the binaries and
libraries to the temp directory and change the rpath to point to the temp
directory. This ensures the test is independent of any configure flags and
installation directories.

Let the tests fail if a leak (or other error) was detected by valgrind.

10 years agosimple_query.sh: Store output in a variable before analyzing it.
Sebastian Harl [Wed, 30 Apr 2014 09:39:52 +0000 (11:39 +0200)]
simple_query.sh: Store output in a variable before analyzing it.

This ensures that we actually get and check the right exit code.

10 years agointegration tests: Kill the right process when shutting down sysdbd.
Sebastian Harl [Wed, 30 Apr 2014 09:38:06 +0000 (11:38 +0200)]
integration tests: Kill the right process when shutting down sysdbd.

Also, wait for it to terminate.

10 years agodoc: Added documentation for all existing plugins.
Sebastian Harl [Tue, 29 Apr 2014 22:29:21 +0000 (00:29 +0200)]
doc: Added documentation for all existing plugins.

Added one manpage for each plugin.

10 years agodoc: (Re)generate and install the default asciidoc CSS stylesheet.
Sebastian Harl [Tue, 29 Apr 2014 21:27:14 +0000 (23:27 +0200)]
doc: (Re)generate and install the default asciidoc CSS stylesheet.

10 years ago.gitignore: Ignore asciidoc generated HTML output.
Sebastian Harl [Tue, 29 Apr 2014 21:14:18 +0000 (23:14 +0200)]
.gitignore: Ignore asciidoc generated HTML output.

10 years agodoc: Build and install HTML documentation as well.
Sebastian Harl [Tue, 29 Apr 2014 21:12:50 +0000 (23:12 +0200)]
doc: Build and install HTML documentation as well.

For now, build HTML variants of the manpages but without any index file or
similar.

10 years agosysdbd.conf(5): Documented the LoadPlugin and PluginDir options.
Sebastian Harl [Tue, 29 Apr 2014 20:36:39 +0000 (22:36 +0200)]
sysdbd.conf(5): Documented the LoadPlugin and PluginDir options.

10 years agosysdbd: Don't leak memory when aborting from the main loop.
Sebastian Harl [Tue, 29 Apr 2014 17:48:19 +0000 (19:48 +0200)]
sysdbd: Don't leak memory when aborting from the main loop.

10 years agoclient: Fixed a memory leak in case connection setup fails.
Sebastian Harl [Tue, 29 Apr 2014 17:47:18 +0000 (19:47 +0200)]
client: Fixed a memory leak in case connection setup fails.

10 years agot/integration/: Added variables for sysdbd/sysdb/sysdb.conf.
Sebastian Harl [Mon, 28 Apr 2014 07:52:35 +0000 (09:52 +0200)]
t/integration/: Added variables for sysdbd/sysdb/sysdb.conf.

10 years agot/coverage.sh: Don't use --disable-shared.
Sebastian Harl [Mon, 28 Apr 2014 06:14:47 +0000 (08:14 +0200)]
t/coverage.sh: Don't use --disable-shared.

Else, mock_plugin.so won't be available during 'make test'.

10 years agot/Makefile: Added integration test script to EXTRA_DIST.
Sebastian Harl [Mon, 28 Apr 2014 06:06:57 +0000 (08:06 +0200)]
t/Makefile: Added integration test script to EXTRA_DIST.

10 years agot/integration/simple_query: Added test doing a simple query.
Sebastian Harl [Mon, 28 Apr 2014 06:00:30 +0000 (08:00 +0200)]
t/integration/simple_query: Added test doing a simple query.

10 years agot/integration/mock_plugin: Added plugin for integration tests.
Sebastian Harl [Mon, 28 Apr 2014 05:59:13 +0000 (07:59 +0200)]
t/integration/mock_plugin: Added plugin for integration tests.

10 years agot/integration: Added simple framework for integration tests.
Sebastian Harl [Mon, 28 Apr 2014 05:57:46 +0000 (07:57 +0200)]
t/integration: Added simple framework for integration tests.

Added a test using very simple configuration snippets.

10 years agosysdbd: Return with status=1 in case of an initialization or config error.
Sebastian Harl [Sun, 27 Apr 2014 15:16:19 +0000 (17:16 +0200)]
sysdbd: Return with status=1 in case of an initialization or config error.

10 years agofrontend: Make UNIX sockets the default listener implementation.
Sebastian Harl [Sun, 27 Apr 2014 14:53:50 +0000 (16:53 +0200)]
frontend: Make UNIX sockets the default listener implementation.

10 years agosysdbd: Improved startup logging.
Sebastian Harl [Sun, 27 Apr 2014 14:44:24 +0000 (16:44 +0200)]
sysdbd: Improved startup logging.

Don't log success until all initialization is actually done. Also, don't
enable the connection logger until before entering the frontend main loop.

10 years agosysdbd.conf: Added 'PluginDir' config option.
Sebastian Harl [Sun, 27 Apr 2014 14:30:43 +0000 (16:30 +0200)]
sysdbd.conf: Added 'PluginDir' config option.

10 years agocore: Make the plugin directory configurable.
Sebastian Harl [Sun, 27 Apr 2014 10:44:53 +0000 (12:44 +0200)]
core: Make the plugin directory configurable.

10 years agodbi utils: Added compat layer for DBI < 0.9.
Sebastian Harl [Sat, 26 Apr 2014 22:24:13 +0000 (00:24 +0200)]
dbi utils: Added compat layer for DBI < 0.9.

10 years ago.gitignore: Ignore test-suite.log.
Sebastian Harl [Sat, 26 Apr 2014 21:17:50 +0000 (23:17 +0200)]
.gitignore: Ignore test-suite.log.

10 years agodbi utils: Use the new _r interface.
Sebastian Harl [Sat, 26 Apr 2014 21:14:11 +0000 (23:14 +0200)]
dbi utils: Use the new _r interface.

10 years agoMoved unit tests into t/unit/ subdirectory.
Sebastian Harl [Sat, 26 Apr 2014 20:42:47 +0000 (22:42 +0200)]
Moved unit tests into t/unit/ subdirectory.

10 years agoMerged branch 'master' of git://git.tokkee.org/sysdb.
Sebastian Harl [Fri, 25 Apr 2014 22:51:05 +0000 (00:51 +0200)]
Merged branch 'master' of git://git.tokkee.org/sysdb.

10 years agofrontend: Added destructors for dynamically allocated objects in the parser.
Sebastian Harl [Fri, 25 Apr 2014 22:14:37 +0000 (00:14 +0200)]
frontend: Added destructors for dynamically allocated objects in the parser.

This will make sure that the memory is freed in case of parse errors.

10 years agofrontend: Fixed deprecated %name-prefix syntax.
Sebastian Harl [Fri, 25 Apr 2014 22:05:28 +0000 (00:05 +0200)]
frontend: Fixed deprecated %name-prefix syntax.

10 years agofrontend: FETCH, LIST, LOOKUP are untyped tokens.
Sebastian Harl [Fri, 25 Apr 2014 22:04:33 +0000 (00:04 +0200)]
frontend: FETCH, LIST, LOOKUP are untyped tokens.

10 years agocore: Don't leak memory upon an error in the collector loop.
Sebastian Harl [Fri, 25 Apr 2014 14:11:11 +0000 (16:11 +0200)]
core: Don't leak memory upon an error in the collector loop.

10 years agocore: Don't leak memory when shutting down the collector loop.
Sebastian Harl [Fri, 25 Apr 2014 14:09:15 +0000 (16:09 +0200)]
core: Don't leak memory when shutting down the collector loop.

Instead, put the current collector object back into the list in oder to keep a
reference to it.

10 years agoconnection_test: Added a simple test for sdb_connection_accept().
Sebastian Harl [Fri, 25 Apr 2014 07:07:35 +0000 (09:07 +0200)]
connection_test: Added a simple test for sdb_connection_accept().

10 years agoconnection_test: Added first test for frontend connection handling.
Sebastian Harl [Thu, 24 Apr 2014 07:36:58 +0000 (09:36 +0200)]
connection_test: Added first test for frontend connection handling.

For now, testing a simple session startup.

10 years agofrontend: Reset the current command length on CONNECTION_IDLE.
Sebastian Harl [Thu, 24 Apr 2014 07:31:59 +0000 (09:31 +0200)]
frontend: Reset the current command length on CONNECTION_IDLE.

10 years agofrontend: Clear the error buffer when initializing a new command.
Sebastian Harl [Thu, 24 Apr 2014 07:20:19 +0000 (09:20 +0200)]
frontend: Clear the error buffer when initializing a new command.

10 years agoutils strbuf: Don't copy more than needed in sdb_strbuf_skip().
Sebastian Harl [Wed, 23 Apr 2014 21:39:58 +0000 (23:39 +0200)]
utils strbuf: Don't copy more than needed in sdb_strbuf_skip().

10 years agostrbuf_test: Added some more test-cases for sdb_strbuf_skip().
Sebastian Harl [Wed, 23 Apr 2014 21:39:41 +0000 (23:39 +0200)]
strbuf_test: Added some more test-cases for sdb_strbuf_skip().

10 years agofrontend: Always store errors in the error buffer.
Sebastian Harl [Wed, 23 Apr 2014 21:09:28 +0000 (23:09 +0200)]
frontend: Always store errors in the error buffer.

This allows to access the error from other parts of the code.

10 years agofrontend: Always reset the current command after handling it.
Sebastian Harl [Wed, 23 Apr 2014 21:08:19 +0000 (23:08 +0200)]
frontend: Always reset the current command after handling it.

That is, also reset it after an authentication error.

10 years agofrontend: Clear current command on authentication error.
Sebastian Harl [Wed, 23 Apr 2014 20:24:00 +0000 (22:24 +0200)]
frontend: Clear current command on authentication error.

10 years agostore_lookup_test: Dereference objects returned from the store.
Sebastian Harl [Wed, 23 Apr 2014 08:23:59 +0000 (10:23 +0200)]
store_lookup_test: Dereference objects returned from the store.

10 years agoparser: Don't leak memory when building nested matchers.
Sebastian Harl [Wed, 23 Apr 2014 08:22:59 +0000 (10:22 +0200)]
parser: Don't leak memory when building nested matchers.

10 years agobackends: Destroy dbi/unixsock clients on shutdown.
Sebastian Harl [Tue, 22 Apr 2014 22:13:50 +0000 (00:13 +0200)]
backends: Destroy dbi/unixsock clients on shutdown.

This would also be cleaned up when destroying the registered user data objects
but doing so on shutdown in much cleaner.

10 years agostore: Free old attribute values before storing an updated value.
Sebastian Harl [Tue, 22 Apr 2014 20:06:47 +0000 (22:06 +0200)]
store: Free old attribute values before storing an updated value.

10 years agocollectd::unixsock plugin: Free temporarily allocated memory.
Sebastian Harl [Tue, 22 Apr 2014 20:05:42 +0000 (22:05 +0200)]
collectd::unixsock plugin: Free temporarily allocated memory.

10 years agofrontend: Free strdup()'ed username when destroying a connection.
Sebastian Harl [Tue, 22 Apr 2014 18:27:44 +0000 (20:27 +0200)]
frontend: Free strdup()'ed username when destroying a connection.

10 years agosysdbd: Free up the config item returned from the parser as well.
Sebastian Harl [Tue, 22 Apr 2014 18:24:10 +0000 (20:24 +0200)]
sysdbd: Free up the config item returned from the parser as well.

oconfig_free() does not do that because it does not correctly keep track of
what the top-level config item is and it cannot free items which are the child
of another.

10 years agosysdbd: Shut down all plugins before exiting.
Sebastian Harl [Tue, 22 Apr 2014 17:49:27 +0000 (19:49 +0200)]
sysdbd: Shut down all plugins before exiting.

10 years agoplugin: Added sdb_plugin_shutdown_all().
Sebastian Harl [Tue, 22 Apr 2014 17:49:02 +0000 (19:49 +0200)]
plugin: Added sdb_plugin_shutdown_all().

This function calls all registered "shutdown" callbacks.

10 years agoMake clang-analyze happy in two irrelevant cases.
Sebastian Harl [Tue, 22 Apr 2014 07:08:06 +0000 (09:08 +0200)]
Make clang-analyze happy in two irrelevant cases.

10 years agosysdbd: Keep connections open during reconfiguration.
Sebastian Harl [Mon, 21 Apr 2014 18:23:15 +0000 (20:23 +0200)]
sysdbd: Keep connections open during reconfiguration.

By using the new sdb_fe_sock_clear_listeners(), the list of active listeners
may be reconfigured without affecting any open connections.

10 years agofrontend: Added sdb_fe_sock_clear_listeners().
Sebastian Harl [Mon, 21 Apr 2014 18:22:22 +0000 (20:22 +0200)]
frontend: Added sdb_fe_sock_clear_listeners().

This function may be used to shut down and clear all listeners associated with
a socket object without affecting any open connections.

10 years agosysdbd: Free the config parse tree after finishing config work.
Sebastian Harl [Mon, 21 Apr 2014 17:56:02 +0000 (19:56 +0200)]
sysdbd: Free the config parse tree after finishing config work.

10 years agosysdbd: Reconfigure the daemon on SIGHUP.
Sebastian Harl [Mon, 21 Apr 2014 17:46:23 +0000 (19:46 +0200)]
sysdbd: Reconfigure the daemon on SIGHUP.

The current approach shuts down the backend collector thread and the frontend.
Then, the config file is parsed again and libsysdb's reconfiguration mechanism
is used to reconfigure all plugins.

10 years agosysdbd: Added daemon_free_listen_addresses().
Sebastian Harl [Mon, 21 Apr 2014 17:38:38 +0000 (19:38 +0200)]
sysdbd: Added daemon_free_listen_addresses().

This is a helper function for handling config settings.

10 years agoMake all plugins ready for reconfiguration support.
Sebastian Harl [Mon, 21 Apr 2014 17:36:38 +0000 (19:36 +0200)]
Make all plugins ready for reconfiguration support.

That is, handle NULL arguments passed to the config and module init functions
during reconfiguration.

10 years agoplugin: Added support for reconfiguring the system on the fly.
Sebastian Harl [Mon, 21 Apr 2014 17:30:31 +0000 (19:30 +0200)]
plugin: Added support for reconfiguring the system on the fly.

Reconfiguring all plugins happens in multiple steps:

First, call sdb_plugin_reconfigure_init() to deconfigure all plugins by
calling their config callbacks with a NULL config tree and unregistering all
registered callbacks.

Then, sdb_plugin_configure() and other functions may be used to provide the
new configuration or load new plugins. For all plugins which were already
loaded before, sdb_module_init() will be called with a NULL argument when
reloading them.

Finally, sdb_plugin_reconfigure_finish() will clean up leftover pieces, like
unloading plugins which are no longer in use.

10 years agoutils llist: Added sdb_llist_clear().
Sebastian Harl [Mon, 21 Apr 2014 16:52:48 +0000 (18:52 +0200)]
utils llist: Added sdb_llist_clear().

This function clears the list by removing all elements and releasing the
included objects. It's similar to destroy() but does not actually release the
list object itself.

10 years agoutils llist: Removed sdb_ prefix from private functions.
Sebastian Harl [Mon, 21 Apr 2014 16:35:08 +0000 (18:35 +0200)]
utils llist: Removed sdb_ prefix from private functions.

For consistency!

10 years agoplugin: Do not expect all callbacks to have a plugin context assigned.
Sebastian Harl [Mon, 21 Apr 2014 16:18:56 +0000 (18:18 +0200)]
plugin: Do not expect all callbacks to have a plugin context assigned.

For callbacks not registered from a plugin, we don't have a context. For
example, the frontend's connection logger callback does not have a context.

10 years agoplugin: Unset the plugin context before unregistering a plugin.
Sebastian Harl [Sun, 20 Apr 2014 18:20:07 +0000 (20:20 +0200)]
plugin: Unset the plugin context before unregistering a plugin.

Else, the context is still considered to be in use and, thus, won't be removed
from the global plugin (context) list.

10 years agoplugin: Log to stderr if no logger has been registered.
Sebastian Harl [Sun, 20 Apr 2014 12:10:03 +0000 (14:10 +0200)]
plugin: Log to stderr if no logger has been registered.

Check the length of the list rather than replying on it being uninitialized.

10 years agoplugin: Let ctx_create() use ctx_set().
Sebastian Harl [Sun, 20 Apr 2014 10:05:57 +0000 (12:05 +0200)]
plugin: Let ctx_create() use ctx_set().

This ensures consistent handling of reference counts.

10 years agoplugin: Split sdb_plugin_load() into multiple functions.
Sebastian Harl [Sat, 19 Apr 2014 09:33:47 +0000 (11:33 +0200)]
plugin: Split sdb_plugin_load() into multiple functions.

… to make it easier to reuse parts of the function.

10 years agoplugin: Fixed detection of plugins loaded twice.
Sebastian Harl [Sat, 19 Apr 2014 09:22:17 +0000 (11:22 +0200)]
plugin: Fixed detection of plugins loaded twice.

This was missing in commit fdfe2a68ba1838cdb1c34d3275d129fb217fbd9d.

10 years agoplugin: Keep a global reference of a plugin context if it's still in use.
Sebastian Harl [Fri, 18 Apr 2014 12:59:09 +0000 (14:59 +0200)]
plugin: Keep a global reference of a plugin context if it's still in use.

D'oh!

10 years agoplugin: Increment ref-count for a context stored in the TSD.
Sebastian Harl [Fri, 18 Apr 2014 12:50:11 +0000 (14:50 +0200)]
plugin: Increment ref-count for a context stored in the TSD.

… and release it when removing it from the TSD. While this shouldn't matter
when everything is done right, this ensures that memory management is done
right.

10 years agoplugin: Only log a message when actually unloading a module.
Sebastian Harl [Fri, 18 Apr 2014 12:42:08 +0000 (14:42 +0200)]
plugin: Only log a message when actually unloading a module.

10 years agoplugin: Unload (dlclose) a plugin when it's no longer used.
Sebastian Harl [Fri, 18 Apr 2014 12:35:35 +0000 (14:35 +0200)]
plugin: Unload (dlclose) a plugin when it's no longer used.

Do so, if the init callback failed.

10 years agoplugin: Name the plugin context after the actual module name.
Sebastian Harl [Fri, 18 Apr 2014 12:31:24 +0000 (14:31 +0200)]
plugin: Name the plugin context after the actual module name.

That is, the name as specified by the user without '::' replaced by '/'.
The latter is only used for loading the shared object by file-name.

10 years agosysdbd: Fixed a config parser error message.
Sebastian Harl [Fri, 18 Apr 2014 12:27:52 +0000 (14:27 +0200)]
sysdbd: Fixed a config parser error message.

10 years agoplugin: Keep a usage counter for each plugin.
Sebastian Harl [Fri, 18 Apr 2014 11:57:00 +0000 (13:57 +0200)]
plugin: Keep a usage counter for each plugin.

Also, let plugin_load return early if the plugin is already loaded.
This is mostly in preparation for future improvements around plugin handling.

10 years agosysdbd: Moved main loop handling into a separate function.
Sebastian Harl [Thu, 17 Apr 2014 06:51:09 +0000 (08:51 +0200)]
sysdbd: Moved main loop handling into a separate function.

This will allow for easier restart of the main loop.