Browse Source

Imported Upstream version 8.15.0

upstream upstream/8.15.0
Michael Biebl 7 years ago
parent
commit
2747922564
  1. 2
      .tarball-version
  2. 127
      ChangeLog
  3. 12
      Makefile.am
  4. 106
      Makefile.in
  5. 9
      README.md
  6. 43
      action.c
  7. 1
      action.h
  8. 4
      compat/Makefile.in
  9. 640
      configure
  10. 58
      configure.ac
  11. 4
      contrib/imczmq/Makefile.in
  12. 287
      contrib/imczmq/imczmq.c
  13. 4
      contrib/imkmsg/Makefile.in
  14. 4
      contrib/imzmq3/Makefile.in
  15. 4
      contrib/mmcount/Makefile.in
  16. 8
      contrib/mmgrok/Makefile.am
  17. 726
      contrib/mmgrok/Makefile.in
  18. 32
      contrib/mmgrok/README
  19. 421
      contrib/mmgrok/mmgrok.c
  20. 4
      contrib/mmrfc5424addhmac/Makefile.in
  21. 4
      contrib/mmsequence/Makefile.in
  22. 4
      contrib/omczmq/Makefile.in
  23. 436
      contrib/omczmq/omczmq.c
  24. 4
      contrib/omhiredis/Makefile.in
  25. 4
      contrib/omhttpfs/Makefile.in
  26. 62
      contrib/omhttpfs/omhttpfs.c
  27. 4
      contrib/omrabbitmq/Makefile.in
  28. 78
      contrib/omrabbitmq/omrabbitmq.c
  29. 4
      contrib/omzmq3/Makefile.in
  30. 4
      contrib/pmaixforwardedfrom/Makefile.in
  31. 4
      contrib/pmcisconames/Makefile.in
  32. 8
      contrib/pmpanngfw/Makefile.am
  33. 725
      contrib/pmpanngfw/Makefile.in
  34. 297
      contrib/pmpanngfw/pmpanngfw.c
  35. 4
      contrib/pmsnare/Makefile.in
  36. 4
      grammar/Makefile.in
  37. 174
      grammar/rainerscript.c
  38. 4
      parse.c
  39. 4
      plugins/im3195/Makefile.in
  40. 4
      plugins/imdiag/Makefile.in
  41. 4
      plugins/imfile/Makefile.in
  42. 121
      plugins/imfile/imfile.c
  43. 4
      plugins/imgssapi/Makefile.in
  44. 4
      plugins/imjournal/Makefile.in
  45. 4
      plugins/imjournal/imjournal.c
  46. 4
      plugins/imklog/Makefile.in
  47. 4
      plugins/immark/Makefile.in
  48. 4
      plugins/impstats/Makefile.in
  49. 4
      plugins/imptcp/Makefile.in
  50. 8
      plugins/imptcp/imptcp.c
  51. 4
      plugins/imrelp/Makefile.in
  52. 4
      plugins/imsolaris/Makefile.in
  53. 4
      plugins/imtcp/Makefile.in
  54. 4
      plugins/imudp/Makefile.in
  55. 6
      plugins/imudp/imudp.c
  56. 4
      plugins/imuxsock/Makefile.in
  57. 3
      plugins/imuxsock/imuxsock.c
  58. 4
      plugins/mmanon/Makefile.in
  59. 4
      plugins/mmaudit/Makefile.in
  60. 4
      plugins/mmexternal/Makefile.in
  61. 54
      plugins/mmexternal/mmexternal.c
  62. 4
      plugins/mmfields/Makefile.in
  63. 4
      plugins/mmfields/mmfields.c
  64. 4
      plugins/mmjsonparse/Makefile.in
  65. 3
      plugins/mmjsonparse/mmjsonparse.c
  66. 4
      plugins/mmnormalize/Makefile.in
  67. 4
      plugins/mmpstrucdata/Makefile.in
  68. 4
      plugins/mmsnmptrapd/Makefile.in
  69. 4
      plugins/mmutf8fix/Makefile.in
  70. 4
      plugins/omelasticsearch/Makefile.in
  71. 7
      plugins/omelasticsearch/omelasticsearch.c
  72. 4
      plugins/omgssapi/Makefile.in
  73. 4
      plugins/omhdfs/Makefile.in
  74. 4
      plugins/omjournal/Makefile.in
  75. 2
      plugins/omkafka/Makefile.am
  76. 6
      plugins/omkafka/Makefile.in
  77. 21
      plugins/omkafka/omkafka.c
  78. 4
      plugins/omlibdbi/Makefile.in
  79. 4
      plugins/ommail/Makefile.in
  80. 14
      plugins/ommail/ommail.c
  81. 4
      plugins/ommongodb/Makefile.in
  82. 4
      plugins/ommysql/Makefile.in
  83. 4
      plugins/ompgsql/Makefile.in
  84. 4
      plugins/omprog/Makefile.in
  85. 53
      plugins/omprog/omprog.c
  86. 4
      plugins/omrelp/Makefile.in
  87. 9
      plugins/omrelp/omrelp.c
  88. 4
      plugins/omruleset/Makefile.in
  89. 4
      plugins/omsnmp/Makefile.in
  90. 4
      plugins/omstdout/Makefile.in
  91. 4
      plugins/omtesting/Makefile.in
  92. 4
      plugins/omudpspoof/Makefile.in
  93. 4
      plugins/omuxsock/Makefile.in
  94. 4
      plugins/pmciscoios/Makefile.in
  95. 62
      plugins/pmciscoios/pmciscoios.c
  96. 4
      plugins/pmlastmsg/Makefile.in
  97. 4
      runtime/Makefile.in
  98. 36
      runtime/glbl.c
  99. 6
      runtime/janitor.c
  100. 29
      runtime/librsgt.c

2
.tarball-version

@ -1 +1 @@
8.14.0
8.15.0

127
ChangeLog

@ -1,5 +1,127 @@
------------------------------------------------------------------------------
Version 8.15.0 [v8-stable] 2015-12-15
- KSI Lib: Updated code to run with libksi 3.4.0.5
Also libksi 3.4.0.x is required to build rsyslog if ksi support
is enabled. New libpackages have been build as well.
- KSI utilities: Added option to ser publication url.
Since libksi 3.4.0.x, there is no default publication url anymore.
The publication url has to be set using the --publications-server
Parameter, otherwise the ksi signature cannot be verified. UserID
and UserKey can also be set by parameter now.
Closes https://github.com/rsyslog/rsyslog/issues/581
- KSI Lib: Fixed wrong TLV container for KSI signatures from 0905 to 0906.
closes https://github.com/rsyslog/rsyslog/issues/587
- KSI/GT Lib: Fixed multiple issues found using static analyzer
- performance improvement for configs with heavy use of JSON variables
Depending on the config, this can be a very big gain in performance.
- added pmpanngfw: contributed module for translating Palo Alto Networks logs.
see also: https://github.com/rsyslog/rsyslog/pull/573
Thanks to Luigi Mori for the contribution.
- testbench: Changed valgrind option for imtcp-tls-basic-vg.sh
For details see: https://github.com/rsyslog/rsyslog/pull/569
- pmciscoios: support for asterisk before timestamp added
thanks to github user c0by for the patch
see also: https://github.com/rsyslog/rsyslog/pull/583
- solr external output plugin much enhanced
see also: https://github.com/rsyslog/rsyslog/pull/529
Thanks to Radu Gheorghe for the patch.
- omrabbitmq: improvements
thanks to Luigi Mori for the patch
see also: https://github.com/rsyslog/rsyslog/pull/580
- add support for libfastjson (as a replacement for json-c)
- KSI utilities: somewhat improved error messages
Thanks to Henri Lakk for the patch.
see also: https://github.com/rsyslog/rsyslog/pull/588
- pmciscoios: support for some format variations
Thanks to github user c0by for the patch
- support grok via new contributed module mmgrok
Thanks to ้ฅถ็›็ณ (github user chenryn) for the contribution.
- omkafka: new statistics counter "maxoutqsize"
Thanks to ้ฅถ็›็ณ (github user chenryn) for the contribution.
- improvments for 0mq modules:
* omczmq - suspend / Retry handling - the output plugin can now recover
from some error states due to issues with plugin startup or message sending
* omczmq - refactored topic handling code for ZMQ_PUB output to be a little
more efficient
* omczmq - added ability to set a timeout for sends
* omczmq - set topics can be in separate frame (default) or part of message
frame (configurable)
* omcmzq - code cleanup
* imczmq - code cleanup
* imczmq - fixed a couple of cases where vars could be used uninitialized
* imczmq - ZMQ_ROUTER support
* imczmq - Fix small memory leak from not freeing sockets when done with them
* allow creation of on demand ephemeral CurveZMQ certs for encryption.
Clients may specify clientcertpath="*" to indicate they want an on
demand generated cert.
Thanks to Brian Knox for the contributions.
- cleanup on code to unset a variable
under extreme cases (very, very unlikely), the old code could also lead
to errornous processing
- omelasticsearch: build on FreeBSD
Thanks to github user c0by for the patch
- pmciscoios: fix some small issues clang static analyzer detected
- testbench: many improvements and some new tests
note that there still is a number of tests which are somewhat racy
- overall code improvements thanks to clang static analyzer
- gnutls fix: Added possible fix for gnutls issue #575
see also: https://github.com/rsyslog/rsyslog/issues/575
Thanks to Charles Southerland for the patch
- bugfix omkafka: restore ability to build on all platforms
Undo commit aea09800643343ab8b6aa205b0f10a4be676643b
because that lead to build failures on various important platforms.
This means it currently is not possible to configure the location
of librdkafka, but that will affect far fewer people.
closes: https://github.com/rsyslog/rsyslog/issues/596
- bugfix omkafka: fix potentially negative partition number
Thanks to Tait Clarridge for providing a patch.
- bugfix: solve potential race in creation of additional action workers
Under extreme circumstances, this could lead to segfault. Note that we
detected this problem thanks to ASAN address sanitzier in combination
with a very exterme testbench test. We do not think that this issue
was ever reported in practice.
- bugfix: potential memory leak in config parsing
Thanks to github user linmujia for the patch
- bugfix: small memory leak in loading template config
This happened when a plugin was used inside the template. Then, the
memory for the template name was never freed.
Thanks to github user xushengping for the fix.
- bugfix: fix extra whitespace in property expansions
Address off-by-one issues introduced in f3bd7a2 resulting in extra
whitespace in property expansions
Thanks to Matthew Gabeler-Lee for the patch.
- bugfix: mmfields leaked memory if very large messages were processed
detected by clang static analyzer
- bugfix: mmfields could add garbagge data to field
this happened when very large fields were to be processed.
Thanks to Peter Portante for reporting this.
- bugfix: omhttpfs now also compiles with older json-c lib
- bugfix: memory leak in (contributed) module omhttpfs
Thanks to git hub user c6226 for the patch.
- bugfix: parameter mismatch in error message for wrap() function
- bugfix: parameter mismatch in error message for random() function
- bugfix: divide by zero if max() function was provided zero
- bugfix: invalid mutex handling in omfile async write mode
could lead to segfault, even though highly unlikely (caught by
testbench on a single platform)
- bugfix: fix inconsistent number processing
Unfortunately, previous versions of the rule engine tried to
support oct and hex, but that wasn't really the case.
Everything based on JSON was just dec-converted. As this was/is
the norm, we fix that inconsistency by always using dec.
Luckly, oct and hex support was never documented and could
probably only have been activated by constant numbers.
- bugfix: timezone() object: fix NULL pointer dereference
This happened during startup when the offset or id parameter was not
given. Could lead to a segfault at startup.
Detected by clang static analyzer.
- bugfix omfile: memory addressing error if very long outchannel name used
Thanks to github user c6226 for the patch.
------------------------------------------------------------------------------
Version 8.14.0 [v8-stable] 2015-11-03
- Added possibility to customize librdkafka location
see also: https://github.com/rsyslog/rsyslog/pull/502
Thanks to Matthew Wang for the patch.
- add property "rawmsg-after-pri"
- bugfix: potential misadresseing in imfile
Could happen when wildcards were used.
@ -191,6 +313,11 @@ Version 8.10.0 [v8-stable] 2015-05-19
source builds per default but enforced when building from git source.
- mmpstrucdata: some code cleanup
removed lots of early development debug outputs
- bugfix imuxsock: fix a memory leak that happened with large messages
... when annotation was enabled.
Thanks to github user c6226 for the patch
- bugfix omhttpfs: memory leak
Thanks to github user c6226 for the patch
- bugfix imuxsock: fix a crash when setting a hostname
Setting a hostname via the legacy directive would lead to a crash
during shutdown caused by a double-free.

12
Makefile.am

@ -103,6 +103,10 @@ if ENABLE_PMSNARE
SUBDIRS += contrib/pmsnare
endif
if ENABLE_PMPANNGFW
SUBDIRS += contrib/pmpanngfw
endif
if ENABLE_PMLASTMSG
SUBDIRS += plugins/pmlastmsg
endif
@ -203,6 +207,10 @@ if ENABLE_MMJSONPARSE
SUBDIRS += plugins/mmjsonparse
endif
if ENABLE_MMGROK
SUBDIRS += contrib/mmgrok
endif
if ENABLE_MMAUDIT
SUBDIRS += plugins/mmaudit
endif
@ -254,7 +262,8 @@ SUBDIRS += tests
# when some global update happened.
DISTCHECK_CONFIGURE_FLAGS= \
--disable-silent-rules \
--disable-testbench
--disable-testbench \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
THIS_IS_TEMPORARILY_DISABLED = \
--enable-distcheck-workaround \
@ -270,6 +279,7 @@ THIS_IS_TEMPORARILY_DISABLED = \
--enable-mail \
--enable-klog \
--enable-diagtools \
--enable-mmgrok \
--enable-gnutls \
--enable-omstdout \
--enable-pmlastmsg \

106
Makefile.in

@ -97,42 +97,44 @@ sbin_PROGRAMS =
@ENABLE_PMCISCOIOS_TRUE@am__append_14 = plugins/pmciscoios
@ENABLE_PMAIXFORWARDEDFROM_TRUE@am__append_15 = contrib/pmaixforwardedfrom
@ENABLE_PMSNARE_TRUE@am__append_16 = contrib/pmsnare
@ENABLE_PMLASTMSG_TRUE@am__append_17 = plugins/pmlastmsg
@ENABLE_OMRULESET_TRUE@am__append_18 = plugins/omruleset
@ENABLE_OMUDPSPOOF_TRUE@am__append_19 = plugins/omudpspoof
@ENABLE_OMMONGODB_TRUE@am__append_20 = plugins/ommongodb
@ENABLE_OMHIREDIS_TRUE@am__append_21 = contrib/omhiredis
@ENABLE_OMZMQ3_TRUE@am__append_22 = contrib/omzmq3
@ENABLE_OMCZMQ_TRUE@am__append_23 = contrib/omczmq
@ENABLE_OMRABBITMQ_TRUE@am__append_24 = contrib/omrabbitmq
@ENABLE_IMZMQ3_TRUE@am__append_25 = contrib/imzmq3
@ENABLE_IMCZMQ_TRUE@am__append_26 = contrib/imczmq
@ENABLE_OMUXSOCK_TRUE@am__append_27 = plugins/omuxsock
@ENABLE_OMHDFS_TRUE@am__append_28 = plugins/omhdfs
@ENABLE_OMJOURNAL_TRUE@am__append_29 = plugins/omjournal
@ENABLE_IMJOURNAL_TRUE@am__append_30 = plugins/imjournal
@ENABLE_ELASTICSEARCH_TRUE@am__append_31 = plugins/omelasticsearch
@ENABLE_MMSNMPTRAPD_TRUE@am__append_32 = plugins/mmsnmptrapd
@ENABLE_IMFILE_TRUE@am__append_33 = plugins/imfile
@ENABLE_IMPTCP_TRUE@am__append_34 = plugins/imptcp
@ENABLE_IMDIAG_TRUE@am__append_35 = plugins/imdiag
@ENABLE_MAIL_TRUE@am__append_36 = plugins/ommail
@ENABLE_OMKAFKA_TRUE@am__append_37 = plugins/omkafka
@ENABLE_OMPROG_TRUE@am__append_38 = plugins/omprog
@ENABLE_RFC3195_TRUE@am__append_39 = plugins/im3195
@ENABLE_MMNORMALIZE_TRUE@am__append_40 = plugins/mmnormalize
@ENABLE_MMJSONPARSE_TRUE@am__append_41 = plugins/mmjsonparse
@ENABLE_MMAUDIT_TRUE@am__append_42 = plugins/mmaudit
@ENABLE_MMANON_TRUE@am__append_43 = plugins/mmanon
@ENABLE_MMUTF8FIX_TRUE@am__append_44 = plugins/mmutf8fix
@ENABLE_MMCOUNT_TRUE@am__append_45 = contrib/mmcount
@ENABLE_MMSEQUENCE_TRUE@am__append_46 = contrib/mmsequence
@ENABLE_MMFIELDS_TRUE@am__append_47 = plugins/mmfields
@ENABLE_MMPSTRUCDATA_TRUE@am__append_48 = plugins/mmpstrucdata
@ENABLE_MMRFC5424ADDHMAC_TRUE@am__append_49 = contrib/mmrfc5424addhmac
@ENABLE_PMPANNGFW_TRUE@am__append_17 = contrib/pmpanngfw
@ENABLE_PMLASTMSG_TRUE@am__append_18 = plugins/pmlastmsg
@ENABLE_OMRULESET_TRUE@am__append_19 = plugins/omruleset
@ENABLE_OMUDPSPOOF_TRUE@am__append_20 = plugins/omudpspoof
@ENABLE_OMMONGODB_TRUE@am__append_21 = plugins/ommongodb
@ENABLE_OMHIREDIS_TRUE@am__append_22 = contrib/omhiredis
@ENABLE_OMZMQ3_TRUE@am__append_23 = contrib/omzmq3
@ENABLE_OMCZMQ_TRUE@am__append_24 = contrib/omczmq
@ENABLE_OMRABBITMQ_TRUE@am__append_25 = contrib/omrabbitmq
@ENABLE_IMZMQ3_TRUE@am__append_26 = contrib/imzmq3
@ENABLE_IMCZMQ_TRUE@am__append_27 = contrib/imczmq
@ENABLE_OMUXSOCK_TRUE@am__append_28 = plugins/omuxsock
@ENABLE_OMHDFS_TRUE@am__append_29 = plugins/omhdfs
@ENABLE_OMJOURNAL_TRUE@am__append_30 = plugins/omjournal
@ENABLE_IMJOURNAL_TRUE@am__append_31 = plugins/imjournal
@ENABLE_ELASTICSEARCH_TRUE@am__append_32 = plugins/omelasticsearch
@ENABLE_MMSNMPTRAPD_TRUE@am__append_33 = plugins/mmsnmptrapd
@ENABLE_IMFILE_TRUE@am__append_34 = plugins/imfile
@ENABLE_IMPTCP_TRUE@am__append_35 = plugins/imptcp
@ENABLE_IMDIAG_TRUE@am__append_36 = plugins/imdiag
@ENABLE_MAIL_TRUE@am__append_37 = plugins/ommail
@ENABLE_OMKAFKA_TRUE@am__append_38 = plugins/omkafka
@ENABLE_OMPROG_TRUE@am__append_39 = plugins/omprog
@ENABLE_RFC3195_TRUE@am__append_40 = plugins/im3195
@ENABLE_MMNORMALIZE_TRUE@am__append_41 = plugins/mmnormalize
@ENABLE_MMJSONPARSE_TRUE@am__append_42 = plugins/mmjsonparse
@ENABLE_MMGROK_TRUE@am__append_43 = contrib/mmgrok
@ENABLE_MMAUDIT_TRUE@am__append_44 = plugins/mmaudit
@ENABLE_MMANON_TRUE@am__append_45 = plugins/mmanon
@ENABLE_MMUTF8FIX_TRUE@am__append_46 = plugins/mmutf8fix
@ENABLE_MMCOUNT_TRUE@am__append_47 = contrib/mmcount
@ENABLE_MMSEQUENCE_TRUE@am__append_48 = contrib/mmsequence
@ENABLE_MMFIELDS_TRUE@am__append_49 = plugins/mmfields
@ENABLE_MMPSTRUCDATA_TRUE@am__append_50 = plugins/mmpstrucdata
@ENABLE_MMRFC5424ADDHMAC_TRUE@am__append_51 = contrib/mmrfc5424addhmac
# omhttpfs
@ENABLE_OMHTTPFS_TRUE@am__append_50 = contrib/omhttpfs
@ENABLE_OMHTTPFS_TRUE@am__append_52 = contrib/omhttpfs
subdir = .
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
$(srcdir)/Makefile.in $(srcdir)/Makefile.am \
@ -250,18 +252,19 @@ DIST_SUBDIRS = compat runtime grammar . plugins/immark \
plugins/imgssapi plugins/omrelp plugins/imrelp plugins/ommysql \
plugins/omlibdbi plugins/ompgsql plugins/omsnmp \
plugins/omstdout contrib/pmcisconames plugins/pmciscoios \
contrib/pmaixforwardedfrom contrib/pmsnare plugins/pmlastmsg \
plugins/omruleset plugins/omudpspoof plugins/ommongodb \
contrib/omhiredis contrib/omzmq3 contrib/omczmq \
contrib/omrabbitmq contrib/imzmq3 contrib/imczmq \
plugins/omuxsock plugins/omhdfs plugins/omjournal \
plugins/imjournal plugins/omelasticsearch plugins/mmsnmptrapd \
plugins/imfile plugins/imptcp plugins/imdiag plugins/ommail \
plugins/omkafka plugins/omprog plugins/im3195 \
plugins/mmnormalize plugins/mmjsonparse plugins/mmaudit \
plugins/mmanon plugins/mmutf8fix contrib/mmcount \
contrib/mmsequence plugins/mmfields plugins/mmpstrucdata \
contrib/mmrfc5424addhmac contrib/omhttpfs tests
contrib/pmaixforwardedfrom contrib/pmsnare contrib/pmpanngfw \
plugins/pmlastmsg plugins/omruleset plugins/omudpspoof \
plugins/ommongodb contrib/omhiredis contrib/omzmq3 \
contrib/omczmq contrib/omrabbitmq contrib/imzmq3 \
contrib/imczmq plugins/omuxsock plugins/omhdfs \
plugins/omjournal plugins/imjournal plugins/omelasticsearch \
plugins/mmsnmptrapd plugins/imfile plugins/imptcp \
plugins/imdiag plugins/ommail plugins/omkafka plugins/omprog \
plugins/im3195 plugins/mmnormalize plugins/mmjsonparse \
contrib/mmgrok plugins/mmaudit plugins/mmanon \
plugins/mmutf8fix contrib/mmcount contrib/mmsequence \
plugins/mmfields plugins/mmpstrucdata contrib/mmrfc5424addhmac \
contrib/omhttpfs tests
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@ -334,6 +337,8 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GNUTLS_CFLAGS = @GNUTLS_CFLAGS@
GNUTLS_LIBS = @GNUTLS_LIBS@
GREP = @GREP@
@ -374,6 +379,8 @@ LIBM = @LIBM@
LIBMONGO_CLIENT_CFLAGS = @LIBMONGO_CLIENT_CFLAGS@
LIBMONGO_CLIENT_LIBS = @LIBMONGO_CLIENT_LIBS@
LIBOBJS = @LIBOBJS@
LIBRDKAFKA_CFLAGS = @LIBRDKAFKA_CFLAGS@
LIBRDKAFKA_LIBS = @LIBRDKAFKA_LIBS@
LIBS = @LIBS@
LIBSYSTEMD_JOURNAL_CFLAGS = @LIBSYSTEMD_JOURNAL_CFLAGS@
LIBSYSTEMD_JOURNAL_LIBS = @LIBSYSTEMD_JOURNAL_LIBS@
@ -544,7 +551,8 @@ SUBDIRS = compat runtime grammar . plugins/immark plugins/imuxsock \
$(am__append_39) $(am__append_40) $(am__append_41) \
$(am__append_42) $(am__append_43) $(am__append_44) \
$(am__append_45) $(am__append_46) $(am__append_47) \
$(am__append_48) $(am__append_49) $(am__append_50) tests
$(am__append_48) $(am__append_49) $(am__append_50) \
$(am__append_51) $(am__append_52) tests
# make sure "make distcheck" tries to build all modules. This means that
# a developer must always have an environment where every supporting library
@ -554,7 +562,8 @@ SUBDIRS = compat runtime grammar . plugins/immark plugins/imuxsock \
# when some global update happened.
DISTCHECK_CONFIGURE_FLAGS = \
--disable-silent-rules \
--disable-testbench
--disable-testbench \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
THIS_IS_TEMPORARILY_DISABLED = \
--enable-distcheck-workaround \
@ -570,6 +579,7 @@ THIS_IS_TEMPORARILY_DISABLED = \
--enable-mail \
--enable-klog \
--enable-diagtools \
--enable-mmgrok \
--enable-gnutls \
--enable-omstdout \
--enable-pmlastmsg \

9
README.md

@ -63,7 +63,10 @@ Ubuntu
Note: this list is (obviously) incomplete. We intend to complete it as we
have more information and install additional systems.
sudo apt-get install libdbi-dev
sudo apt-get install libdbi-dev libmysqlclient-dev postgresql-client
for KSI, from the Adiscon PPA:
sudo apt-get install libksi0 libksi-devel
openSUSE 13
@ -102,7 +105,7 @@ Contributions to rsyslog are very welcome. Fork and send us your Pull Requests.
For more information about contributing, see the
[CONTRIBUTING](CONTRIBUTING.md) file.
Note that it is esay to add output plugins using languages like Python or
Note that it is easy to add output plugins using languages like Python or
Perl. So if you need to connect to a system which is not yet supported, you
can easily do so via an external plugin. For more information see the
[README](plugins/external/README.md) file in the external plugin directory.
@ -118,7 +121,7 @@ Project Philosophy
==================
We are an open source project in all aspects and very open to outside feedback
and contribution. We base our work on standards and try to solve all real-world
needs (of course, we occasionally fail tackeling actually all needs ;)). While
needs (of course, we occasionally fail tackling actually all needs ;)). While
the project is primarily sponsored by Adiscon, technical development is
independent from company goals and most decisions are solely based on mailing
list discussion results. There is an active community around rsyslog.

43
action.c

@ -306,6 +306,7 @@ rsRetVal actionDestruct(action_t * const pThis)
pThis->pMod->freeInstance(pThis->pModData);
pthread_mutex_destroy(&pThis->mutAction);
pthread_mutex_destroy(&pThis->mutWrkrDataTable);
d_free(pThis->pszName);
d_free(pThis->ppTpl);
d_free(pThis->peParamPassing);
@ -360,6 +361,7 @@ rsRetVal actionConstruct(action_t **ppThis)
pThis->tLastOccur = datetime.GetTime(NULL); /* done once per action on startup only */
pThis->iActionNbr = iActionNbr;
pthread_mutex_init(&pThis->mutAction, NULL);
pthread_mutex_init(&pThis->mutWrkrDataTable, NULL);
INIT_ATOMIC_HELPER_MUT(pThis->mutCAS);
/* indicate we have a new action */
@ -778,6 +780,7 @@ actionCheckAndCreateWrkrInstance(action_t * const pThis, wti_t * const pWti)
/* maintain worker data table -- only needed if wrkrHUP is requested! */
pthread_mutex_lock(&pThis->mutWrkrDataTable);
int freeSpot;
for(freeSpot = 0 ; freeSpot < pThis->wrkrDataTableSize ; ++freeSpot)
if(pThis->wrkrDataTable[freeSpot] == NULL)
@ -791,6 +794,7 @@ actionCheckAndCreateWrkrInstance(action_t * const pThis, wti_t * const pWti)
dbgprintf("DDDD: writing data to table spot %d\n", freeSpot);
pThis->wrkrDataTable[freeSpot] = pWti->actWrkrInfo[pThis->iActionNbr].actWrkrData;
pThis->nWrkr++;
pthread_mutex_unlock(&pThis->mutWrkrDataTable);
DBGPRINTF("wti %p: created action worker instance %d for "
"action %d\n", pWti, pThis->nWrkr, pThis->iActionNbr);
}
@ -978,15 +982,20 @@ releaseDoActionParams(action_t *__restrict__ const pAction, wti_t *__restrict__
switch(pAction->peParamPassing[j]) {
case ACT_ARRAY_PASSING:
ppMsgs = (uchar***) pWrkrInfo->p.nontx.actParams[0].param;
if(((uchar**)ppMsgs)[j] != NULL) {
jArr = 0;
while(ppMsgs[j][jArr] != NULL) {
free(ppMsgs[j][jArr]);
ppMsgs[j][jArr] = NULL;
++jArr;
/* if we every use array passing mode again, we need to check
* this code. It hasn't been used since refactoring for v7.
*/
if(ppMsgs != NULL) {
if(((uchar**)ppMsgs)[j] != NULL) {
jArr = 0;
while(ppMsgs[j][jArr] != NULL) {
free(ppMsgs[j][jArr]);
ppMsgs[j][jArr] = NULL;
++jArr;
}
free(((uchar**)ppMsgs)[j]);
((uchar**)ppMsgs)[j] = NULL;
}
free(((uchar**)ppMsgs)[j]);
((uchar**)ppMsgs)[j] = NULL;
}
break;
case ACT_JSON_PASSING:
@ -1291,7 +1300,7 @@ processMsgMain(action_t *__restrict__ const pAction,
{
DEFiRet;
iRet = prepareDoActionParams(pAction, pWti, pMsg, ttNow);
CHKiRet(prepareDoActionParams(pAction, pWti, pMsg, ttNow));
if(pAction->isTransactional) {
pWti->actWrkrInfo[pAction->iActionNbr].pAction = pAction;
@ -1332,7 +1341,10 @@ processBatchMain(void *__restrict__ const pVoid,
for(i = 0 ; i < batchNumMsgs(pBatch) && !*pWti->pbShutdownImmediate ; ++i) {
if(batchIsValidElem(pBatch, i)) {
iRet = processMsgMain(pAction, pWti, pBatch->pElem[i].pMsg, &ttNow);
/* we do not check error state below, because aborting would be
* more harmful than continuing.
*/
processMsgMain(pAction, pWti, pBatch->pElem[i].pMsg, &ttNow);
batchSetElemState(pBatch, i, BATCH_STATE_COMM);
}
}
@ -1349,6 +1361,7 @@ void
actionRemoveWorker(action_t *const __restrict__ pAction,
void *const __restrict__ actWrkrData)
{
pthread_mutex_lock(&pAction->mutWrkrDataTable);
pAction->nWrkr--;
for(int w = 0 ; w < pAction->wrkrDataTableSize ; ++w) {
if(pAction->wrkrDataTable[w] == actWrkrData) {
@ -1356,6 +1369,7 @@ actionRemoveWorker(action_t *const __restrict__ pAction,
break; /* done */
}
}
pthread_mutex_unlock(&pAction->mutWrkrDataTable);
}
@ -1377,14 +1391,21 @@ actionCallHUPHdlr(action_t * const pAction)
}
if(pAction->pMod->doHUPWrkr != NULL) {
pthread_mutex_lock(&pAction->mutWrkrDataTable);
for(int i = 0 ; i < pAction->wrkrDataTableSize ; ++i) {
dbgprintf("HUP: table entry %d: %p %s\n", i,
pAction->wrkrDataTable[i],
pAction->wrkrDataTable[i] == NULL ? "[unused]" : "");
if(pAction->wrkrDataTable[i] != NULL) {
CHKiRet(pAction->pMod->doHUPWrkr(pAction->wrkrDataTable[i]));
const rsRetVal localRet
= pAction->pMod->doHUPWrkr(pAction->wrkrDataTable[i]);
if(localRet != RS_RET_OK) {
DBGPRINTF("HUP handler returned error state %d - "
"ignored\n", localRet);
}
}
}
pthread_mutex_unlock(&pAction->mutWrkrDataTable);
}
finalize_it:

1
action.h

@ -74,6 +74,7 @@ struct action_s {
uchar *pszName; /* action name */
DEF_ATOMIC_HELPER_MUT(mutCAS)
/* for per-worker HUP processing */
pthread_mutex_t mutWrkrDataTable; /* protects table structures */
void **wrkrDataTable;
int wrkrDataTableSize;
int nWrkr;

4
compat/Makefile.in

@ -197,6 +197,8 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GNUTLS_CFLAGS = @GNUTLS_CFLAGS@
GNUTLS_LIBS = @GNUTLS_LIBS@
GREP = @GREP@
@ -237,6 +239,8 @@ LIBM = @LIBM@
LIBMONGO_CLIENT_CFLAGS = @LIBMONGO_CLIENT_CFLAGS@
LIBMONGO_CLIENT_LIBS = @LIBMONGO_CLIENT_LIBS@
LIBOBJS = @LIBOBJS@
LIBRDKAFKA_CFLAGS = @LIBRDKAFKA_CFLAGS@
LIBRDKAFKA_LIBS = @LIBRDKAFKA_LIBS@
LIBS = @LIBS@
LIBSYSTEMD_JOURNAL_CFLAGS = @LIBSYSTEMD_JOURNAL_CFLAGS@
LIBSYSTEMD_JOURNAL_LIBS = @LIBSYSTEMD_JOURNAL_LIBS@

640
configure

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for rsyslog 8.14.0.
# Generated by GNU Autoconf 2.69 for rsyslog 8.15.0.
#
# Report bugs to <rsyslog@lists.adiscon.com>.
#
@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='rsyslog'
PACKAGE_TARNAME='rsyslog'
PACKAGE_VERSION='8.14.0'
PACKAGE_STRING='rsyslog 8.14.0'
PACKAGE_VERSION='8.15.0'
PACKAGE_STRING='rsyslog 8.15.0'
PACKAGE_BUGREPORT='rsyslog@lists.adiscon.com'
PACKAGE_URL=''
@ -667,6 +667,8 @@ LIBMONGO_CLIENT_LIBS
LIBMONGO_CLIENT_CFLAGS
ENABLE_OMKAFKA_FALSE
ENABLE_OMKAFKA_TRUE
LIBRDKAFKA_LIBS
LIBRDKAFKA_CFLAGS
ENABLE_OMHDFS_FALSE
ENABLE_OMHDFS_TRUE
ENABLE_MMSNMPTRAPD_FALSE
@ -675,6 +677,8 @@ ENABLE_OMUXSOCK_FALSE
ENABLE_OMUXSOCK_TRUE
ENABLE_OMRULESET_FALSE
ENABLE_OMRULESET_TRUE
ENABLE_PMPANNGFW_FALSE
ENABLE_PMPANNGFW_TRUE
ENABLE_PMSNARE_FALSE
ENABLE_PMSNARE_TRUE
ENABLE_PMAIXFORWARDEDFROM_FALSE
@ -746,6 +750,10 @@ ENABLE_MMANON_FALSE
ENABLE_MMANON_TRUE
ENABLE_MMAUDIT_FALSE
ENABLE_MMAUDIT_TRUE
GLIB_LIBS
GLIB_CFLAGS
ENABLE_MMGROK_FALSE
ENABLE_MMGROK_TRUE
ENABLE_MMJSONPARSE_FALSE
ENABLE_MMJSONPARSE_TRUE
ENABLE_MMNORMALIZE_FALSE
@ -1022,6 +1030,7 @@ enable_mail
enable_imdiag
enable_mmnormalize
enable_mmjsonparse
enable_mmgrok
enable_mmaudit
enable_mmanon
enable_mmutf8fix
@ -1050,6 +1059,7 @@ enable_pmcisconames
enable_pmciscoios
enable_pmaixforwardedfrom
enable_pmsnare
enable_pmpanngfw
enable_omruleset
enable_omuxsock
enable_mmsnmptrapd
@ -1108,6 +1118,8 @@ LIBLOGGING_STDLOG_CFLAGS
LIBLOGGING_STDLOG_LIBS
LIBLOGGING_CFLAGS
LIBLOGGING_LIBS
LIBRDKAFKA_CFLAGS
LIBRDKAFKA_LIBS
LIBMONGO_CLIENT_CFLAGS
LIBMONGO_CLIENT_LIBS
CZMQ_CFLAGS
@ -1656,7 +1668,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures rsyslog 8.14.0 to adapt to many kinds of systems.
\`configure' configures rsyslog 8.15.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1726,7 +1738,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of rsyslog 8.14.0:";;
short | recursive ) echo "Configuration of rsyslog 8.15.0:";;
esac
cat <<\_ACEOF
@ -1790,6 +1802,7 @@ Optional Features:
--enable-imdiag Enable imdiag [default=no]
--enable-mmnormalize Enable building mmnormalize support [default=no]
--enable-mmjsonparse Enable building mmjsonparse support [default=no]
--enable-mmgrok Enable building mmgrok support [default=no]
--enable-mmaudit Enable building mmaudit support [default=no]
--enable-mmanon Enable building mmanon support [default=no]
--enable-mmutf8fix Enable building mmutf8fix support [default=no]
@ -1823,6 +1836,8 @@ Optional Features:
--enable-pmaixforwardedfrom
Compiles aixforwardedfrom parser module [default=no]
--enable-pmsnare Compiles snare parser module [default=no]
--enable-pmpanngfw Compiles Palo Alto Networks parser module
[default=no]
--enable-omruleset Compiles ruleset forwarding module [default=no]
--enable-omuxsock Compiles omuxsock module [default=no]
--enable-mmsnmptrapd Compiles mmsnmptrapd module [default=no]
@ -1926,6 +1941,10 @@ Some influential environment variables:
C compiler flags for LIBLOGGING, overriding pkg-config
LIBLOGGING_LIBS
linker flags for LIBLOGGING, overriding pkg-config
LIBRDKAFKA_CFLAGS
C compiler flags for LIBRDKAFKA, overriding pkg-config
LIBRDKAFKA_LIBS
linker flags for LIBRDKAFKA, overriding pkg-config
LIBMONGO_CLIENT_CFLAGS
C compiler flags for LIBMONGO_CLIENT, overriding pkg-config
LIBMONGO_CLIENT_LIBS
@ -2007,7 +2026,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
rsyslog configure 8.14.0
rsyslog configure 8.15.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -2587,7 +2606,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by rsyslog $as_me 8.14.0, which was
It was created by rsyslog $as_me 8.15.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -3450,7 +3469,7 @@ fi
# Define the identity of the package.
PACKAGE='rsyslog'
VERSION='8.14.0'
VERSION='8.15.0'
cat >>confdefs.h <<_ACEOF
@ -13609,6 +13628,66 @@ $as_echo "yes" >&6; }
fi
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSON_C" >&5
$as_echo_n "checking for JSON_C... " >&6; }
if test -n "$JSON_C_CFLAGS"; then
pkg_cv_JSON_C_CFLAGS="$JSON_C_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libfastjson\""; } >&5
($PKG_CONFIG --exists --print-errors "libfastjson") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_CFLAGS=`$PKG_CONFIG --cflags "libfastjson" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test -n "$JSON_C_LIBS"; then
pkg_cv_JSON_C_LIBS="$JSON_C_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libfastjson\""; } >&5
($PKG_CONFIG --exists --print-errors "libfastjson") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_LIBS=`$PKG_CONFIG --libs "libfastjson" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
JSON_C_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libfastjson" 2>&1`
else
JSON_C_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libfastjson" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$JSON_C_PKG_ERRORS" >&5
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSON_C" >&5
$as_echo_n "checking for JSON_C... " >&6; }
@ -13864,6 +13943,274 @@ $as_echo "yes" >&6; }
fi
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSON_C" >&5
$as_echo_n "checking for JSON_C... " >&6; }
if test -n "$JSON_C_CFLAGS"; then
pkg_cv_JSON_C_CFLAGS="$JSON_C_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json\""; } >&5
($PKG_CONFIG --exists --print-errors "json") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_CFLAGS=`$PKG_CONFIG --cflags "json" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test -n "$JSON_C_LIBS"; then
pkg_cv_JSON_C_LIBS="$JSON_C_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json\""; } >&5
($PKG_CONFIG --exists --print-errors "json") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_LIBS=`$PKG_CONFIG --libs "json" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
JSON_C_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "json" 2>&1`
else
JSON_C_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "json" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$JSON_C_PKG_ERRORS" >&5
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSON_C" >&5
$as_echo_n "checking for JSON_C... " >&6; }
if test -n "$JSON_C_CFLAGS"; then
pkg_cv_JSON_C_CFLAGS="$JSON_C_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
($PKG_CONFIG --exists --print-errors "json-c") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_CFLAGS=`$PKG_CONFIG --cflags "json-c" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test -n "$JSON_C_LIBS"; then
pkg_cv_JSON_C_LIBS="$JSON_C_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
($PKG_CONFIG --exists --print-errors "json-c") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_LIBS=`$PKG_CONFIG --libs "json-c" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
JSON_C_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "json-c" 2>&1`
else
JSON_C_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "json-c" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$JSON_C_PKG_ERRORS" >&5
as_fn_error $? "Package requirements (json-c) were not met:
$JSON_C_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables JSON_C_CFLAGS
and JSON_C_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
Alternatively, you may set the environment variables JSON_C_CFLAGS
and JSON_C_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details" "$LINENO" 5; }
else
JSON_C_CFLAGS=$pkg_cv_JSON_C_CFLAGS
JSON_C_LIBS=$pkg_cv_JSON_C_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JSON_C" >&5
$as_echo_n "checking for JSON_C... " >&6; }
if test -n "$JSON_C_CFLAGS"; then
pkg_cv_JSON_C_CFLAGS="$JSON_C_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
($PKG_CONFIG --exists --print-errors "json-c") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_CFLAGS=`$PKG_CONFIG --cflags "json-c" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test -n "$JSON_C_LIBS"; then
pkg_cv_JSON_C_LIBS="$JSON_C_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-c\""; } >&5
($PKG_CONFIG --exists --print-errors "json-c") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_JSON_C_LIBS=`$PKG_CONFIG --libs "json-c" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
JSON_C_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "json-c" 2>&1`
else
JSON_C_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "json-c" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$JSON_C_PKG_ERRORS" >&5
as_fn_error $? "Package requirements (json-c) were not met:
$JSON_C_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables JSON_C_CFLAGS
and JSON_C_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
Alternatively, you may set the environment variables JSON_C_CFLAGS
and JSON_C_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details" "$LINENO" 5; }
else
JSON_C_CFLAGS=$pkg_cv_JSON_C_CFLAGS
JSON_C_LIBS=$pkg_cv_JSON_C_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
else
JSON_C_CFLAGS=$pkg_cv_JSON_C_CFLAGS
JSON_C_LIBS=$pkg_cv_JSON_C_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
else
JSON_C_CFLAGS=$pkg_cv_JSON_C_CFLAGS
JSON_C_LIBS=$pkg_cv_JSON_C_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
save_CFLAGS="$CFLAGS"
save_LIBS="$LIBS"
@ -18789,6 +19136,34 @@ else
fi
# mmgrok
# Check whether --enable-mmgrok was given.
if test "${enable_mmgrok+set}" = set; then :
enableval=$enable_mmgrok; case "${enableval}" in
yes) enable_mmgrok="yes" ;;
no) enable_mmgrok="no" ;;
*) as_fn_error $? "bad value ${enableval} for --enable-mmgrok" "$LINENO" 5 ;;
esac
else
enable_mmgrok=no
fi
if test "x$enable_mmgrok" = "xyes"; then
GLIB_CFLAGS="$(pkg-config --cflags glib-2.0)"
GLIB_LIBS="$(pkg-config --libs glib-2.0)"
fi
if test x$enable_mmgrok = xyes; then
ENABLE_MMGROK_TRUE=
ENABLE_MMGROK_FALSE='#'
else
ENABLE_MMGROK_TRUE='#'
ENABLE_MMGROK_FALSE=
fi
# mmaudit
# Check whether --enable-mmaudit was given.
if test "${enable_mmaudit+set}" = set; then :
@ -19323,12 +19698,12 @@ if test -n "$GT_KSI_CFLAGS"; then
pkg_cv_GT_KSI_CFLAGS="$GT_KSI_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi >= 3.2.2.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi >= 3.2.2.0") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi >= 3.4.0.2\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi >= 3.4.0.2") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_GT_KSI_CFLAGS=`$PKG_CONFIG --cflags "libksi >= 3.2.2.0" 2>/dev/null`
pkg_cv_GT_KSI_CFLAGS=`$PKG_CONFIG --cflags "libksi >= 3.4.0.2" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -19340,12 +19715,12 @@ if test -n "$GT_KSI_LIBS"; then
pkg_cv_GT_KSI_LIBS="$GT_KSI_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi >= 3.2.2.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi >= 3.2.2.0") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi >= 3.4.0.2\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi >= 3.4.0.2") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_GT_KSI_LIBS=`$PKG_CONFIG --libs "libksi >= 3.2.2.0" 2>/dev/null`
pkg_cv_GT_KSI_LIBS=`$PKG_CONFIG --libs "libksi >= 3.4.0.2" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -19366,14 +19741,14 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libksi >= 3.2.2.0" 2>&1`
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libksi >= 3.4.0.2" 2>&1`
else
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libksi >= 3.2.2.0" 2>&1`
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libksi >= 3.4.0.2" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$GT_KSI_PKG_ERRORS" >&5
as_fn_error $? "Package requirements (libksi >= 3.2.2.0) were not met:
as_fn_error $? "Package requirements (libksi >= 3.4.0.2) were not met:
$GT_KSI_PKG_ERRORS
@ -19414,12 +19789,12 @@ if test -n "$GT_KSI_CFLAGS"; then
pkg_cv_GT_KSI_CFLAGS="$GT_KSI_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi < 3.3.0.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi < 3.3.0.0") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi < 3.5.0.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi < 3.5.0.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_GT_KSI_CFLAGS=`$PKG_CONFIG --cflags "libksi < 3.3.0.0" 2>/dev/null`
pkg_cv_GT_KSI_CFLAGS=`$PKG_CONFIG --cflags "libksi < 3.5.0.0" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -19431,12 +19806,12 @@ if test -n "$GT_KSI_LIBS"; then
pkg_cv_GT_KSI_LIBS="$GT_KSI_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi < 3.3.0.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi < 3.3.0.0") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libksi < 3.5.0.0\""; } >&5
($PKG_CONFIG --exists --print-errors "libksi < 3.5.0.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_GT_KSI_LIBS=`$PKG_CONFIG --libs "libksi < 3.3.0.0" 2>/dev/null`
pkg_cv_GT_KSI_LIBS=`$PKG_CONFIG --libs "libksi < 3.5.0.0" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -19457,14 +19832,14 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libksi < 3.3.0.0" 2>&1`
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libksi < 3.5.0.0" 2>&1`
else
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libksi < 3.3.0.0" 2>&1`
GT_KSI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libksi < 3.5.0.0" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$GT_KSI_PKG_ERRORS" >&5
as_fn_error $? "Package requirements (libksi < 3.3.0.0) were not met:
as_fn_error $? "Package requirements (libksi < 3.5.0.0) were not met:
$GT_KSI_PKG_ERRORS
@ -20469,6 +20844,29 @@ fi
# settings for pmpanngfw
# Check whether --enable-pmpanngfw was given.
if test "${enable_pmpanngfw+set}" = set; then :
enableval=$enable_pmpanngfw; case "${enableval}" in
yes) enable_pmpanngfw="yes" ;;
no) enable_pmpanngfw="no" ;;
*) as_fn_error $? "bad value ${enableval} for --enable-pmpanngfw" "$LINENO" 5 ;;
esac
else
enable_pmpanngfw=no
fi
if test x$enable_pmpanngfw = xyes; then
ENABLE_PMPANNGFW_TRUE=
ENABLE_PMPANNGFW_FALSE='#'
else
ENABLE_PMPANNGFW_TRUE='#'
ENABLE_PMPANNGFW_FALSE=
fi
# settings for omruleset
# Check whether --enable-omruleset was given.
if test "${enable_omruleset+set}" = set; then :
@ -20589,8 +20987,176 @@ else
fi
if test "x$enable_omkafka"; then
#PKG_CHECK_MODULES(LIBRDKAFKA, librdkafka)
if test "x$enable_omkafka" = "xyes"; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBRDKAFKA" >&5
$as_echo_n "checking for LIBRDKAFKA... " >&6; }
if test -n "$LIBRDKAFKA_CFLAGS"; then
pkg_cv_LIBRDKAFKA_CFLAGS="$LIBRDKAFKA_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librdkafka\""; } >&5
($PKG_CONFIG --exists --print-errors "librdkafka") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_LIBRDKAFKA_CFLAGS=`$PKG_CONFIG --cflags "librdkafka" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test -n "$LIBRDKAFKA_LIBS"; then
pkg_cv_LIBRDKAFKA_LIBS="$LIBRDKAFKA_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librdkafka\""; } >&5
($PKG_CONFIG --exists --print-errors "librdkafka") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_LIBRDKAFKA_LIBS=`$PKG_CONFIG --libs "librdkafka" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
fi
else
pkg_failed=untried
fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
LIBRDKAFKA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "librdkafka" 2>&1`
else
LIBRDKAFKA_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "librdkafka" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$LIBRDKAFKA_PKG_ERRORS" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for rd_kafka_produce in -lrdkafka" >&5
$as_echo_n "checking for rd_kafka_produce in -lrdkafka... " >&6; }
if ${ac_cv_lib_rdkafka_rd_kafka_produce+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lrdkafka $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char rd_kafka_produce ();
int
main ()
{
return rd_kafka_produce ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_rdkafka_rd_kafka_produce=yes
else
ac_cv_lib_rdkafka_rd_kafka_produce=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rdkafka_rd_kafka_produce" >&5
$as_echo "$ac_cv_lib_rdkafka_rd_kafka_produce" >&6; }
if test "x$ac_cv_lib_rdkafka_rd_kafka_produce" = xyes; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: librdkafka is missing but library present, using -lrdkafka" >&5
$as_echo "$as_me: WARNING: librdkafka is missing but library present, using -lrdkafka" >&2;}
LIBRDKAFKA_LIBS=-lrdkafka
else
as_fn_error $? "could not find rdkafka library" "$LINENO" 5
fi
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for rd_kafka_produce in -lrdkafka" >&5
$as_echo_n "checking for rd_kafka_produce in -lrdkafka... " >&6; }
if ${ac_cv_lib_rdkafka_rd_kafka_produce+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lrdkafka $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char rd_kafka_produce ();
int
main ()
{
return rd_kafka_produce ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_rdkafka_rd_kafka_produce=yes
else
ac_cv_lib_rdkafka_rd_kafka_produce=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rdkafka_rd_kafka_produce" >&5
$as_echo "$ac_cv_lib_rdkafka_rd_kafka_produce" >&6; }
if test "x$ac_cv_lib_rdkafka_rd_kafka_produce" = xyes; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: librdkafka is missing but library present, using -lrdkafka" >&5
$as_echo "$as_me: WARNING: librdkafka is missing but library present, using -lrdkafka" >&2;}
LIBRDKAFKA_LIBS=-lrdkafka
else
as_fn_error $? "could not find rdkafka library" "$LINENO" 5
fi
else
LIBRDKAFKA_CFLAGS=$pkg_cv_LIBRDKAFKA_CFLAGS
LIBRDKAFKA_LIBS=$pkg_cv_LIBRDKAFKA_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
for ac_header in librdkafka/rdkafka.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "librdkafka/rdkafka.h" "ac_cv_header_librdkafka_rdkafka_h" "$ac_includes_default"
@ -21869,7 +22435,7 @@ if test "x$have_to_generate_man_pages" = "xyes" && test "x$RST2MAN" = "xfalse";
fi
ac_config_files="$ac_config_files Makefile runtime/Makefile compat/Makefile grammar/Makefile tools/Makefile plugins/imudp/Makefile plugins/imtcp/Makefile plugins/im3195/Makefile plugins/imgssapi/Makefile plugins/imuxsock/Makefile plugins/imjournal/Makefile plugins/immark/Makefile plugins/imklog/Makefile plugins/omhdfs/Makefile plugins/omkafka/Makefile plugins/omprog/Makefile plugins/mmexternal/Makefile plugins/omstdout/Makefile plugins/omjournal/Makefile plugins/pmciscoios/Makefile plugins/omruleset/Makefile plugins/omuxsock/Makefile plugins/imfile/Makefile plugins/imsolaris/Makefile plugins/imptcp/Makefile plugins/impstats/Makefile plugins/imrelp/Makefile plugins/imdiag/Makefile plugins/omtesting/Makefile plugins/omgssapi/Makefile plugins/ommysql/Makefile plugins/ompgsql/Makefile plugins/omrelp/Makefile plugins/omlibdbi/Makefile plugins/ommail/Makefile plugins/omsnmp/Makefile plugins/omudpspoof/Makefile plugins/ommongodb/Makefile plugins/mmnormalize/Makefile plugins/mmjsonparse/Makefile plugins/mmaudit/Makefile plugins/mmanon/Makefile plugins/mmutf8fix/Makefile plugins/mmfields/Makefile plugins/mmpstrucdata/Makefile plugins/omelasticsearch/Makefile plugins/mmsnmptrapd/Makefile plugins/pmlastmsg/Makefile contrib/pmsnare/Makefile contrib/pmaixforwardedfrom/Makefile contrib/omhiredis/Makefile contrib/omrabbitmq/Makefile contrib/imkmsg/Makefile contrib/mmcount/Makefile contrib/omzmq3/Makefile contrib/omczmq/Makefile contrib/imzmq3/Makefile contrib/imczmq/Makefile contrib/mmsequence/Makefile contrib/mmrfc5424addhmac/Makefile contrib/pmcisconames/Makefile contrib/omhttpfs/Makefile tests/Makefile"
ac_config_files="$ac_config_files Makefile runtime/Makefile compat/Makefile grammar/Makefile tools/Makefile plugins/imudp/Makefile plugins/imtcp/Makefile plugins/im3195/Makefile plugins/imgssapi/Makefile plugins/imuxsock/Makefile plugins/imjournal/Makefile plugins/immark/Makefile plugins/imklog/Makefile plugins/omhdfs/Makefile plugins/omkafka/Makefile plugins/omprog/Makefile plugins/mmexternal/Makefile plugins/omstdout/Makefile plugins/omjournal/Makefile plugins/pmciscoios/Makefile plugins/omruleset/Makefile plugins/omuxsock/Makefile plugins/imfile/Makefile plugins/imsolaris/Makefile plugins/imptcp/Makefile plugins/impstats/Makefile plugins/imrelp/Makefile plugins/imdiag/Makefile plugins/omtesting/Makefile plugins/omgssapi/Makefile plugins/ommysql/Makefile plugins/ompgsql/Makefile plugins/omrelp/Makefile plugins/omlibdbi/Makefile plugins/ommail/Makefile plugins/omsnmp/Makefile plugins/omudpspoof/Makefile plugins/ommongodb/Makefile plugins/mmnormalize/Makefile plugins/mmjsonparse/Makefile plugins/mmaudit/Makefile plugins/mmanon/Makefile plugins/mmutf8fix/Makefile plugins/mmfields/Makefile plugins/mmpstrucdata/Makefile plugins/omelasticsearch/Makefile plugins/mmsnmptrapd/Makefile plugins/pmlastmsg/Makefile contrib/pmsnare/Makefile contrib/pmpanngfw/Makefile contrib/pmaixforwardedfrom/Makefile contrib/omhiredis/Makefile contrib/omrabbitmq/Makefile contrib/imkmsg/Makefile contrib/mmgrok/Makefile contrib/mmcount/Makefile contrib/omzmq3/Makefile contrib/omczmq/Makefile contrib/imzmq3/Makefile contrib/imczmq/Makefile contrib/mmsequence/Makefile contrib/mmrfc5424addhmac/Makefile contrib/pmcisconames/Makefile contrib/omhttpfs/Makefile tests/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -22136,6 +22702,10 @@ if test -z "${ENABLE_MMJSONPARSE_TRUE}" && test -z "${ENABLE_MMJSONPARSE_FALSE}"
as_fn_error $? "conditional \"ENABLE_MMJSONPARSE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ENABLE_MMGROK_TRUE}" && test -z "${ENABLE_MMGROK_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_MMGROK\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ENABLE_MMAUDIT_TRUE}" && test -z "${ENABLE_MMAUDIT_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_MMAUDIT\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@ -22248,6 +22818,10 @@ if test -z "${ENABLE_PMSNARE_TRUE}" && test -z "${ENABLE_PMSNARE_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_PMSNARE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ENABLE_PMPANNGFW_TRUE}" && test -z "${ENABLE_PMPANNGFW_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_PMPANNGFW\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ENABLE_OMRULESET_TRUE}" && test -z "${ENABLE_OMRULESET_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_OMRULESET\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@ -22705,7 +23279,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by rsyslog $as_me 8.14.0, which was
This file was extended by rsyslog $as_me 8.15.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -22771,7 +23345,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
rsyslog config.status 8.14.0
rsyslog config.status 8.15.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@ -23229,10 +23803,12 @@ do
"plugins/mmsnmptrapd/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/mmsnmptrapd/Makefile" ;;
"plugins/pmlastmsg/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/pmlastmsg/Makefile" ;;
"contrib/pmsnare/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/pmsnare/Makefile" ;;
"contrib/pmpanngfw/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/pmpanngfw/Makefile" ;;
"contrib/pmaixforwardedfrom/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/pmaixforwardedfrom/Makefile" ;;
"contrib/omhiredis/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/omhiredis/Makefile" ;;
"contrib/omrabbitmq/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/omrabbitmq/Makefile" ;;
"contrib/imkmsg/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/imkmsg/Makefile" ;;
"contrib/mmgrok/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/mmgrok/Makefile" ;;
"contrib/mmcount/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/mmcount/Makefile" ;;
"contrib/omzmq3/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/omzmq3/Makefile" ;;
"contrib/omczmq/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/omczmq/Makefile" ;;
@ -24653,10 +25229,12 @@ echo " pmcisconames module will be compiled: $enable_pmcisconames"
echo " pmciscoios module will be compiled: $enable_pmciscoios"
echo " pmaixforwardedfrom module w.be compiled: $enable_pmaixforwardedfrom"
echo " pmsnare module will be compiled: $enable_pmsnare"
echo " pmpanngfw module will be compiled: $enable_pmpanngfw"
echo
echo "---{ message modification modules }---"
echo " mmnormalize module will be compiled: $enable_mmnormalize"
echo " mmjsonparse module will be compiled: $enable_mmjsonparse"
echo " mmgrok module will be compiled: $enable_mmgrok"
echo " mmjaduit module will be compiled: $enable_mmaudit"
echo " mmsnmptrapd module will be compiled: $enable_mmsnmptrapd"
echo " mmutf8fix enabled: $enable_mmutf8fix"

58
configure.ac

@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT([rsyslog],[8.14.0],[rsyslog@lists.adiscon.com])
AC_INIT([rsyslog],[8.15.0],[rsyslog@lists.adiscon.com])
AM_INIT_AUTOMAKE([subdir-objects])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
@ -26,8 +26,10 @@ PKG_PROG_PKG_CONFIG
# modules we require
PKG_CHECK_MODULES(LIBESTR, libestr >= 0.1.9)
PKG_CHECK_MODULES([JSON_C], [json],, [
PKG_CHECK_MODULES([JSON_C], [json-c],,)
PKG_CHECK_MODULES([JSON_C], [libfastjson],, [
PKG_CHECK_MODULES([JSON_C], [json],, [
PKG_CHECK_MODULES([JSON_C], [json-c],,)
])
])
save_CFLAGS="$CFLAGS"