summaryrefslogtreecommitdiffstats
path: root/tcps_sess.c
Commit message (Collapse)AuthorAgeFilesLines
* bugfix: zero-sized (empty) messages were processed by imtcpRainer Gerhards2010-07-281-2/+9
| | | | they are now dropped as they always should have been
* cleanup: removed no longer needed variableRainer Gerhards2010-03-221-3/+0
| | | | Most importantly, this keeps the thread debugger output clean.
* now put the new property-based methods to good useRainer Gerhards2009-07-011-0/+1
| | | | | | ... hopefully reducing the number of allocs/frees as well as overall memory usage in a busy system (plus that these shared properties hopefully remain in cache longer than its single-instance counterparts...)
* RcvFromIP now also a propertyRainer Gerhards2009-07-011-8/+11
| | | | | | This sets stage to enable use of the property-interface to speed up things (mildly), the next step to be done. I have also fixed one regression of yesterday's changes.
* introduced a new way of handling the RcvFrom propertyRainer Gerhards2009-06-301-5/+13
| | | | | | | | | | | ... 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.
* finished transition to using inputName propertyRainer Gerhards2009-06-301-1/+0
| | | | | ... plus some celanup and adding minor missing functionality (the rule debug info again tell the property name, not just number).
* introduced the idea of detached propertiesRainer Gerhards2009-06-291-2/+6
| | | | | | | | | | | | | some things inside the message can be used over a large number of messages and need to to be allocated and re-written every time. I now begin to implement this as a "prop_t" object, first use for the inputName. Some input modules are already converted, some others to go. Will do a little performance check on the new method before I go further. Also, this commit has some cleanup and a few bug fixes that prevented compiliation in debug mode (I overlooked this as I did not compile for debug, what I normally do, and the automatted test also does not do that)
* cleaned up/optimized raw message handling in msg objectRainer Gerhards2009-06-181-4/+2
|
* implemented first version of multi-enqueue support, queue sideRainer Gerhards2009-06-161-1/+1
|
* milestone: input-side multiSubmit capabilityRainer Gerhards2009-06-161-8/+26
| | | | ... commit before I try to touch the queue side ;)
* fixing problems that occurred during the last mergeRainer Gerhards2009-06-161-2/+0
|
* minor cleanupRainer Gerhards2009-06-161-2/+0
|
* Merge branch 'master' into omfileRainer Gerhards2009-06-161-30/+25
|\ | | | | | | | | | | | | | | | | Conflicts: ChangeLog runtime/msg.h tcps_sess.c tcpsrv.c tools/syslogd.c
| * some performance optimizationsRainer Gerhards2009-06-161-29/+25
| | | | | | | | | | | | - saved gettimeofday() calls in imtcp (and increased reception buffer) - somewhat optimized stringbuf.c - some other optimizations
* | fixed small bug in testbenchRainer Gerhards2009-06-121-2/+0
| |
* | fixed a regression from past commit & more performance enhancementRainer Gerhards2009-06-121-2/+3
| | | | | | | | a larger buffer is a cheap, yet useful, enhancement... ;)
* | performance-enhanced imtcpRainer Gerhards2009-06-121-2/+10
| | | | | | | | | | ...by now using lowres time and thus saving many time() calls. This needs some performance testing and must be made configurable if it works out.
* | completed multi-ruleset core supportRainer Gerhards2009-06-121-0/+1
|/ | | | ... as well as added multi-ruleset support for imtcp
* improved testbench / solved imdiag race conditionRainer Gerhards2009-05-251-11/+12
| | | | | | | | | imdiag/imtcp had a modload race condition (as imdiag is a testing aid, this has no implications for production deployments). Also, I replaced netcat by a custom program to talk to imdiag. This, for the first time ever, is now a Java program. I plan to add some GUI troubleshooting tools and thought it is a good idea to start doing things in Java that can simply be done in that language.
* added new testing module imdiagRainer Gerhards2009-05-251-6/+21
| | | | | which enables to talk to the rsyslog core at runtime. The current implementation is only a beginning, but can be expanded over time
* added capability to run multiple tcp listeners (on different ports)Rainer Gerhards2009-05-221-2/+15
| | | | | | | | | | | 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.
* Fix compiler warningsMichael Biebl2009-05-191-0/+1
| | | | | | include <string.h> for memcpy and strlen. Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
* performance enhancement: imtcp calls parser no longer on input threadRainer Gerhards2009-04-231-12/+54
| | | | | | but rather inside on of the potentially many main msg queue worker threads (an enhancement scheduled for all input plugins where this is possible)
* enhanced imtcp, among others to handel invalid NetScreen framingRainer Gerhards2008-12-101-5/+7
| | | | | | | | | | | | - added $InputTCPServerAddtlFrameDelimiter config directive, which enabeles to specify an additional, non-standard message delimiter for processing plain tcp syslog. This is primarily a fix for the invalid framing used in Juniper's NetScreen products. Credit to forum user Arv for suggesting this solution. - added $InputTCPServerInputName property, which enables a name to be specified that will be available during message processing in the inputname property. This is considered useful for logic that treats messages differently depending on which input received them.
* moved bParseHostname and bIsParsed to msgFlagsRainer Gerhards2008-10-091-5/+6
| | | | | | 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.
* "output" timestamp now taken from mesg's time generatedRainer Gerhards2008-10-071-4/+4
| | | | | | | This enhances performance and, as some have pointed out, is probably also more consistent with what users expect how the various output-timestamp related function should work. This commit needs some more testing.
* added $UDPServerTimeRequery optionRainer Gerhards2008-10-061-4/+4
| | | | | | | ...which enables to work with less acurate timestamps in favor of performance. This enables querying of the time only every n-th time if imudp is running in the tight receive loop (aka receiving messsages at a high rate)
* added properties "inputname" and "$myhostname"Rainer Gerhards2008-09-101-4/+8
| | | | | | | | - added message property "inputname", which contains the name of the input (module) that generated it. Presence is depending on suport in each input module (else it is blank). - added system property "$myhostname", which contains the name of the local host as it knows itself.
* removed compile time fixed message size limit (was 2K)Rainer Gerhards2008-09-021-15/+26
| | | | | The limit can now be set via $MaxMessageSize global config directive (finally gotten rid of MAXLINE ;))
* added (internal) error codes to error messagesRainer Gerhards2008-06-271-4/+4
| | | | | Also added redirector to web description of error codes closes bug http://bugzilla.adiscon.com/show_bug.cgi?id=20
* added fromhost-ip properties and some bugfixesRainer Gerhards2008-05-161-6/+31
| | | | | | | | | | - bugfix: TCP input modules did incorrectly set fromhost property (always blank) - bugfix: imklog did not set fromhost property - added "fromhost-ip" property - added "RSYSLOG_DebugFormat" canned template - bugfix: hostname and fromhost were swapped when a persisted message (in queued mode) was read in
* bugfix: TLS server went into an endless loop in some situations.Rainer Gerhards2008-05-151-13/+1
| | | | Thanks to Michael Biebl for reporting the problem.
* some cleanup (gotten rid of some more plain chars)Rainer Gerhards2008-05-061-2/+0
|
* fixed problem with module unload sequenceRainer Gerhards2008-04-291-3/+2
|
* fixed newly introduced memory leaksRainer Gerhards2008-04-241-3/+5
|
* message reception via TCP work againRainer Gerhards2008-04-241-5/+4
| | | | | | ... at least in some cases ;) I assume there are still a couple of bugs inside the code. But at least we have something from where we can continue to work on.
* client functionality works again (with the new socket abstraction)Rainer Gerhards2008-04-231-20/+12
|
* objects for receive-side socket abstraction specifiedRainer Gerhards2008-04-231-1/+1
| | | | | | | The objects for receiver-side socket abstraction have now be specified. The project as whole does not yet compile and definitely not run, but I'd like to commit some milestones along this way.
* some more cleanupRainer Gerhards2008-04-161-1/+1
| | | | | reduced dependencies, moved non-runtime files to its own directory except for some whom's status is unclear
* added flow control options to other input sourcesRainer Gerhards2008-03-191-4/+4
|
* oversize message handling in TCP/GSSAPI receiverRainer Gerhards2008-03-141-3/+15
|
* bugfix: TCP (and GSSAPI) octet-counted frame did not work correctly in allRainer Gerhards2008-03-141-111/+82
| | | | | situations. If the header was split across two packet reads, it was invalidly processed, causing loss or modification of messages.
* bugfix: imgssapi segfaulted under some conditions; this fix is actually notRainer Gerhards2008-03-131-2/+9
| | | | | | just a fix but a change in the object model. Thanks to varmojfekoj for providing the bug report, an initial fix and lots of good discussion that lead to where we finally ended up.
* implemented module unload handling (required a number of interface changes)Rainer Gerhards2008-03-111-0/+10
|
* some cleanupRainer Gerhards2008-03-071-6/+0
|
* added capability to ignore client-provided timestamp on unix sockets andRainer Gerhards2008-03-061-5/+4
| | | | | | | | | | | made this mode the default; this was needed, as some programs (e.g. sshd) log with inconsistent timezone information, what messes up the local logs (which by default don't even contain time zone information). This seems to be consistent with what sysklogd did for the past four years. Alternate behaviour may be desirable if gateway-like processes send messages via the local log slot - in this case, it can be enabled via the $InputUnixListenSocketIgnoreMsgTimestamp and $SystemLogSocketIgnoreMsgTimestamp config directives
* - extracted logerror*() family of functions from syslogd, made them theirRainer Gerhards2008-03-051-5/+6
| | | | | | own class and converted to new object calling conventions (interface-based) - converted gss-misc into a loadable library module
* - changed modules.c calling conventions to be interface-basedRainer Gerhards2008-03-051-0/+1
| | | | | | | | | | | - moved module loader from conf.c to module.c, where it belongs - made the necessary plumbing to auto-load library modules - upgraded debug system to include iRet in function exit message - changed module interface so that instances need only to be supported by output plugins (if we actually need them for input plugins, we can always add it again...) - milestone: first implementation of library modules (but do not get unloaded on exit/hup so far)
* fixed newly introduced bugs in imgssapi and imtcp and their helpers nowRainer Gerhards2008-03-031-0/+5
| | | | plain tcp works again
* made imgssapi compileRainer Gerhards2008-03-031-16/+33
|