This lead to a "module not found" error message instead of
the to-be-expected "module does not support new style" error message.
That invalid error message could be quite misleading and actually stop
people from addressing the real problem (aka "go nuts" ;))
The capability has been added for module to specify that they do not
like being unloaded.
related bug tracker: http://bugzilla.adiscon.com/show_bug.cgi?id=222
Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
The output interface has been changed, but we do not yet utilize the
new interface. Also, it looks like a regression was introduced. But before
hunting it down, I'd like to make a commit (what also easys the regresion
hunt).
Conflicts:
configure.ac
doc/manual.html
runtime/datetime.h
runtime/parser.c
runtime/rsyslog.h
tools/syslogd.c
v4-stable had a bug with RFC5424-formatted structured data, which showed
was detected by the enhanced automatted testbench of v4-beta.
This was a result of an internal processing error if maximum field
sizes had been specified in the property replacer.
Also did some testbench improvements, including omstdout.
... by moving code to stream.c. Thanks to the new design, new cases are
not really needed, resulting in cleaner code.
I also did a cleanup of header file usage as a side-activity.
The testbench has now a generic driver that can run a whole class
of test suites just by providing a config file and test cases. This
does not cover all testing needs, but a lot.
We have now added one test for the new array-passing output plugin
interface.
This is more efficient for some outputs. They new can receive fields not only
as a single string but rather in an array where each string is seperated.
worked on ways to provide a better test suite:
- added -T rsyslogd command line option, enables to specify a directory
where to chroot() into on startup. This is NOT a security feature but
introduced to support testing. Thus, -T does not make sure chroot()
is used in a secure way. (may be removed later)
- added omstdout module for testing purposes. Spits out all messages to
stdout - no config option, no other features
- modified $ModLoad statement so that for modules whom's name starts with
a dot, no path is prepended (this enables relative-pathes and should
not break any valid current config)