Blame ChangeLog

Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.5, 2018-04-26
Packit 1422b7
- bugfix: es_str2cstr leak in string-to v1 parser
Packit 1422b7
  Thanks to Harshvardhan Shrivastava for the patch.
Packit 1422b7
- make "make check" "succeed" on solaris 10
Packit 1422b7
  actually, we just ignore the CI failures so that OpenCSW can build
Packit 1422b7
  new packages. The problems actually exist on that platform, but
Packit 1422b7
  testing has shown they always existed. We currently run out of time
Packit 1422b7
  to really fixing this, plus we never had any bug report on Solaris
Packit 1422b7
  (I assme nobody uses it on Solaris 10). However, that issues is a
Packit 1422b7
  blocker to make new rsyslog versions available on OpenCSW for
Packit 1422b7
  Solaris 10, so we go the dirty way of pretenting there is no
Packit 1422b7
  problem. Note: the issues was orignally not seen, as the failing
Packit 1422b7
  tests have been added later on. So the problem was always there,
Packit 1422b7
  just not visible.
Packit 1422b7
- some mostly cosmetic fixes detected by Coverity Scan
Packit 1422b7
  e. g. memory leak if and only if system was completely out of memory
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.4, 2017-10-04
Packit 1422b7
- added support for native JSON number formats
Packit 1422b7
  supported by parsers: number, float, hex
Packit 1422b7
- added support for creating unix timestamps
Packit 1422b7
  supported by parsers: date-rfc3164, date-rfc5424
Packit 1422b7
- fixed build problems on Solaris
Packit 1422b7
  ... but there still seem to be some code issues, manifested in
Packit 1422b7
  testbench failures. So use with care!
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.3, 2017-03-22
Packit 1422b7
- add ability to load rulebase from a string
Packit 1422b7
  introduces new API:
Packit 1422b7
  int ln_loadSamplesFromString(ln_ctx ctx, const char *string);
Packit 1422b7
  closes https://github.com/rsyslog/liblognorm/issues/239
Packit 1422b7
- bugfix: string parser did not correctly parse word at end of line
Packit 1422b7
- bugfix: literal parser does not always store value if name is specified
Packit 1422b7
  if
Packit 1422b7
  rule=:%{"type":"literal", "text":"a", "name":"var"}%
Packit 1422b7
  is used and matching message is provided, variable var ist not persisted.
Packit 1422b7
  see also http://lists.adiscon.net/pipermail/rsyslog/2016-December/043985.html
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.2, 2016-11-15
Packit 1422b7
- bugfix: no error was emitted on invalid "annotate" line
Packit 1422b7
- "annnotate": permit inline comments
Packit 1422b7
- fix a problem with cross-compilation
Packit 1422b7
  see also: https://github.com/rsyslog/liblognorm/pull/221
Packit 1422b7
  Thanks to Luca Boccassi for the patch
Packit 1422b7
- testbench: add test for "annotate" functionality
Packit 1422b7
- bugfix: abort in literal path compaction when useing "alternative" parser
Packit 1422b7
  When using the "alternative" parser, literals nodes could be created with
Packit 1422b7
  multiple reference count. This is valid. However, literal path compaction
Packit 1422b7
  did not consider this case, and so "merged" these nodes, which lead to
Packit 1422b7
  pdag corruption and quickly to segfault.
Packit 1422b7
  closes https://github.com/rsyslog/liblognorm/issues/220
Packit 1422b7
  closes https://github.com/rsyslog/liblognorm/issues/153
Packit 1422b7
- bugfix: lognormalizer could loop
Packit 1422b7
  This also caused the testbench to fail on some platforms.
Packit 1422b7
  due too incorrect data type
Packit 1422b7
  Thanks to Michael Biebl for this fix.
Packit 1422b7
- fix misleading compiler warning
Packit 1422b7
  Thanks to Michael Biebl for this fix.
Packit 1422b7
- testbench: add test for "annotate" functionality
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.1, 2016-08-01
Packit 1422b7
- fix public headers, which invalidly contained a strndup() definition
Packit 1422b7
  Thanks to Michael Biebl for this fix.
Packit 1422b7
- fix some issues in pkgconfig file
Packit 1422b7
  Thanks to Michael Biebl for this fix.
Packit 1422b7
- enhance build system to natively support systems with older
Packit 1422b7
  autoconf versions and/or missing autoconf-archive. In this case we
Packit 1422b7
  gracefully degrade functionality, but the build still is possible.
Packit 1422b7
  Among others, this enables builds on CentOS 5.
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 2.0.0, 2016-07-21
Packit 1422b7
- completely rewritten, much feature-enhanced version
Packit 1422b7
- requires libfastjson instead of json-c
Packit 1422b7
- big improvements to testbench runs, especially on travis
Packit 1422b7
  among others, the static analyzer is now run and testbench throws
Packit 1422b7
  an error if the static analyzer (via clang) is not clean
Packit 1422b7
- lognormalizer tool can now handle lines larger 10k characters
Packit 1422b7
  Thanks to Janmejay Singh for the patch
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.1.3, 2015-??-?? [no official release]
Packit 1422b7
- make work on Solaris
Packit 1422b7
- check for runaway rules.
Packit 1422b7
  A runaway rule is one that has unmatched percent signs and thus
Packit 1422b7
  is not terminated properly at its end. This also means we no longer
Packit 1422b7
  accept "rule=" at the first column of a continuation line, which is
Packit 1422b7
  no problem (see doc for more information).
Packit 1422b7
- fix: process last line if it misses the terminating LF
Packit 1422b7
  This problem occurs with the very last line of a rulebase (at EOF).
Packit 1422b7
  If it is not properly terminated (LF missing), it is silently ignored.
Packit 1422b7
  Previous versions did obviously process lines in this case. While
Packit 1422b7
  technically this is invalid input, we can't outrule that such rulebases
Packit 1422b7
  exist. For example, they do in the rsyslog testbench, which made
Packit 1422b7
  us aware of the problem (see https://github.com/rsyslog/rsyslog/issues/489 )
Packit 1422b7
  I think the proper way of addressing this is to process such lines without
Packit 1422b7
  termination, as many other tools do as well.
Packit 1422b7
  closes https://github.com/rsyslog/liblognorm/issues/135
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.1.2, 2015-07-20
Packit 1422b7
- permit newline inside parser definition
Packit 1422b7
- new parser "cisco-interface-spec"
Packit 1422b7
- new parser "json" to process json parts of the message
Packit 1422b7
- new parser "mac48" to process mac layer addresses
Packit 1422b7
- new parser "name-value-list" (currently inofficial, experimental)
Packit 1422b7
- some parsers did incorrectly report success when an error occurred
Packit 1422b7
  this was caused by inconsistencies between various macros. We have
Packit 1422b7
  changed the parser-generation macros to match the semantics of the
Packit 1422b7
  broader CHKN/CHKR macros and also restructured/simplified the 
Packit 1422b7
  parser generation macros.
Packit 1422b7
  closes https://github.com/rsyslog/liblognorm/issues/41
Packit 1422b7
- call "rest" parser only if nothing else matches.
Packit 1422b7
  Versions prior to 1.1.2 did execute "rest" during regular parser
Packit 1422b7
  processing, and thus parser matches have been more or less random.
Packit 1422b7
  With 1.1.2 this is now always the last parser called. This may cause
Packit 1422b7
  problems with existing rulesets, HOWEVER, adding any other rule or
Packit 1422b7
  changing the load order would also have caused problems, so there
Packit 1422b7
  really is no compatibility to preserve.
Packit 1422b7
  see also:
Packit 1422b7
  http://blog.gerhards.net/2015/04/liblognorms-rest-parser-now-more-useful.html
Packit 1422b7
- new API to support error callbacks 
Packit 1422b7
  This permits callers to forward messages in regard to e.g. wrong rule
Packit 1422b7
  bases to their users, which is very useful and actually missing in the
Packit 1422b7
  previous code base. So far, we only have few error messages.
Packit 1422b7
  However, we will review the code and add more. The important part is
Packit 1422b7
  that callers can begin to use the new API and thus will benefit when
Packit 1422b7
  we add more error messages.
Packit 1422b7
- testbench is now enabled by default
Packit 1422b7
- bugfix: misadressing on some constant values
Packit 1422b7
  see also https://github.com/rsyslog/liblognorm/pull/67
Packit 1422b7
  Thanks to github user ontholerian for the patch
Packit 1422b7
- bugfix: add missing function prototypes
Packit 1422b7
  This could potentially lead to problems on some platforms,
Packit 1422b7
  especially those with 64 bit pointers.
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.1.1, 2015-03-09
Packit 1422b7
- fixed library version numbering
Packit 1422b7
  Thanks to Tomas Heinreich for reporting the problem.
Packit 1422b7
- added new parser syntaxes
Packit 1422b7
  Thanks to Janmejay Singh for implementing most of them.
Packit 1422b7
- bugfix: function ln_parseFieldDescr() returns state value
Packit 1422b7
  due to unitialized variable. This can also lead to invalid
Packit 1422b7
  returning no sample node where one would have to be created.
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.1.0, 2015-01-08
Packit 1422b7
- added regular expression support
Packit 1422b7
  use this feature with great care, as it thrashes performance
Packit 1422b7
  Thanks to Janmejay Singh for implementing this feature.
Packit 1422b7
- fix build problem when --enable-debug was set
Packit 1422b7
  closes: https://github.com/rsyslog/liblognorm/issues/5
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.0.1, 2014-04-11
Packit 1422b7
- improved doc (via RST/Sphinx)
Packit 1422b7
- bugfix: unparsed fields were copied incorrectly from non-terminated
Packit 1422b7
  string. Thanks to Josh Blum for the fix.
Packit 1422b7
- bugfix: mandatory tag did not work in lognormalizer
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 1.0.0, 2013-11-28
Packit 1422b7
- WARNING: this version has incompatible interface and older programs 
Packit 1422b7
  will not compile with it.
Packit 1422b7
  For details see http://www.liblognorm.com/news/on-liblognorm-1-0-0/
Packit 1422b7
- libestr is not used any more in interface functions. Traditional
Packit 1422b7
  C strings are used instead. Internally, libestr is still used, but
Packit 1422b7
  scheduled for removal.
Packit 1422b7
- libee is not used any more. JSON-C is used for object handling
Packit 1422b7
  instead. Parsers and formatters are now part of liblognorm.
Packit 1422b7
- added new field type "rest", which simply sinks all up to end of
Packit 1422b7
  the string.
Packit 1422b7
- added support for glueing two fields together, without literal 
Packit 1422b7
  between them. It allows for constructs like:
Packit 1422b7
  %volume:number%%unit:word%
Packit 1422b7
  which matches string "1000Kbps"
Packit 1422b7
- Fix incorrect merging of trees with empty literal at end
Packit 1422b7
  Thanks to Pavel Levshin for the patch
Packit 1422b7
- this version has survived many bugfixes
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
================================================================================
Packit 1422b7
The versions below is liblognorm0, which has a different API
Packit 1422b7
================================================================================
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.7, 2013-07-17
Packit 1422b7
- added support to load single samples
Packit 1422b7
  Thanks to John Hopper for the patch
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.6, 2013-03-22
Packit 1422b7
- bugfix: unitialized variable could lead to rulebase load error
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.5 (rgerhards), 2012-09-18
Packit 1422b7
- renamed "normalizer" tool to "lognormalizer" to solve name clashes
Packit 1422b7
  Thanks to the Fedora folks for pointing this out.
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.4 (rgerhards), 2012-04-16
Packit 1422b7
- bugfix: normalizer tool had a memory leak
Packit 1422b7
  Thanks to Brian Know for alerting me and helping to debug
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.3 (rgerhards), 2012-02-06
Packit 1422b7
- required header file was not installed, resulting in compile error
Packit 1422b7
  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=307
Packit 1422b7
  Thanks to Andreis Vinogradovs for alerting us on this bug.
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.2 (rgerhards), 2011-11-21
Packit 1422b7
- added rfc5424 parser (requires libee >= 0.3.2)
Packit 1422b7
- added "-" to serve as name for filler fields. Value is extracted,
Packit 1422b7
  but no field is written
Packit 1422b7
- special handling for iptables log via %iptables% parser added 
Packit 1422b7
  (currently experimental pending practical verification)
Packit 1422b7
- normalizer tool on its way to a full-blow stand-alone tool
Packit 1422b7
- support for annotations added, for the time being see
Packit 1422b7
  http://blog.gerhards.net/2011/11/log-annotation-with-liblognorm.html
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.1 (rgerhards), 2011-04-18
Packit 1422b7
- added -t option to normalizer so that only messages with a 
Packit 1422b7
  specified tag will be output
Packit 1422b7
- bugfix: abort if a tag was assigned to a message without any 
Packit 1422b7
  fields parsed out (uncommon scenario)
Packit 1422b7
- bugfix: mem leak on parse tree destruct -- associated tags were
Packit 1422b7
  not deleted
Packit 1422b7
- bugfix: potential abort in normalizer due to misadressing in debug
Packit 1422b7
  message generation
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.3.0 (rgerhards), 2011-04-06
Packit 1422b7
- support for message classification via tags added
Packit 1422b7
- bugfix: partial messages were invalidly matched
Packit 1422b7
  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=247
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.2.0 (rgerhards), 2011-04-01
Packit 1422b7
- added -E option to normalizer tool, permits to specify data for
Packit 1422b7
  encoders
Packit 1422b7
- support for new libee parsers:
Packit 1422b7
  * Time12hr
Packit 1422b7
  * Time24hr
Packit 1422b7
  * ISODate
Packit 1422b7
  * QuotedString
Packit 1422b7
- support for csv encoding added
Packit 1422b7
- added -p option to normalizer tool (output only correctly parsed
Packit 1422b7
  entries)
Packit 1422b7
- bugfix: segfault if a parse tree prefix had exactly buffer size,
Packit 1422b7
  in which case it was invalidly assumed that an external buffer had
Packit 1422b7
  been allocated
Packit 1422b7
----------------------------------------------------------------------
Packit 1422b7
Version 0.1.0 (rgerhards), 2010-12-09
Packit 1422b7
Initial public release.