summaryrefslogtreecommitdiffstats
path: root/runtime/parser.c
Commit message (Collapse)AuthorAgeFilesLines
* bugfix: PRI was invalid on Solaris for message from local log socketCorey Smith2011-03-241-3/+3
| | | | Signed-off-by: root <root@localhost.localdomain>
* Merge branch 'v4-stable' into v5-stableRainer Gerhards2010-12-161-2/+0
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog runtime/parser.c runtime/queue.c runtime/wtp.c template.c threads.c tools/syslogd.c
| * some cleanup based on clang static analyzer resultsRainer Gerhards2010-12-161-2/+0
| |
* | fixing msg duplication & loss regression, causes slowdownRainer Gerhards2010-06-101-1/+1
| | | | | | | | | | | | | | | | messages could get lost or be duplicated due to non-proper sync of transactions. This is a notable slowdown again, but we know how to get back concurrency, it just takes "some" more programming. It is important now to come back to correct code, so that we can base further improvements on that.
* | Merge branch 'v5-stable' into masterRainer Gerhards2010-04-261-1/+1
|\ \ | | | | | | | | | | | | Conflicts: ChangeLog
| * | bugfix(minor): status variable was uninitializedRainer Gerhards2010-04-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | However, this would have caused harm only if NO parser modules at all were loaded, which would lead to a defunctional configuration at all. And, even more important, this is impossible as two parser modules are built-in and thus can not be "not loaded", so we always have a minimum of two.
| * | Merge branch 'v4-stable' into v5-stableRainer Gerhards2010-04-011-2/+7
| |\| | | | | | | | | | | | | | | | Conflicts: tools/syslogd.c
| | * temporary bugfix replaced by permanent one for...Rainer Gerhards2010-03-311-2/+7
| | | | | | | | | | | | | | | | | | ...message-induced off-by-one error (potential segfault) (see 4.6.2) The analysis has been completed and a better fix been crafted and integrated.
* | | Merge branch 'v4-devel' into masterRainer Gerhards2010-04-191-12/+17
|\ \ \ | | | | | | | | | | | | | | | | Conflicts: runtime/msg.h
| * | | changed imsolaris to use submitMsg() APIRainer Gerhards2010-04-191-12/+17
| | | | | | | | | | | | | | | | | | | | This includes a modification to the rsyslog engine so that messages without PRI inside the message can properly be handled.
* | | | Merge branch 'beta' into masterRainer Gerhards2010-04-091-2/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac plugins/imudp/imudp.c runtime/stream.h tests/Makefile.am tests/diag.sh tools/omfile.c
| * | | | Merge branch 'v4-stable-solaris' into betaRainer Gerhards2010-04-091-2/+7
| |\| | | | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Conflicts: runtime/Makefile.am runtime/rsyslog.c tests/nettester.c tools/syslogd.c
| | * | enhanced nettester tool so that it re-uses it's callers environmentRainer Gerhards2010-04-071-2/+7
| | |/ | | | | | | | | | | | | | | | this enables us to work with the "usual" environment tweaks (for debugging and other purposes), without the need for any special handling in nettester itself
* | | replaced data type "bool" by "sbool" because this created some portability ↵Rainer Gerhards2010-02-021-3/+3
| | | | | | | | | | | | issues
* | | added $Escape8BitCharactersOnReceive directiveRainer Gerhards2010-01-271-0/+14
| | | | | | | | | | | | Thanks to David Lang for suggesting this functionality.
* | | re-implemented $EscapeControlCharacterTab config directiveRainer Gerhards2009-11-271-1/+9
| | | | | | | | | | | | | | | Based on Jonathan Bond-Caron's patch for v4. This now also includes some automatted tests.
* | | moved DNS resolution code out of imudp and into the backend processingRainer Gerhards2009-11-171-1/+2
|/ / | | | | | | | | | | | | | | Most importantly, DNS resolution now never happens if the resolved name is not required. Note that this applies to imudp - for the other inputs, DNS resolution almost comes for free, so we do not do it there. However, the new method has been implemented in a generic way and as such may also be used by other modules in the future.
* | first complete implementation of loadable parser systemRainer Gerhards2009-11-041-2/+54
| | | | | | | | | | | | | | I have now done the necessary cleanup. Looks like everything is in place. Unfortunately, I do not yet have any actual parser that is not built-in, but I think we can postpone working on that when the first one appears. I don't expect troubles in that case, but you never know ;)
* | added $RulesetParser config directiveRainer Gerhards2009-11-041-3/+5
| | | | | | | | | | The implementation is now almost done and works, including doc. I now need to verify shutdown, guess there are some resource leaks left...
* | finalized parser module calling interfaceRainer Gerhards2009-11-041-26/+67
| | | | | | | | | | looks like we are almost done and need only to add the ruleset parser-specific config options.
* | moved rfc3164/5424 code to new parser modulesRainer Gerhards2009-11-041-407/+69
| | | | | | | | | | | | another milestone commit: the program works, the new interface is used, some more cleanup is needed and the per-ruleset config options are still missing. But we are getting closer...
* | one step closer to dynamically loadable parsersRainer Gerhards2009-11-031-6/+159
| | | | | | | | | | This is a milestone commit, which adds new code that breaks nothing, but also does not add any visible change. Just prep work...
* | more cleanup and working towards a parser module calling interfaceRainer Gerhards2009-11-031-14/+70
| | | | | | | | | | | | I cleaned up a lot of config variable access along the way. This version compiles and runs, but does not yet offer any enhanced functionality. pmrfc5424 is just a dummy that is not yet being used.
* | restructured parser part of rsyslogRainer Gerhards2009-11-031-0/+382
| | | | | | | | | | | | now cleaner and hopefully usuable as a basis for loadable parser modules. I also cleaned up/consolidated some of the internal message generation functionality in rsyslogd.
* | enhanced test environment (including testbench)Rainer Gerhards2009-10-221-2/+2
| | | | | | | | | | | | | | | | support for enhancing probability of memory addressing failure by using non-NULL default value for malloced memory (optional, only if requested by configure option). This helps to track down some otherwise undetected issues within the testbench and is expected to be very useful in the future.
* | bugfix in debug system and more instrumentation to find an issueRainer Gerhards2009-10-081-8/+8
|/ | | | | bugfix: debug string larger than 1K were improperly displayed. Max size is now 32K, and if a string is even longer it is meaningful truncated.
* Merge branch 'v4-stable' into v4-beta & BUGFIXRainer Gerhards2009-10-011-2/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * bugfix: invalid handling of zero-sized messagesRainer Gerhards2009-09-291-2/+4
| | | | | | | | could lead to mis-addressing and potential memory corruption/segfault
| * bugfix: random data could be appended to message, possibly causing segfaultsRainer Gerhards2009-09-241-3/+8
| |
* | bugfix: message sanitation had some issuesRainer Gerhards2009-08-261-4/+12
| | | | | | | | | | | | | | | | - control character DEL was not properly escaped - NUL and LF characters were not properly stripped if no control character replacement was to be done - NUL characters in the message body were silently dropped (this was a regeression introduced by some of the recent optimizations)
* | bugfix: potential segfault when zip-compressed syslog records were received ↵Rainer Gerhards2009-07-101-1/+0
| | | | | | | | (double free)
* | introduced a new way of handling the RcvFrom propertyRainer Gerhards2009-06-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | ... plus a fix for a long-time bug in obj-types.h. That lead to the object pointer only then to become NULL when the object was actually destructed, I discovered this issue during introduction of the pRcvFrom property in msg_t, but it potentially had other effects, too. I am not sure if some experienced instability resulted from this bug OR if its fix will cause harm to so-far "correctly" running code. The later may very well be. Thus I will change it only for the current branch and also the beta, but not in all old builds. Let's see how things evolve.
* | bugfix: msg_t mutex was sometimes initialized twiceRainer Gerhards2009-06-251-1/+0
| |
* | optimized hostname processingRainer Gerhards2009-06-231-3/+0
| |
* | cleaned up/optimized raw message handling in msg objectRainer Gerhards2009-06-181-53/+26
| |
* | further optimized message objectRainer Gerhards2009-06-171-5/+0
|/ | | | pri, facility and severity string generation simplified
* removed long-obsoleted property UxTradMsgRainer Gerhards2009-06-161-1/+1
| | | | | ... as well as some cleanup (some commented-out code is left to support UxTradMsg again is someone really complains ;)).
* done various optimizations to the stringbuf and its usersRainer Gerhards2009-06-161-1/+18
|
* some performance optimizationsRainer Gerhards2009-06-161-0/+17
| | | | | | - saved gettimeofday() calls in imtcp (and increased reception buffer) - somewhat optimized stringbuf.c - some other optimizations
* added capability to run multiple tcp listeners (on different ports)Rainer Gerhards2009-05-221-1/+1
| | | | | | | | | | | Well, actually this and a lot of related things. I improved the testbench so that the new capabilities are automatically tested and also did some general cleanup. The current multiple tcp listener solution will probably receive some further cleanup, too, but looks quite OK so far. I also reviewed the way tcpsrv et all work, in preparation of using this code for imdiag. I need to document the findings, especially as the code is rather complicated "thanks" to the combination of plain tcp and gssapi transport modes.
* added $PreserveFQDN config file directiveRainer Gerhards2008-12-081-1/+1
| | | | Enables to use FQDNs in sender names where the legacy default
* fixed some compiler warningsRainer Gerhards2008-12-051-0/+1
|
* some cleanup (forgotten...)Rainer Gerhards2008-12-031-4/+1
|
* bugfix: code did not compile without zlibRainer Gerhards2008-12-031-1/+5
|
* moved bParseHostname and bIsParsed to msgFlagsRainer Gerhards2008-10-091-2/+1
| | | | | | This enables us to use more efficient calling conventions and also helps us keep the on-disk structure of a msg object more consistent in future releases.
* reordered imudp processing.Rainer Gerhards2008-10-081-0/+314
Message parsing is now done as part of main message queue worker processing (was part of the input thread) This should also improve performance, as potentially more work is done in parallel.