summaryrefslogtreecommitdiffstats
path: root/tools/omfile.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'v4-stable' into v5-stableRainer Gerhards2012-01-141-16/+16
|\ | | | | | | | | | | | | | | Conflicts: plugins/imfile/imfile.c plugins/omtesting/omtesting.c tcpsrv.c threads.c
| * more license analysis & changeRainer Gerhards2012-01-141-16/+16
| |
* | minor: slightly improved error reporting when dynafile open failsRainer Gerhards2011-10-201-2/+3
| |
* | bugfix: omfile returns fatal error code for things that go really wrongRainer Gerhards2011-09-261-3/+2
| | | | | | | | | | previously, RS_RET_RESUME was returned, which lead to a loop inside the rule engine as omfile could not really recover.
* | Merge branch 'v4-stable' into v5-stableRainer Gerhards2011-09-221-5/+11
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: this merge has problems, to be fixed with follow-up commits If file creation fails due to out of memory, we can enter a tight loop. Conflicts: ChangeLog configure.ac doc/manual.html runtime/parser.c runtime/rsyslog.h tests/Makefile.am tests/tcpflood.c
| * bugfix: potential abort if ultra-large file io buffers are used andRainer Gerhards2011-09-201-4/+10
| | | | | | | | | | dynafile cache exhausts address space (primarily a problem on 32 bit platforms)
| * Merge branch 'v4-stable' of git+ssh://git.adiscon.com/git/rsyslog into v4-stableRainer Gerhards2011-09-151-5/+34
| |\
| | * issue a warning message for old-style dynafile actionRainer Gerhards2011-07-111-1/+8
| | |
| | * Merge branch 'v4-stable' into v4-develRainer Gerhards2011-07-111-1/+9
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html
| | * \ Merge branch 'v4-stable' into v4-develRainer Gerhards2010-12-161-1/+0
| | |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: runtime/parser.c
| | * | | minor cleanupRainer Gerhards2010-04-191-2/+2
| | | | |
| * | | | typo fixAndrew Stothard2011-09-151-1/+1
| | |_|/ | |/| |
* | | | added warning message for old-style outchannel syntaxRainer Gerhards2011-07-111-1/+8
| | | |
* | | | Merge branch 'v4-stable' into v5-stableRainer Gerhards2011-07-111-1/+9
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html tests/diag.sh
| * | | support for :omfile: forward compatibility directiveRainer Gerhards2011-07-111-1/+9
| | |/ | |/|
* | | added work-around for bug in gtls, which causes fd leak when using TLSBojan Smojver2011-02-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Merge branch 'v4-stable' into v5-stableRainer Gerhards2010-12-161-1/+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-1/+0
| | |
* | | bugfix: replacements for atomic operations for non-int sized types had problems.Rainer Gerhards2010-11-251-1/+5
| | | | | | | | | | | | | | | At least one instance of that problem could potentially lead to abort (inside omfile).
* | | some cleanupRainer Gerhards2010-06-101-1/+0
| | | | | | | | | | | | | | | as well as some work in preparation of storing doAction params inside the batch
* | | 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.
* | | bugfix: regression caused more locking action in msg.c than necessaryRainer Gerhards2010-06-081-29/+7
| | | | | | | | | | | | also: bugfix: mutexes used to similate atomic instructions were not destructed
* | | some cleanupRainer Gerhards2010-04-191-2/+2
| | |
* | | Merge branch 'v4-devel' into masterRainer Gerhards2010-04-191-0/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog Makefile.am configure.ac doc/manual.html runtime/debug.c runtime/rsyslog.h tests/Makefile.am tests/diag.sh tests/nettester.c tools/syslogd.c
| * | Merge branch 'v4-stable-solaris' into v4-develRainer Gerhards2010-04-121-52/+83
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html tools/omfile.c tools/syslogd.c
| * | Merge branch 'v4-beta' into tmpRainer Gerhards2010-01-261-6/+16
| |\ \ | | | | | | | | | | | | | | | | Conflicts: ChangeLog
| * \ \ Merge branch 'v4-beta' into v4-develRainer Gerhards2009-11-301-1/+1
| |\ \ \
* | \ \ \ Merge branch 'beta' into masterRainer Gerhards2010-04-091-36/+52
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+3
| |\ \ \ \ \ | | | |_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: runtime/Makefile.am runtime/rsyslog.c tests/nettester.c tools/syslogd.c
| | * | | | bugfix: default for $OMFileFlushOnTXEnd was wrong ("off").Rainer Gerhards2010-04-071-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This, in default mode, caused buffered writing to be used, what means that it looked like no output were written or partial lines. Thanks to Michael Biebl for pointing out this bug.
| * | | | | Merge branch 'v4-stable' into v5-stableRainer Gerhards2010-03-291-36/+51
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html runtime/debug.c runtime/stream.c tests/Makefile.am tests/diskqueue.sh tests/nettester.c tools/omfile.c
| | * | | | $OMFileAsyncWriting directive did not work properlyRainer Gerhards2010-03-251-1/+1
| | | | | |
| | * | | | new feature: $OMFileAsyncWriting directive addedRainer Gerhards2010-03-251-19/+22
| | | | | | | | | | | | | | | | | | | | | | | | it permits to specifiy if asynchronous writing should be done or not
| | * | | | undo experimental commit dccadb677c5a6b8379f631e4c1f14c8c4089d4a6Rainer Gerhards2010-03-251-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Further testing turned out that the rsyslog core works correctly and this fix is not needed. The concurrency we saw was actually caused by other actions (even processes) during directory creation. See commit 9e5b31fc44136dbcc1e443cfe7714e9daf97d844 for further details.
| | * | | | bugfix: potential segfault in dynafile cacheRainer Gerhards2010-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug was triggered by an open failure. The the cache was full and a new entry needed to be placed inside it, a victim for eviction was selected. That victim was freed, then the open of the new file tried. If the open failed, the victim entry was still freed, and the function exited. However, on next invocation and cache search, the victim entry was used as if it were populated, most probably resulting in a segfault.
| | * | | | streamline dynafile cache entry deletion a bitRainer Gerhards2010-03-231-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old code looks a bit "strange", though not necessarily incorrect. The new code looks correct and is probably less irritating during bug hunting.
| | * | | | bugfix: potential re-use of free()ed file stream object in omfileRainer Gerhards2010-03-231-7/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when dynaCache is enabled, the cache is full, a new entry needs to be allocated, thus the LRU discarded, then a new entry is opend and that fails. In that case, it looks like the discarded stream may be reused improperly (based on code analysis, test case and confirmation pending)
| | * | | | previous (experimental) patch was somewhat incorrect, fixedRainer Gerhards2010-03-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This is what caused the new test to fail...
| | * | | | exp: made omfile ensure that it is not called twice in parallel on the same ↵Rainer Gerhards2010-03-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | file instance In theory, the rsyslog core should never call in parallel into an output module for the same instance. However, it looks like this seems to happen under (strange?) circumstances. I have now enhanced omfile so that it guards itself against being called in parallel on the same instance data. This is done to help troubleshooting and may stay as an interim solution if it proves to solve an anomaly we see in at least one installation (to trigger this problem, an extremely large traffic volume is needed).
| | * | | | fixed regression from previos (yet unrelease) $omfileFlushOnTXEnd fixtemp.4.6.1.10Rainer Gerhards2010-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous fix fixed an issue with on/off bying used in the exact wrong semantic. It corrected the situation, but failed to fix one spot where the wrong semantics were used. This is done with this commit. Note that this is NOT a bug seen in any released version.
| | * | | | new feature: "." action type added to support writing files to relative pathesRainer Gerhards2010-03-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | (this is primarily meant as a debug aid)
| | * | | | bugfix: potential problem (loop, abort) when file write error occuredRainer Gerhards2010-03-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a write error occured in stream.c, variable iWritten had the error code but this was handled as if it were the actual number of bytes written. That was used in pointer arithmetic later on, and thus could lead to all sorts of problems. However, this could only happen if the error was EINTR or the file in question was a tty. All other cases were handled properly. Now, iWritten is reset to zero in such cases, resulting in proper retries.
| | * | | | retain old $OMFileFlushOnTXEnd semanticsRainer Gerhards2010-03-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | required because due to bug the default was actually different than specified (or better said: spec was inconsistent in doc as well).
| | * | | | bugfix: $omfileFlushOnTXEnd was turned on when set to off and vice versaRainer Gerhards2010-03-091-1/+1
| | | | | |
| * | | | | Merge branch 'v4-stable' into betaRainer Gerhards2010-03-081-2/+14
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html tests/rt-init.c
* | | | | | bugfix: omfile.c did not properly compile without atomicsRainer Gerhards2010-03-051-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | while this worked on another platform, it did not work here, and failed to do so for good reasons ;)
* | | | | | Merge branch 'v4-stable-solaris' into master-solarisRainer Gerhards2010-03-051-2/+14
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html tests/rt-init.c
| * | | | | bugfix: potential (but very impropable) segfaults in omfileRainer Gerhards2010-03-021-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - bugfix: potential segfault in omfile when a dynafile open failed In that case, a partial cache entry was written, and some internal pointers (iCurrElt) not correctly updated. In the next iteration, that could lead to a segfault, especially if iCurrElt then points to the then-partial record. Not very likely, but could happen in practice. - bugfix (theoretical): potential segfault in omfile under low memory condition. This is only a theoretical bug, because it would only happen when strdup() fails to allocate memory - which is highly unlikely and will probably lead to all other sorts of errors.
* | | | | | relaxed need for atomic builtinsRainer Gerhards2010-03-051-0/+27
| | | | | |
* | | | | | Merge branch 'beta' into masterRainer Gerhards2010-03-011-15/+17
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html tools/syslogd.c