Code

sysdb.git
8 years agoparser/analyzer: Migrate type and iterator checks.
Sebastian Harl [Wed, 6 May 2015 21:33:52 +0000 (23:33 +0200)]
parser/analyzer: Migrate type and iterator checks.

8 years agoparser: Add support for analyzing conditional and arithmetic expressions.
Sebastian Harl [Tue, 5 May 2015 22:15:49 +0000 (00:15 +0200)]
parser: Add support for analyzing conditional and arithmetic expressions.

Let all parser functions call the respective analyzer. For now, this is only
used to propagate data-type information but it will later ensure a certain
amount of semantical correctness. Note that the new analyzers usually don't
have any context information, so they might accept expressions that are not
right for their later target use case. If that matters, the caller will have
to check again providing the right context.

8 years agoparser: Convert AST op types to data op types when necessary.
Sebastian Harl [Tue, 5 May 2015 22:15:09 +0000 (00:15 +0200)]
parser: Convert AST op types to data op types when necessary.

8 years agoparser: Determine the data-type of each node.
Sebastian Harl [Tue, 5 May 2015 21:52:41 +0000 (23:52 +0200)]
parser: Determine the data-type of each node.

For now, we only use this for arithmetic expressions. The field will be
populated by the analyzer.

8 years agoparser: Fixed setup of iterator nodes.
Sebastian Harl [Tue, 5 May 2015 21:36:14 +0000 (23:36 +0200)]
parser: Fixed setup of iterator nodes.

The iterator value was supposed to be an "incomplete operator" node, that is,
one of the operands should be NULL. This is actually the case now and this
also means we don't have to store the operator type separately.

8 years agoparser/ast: Add some helper defines.
Sebastian Harl [Tue, 5 May 2015 21:33:04 +0000 (23:33 +0200)]
parser/ast: Add some helper defines.

9 years agoMigrate top-level checks to the new parser/analyzer.
Sebastian Harl [Wed, 15 Apr 2015 09:38:26 +0000 (11:38 +0200)]
Migrate top-level checks to the new parser/analyzer.

Call the analyzer from sdb_parser_parse().

9 years agoparser_test: Make sure that TIMESERIES end times are greater than start times.
Sebastian Harl [Wed, 15 Apr 2015 09:29:55 +0000 (11:29 +0200)]
parser_test: Make sure that TIMESERIES end times are greater than start times.

9 years agoparser/grammar: Fix the hostname in a 'FETCH host' node.
Sebastian Harl [Wed, 15 Apr 2015 09:28:53 +0000 (11:28 +0200)]
parser/grammar: Fix the hostname in a 'FETCH host' node.

9 years agoMigrate parser from frontend/ to parser/ and to use the AST.
Sebastian Harl [Sun, 12 Apr 2015 13:12:45 +0000 (15:12 +0200)]
Migrate parser from frontend/ to parser/ and to use the AST.

The new parser now returns AST nodes instead of a "compiled" store lookup
operator. The old parser is still in place unmodified and currently still in
use.

9 years agoparser/ast: Introduce a data-structure representing a SysQL AST.
Sebastian Harl [Sun, 12 Apr 2015 12:45:49 +0000 (14:45 +0200)]
parser/ast: Introduce a data-structure representing a SysQL AST.

This will be used by the parser in the future.

9 years agofrontend/parser: Renamed SDB_PARSE_EXPR to SDB_PARSE_ARITH.
Sebastian Harl [Sat, 11 Apr 2015 16:04:27 +0000 (18:04 +0200)]
frontend/parser: Renamed SDB_PARSE_EXPR to SDB_PARSE_ARITH.

That's a bit more specific ;-)

9 years agobuild system: Fix VPATH (out-of-tree) builds.
Sebastian Harl [Sat, 11 Apr 2015 13:56:04 +0000 (15:56 +0200)]
build system: Fix VPATH (out-of-tree) builds.

9 years agot/cibuild: Ignore missing field initializer warnings for tests.
Sebastian Harl [Sun, 15 Mar 2015 15:18:23 +0000 (11:18 -0400)]
t/cibuild: Ignore missing field initializer warnings for tests.

Old versions of clang and gcc complain about { 0 } initializers even though
they are well defined by C99.

9 years agoquery language: Add support for attribute.value access.
Sebastian Harl [Sun, 15 Mar 2015 14:54:21 +0000 (10:54 -0400)]
query language: Add support for attribute.value access.

9 years agoanalyzer: Improve some error messages.
Sebastian Harl [Sun, 15 Mar 2015 14:45:53 +0000 (10:45 -0400)]
analyzer: Improve some error messages.

9 years agoanalyzer: attributes and backends are always iterable, even in filters.
Sebastian Harl [Sun, 15 Mar 2015 14:40:04 +0000 (10:40 -0400)]
analyzer: attributes and backends are always iterable, even in filters.

Before, this was not allowed because the execution context for a filter is not
know (generic) and this case was to handled separately.

9 years agostore: Added field type VALUE for attribute values.
Sebastian Harl [Sun, 15 Mar 2015 02:05:50 +0000 (22:05 -0400)]
store: Added field type VALUE for attribute values.

9 years agostore: Test get_field() more extensively and fix a small bug.
Sebastian Harl [Sun, 15 Mar 2015 01:46:41 +0000 (21:46 -0400)]
store: Test get_field() more extensively and fix a small bug.

Use a table-driven test now.

9 years agoAdd tests for expression iterators.
Sebastian Harl [Wed, 11 Mar 2015 19:03:46 +0000 (20:03 +0100)]
Add tests for expression iterators.

9 years agostore_expr: iterator: Support constant arrays without a stored object.
Sebastian Harl [Wed, 11 Mar 2015 19:02:07 +0000 (20:02 +0100)]
store_expr: iterator: Support constant arrays without a stored object.

9 years agostore_expr: Fix iter_has_next if the first elements are filtered.
Sebastian Harl [Wed, 11 Mar 2015 19:01:19 +0000 (20:01 +0100)]
store_expr: Fix iter_has_next if the first elements are filtered.

9 years agodata: Let sdb_data_array_get support DATETIME, BINARY, REGEX values.
Sebastian Harl [Wed, 11 Mar 2015 19:00:27 +0000 (20:00 +0100)]
data: Let sdb_data_array_get support DATETIME, BINARY, REGEX values.

9 years agodata: sdb_data_strcmp supports arrays because sdb_data_format supports it.
Sebastian Harl [Wed, 11 Mar 2015 18:59:13 +0000 (19:59 +0100)]
data: sdb_data_strcmp supports arrays because sdb_data_format supports it.

9 years agostore: Use iterable expressions for iterators.
Sebastian Harl [Sun, 8 Mar 2015 21:57:06 +0000 (22:57 +0100)]
store: Use iterable expressions for iterators.

Rather than having a separate iterator implementation in store_lookup.

9 years agostore: When advancing an iterator don't loop endlessly on filtered objects.
Sebastian Harl [Sun, 8 Mar 2015 21:56:09 +0000 (22:56 +0100)]
store: When advancing an iterator don't loop endlessly on filtered objects.

9 years agostore: Apply iterator expressions to the iterated objects.
Sebastian Harl [Sun, 8 Mar 2015 21:52:49 +0000 (22:52 +0100)]
store: Apply iterator expressions to the iterated objects.

9 years agostore: Advance expression iterators even if array access fails.
Sebastian Harl [Sun, 8 Mar 2015 21:47:51 +0000 (22:47 +0100)]
store: Advance expression iterators even if array access fails.

Else, we'd have an endless loop as the caller doesn't know about that.

9 years agostore: Fixed a memory leak in sdb_store_expr_iter_destroy().
Sebastian Harl [Sun, 8 Mar 2015 21:46:45 +0000 (22:46 +0100)]
store: Fixed a memory leak in sdb_store_expr_iter_destroy().

9 years agoLet iterator operators fill in the left operand of child operators.
Sebastian Harl [Sun, 8 Mar 2015 16:15:33 +0000 (17:15 +0100)]
Let iterator operators fill in the left operand of child operators.

This avoids the need for repeating the same operand in two places and better
reflects what's actually going on.

9 years agoLet the first operand of ANY/ALL iterators be an expression.
Sebastian Harl [Sun, 8 Mar 2015 10:56:33 +0000 (11:56 +0100)]
Let the first operand of ANY/ALL iterators be an expression.

For now, the same restrictions apply as before (iterate child objects or the
backends field). This is in preparation for more generic iterators.

9 years agoquery language: Change iterator syntax to ANY/ALL <iter>.<field> <op> <v>.
Sebastian Harl [Sat, 7 Mar 2015 13:14:56 +0000 (14:14 +0100)]
query language: Change iterator syntax to ANY/ALL <iter>.<field> <op> <v>.

That is, make it explicit that iterators access the object name and make it
easier to support other fields as well.

9 years agodata: Return the number of bytes that would have been returned.
Sebastian Harl [Sat, 7 Mar 2015 13:01:17 +0000 (14:01 +0100)]
data: Return the number of bytes that would have been returned.

That is, behave as documented, even if the buffer is NULL or otherwise too
small. Return size_t instead of an integer.

9 years agodata: Let strlen/format handle NULL values correctly.
Sebastian Harl [Sat, 7 Mar 2015 12:56:32 +0000 (13:56 +0100)]
data: Let strlen/format handle NULL values correctly.

9 years agostore: Add support for iterable expressions.
Sebastian Harl [Thu, 5 Mar 2015 20:25:40 +0000 (21:25 +0100)]
store: Add support for iterable expressions.

It can be used to iterate through either the list of child nodes or through
arbitrary arrays. An expression is iterable either if it stores / evaluates to
an array or if it's a typed expression evaluated in the context of an object
where the specified type represents child nodes.

9 years agoavltree: Add sdb_avltree_iter_peek_next().
Sebastian Harl [Thu, 5 Mar 2015 07:13:42 +0000 (08:13 +0100)]
avltree: Add sdb_avltree_iter_peek_next().

The function returns the next element without advancing the iterator.

9 years agoAllow the left operand of comparison operations to be NULL (initially).
Sebastian Harl [Wed, 4 Mar 2015 20:13:49 +0000 (21:13 +0100)]
Allow the left operand of comparison operations to be NULL (initially).

However, when evaluating the expression, the operand has to be set. We'll use
this as a placeholder for inserting values dynamically.

9 years agoanalyzer: Check that all iterators use ary operators.
Sebastian Harl [Wed, 4 Mar 2015 09:54:49 +0000 (10:54 +0100)]
analyzer: Check that all iterators use ary operators.

All iterators are based on a comparison <iter> <op> <expr> and the same
restrictions apply to all of them.

9 years agofrontend/grammar: Fixed format argument used in yyerrorf().
Sebastian Harl [Mon, 2 Mar 2015 06:41:55 +0000 (07:41 +0100)]
frontend/grammar: Fixed format argument used in yyerrorf().

9 years agot/integration: Split query.sh into multiple tests.
Sebastian Harl [Sun, 1 Mar 2015 18:34:14 +0000 (19:34 +0100)]
t/integration: Split query.sh into multiple tests.

9 years agointegration/query.sh: Check that empty commands work fine.
Sebastian Harl [Sun, 1 Mar 2015 18:16:23 +0000 (19:16 +0100)]
integration/query.sh: Check that empty commands work fine.

9 years agoparser_test: Test further error cases and error propagation in the analyzer.
Sebastian Harl [Sun, 1 Mar 2015 18:13:04 +0000 (19:13 +0100)]
parser_test: Test further error cases and error propagation in the analyzer.

9 years agofrontend/grammar: Check arithmetic expressions early.
Sebastian Harl [Sun, 1 Mar 2015 17:36:34 +0000 (18:36 +0100)]
frontend/grammar: Check arithmetic expressions early.

Constant expressions are evaluated early. Thus, creating an expression object
may fail if there's a semantics error. Catch this early and report a (generic)
error to avoid propagating a NULL value.

9 years agosysdbql(7): Document typed expressions.
Sebastian Harl [Sun, 1 Mar 2015 16:31:29 +0000 (17:31 +0100)]
sysdbql(7): Document typed expressions.

9 years agoAdd support for the 'NOT IN' operator.
Sebastian Harl [Sun, 1 Mar 2015 15:39:20 +0000 (16:39 +0100)]
Add support for the 'NOT IN' operator.

'a NOT IN b' is the same as 'NOT a IN b'.

9 years agoparser_test: Test various array expressions.
Sebastian Harl [Sun, 1 Mar 2015 15:24:35 +0000 (16:24 +0100)]
parser_test: Test various array expressions.

9 years agoanalyzer: The left operand of IN may be an array as well.
Sebastian Harl [Sun, 1 Mar 2015 15:22:09 +0000 (16:22 +0100)]
analyzer: The left operand of IN may be an array as well.

9 years agoanalyzer: Check the data-type of IN operands.
Sebastian Harl [Sun, 1 Mar 2015 15:19:29 +0000 (16:19 +0100)]
analyzer: Check the data-type of IN operands.

9 years agot/: Make it possibly to easily run unit and integration tests separately.
Sebastian Harl [Sun, 1 Mar 2015 14:41:17 +0000 (15:41 +0100)]
t/: Make it possibly to easily run unit and integration tests separately.

9 years agot/coverage.sh: Exclude auto-generated c files.
Sebastian Harl [Sun, 1 Mar 2015 14:38:56 +0000 (15:38 +0100)]
t/coverage.sh: Exclude auto-generated c files.

9 years agot/unit/: Create one test binary for each *_test.c file.
Sebastian Harl [Sat, 28 Feb 2015 17:45:39 +0000 (18:45 +0100)]
t/unit/: Create one test binary for each *_test.c file.

That'll allow to run more stuff in parallel or single tests more selectively.

9 years agocore/time_test: Converted to "loop" tests.
Sebastian Harl [Fri, 27 Feb 2015 23:11:30 +0000 (00:11 +0100)]
core/time_test: Converted to "loop" tests.

9 years agocore/store*_test.c: Converted most tests to "loop" tests.
Sebastian Harl [Fri, 27 Feb 2015 23:01:05 +0000 (00:01 +0100)]
core/store*_test.c: Converted most tests to "loop" tests.

9 years agofrontend/parser_test: Convert to "loop" tests.
Sebastian Harl [Fri, 27 Feb 2015 22:17:12 +0000 (23:17 +0100)]
frontend/parser_test: Convert to "loop" tests.

That'll make sure we'll see the errors of all test cases in one test run.

9 years agofrontend/query_test.c: Added unit tests for the FETCH commands.
Sebastian Harl [Fri, 27 Feb 2015 22:02:00 +0000 (23:02 +0100)]
frontend/query_test.c: Added unit tests for the FETCH commands.

9 years agoparser_test: Add testcases covering operand type checks.
Sebastian Harl [Fri, 27 Feb 2015 18:32:55 +0000 (19:32 +0100)]
parser_test: Add testcases covering operand type checks.

9 years agoanalyzer: Verify the type of arithmetic operands.
Sebastian Harl [Fri, 27 Feb 2015 18:22:35 +0000 (19:22 +0100)]
analyzer: Verify the type of arithmetic operands.

9 years agoanalyzer: Check types of comparison operands.
Sebastian Harl [Fri, 27 Feb 2015 18:15:47 +0000 (19:15 +0100)]
analyzer: Check types of comparison operands.

9 years agoMerged branch 'master' of git://github.com/sysdb/sysdb.git.
Sebastian Harl [Fri, 27 Feb 2015 17:34:02 +0000 (18:34 +0100)]
Merged branch 'master' of git://github.com/sysdb/sysdb.git.

9 years agofrontend: Fixed a memory leak in an error condition in FETCH.
Sebastian Harl [Fri, 27 Feb 2015 17:13:22 +0000 (18:13 +0100)]
frontend: Fixed a memory leak in an error condition in FETCH.

9 years agoconfigure: Make sure that PACKAGE_URL is defined.
Sebastian Harl [Fri, 27 Feb 2015 16:49:14 +0000 (17:49 +0100)]
configure: Make sure that PACKAGE_URL is defined.

autoconf < 2.64 don't support PACKAGE_URL.

Thanks to @faxm0dem for reporting the resulting build error on RHEL6 in #1

9 years agoMerged branch 'master' of git://git.tokkee.org/sysdb.
Sebastian Harl [Fri, 27 Feb 2015 16:39:51 +0000 (17:39 +0100)]
Merged branch 'master' of git://git.tokkee.org/sysdb.

9 years agoCheck the return value of write() to satisfy GCC's unused-result checks.
Sebastian Harl [Fri, 27 Feb 2015 16:31:29 +0000 (17:31 +0100)]
Check the return value of write() to satisfy GCC's unused-result checks.

9 years agot/valgrind.suppress: Suppress various issues in OpenSSL 1.0.0.
Sebastian Harl [Fri, 27 Feb 2015 16:20:52 +0000 (17:20 +0100)]
t/valgrind.suppress: Suppress various issues in OpenSSL 1.0.0.

9 years agointegration/query.sh: Test FETCH with FILTER.
Sebastian Harl [Wed, 25 Feb 2015 09:42:36 +0000 (10:42 +0100)]
integration/query.sh: Test FETCH with FILTER.

9 years agofrontend: Fixed hostname in error messages in FETCH.
Sebastian Harl [Wed, 25 Feb 2015 09:40:10 +0000 (10:40 +0100)]
frontend: Fixed hostname in error messages in FETCH.

9 years agofrontend: Fix a memory leak in an error condition in FETCH.
Sebastian Harl [Wed, 25 Feb 2015 09:39:34 +0000 (10:39 +0100)]
frontend: Fix a memory leak in an error condition in FETCH.

9 years agointegration/test_lib.sh: Store the CA serial in $TESTDIR.
Sebastian Harl [Wed, 25 Feb 2015 09:20:35 +0000 (10:20 +0100)]
integration/test_lib.sh: Store the CA serial in $TESTDIR.

9 years agofrontend: Provide more details in the logs when shutting down a connection.
Sebastian Harl [Sun, 22 Feb 2015 18:38:31 +0000 (19:38 +0100)]
frontend: Provide more details in the logs when shutting down a connection.

9 years agosysdb: Print the server version after (re)connecting.
Sebastian Harl [Sun, 22 Feb 2015 15:47:01 +0000 (16:47 +0100)]
sysdb: Print the server version after (re)connecting.

9 years agofrontend: Added the SERVER_VERSION command.
Sebastian Harl [Sun, 22 Feb 2015 15:46:30 +0000 (16:46 +0100)]
frontend: Added the SERVER_VERSION command.

This command sends back the server version.

9 years agoproto: Make sdb_proto_marshal_int32 a public function.
Sebastian Harl [Sun, 22 Feb 2015 15:27:09 +0000 (16:27 +0100)]
proto: Make sdb_proto_marshal_int32 a public function.

9 years agosysdbd-store-network(5): Documented the store::network plugin.
Sebastian Harl [Sat, 21 Feb 2015 16:07:14 +0000 (17:07 +0100)]
sysdbd-store-network(5): Documented the store::network plugin.

9 years agoversion-gen.sh: Added .git suffix to default version again.
Sebastian Harl [Sat, 21 Feb 2015 15:45:47 +0000 (16:45 +0100)]
version-gen.sh: Added .git suffix to default version again.

9 years agoRelease SysDB 0.7.0. sysdb-0.7.0
Sebastian Harl [Sat, 21 Feb 2015 14:03:11 +0000 (15:03 +0100)]
Release SysDB 0.7.0.

9 years agoReleaseNotes: Set 0.7.0 release date to 2015-02-21.
Sebastian Harl [Sat, 21 Feb 2015 14:02:26 +0000 (15:02 +0100)]
ReleaseNotes: Set 0.7.0 release date to 2015-02-21.

9 years agoReleaseNotes: Added draft for the 0.7.0 release.
Sebastian Harl [Thu, 19 Feb 2015 22:06:49 +0000 (23:06 +0100)]
ReleaseNotes: Added draft for the 0.7.0 release.

9 years agostore::network: Reconnect after losing the connection to the remote side.
Sebastian Harl [Wed, 18 Feb 2015 20:32:48 +0000 (21:32 +0100)]
store::network: Reconnect after losing the connection to the remote side.

9 years agostore::network: Added support for SSL configuration options.
Sebastian Harl [Wed, 18 Feb 2015 12:05:24 +0000 (13:05 +0100)]
store::network: Added support for SSL configuration options.

9 years agossl utils: During shutdown, destroy mutexes as the last step.
Sebastian Harl [Mon, 16 Feb 2015 08:04:18 +0000 (09:04 +0100)]
ssl utils: During shutdown, destroy mutexes as the last step.

Even ERR_free_strings() may call CRYPTO_lock.

9 years agostore::network: Use INFO level for an informational message.
Sebastian Harl [Mon, 16 Feb 2015 07:58:38 +0000 (08:58 +0100)]
store::network: Use INFO level for an informational message.

9 years agossl: Register OpenSSL thread-ID and locking callbacks.
Sebastian Harl [Tue, 10 Feb 2015 07:46:41 +0000 (08:46 +0100)]
ssl: Register OpenSSL thread-ID and locking callbacks.

This is required for multi-threaded applications. Else, they "will crash at
random".

9 years agoSSL utils: Added init() and shutdown() functions for global setup/shutdown.
Sebastian Harl [Mon, 9 Feb 2015 17:43:39 +0000 (18:43 +0100)]
SSL utils: Added init() and shutdown() functions for global setup/shutdown.

Use those functions in sysdb and sysdbd instead of calling the OpenSSL
functions directly.

9 years agovalgrind.suppress: Ignore a Memcheck:Cond error in libcrypto.
Sebastian Harl [Tue, 3 Feb 2015 13:26:20 +0000 (14:26 +0100)]
valgrind.suppress: Ignore a Memcheck:Cond error in libcrypto.

This happens with the libssl version on Travis.

9 years agot/integration/: Added simple SSL tests.
Sebastian Harl [Sun, 1 Feb 2015 19:31:14 +0000 (20:31 +0100)]
t/integration/: Added simple SSL tests.

9 years agoparser_test: Added various tests for STORE commands.
Sebastian Harl [Sun, 1 Feb 2015 18:18:51 +0000 (19:18 +0100)]
parser_test: Added various tests for STORE commands.

9 years agoREADME: Add libssl to prerequisites.
Sebastian Harl [Sun, 1 Feb 2015 17:48:04 +0000 (18:48 +0100)]
README: Add libssl to prerequisites.

9 years agosysdb(1), sysdbd(1): Document client authentication.
Sebastian Harl [Sun, 1 Feb 2015 17:44:54 +0000 (18:44 +0100)]
sysdb(1), sysdbd(1): Document client authentication.

9 years agosysdb(1), sysdbd(1): Document files used by the tools by default.
Sebastian Harl [Sun, 1 Feb 2015 16:50:37 +0000 (17:50 +0100)]
sysdb(1), sysdbd(1): Document files used by the tools by default.

9 years agosysdb(1): Document SSL related command line options.
Sebastian Harl [Sun, 1 Feb 2015 16:41:31 +0000 (17:41 +0100)]
sysdb(1): Document SSL related command line options.

9 years agosysdbd.conf(5): Document the Listen SSL options.
Sebastian Harl [Sun, 1 Feb 2015 16:17:59 +0000 (17:17 +0100)]
sysdbd.conf(5): Document the Listen SSL options.

9 years agofrontend, client: Properly support IPv6 when handling address strings.
Sebastian Harl [Sun, 1 Feb 2015 16:04:09 +0000 (17:04 +0100)]
frontend, client: Properly support IPv6 when handling address strings.

9 years agoclient: Prefix all log messages with "client:".
Sebastian Harl [Sun, 1 Feb 2015 11:00:12 +0000 (12:00 +0100)]
client: Prefix all log messages with "client:".

9 years agosysdb: Add -A option to specify a CA certificates file.
Sebastian Harl [Sun, 1 Feb 2015 10:55:55 +0000 (11:55 +0100)]
sysdb: Add -A option to specify a CA certificates file.

9 years agoUnload all plugins when shutting down sysdbd.
Sebastian Harl [Sun, 1 Feb 2015 10:31:23 +0000 (11:31 +0100)]
Unload all plugins when shutting down sysdbd.

This will destruct all registered user-data objects, thus properly shutting
down all internal plugin state (e.g. connections to other systems).

9 years agocollectd::unixsock: Fixed a memory leak happening when unloading the module.
Sebastian Harl [Sun, 1 Feb 2015 10:30:09 +0000 (11:30 +0100)]
collectd::unixsock: Fixed a memory leak happening when unloading the module.

9 years agoclient: Check the remote peer name.
Sebastian Harl [Sun, 1 Feb 2015 10:19:54 +0000 (11:19 +0100)]
client: Check the remote peer name.

9 years agosysdbd-syslog(5): Documented LogLevel configuration option.
Sebastian Harl [Sun, 1 Feb 2015 09:45:46 +0000 (10:45 +0100)]
sysdbd-syslog(5): Documented LogLevel configuration option.

9 years agoplugin: Fixed log message for newly registered config callbacks.
Sebastian Harl [Sun, 1 Feb 2015 09:39:55 +0000 (10:39 +0100)]
plugin: Fixed log message for newly registered config callbacks.

9 years agosyslog plugin: Make log-level configurable.
Sebastian Harl [Sun, 1 Feb 2015 09:38:38 +0000 (10:38 +0100)]
syslog plugin: Make log-level configurable.