Browse Source

Imported Upstream version 7.1.9

upstream upstream/7.1.9
Michael Biebl 10 years ago
parent
commit
5b0595cc98
  1. 998
      ChangeLog
  2. 69
      Makefile.am
  3. 158
      Makefile.in
  4. 7981
      aclocal.m4
  5. 790
      action.c
  6. 19
      action.h
  7. 9
      config.guess
  8. 25
      config.h.in
  9. 19
      config.sub
  10. 3746
      configure
  11. 380
      configure.ac
  12. 6
      dirty.h
  13. 23
      doc/Makefile.am
  14. 61
      doc/Makefile.in
  15. 336
      doc/dev_oplugins.html
  16. 56
      doc/free_support.html
  17. 5
      doc/how2help.html
  18. 153
      doc/imfile.html
  19. 5
      doc/imklog.html
  20. 48
      doc/imkmsg.html
  21. 8
      doc/impstats.html
  22. 95
      doc/imptcp.html
  23. 35
      doc/imrelp.html
  24. 103
      doc/imtcp.html
  25. 99
      doc/imudp.html
  26. 215
      doc/imuxsock.html
  27. 22
      doc/manual.html
  28. 222
      doc/messageparser.html
  29. 56
      doc/mmnormalize.html
  30. 9
      doc/mmsnmptrapd.html
  31. 167
      doc/omfile.html
  32. 118
      doc/omfwd.html
  33. 69
      doc/omhdfs.html
  34. 56
      doc/omlibdbi.html
  35. 46
      doc/ommysql.html
  36. 62
      doc/ompipe.html
  37. 43
      doc/omprog.html
  38. 148
      doc/omsnmp.html
  39. 64
      doc/omusrmsg.html
  40. 2
      doc/omuxsock.html
  41. 7
      doc/pmlastmsg.html
  42. 317
      doc/property_replacer.html
  43. BIN
      doc/queue_msg_state.jpeg
  44. 13
      doc/rainerscript.html
  45. 37
      doc/rsconf1_abortonuncleanconfig.html
  46. 35
      doc/rsconf1_maxopenfiles.html
  47. 67
      doc/rsconf1_omfileforcechown.html
  48. 53
      doc/rscript_abnf.html
  49. 75
      doc/rsyslog_conf.html
  50. 35
      doc/rsyslog_conf_basic_structure.html
  51. 32
      doc/rsyslog_conf_file_syntax_differences.html
  52. 185
      doc/rsyslog_conf_filter.html
  53. 66
      doc/rsyslog_conf_global.html
  54. 23
      doc/rsyslog_conf_lines.html
  55. 10
      doc/rsyslog_conf_modules.html
  56. 484
      doc/rsyslog_conf_templates.html
  57. 235
      doc/rsyslog_ng_comparison.html
  58. BIN
      doc/rsyslog_queue_pointers.jpeg
  59. BIN
      doc/rsyslog_queue_pointers2.jpeg
  60. 48
      doc/rsyslog_recording_pri.html
  61. 2
      doc/v4compatibility.html
  62. 199
      doc/v6compatibility.html
  63. 33
      doc/v7compatibility.html
  64. 4
      doc/version_naming.html
  65. 19
      grammar/Makefile.am
  66. 627
      grammar/Makefile.in
  67. 2290
      grammar/grammar.c
  68. 161
      grammar/grammar.h
  69. 212
      grammar/grammar.y
  70. 3345
      grammar/lexer.c
  71. 354
      grammar/lexer.l
  72. 24
      grammar/parserif.h
  73. 3014
      grammar/rainerscript.c
  74. 342
      grammar/rainerscript.h
  75. 38
      java/Makefile.in
  76. 1766
      ltmain.sh
  77. 53
      m4/atomic_operations.m4
  78. 53
      m4/atomic_operations_64bit.m4
  79. 7441
      m4/libtool.m4
  80. 369
      m4/ltoptions.m4
  81. 123
      m4/ltsugar.m4
  82. 23
      m4/ltversion.m4
  83. 98
      m4/lt~obsolete.m4
  84. 19
      outchannel.c
  85. 16
      parse.c
  86. 2
      parse.h
  87. 6
      plugins/cust1/Makefile.am
  88. 478
      plugins/cust1/cust1.c
  89. 38
      plugins/im3195/Makefile.in
  90. 35
      plugins/im3195/im3195.c
  91. 38
      plugins/imdiag/Makefile.in
  92. 36
      plugins/imdiag/imdiag.c
  93. 38
      plugins/imfile/Makefile.in
  94. 558
      plugins/imfile/imfile.c
  95. 38
      plugins/imgssapi/Makefile.in
  96. 34
      plugins/imgssapi/imgssapi.c
  97. 3
      plugins/imklog/Makefile.am
  98. 74
      plugins/imklog/Makefile.in
  99. 256
      plugins/imklog/bsd.c
  100. 293
      plugins/imklog/imklog.c

998
ChangeLog

File diff suppressed because it is too large

69
Makefile.am

@ -1,6 +1,8 @@
sbin_PROGRAMS =
pkglib_LTLIBRARIES =
pkgconfigdir = $(libdir)/pkgconfig
if ENABLE_INET
pkglib_LTLIBRARIES += lmtcpsrv.la lmtcpclt.la
#
@ -68,7 +70,7 @@ EXTRA_DIST = \
contrib/gnutls/key.pem \
rsyslog.service.in
SUBDIRS = doc runtime . plugins/immark plugins/imuxsock plugins/imtcp plugins/imudp plugins/omtesting
SUBDIRS = doc runtime grammar . plugins/immark plugins/imuxsock plugins/imtcp plugins/imudp plugins/omtesting
if ENABLE_RSYSLOGD
SUBDIRS += tools
@ -78,6 +80,10 @@ if ENABLE_IMKLOG
SUBDIRS += plugins/imklog
endif
if ENABLE_IMKMSG
SUBDIRS += plugins/imkmsg
endif
if ENABLE_IMPSTATS
SUBDIRS += plugins/impstats
endif
@ -110,18 +116,10 @@ if ENABLE_SNMP
SUBDIRS += plugins/omsnmp
endif
if ENABLE_CUST1
SUBDIRS += plugins/cust1
endif
if ENABLE_SMCUSTBINDCDR
SUBDIRS += plugins/sm_cust_bindcdr
endif
if ENABLE_IMTEMPLATE
SUBDIRS += plugins/imtemplate
endif
if ENABLE_OMSTDOUT
SUBDIRS += plugins/omstdout
endif
@ -150,14 +148,26 @@ if ENABLE_OMRULESET
SUBDIRS += plugins/omruleset
endif
if ENABLE_OMDBALERTING
SUBDIRS += plugins/omdbalerting
endif
if ENABLE_OMUDPSPOOF
SUBDIRS += plugins/omudpspoof
endif
if ENABLE_OMMONGODB
SUBDIRS += plugins/ommongodb
endif
if ENABLE_OMHIREDIS
SUBDIRS += plugins/omhiredis
endif
if ENABLE_OMZMQ3
SUBDIRS += plugins/omzmq3
endif
if ENABLE_IMZMQ3
SUBDIRS += plugins/imzmq3
endif
if ENABLE_OMUXSOCK
SUBDIRS += plugins/omuxsock
endif
@ -166,8 +176,8 @@ if ENABLE_OMHDFS
SUBDIRS += plugins/omhdfs
endif
if ENABLE_OMTEMPLATE
SUBDIRS += plugins/omtemplate
if ENABLE_ELASTICSEARCH
SUBDIRS += plugins/omelasticsearch
endif
if ENABLE_MMSNMPTRAPD
@ -182,6 +192,10 @@ if ENABLE_IMPTCP
SUBDIRS += plugins/imptcp
endif
if ENABLE_IMTTCP
SUBDIRS += plugins/imttcp
endif
if ENABLE_IMDIAG
SUBDIRS += plugins/imdiag
endif
@ -198,6 +212,18 @@ if ENABLE_RFC3195
SUBDIRS += plugins/im3195
endif
if ENABLE_MMNORMALIZE
SUBDIRS += plugins/mmnormalize
endif
if ENABLE_MMJSONPARSE
SUBDIRS += plugins/mmjsonparse
endif
if ENABLE_MMAUDIT
SUBDIRS += plugins/mmaudit
endif
if ENABLE_ORACLE
SUBDIRS += plugins/omoracle
endif
@ -218,9 +244,9 @@ SUBDIRS += tests
# in a make distcheck is so that we detect code that accidently was not updated
# when some global update happened.
DISTCHECK_CONFIGURE_FLAGS= --enable-gssapi_krb5 \
--enable-gnutls \
--enable-imfile \
--enable-snmp \
--enable-pgsql \
--enable-libdbi \
--enable-mysql \
--enable-relp \
@ -235,16 +261,17 @@ DISTCHECK_CONFIGURE_FLAGS= --enable-gssapi_krb5 \
--enable-omprog \
--enable-imdiag \
--enable-imptcp \
--enable-imttcp \
--enable-omuxsock \
--enable-extended-tests \
--enable-impstats \
--enable-imptcp \
--enable-memcheck \
--enable-pmaixforwardedfrom \
--enable-pmcisconames \
--enable-pmsnare \
--enable-imtemplate \
--enable-omtemplate \
--enable-mmsnmptrapd \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
--enable-elasticsearch \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
# temporarily disable these checks for make distcheck 2012-09-06 rgerhards
# --enable-extended-tests \
# --enable-pgsql \
ACLOCAL_AMFLAGS = -I m4

158
Makefile.in

@ -45,38 +45,44 @@ sbin_PROGRAMS =
@ENABLE_GSSAPI_TRUE@am__append_2 = lmgssutil.la
@ENABLE_RSYSLOGD_TRUE@am__append_3 = tools
@ENABLE_IMKLOG_TRUE@am__append_4 = plugins/imklog
@ENABLE_IMPSTATS_TRUE@am__append_5 = plugins/impstats
@ENABLE_IMSOLARIS_TRUE@am__append_6 = plugins/imsolaris
@ENABLE_GSSAPI_TRUE@am__append_7 = plugins/omgssapi plugins/imgssapi
@ENABLE_RELP_TRUE@am__append_8 = plugins/omrelp plugins/imrelp
@ENABLE_MYSQL_TRUE@am__append_9 = plugins/ommysql
@ENABLE_OMLIBDBI_TRUE@am__append_10 = plugins/omlibdbi
@ENABLE_PGSQL_TRUE@am__append_11 = plugins/ompgsql
@ENABLE_SNMP_TRUE@am__append_12 = plugins/omsnmp
@ENABLE_CUST1_TRUE@am__append_13 = plugins/cust1
@ENABLE_IMKMSG_TRUE@am__append_5 = plugins/imkmsg
@ENABLE_IMPSTATS_TRUE@am__append_6 = plugins/impstats
@ENABLE_IMSOLARIS_TRUE@am__append_7 = plugins/imsolaris
@ENABLE_GSSAPI_TRUE@am__append_8 = plugins/omgssapi plugins/imgssapi
@ENABLE_RELP_TRUE@am__append_9 = plugins/omrelp plugins/imrelp
@ENABLE_MYSQL_TRUE@am__append_10 = plugins/ommysql
@ENABLE_OMLIBDBI_TRUE@am__append_11 = plugins/omlibdbi
@ENABLE_PGSQL_TRUE@am__append_12 = plugins/ompgsql
@ENABLE_SNMP_TRUE@am__append_13 = plugins/omsnmp
@ENABLE_SMCUSTBINDCDR_TRUE@am__append_14 = plugins/sm_cust_bindcdr
@ENABLE_IMTEMPLATE_TRUE@am__append_15 = plugins/imtemplate
@ENABLE_OMSTDOUT_TRUE@am__append_16 = plugins/omstdout
@ENABLE_PMCISCONAMES_TRUE@am__append_17 = plugins/pmcisconames
@ENABLE_PMAIXFORWARDEDFROM_TRUE@am__append_18 = plugins/pmaixforwardedfrom
@ENABLE_PMSNARE_TRUE@am__append_19 = plugins/pmsnare
@ENABLE_PMLASTMSG_TRUE@am__append_20 = plugins/pmlastmsg
@ENABLE_PMRFC3164SD_TRUE@am__append_21 = plugins/pmrfc3164sd
@ENABLE_OMRULESET_TRUE@am__append_22 = plugins/omruleset
@ENABLE_OMDBALERTING_TRUE@am__append_23 = plugins/omdbalerting
@ENABLE_OMUDPSPOOF_TRUE@am__append_24 = plugins/omudpspoof
@ENABLE_OMUXSOCK_TRUE@am__append_25 = plugins/omuxsock
@ENABLE_OMHDFS_TRUE@am__append_26 = plugins/omhdfs
@ENABLE_OMTEMPLATE_TRUE@am__append_27 = plugins/omtemplate
@ENABLE_MMSNMPTRAPD_TRUE@am__append_28 = plugins/mmsnmptrapd
@ENABLE_IMFILE_TRUE@am__append_29 = plugins/imfile
@ENABLE_IMPTCP_TRUE@am__append_30 = plugins/imptcp
@ENABLE_IMDIAG_TRUE@am__append_31 = plugins/imdiag
@ENABLE_MAIL_TRUE@am__append_32 = plugins/ommail
@ENABLE_OMPROG_TRUE@am__append_33 = plugins/omprog
@ENABLE_RFC3195_TRUE@am__append_34 = plugins/im3195
@ENABLE_ORACLE_TRUE@am__append_35 = plugins/omoracle
@ENABLE_GUI_TRUE@am__append_36 = java
@ENABLE_OMSTDOUT_TRUE@am__append_15 = plugins/omstdout
@ENABLE_PMCISCONAMES_TRUE@am__append_16 = plugins/pmcisconames
@ENABLE_PMAIXFORWARDEDFROM_TRUE@am__append_17 = plugins/pmaixforwardedfrom
@ENABLE_PMSNARE_TRUE@am__append_18 = plugins/pmsnare
@ENABLE_PMLASTMSG_TRUE@am__append_19 = plugins/pmlastmsg
@ENABLE_PMRFC3164SD_TRUE@am__append_20 = plugins/pmrfc3164sd
@ENABLE_OMRULESET_TRUE@am__append_21 = plugins/omruleset
@ENABLE_OMUDPSPOOF_TRUE@am__append_22 = plugins/omudpspoof
@ENABLE_OMMONGODB_TRUE@am__append_23 = plugins/ommongodb
@ENABLE_OMHIREDIS_TRUE@am__append_24 = plugins/omhiredis
@ENABLE_OMZMQ3_TRUE@am__append_25 = plugins/omzmq3
@ENABLE_IMZMQ3_TRUE@am__append_26 = plugins/imzmq3
@ENABLE_OMUXSOCK_TRUE@am__append_27 = plugins/omuxsock
@ENABLE_OMHDFS_TRUE@am__append_28 = plugins/omhdfs
@ENABLE_ELASTICSEARCH_TRUE@am__append_29 = plugins/omelasticsearch
@ENABLE_MMSNMPTRAPD_TRUE@am__append_30 = plugins/mmsnmptrapd
@ENABLE_IMFILE_TRUE@am__append_31 = plugins/imfile
@ENABLE_IMPTCP_TRUE@am__append_32 = plugins/imptcp
@ENABLE_IMTTCP_TRUE@am__append_33 = plugins/imttcp
@ENABLE_IMDIAG_TRUE@am__append_34 = plugins/imdiag
@ENABLE_MAIL_TRUE@am__append_35 = plugins/ommail
@ENABLE_OMPROG_TRUE@am__append_36 = plugins/omprog
@ENABLE_RFC3195_TRUE@am__append_37 = plugins/im3195
@ENABLE_MMNORMALIZE_TRUE@am__append_38 = plugins/mmnormalize
@ENABLE_MMJSONPARSE_TRUE@am__append_39 = plugins/mmjsonparse
@ENABLE_MMAUDIT_TRUE@am__append_40 = plugins/mmaudit
@ENABLE_ORACLE_TRUE@am__append_41 = plugins/omoracle
@ENABLE_GUI_TRUE@am__append_42 = java
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
@ -84,11 +90,7 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
ChangeLog INSTALL NEWS compile config.guess config.sub depcomp \
install-sh ltmain.sh missing ylwrap
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/atomic_operations.m4 \
$(top_srcdir)/m4/atomic_operations_64bit.m4 \
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@ -199,20 +201,22 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = doc runtime . plugins/immark plugins/imuxsock \
DIST_SUBDIRS = doc runtime grammar . plugins/immark plugins/imuxsock \
plugins/imtcp plugins/imudp plugins/omtesting tools \
plugins/imklog plugins/impstats plugins/imsolaris \
plugins/omgssapi plugins/imgssapi plugins/omrelp \
plugins/imrelp plugins/ommysql plugins/omlibdbi \
plugins/ompgsql plugins/omsnmp plugins/cust1 \
plugins/sm_cust_bindcdr plugins/imtemplate plugins/omstdout \
plugins/pmcisconames plugins/pmaixforwardedfrom \
plugins/pmsnare plugins/pmlastmsg plugins/pmrfc3164sd \
plugins/omruleset plugins/omdbalerting plugins/omudpspoof \
plugins/omuxsock plugins/omhdfs plugins/omtemplate \
plugins/mmsnmptrapd plugins/imfile plugins/imptcp \
plugins/imdiag plugins/ommail plugins/omprog plugins/im3195 \
plugins/omoracle java tests
plugins/imklog plugins/imkmsg plugins/impstats \
plugins/imsolaris plugins/omgssapi plugins/imgssapi \
plugins/omrelp plugins/imrelp plugins/ommysql plugins/omlibdbi \
plugins/ompgsql plugins/omsnmp plugins/sm_cust_bindcdr \
plugins/omstdout plugins/pmcisconames \
plugins/pmaixforwardedfrom plugins/pmsnare plugins/pmlastmsg \
plugins/pmrfc3164sd plugins/omruleset plugins/omudpspoof \
plugins/ommongodb plugins/omhiredis plugins/omzmq3 \
plugins/imzmq3 plugins/omuxsock plugins/omhdfs \
plugins/omelasticsearch plugins/mmsnmptrapd plugins/imfile \
plugins/imptcp plugins/imttcp plugins/imdiag plugins/ommail \
plugins/omprog plugins/im3195 plugins/mmnormalize \
plugins/mmjsonparse plugins/mmaudit plugins/omoracle java \
tests
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@ -262,7 +266,11 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CURL_CFLAGS = @CURL_CFLAGS@
CURL_LIBS = @CURL_LIBS@
CYGPATH_W = @CYGPATH_W@
CZMQ_CFLAGS = @CZMQ_CFLAGS@
CZMQ_LIBS = @CZMQ_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DL_LIBS = @DL_LIBS@
@ -278,27 +286,48 @@ GNUTLS_CFLAGS = @GNUTLS_CFLAGS@
GNUTLS_LIBS = @GNUTLS_LIBS@
GREP = @GREP@
GSS_LIBS = @GSS_LIBS@
HAVE_JAVAC = @HAVE_JAVAC@
HAVE_CURL_CONFIG = @HAVE_CURL_CONFIG@
HAVE_MYSQL_CONFIG = @HAVE_MYSQL_CONFIG@
HAVE_ORACLE_CONFIG = @HAVE_ORACLE_CONFIG@
HAVE_PGSQL_CONFIG = @HAVE_PGSQL_CONFIG@
HIREDIS_CFLAGS = @HIREDIS_CFLAGS@
HIREDIS_LIBS = @HIREDIS_LIBS@
IMUDP_LIBS = @IMUDP_LIBS@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JSON_CFLAGS = @JSON_CFLAGS@
JSON_C_CFLAGS = @JSON_C_CFLAGS@
JSON_C_LIBS = @JSON_C_LIBS@
JSON_LIBS = @JSON_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBDBI_CFLAGS = @LIBDBI_CFLAGS@
LIBDBI_LIBS = @LIBDBI_LIBS@
LIBEE_CFLAGS = @LIBEE_CFLAGS@
LIBEE_LIBS = @LIBEE_LIBS@
LIBESTR_CFLAGS = @LIBESTR_CFLAGS@
LIBESTR_LIBS = @LIBESTR_LIBS@
LIBLOGGING_CFLAGS = @LIBLOGGING_CFLAGS@
LIBLOGGING_LIBS = @LIBLOGGING_LIBS@
LIBLOGNORM_CFLAGS = @LIBLOGNORM_CFLAGS@
LIBLOGNORM_LIBS = @LIBLOGNORM_LIBS@
LIBMONGO_CLIENT_CFLAGS = @LIBMONGO_CLIENT_CFLAGS@
LIBMONGO_CLIENT_LIBS = @LIBMONGO_CLIENT_LIBS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIBUUID_CFLAGS = @LIBUUID_CFLAGS@
LIBUUID_LIBS = @LIBUUID_LIBS@
LIPO = @LIPO@
LN_S = @LN_S@
LOGNORM_CFLAGS = @LOGNORM_CFLAGS@
LOGNORM_LIBS = @LOGNORM_LIBS@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
@ -331,7 +360,9 @@ RANLIB = @RANLIB@
RELP_CFLAGS = @RELP_CFLAGS@
RELP_LIBS = @RELP_LIBS@
RSRT_CFLAGS = @RSRT_CFLAGS@
RSRT_CFLAGS1 = @RSRT_CFLAGS1@
RSRT_LIBS = @RSRT_LIBS@
RSRT_LIBS1 = @RSRT_LIBS1@
RT_LIBS = @RT_LIBS@
SED = @SED@
SET_MAKE = @SET_MAKE@
@ -343,6 +374,8 @@ STRIP = @STRIP@
UDPSPOOF_CFLAGS = @UDPSPOOF_CFLAGS@
UDPSPOOF_LIBS = @UDPSPOOF_LIBS@
VERSION = @VERSION@
YACC = @YACC@
YFLAGS = @YFLAGS@
ZLIB_LIBS = @ZLIB_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
@ -381,6 +414,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
moddirs = @moddirs@
@ -399,6 +433,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
pkglib_LTLIBRARIES = $(am__append_1) $(am__append_2)
pkgconfigdir = $(libdir)/pkgconfig
#
#
# TCP (stream) server support
@ -453,8 +488,8 @@ EXTRA_DIST = \
# tests are added as last element, because tests may need different
# modules that need to be generated first
SUBDIRS = doc runtime . plugins/immark plugins/imuxsock plugins/imtcp \
plugins/imudp plugins/omtesting $(am__append_3) \
SUBDIRS = doc runtime grammar . plugins/immark plugins/imuxsock \
plugins/imtcp plugins/imudp plugins/omtesting $(am__append_3) \
$(am__append_4) $(am__append_5) $(am__append_6) \
$(am__append_7) $(am__append_8) $(am__append_9) \
$(am__append_10) $(am__append_11) $(am__append_12) \
@ -465,7 +500,9 @@ SUBDIRS = doc runtime . plugins/immark plugins/imuxsock plugins/imtcp \
$(am__append_25) $(am__append_26) $(am__append_27) \
$(am__append_28) $(am__append_29) $(am__append_30) \
$(am__append_31) $(am__append_32) $(am__append_33) \
$(am__append_34) $(am__append_35) $(am__append_36) tests
$(am__append_34) $(am__append_35) $(am__append_36) \
$(am__append_37) $(am__append_38) $(am__append_39) \
$(am__append_40) $(am__append_41) $(am__append_42) tests
# make sure "make distcheck" tries to build all modules. This means that
# a developer must always have an environment where every supporting library
@ -474,9 +511,9 @@ SUBDIRS = doc runtime . plugins/immark plugins/imuxsock plugins/imtcp \
# in a make distcheck is so that we detect code that accidently was not updated
# when some global update happened.
DISTCHECK_CONFIGURE_FLAGS = --enable-gssapi_krb5 \
--enable-gnutls \
--enable-imfile \
--enable-snmp \
--enable-pgsql \
--enable-libdbi \
--enable-mysql \
--enable-relp \
@ -491,20 +528,17 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-gssapi_krb5 \
--enable-omprog \
--enable-imdiag \
--enable-imptcp \
--enable-imttcp \
--enable-omuxsock \
--enable-extended-tests \
--enable-impstats \
--enable-imptcp \
--enable-memcheck \
--enable-pmaixforwardedfrom \
--enable-pmcisconames \
--enable-pmsnare \
--enable-imtemplate \
--enable-omtemplate \
--enable-mmsnmptrapd \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
--enable-elasticsearch \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
ACLOCAL_AMFLAGS = -I m4
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@ -1184,6 +1218,10 @@ uninstall-am: uninstall-nodist_systemdsystemunitDATA \
@HAVE_SYSTEMD_TRUE@%.service: %.service.in
@HAVE_SYSTEMD_TRUE@ $(AM_V_GEN)sed -e 's,@sbindir\@,$(sbindir),g' $< > $@
# temporarily disable these checks for make distcheck 2012-09-06 rgerhards
# --enable-extended-tests \
# --enable-pgsql \
#ACLOCAL_AMFLAGS = -I m4
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.

7981
aclocal.m4

File diff suppressed because it is too large

790
action.c

File diff suppressed because it is too large

19
action.h

@ -26,7 +26,6 @@
#define ACTION_H_INCLUDED 1
#include "syslogd-types.h"
#include "sync.h"
#include "queue.h"
/* external data - this is to be removed when we change the action
@ -37,7 +36,7 @@ extern int glbliActionResumeRetryCount;
typedef enum {
ACT_STATE_DIED = 0, /* action permanently failed and now disabled - MUST BE ZEO! */
ACT_STATE_DIED = 0, /* action permanently failed and now disabled - MUST BE ZERO! */
ACT_STATE_RDY = 1, /* action ready, waiting for new transaction */
ACT_STATE_ITX = 2, /* transaction active, waiting for new data or commit */
ACT_STATE_COMM = 3, /* transaction finished (a transient state) */
@ -75,7 +74,8 @@ struct action_s {
int f_repeatcount; /* number of "repeated" msgs */
rsRetVal (*submitToActQ)(action_t *, batch_t *);/* function submit message to action queue */
rsRetVal (*qConstruct)(struct queue_s *pThis);
enum { ACT_STRING_PASSING = 0, ACT_ARRAY_PASSING = 1, ACT_MSG_PASSING }
enum { ACT_STRING_PASSING = 0, ACT_ARRAY_PASSING = 1, ACT_MSG_PASSING = 2,
ACT_JSON_PASSING = 3}
eParamPassing; /* mode of parameter passing to action */
int iNumTpls; /* number of array entries for template element below */
struct template **ppTpl;/* array of template to use - strings must be passed to doAction
@ -85,17 +85,21 @@ struct action_s {
* processed - it is also used to detect duplicates.
*/
qqueue_t *pQueue; /* action queue */
SYNC_OBJ_TOOL; /* required for mutex support */
pthread_mutex_t mutAction; /* primary action mutex */
pthread_mutex_t mutActExec; /* mutex to guard actual execution of doAction for single-threaded modules */
uchar *pszName; /* action name (for documentation) */
DEF_ATOMIC_HELPER_MUT(mutCAS);
/* for statistics subsystem */
statsobj_t *statsobj;
STATSCOUNTER_DEF(ctrProcessed, mutCtrProcessed);
STATSCOUNTER_DEF(ctrFail, mutCtrFail);
};
/* function prototypes
*/
rsRetVal actionConstruct(action_t **ppThis);
rsRetVal actionConstructFinalize(action_t *pThis);
rsRetVal actionConstructFinalize(action_t *pThis, struct cnfparamvals *queueParams);
rsRetVal actionDestruct(action_t *pThis);
rsRetVal actionDbgPrint(action_t *pThis);
rsRetVal actionSetGlobalResumeInterval(int iNewVal);
@ -103,6 +107,9 @@ rsRetVal actionDoAction(action_t *pAction);
rsRetVal actionWriteToAction(action_t *pAction);
rsRetVal actionCallHUPHdlr(action_t *pAction);
rsRetVal actionClassInit(void);
rsRetVal addAction(action_t **ppAction, modInfo_t *pMod, void *pModData, omodStringRequest_t *pOMSR, int bSuspended);
rsRetVal addAction(action_t **ppAction, modInfo_t *pMod, void *pModData, omodStringRequest_t *pOMSR, struct cnfparamvals *actParams, struct cnfparamvals *queueParams, int bSuspended);
rsRetVal activateActions(void);
rsRetVal actionNewInst(struct nvlst *lst, action_t **ppAction);
rsRetVal actionProcessCnf(struct cnfobj *o);
#endif /* #ifndef ACTION_H_INCLUDED */

9
config.guess

@ -1,10 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
# Free Software Foundation, Inc.
timestamp='2009-11-20'
timestamp='2009-12-30'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -56,8 +56,9 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."

25
config.h.in

@ -3,6 +3,12 @@
/* Defined if debug mode is enabled (its easier to check). */
#undef DEBUG
/* Defined if debugless mode is enabled. */
#undef DEBUGLESS
/* Indicator that GnuTLS is present */
#undef ENABLE_GNUTLS
/* Regular expressions support enabled. */
#undef FEATURE_REGEXP
@ -18,12 +24,6 @@
/* Define to 1 if you have the <arpa/nameser.h> header file. */
#undef HAVE_ARPA_NAMESER_H
/* Define if compiler provides atomic builtins */
#undef HAVE_ATOMIC_BUILTINS
/* Define if compiler provides 64 bit atomic builtins */
#undef HAVE_ATOMIC_BUILTINS_64BIT
/* Define to 1 if you have the `basename' function. */
#undef HAVE_BASENAME
@ -171,6 +171,9 @@
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* set define */
#undef HAVE_SO_TIMESTAMP
/* Define to 1 if `stat' has the bug that it succeeds when given the
zero-length file name argument. */
#undef HAVE_STAT_EMPTY_STRING_BUG
@ -280,6 +283,9 @@
/* Define to 1 if you have the <utmp.h> header file. */
#undef HAVE_UTMP_H
/* Define to 1 if you have the <uuid/uuid.h> header file. */
#undef HAVE_UUID_UUID_H
/* Define to 1 if you have the `vfork' function. */
#undef HAVE_VFORK
@ -322,6 +328,9 @@
/* Indicator for a BSD OS */
#undef OS_BSD
/* Indicator for a Linux OS */
#undef OS_LINUX
/* Indicator for a Solaris OS */
#undef OS_SOLARIS
@ -421,6 +430,10 @@
/* Version number of package */
#undef VERSION
/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
`char[]'. */
#undef YYTEXT_POINTER
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS

19
config.sub

@ -1,10 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
# Free Software Foundation, Inc.
timestamp='2009-11-20'
timestamp='2010-01-22'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@ -75,8 +75,9 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@ -380,7 +381,8 @@ case $basic_machine in
| sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tile-* | tilegx-* \
| tron-* \
| ubicom32-* \
| v850-* | v850e-* | vax-* \
@ -1085,6 +1087,11 @@ case $basic_machine in
basic_machine=tic6x-unknown
os=-coff
;;
# This must be matched before tile*.
tilegx*)
basic_machine=tilegx-unknown
os=-linux-gnu
;;
tile*)
basic_machine=tile-unknown
os=-linux-gnu
@ -1435,6 +1442,8 @@ case $os in
-dicos*)
os=-dicos
;;
-nacl*)
;;
-none)
;;
*)

3746
configure

File diff suppressed because it is too large

380
configure.ac

@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT([rsyslog],[5.8.11],[rsyslog@lists.adiscon.com])
AC_INIT([rsyslog],[7.1.9],[rsyslog@lists.adiscon.com])
AM_INIT_AUTOMAKE
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
@ -17,13 +17,9 @@ AC_GNU_SOURCE
AC_CHECK_PROG(have_valgrind, [valgrind], [yes])
AM_CONDITIONAL(HAVE_VALGRIND, test x$have_valgrind = xyes)
# check for Java compiler
AC_CHECK_PROG(HAVE_JAVAC, [javac], [yes])
if test x"$HAVE_JAVAC" = x""; then
AC_MSG_WARN([no javac found, disabling features depending on it])
fi
# Checks for programs.
AC_PROG_LEX
AC_PROG_YACC
AC_PROG_CC
AM_PROG_CC_C_O
if test "$GCC" = "yes"
@ -35,11 +31,19 @@ AC_CANONICAL_HOST
PKG_PROG_PKG_CONFIG
# modules we require
PKG_CHECK_MODULES(LIBESTR, libestr >= 0.1.2)
PKG_CHECK_MODULES(LIBEE, libee >= 0.4.0)
PKG_CHECK_MODULES([JSON_C], [json])
AC_SUBST([JSON_CFLAGS])
AC_SUBST([JSON_LIBS])
case "${host}" in
*-*-linux*)
AC_DEFINE([OS_LINUX], [1], [Indicator for a Linux OS])
os_type="linux"
;;
*-*-*darwin*|*-*-freebsd*|*-*-netbsd*|*-*-openbsd*)
*-*-*darwin*|*-*-dragonfly*|*-*-freebsd*|*-*-netbsd*|*-*-openbsd*)
AC_DEFINE([OS_BSD], [1], [Indicator for a BSD OS])
os_type="bsd"
;;
@ -118,6 +122,8 @@ AC_CHECK_FUNCS([flock basename alarm clock_gettime gethostbyname gethostname get
# let me know! -- rgerhards, 2010-10-06
AC_CHECK_DECL([SCM_CREDENTIALS], [AC_DEFINE(HAVE_SCM_CREDENTIALS, [1], [set define])], [], [#include <sys/types.h>
#include <sys/socket.h>])
AC_CHECK_DECL([SO_TIMESTAMP], [AC_DEFINE(HAVE_SO_TIMESTAMP, [1], [set define])], [], [#include <sys/types.h>
#include <sys/socket.h>])
# Check for MAXHOSTNAMELEN
AC_MSG_CHECKING(for MAXHOSTNAMELEN)
@ -324,6 +330,18 @@ AM_CONDITIONAL(ENABLE_IMKLOG_BSD, test x$os_type = xbsd)
AM_CONDITIONAL(ENABLE_IMKLOG_LINUX, test x$os_type = xlinux)
AM_CONDITIONAL(ENABLE_IMKLOG_SOLARIS, test x$os_type = xsolaris)
# kmsg
AC_ARG_ENABLE(kmsg,
[AS_HELP_STRING([--enable-kmsg],[Kmsg structured kernel logs functionality @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_kmsg="yes" ;;
no) enable_kmsg="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-kmsg) ;;
esac],
[enable_kmsg="no"]
)
AM_CONDITIONAL(ENABLE_IMKMSG, test x$enable_kmsg = xyes)
#
# SYSLOG_UNIXAF
@ -442,6 +460,22 @@ if test "$enable_rtinst" = "yes"; then
fi
# total debugless: highest performance, but no way at all to enable debug
# logging
AC_ARG_ENABLE(debugless,
[AS_HELP_STRING([--enable-debugless],[Enable runtime instrumentation mode @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_debugless="yes" ;;
no) enable_debugless="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debugless) ;;
esac],
[enable_debugless="no"]
)
if test "$enable_debugless" = "yes"; then
AC_DEFINE(DEBUGLESS, 1, [Defined if debugless mode is enabled.])
fi
# valgrind
AC_ARG_ENABLE(valgrind,
[AS_HELP_STRING([--enable-valgrind],[Enable valgrind support settings @<:@default=no@:>@])],
@ -485,6 +519,18 @@ AC_ARG_ENABLE(diagtools,
AM_CONDITIONAL(ENABLE_DIAGTOOLS, test x$enable_diagtools = xyes)
# compile end-user tools
AC_ARG_ENABLE(usertools,
[AS_HELP_STRING([--enable-usertools],[Enable end user tools @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_usertools="yes" ;;
no) enable_usertools="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-usertools) ;;
esac],
[enable_usertools=no]
)
AM_CONDITIONAL(ENABLE_USERTOOLS, test x$enable_usertools = xyes)
# MySQL support
AC_ARG_ENABLE(mysql,
@ -655,6 +701,21 @@ AM_CONDITIONAL(ENABLE_OMLIBDBI, test x$enable_libdbi = xyes)
AC_SUBST(LIBDBI_CFLAGS)
AC_SUBST(LIBDBI_LIBS)
# libuuid support
AC_CHECK_HEADERS(
[uuid/uuid.h],,
[AC_MSG_FAILURE([libuuid is missing])]
)
AC_CHECK_LIB(
[uuid],
[uuid_generate],
[LIBUUID_CFLAGS=""
LIBUUID_LIBS="-luuid"
],
[AC_MSG_FAILURE([libuuid library is missing])]
)
AC_SUBST(LIBUUID_CFLAGS)
AC_SUBST(LIBUUID_LIBS)
# SNMP support
AC_ARG_ENABLE(snmp,
@ -685,6 +746,40 @@ AC_SUBST(SNMP_CFLAGS)
AC_SUBST(SNMP_LIBS)
# elasticsearch support
AC_ARG_ENABLE(elasticsearch,
[AS_HELP_STRING([--enable-elasticsearch],[Enable elasticsearch output module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_elasticsearch="yes" ;;
no) enable_elasticsearch="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-elasticsearch) ;;
esac],
[enable_elasticsearch=no]
)
if test "x$enable_elasticsearch" = "xyes"; then
AC_CHECK_PROG(
[HAVE_CURL_CONFIG],
[curl-config],
[yes],,,
)
if test "x${HAVE_CURL_CONFIG}" != "xyes"; then
AC_MSG_FAILURE([curl-config not found in PATH])
fi
AC_CHECK_LIB(
[curl],
[curl_global_init],
[CURL_CFLAGS="`curl-config --cflags`"
CURL_LIBS="`curl-config --libs`"
],
[AC_MSG_FAILURE([curl library is missing])],
[`curl-config --libs --cflags`]
)
fi
AM_CONDITIONAL(ENABLE_ELASTICSEARCH, test x$enable_elasticsearch = xyes)
AC_SUBST(CURL_CFLAGS)
AC_SUBST(CURL_LIBS)
# GnuTLS support
AC_ARG_ENABLE(gnutls,
[AS_HELP_STRING([--enable-gnutls],[Enable GNU TLS support @<:@default=no@:>@])],
@ -697,6 +792,7 @@ AC_ARG_ENABLE(gnutls,
)
if test "x$enable_gnutls" = "xyes"; then
PKG_CHECK_MODULES(GNUTLS, gnutls >= 1.4.0)
AC_DEFINE([ENABLE_GNUTLS], [1], [Indicator that GnuTLS is present])
fi
AM_CONDITIONAL(ENABLE_GNUTLS, test x$enable_gnutls = xyes)
AC_SUBST(GNUTLS_CFLAGS)
@ -714,10 +810,15 @@ AC_ARG_ENABLE(rsyslogrt,
[enable_rsyslogrt=yes]
)
if test "x$enable_rsyslogrt" = "xyes"; then
RSRT_CFLAGS="-I\$(top_srcdir)/runtime -I\$(top_srcdir)"
RSRT_LIBS="\$(top_builddir)/runtime/librsyslog.la"
RSRT_CFLAGS1="-I\$(top_srcdir)/runtime -I\$(top_srcdir) -I\$(top_srcdir)/grammar"
RSRT_LIBS1="\$(top_builddir)/runtime/librsyslog.la"
#??CNF_LIBS="\$(top_builddir)/grammar/libgrammar.la"
fi
AM_CONDITIONAL(ENABLE_RSYSLOGRT, test x$enable_rsyslogrt = xyes)
RSRT_CFLAGS="\$(RSRT_CFLAGS1) \$(LIBESTR_CFLAGS) \$(JSON_C_FLAGS)"
RSRT_LIBS="\$(RSRT_LIBS1) \$(LIBESTR_LIBS) \$(JSON_C_LIBS)"
AC_SUBST(RSRT_CFLAGS1)
AC_SUBST(RSRT_LIBS1)
AC_SUBST(RSRT_CFLAGS)
AC_SUBST(RSRT_LIBS)
@ -799,6 +900,57 @@ AC_ARG_ENABLE(imdiag,
AM_CONDITIONAL(ENABLE_IMDIAG, test x$enable_imdiag = xyes)
# mmnormalize
AC_ARG_ENABLE(mmnormalize,
[AS_HELP_STRING([--enable-mmnormalize],[Enable building mmnormalize support @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_mmnormalize="yes" ;;
no) enable_mmnormalize="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-mmnormalize) ;;
esac],
[enable_mmnormalize=no]
)
if test "x$enable_mmnormalize" = "xyes"; then
PKG_CHECK_MODULES(LIBLOGNORM, lognorm >= 0.3.1)
fi
AM_CONDITIONAL(ENABLE_MMNORMALIZE, test x$enable_mmnormalize = xyes)
AC_SUBST(LOGNORM_CFLAGS)
AC_SUBST(LOGNORM_LIBS)
# mmnjsonparse
AC_ARG_ENABLE(mmjsonparse,
[AS_HELP_STRING([--enable-mmjsonparse],[Enable building mmjsonparse support @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_mmjsonparse="yes" ;;
no) enable_mmjsonparse="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-mmjsonparse) ;;
esac],
[enable_mmjsonparse=no]
)
if test "x$enable_mmjsonparse" = "xyes"; then
PKG_CHECK_MODULES(LIBLOGNORM, lognorm >= 0.3.1)
fi
AM_CONDITIONAL(ENABLE_MMJSONPARSE, test x$enable_mmjsonparse = xyes)
# mmaudit
AC_ARG_ENABLE(mmaudit,
[AS_HELP_STRING([--enable-mmaudit],[Enable building mmaudit support @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_mmaudit="yes" ;;
no) enable_mmaudit="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-mmaudit) ;;
esac],
[enable_mmaudit=no]
)
if test "x$enable_mmaudit" = "xyes"; then
PKG_CHECK_MODULES(LIBLOGNORM, lognorm >= 0.3.1)
fi
AM_CONDITIONAL(ENABLE_MMAUDIT, test x$enable_mmaudit = xyes)
# RELP support
AC_ARG_ENABLE(relp,
[AS_HELP_STRING([--enable-relp],[Enable RELP support @<:@default=no@:>@])],
@ -810,7 +962,7 @@ AC_ARG_ENABLE(relp,
[enable_relp=no]
)
if test "x$enable_relp" = "xyes"; then
PKG_CHECK_MODULES(RELP, relp >= 0.1.1)
PKG_CHECK_MODULES(RELP, relp >= 1.0.1)
fi
AM_CONDITIONAL(ENABLE_RELP, test x$enable_relp = xyes)
AC_SUBST(RELP_CFLAGS)
@ -887,6 +1039,19 @@ AC_ARG_ENABLE(imptcp,
AM_CONDITIONAL(ENABLE_IMPTCP, test x$enable_imptcp = xyes)
# settings for the ttcp input module
AC_ARG_ENABLE(imttcp,
[AS_HELP_STRING([--enable-imttcp],[threaded plain tcp input module enabled @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_imttcp="yes" ;;
no) enable_imttcp="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-imttcp) ;;
esac],
[enable_imttcp=no]
)
AM_CONDITIONAL(ENABLE_IMTTCP, test x$enable_imttcp = xyes)
# settings for the pstats input module
AC_ARG_ENABLE(impstats,
[AS_HELP_STRING([--enable-impstats],[periodic statistics module enabled @<:@default=no@:>@])],
@ -1034,20 +1199,6 @@ AC_ARG_ENABLE(omruleset,
AM_CONDITIONAL(ENABLE_OMRULESET, test x$enable_omruleset = xyes)
# settings for omdbalerting
AC_ARG_ENABLE(omdbalerting,
[AS_HELP_STRING([--enable-omdbalerting],[Compiles omdbalerting module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_omdbalerting="yes" ;;
no) enable_omdbalerting="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-omdbalerting) ;;
esac],
[enable_omdbalerting=no]
)
AM_CONDITIONAL(ENABLE_OMDBALERTING, test x$enable_omdbalerting = xyes)
# building the GUI (mostly for diagnostic reasons)
AC_ARG_ENABLE(gui,
[AS_HELP_STRING([--enable-gui],[Enable GUI programs @<:@default=no@:>@])],
@ -1082,73 +1233,18 @@ AC_ARG_ENABLE(omuxsock,
AM_CONDITIONAL(ENABLE_OMUXSOCK, test x$enable_omuxsock = xyes)
# This provides a vehicle to integrate custom modules, that are not
# part of rsyslog, into the build process. It is named cust1, so that
# additional such modules can easily be added.
AC_ARG_ENABLE(cust1,
[AS_HELP_STRING([--enable-cust1],[Compiles cust1 module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_cust1="yes" ;;
no) enable_cust1="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-cust1) ;;
esac],
[enable_cust1=no]
)
AM_CONDITIONAL(ENABLE_CUST1, test x$enable_cust1 = xyes)
# A custom strgen that also serves as a sample of how to do
# SQL-generating strgen's
AC_ARG_ENABLE(smcustbindcdr,
[AS_HELP_STRING([--enable-smcustbindcdr],[Compiles smcustbindcdr module @<:@default=no@:>@])],
AC_ARG_ENABLE(sm_cust_bindcdr,
[AS_HELP_STRING([--enable-sm_cust_bindcdr],[Compiles sm_cust_bindcdr module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_smcustbindcdr="yes" ;;
no) enable_smcustbindcdr="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-smcustbindcdr) ;;
yes) enable_sm_cust_bindcdr="yes" ;;
no) enable_sm_cust_bindcdr="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-sm_cust_bindcdr) ;;
esac],
[enable_smcustbindcdr=no]
[enable_sm_cust_bindcdr=no]
)
AM_CONDITIONAL(ENABLE_SMCUSTBINDCDR, test x$enable_smcustbindcdr = xyes)
# settings for the template input module; copy and modify this code
# if you intend to add your own module. Be sure to replace imtemplate
# by the actual name of your module.
AC_ARG_ENABLE(imtemplate,
[AS_HELP_STRING([--enable-imtemplate],[Compiles imtemplate template module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_imtemplate="yes" ;;
no) enable_imtemplate="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-imtemplate) ;;
esac],
[enable_imtemplate=no]
)
#
# you may want to do some library checks here - see snmp, mysql, pgsql modules
# for samples
#
AM_CONDITIONAL(ENABLE_IMTEMPLATE, test x$enable_imtemplate = xyes)
# end of copy template - be sure to search for imtemplate to find everything!
# settings for the template output module; copy and modify this code
# if you intend to add your own module. Be sure to replace omtemplate
# by the actual name of your module.
AC_ARG_ENABLE(omtemplate,
[AS_HELP_STRING([--enable-omtemplate],[Compiles omtemplate template module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_omtemplate="yes" ;;
no) enable_omtemplate="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-omtemplate) ;;
esac],
[enable_omtemplate=no]
)
#
# you may want to do some library checks here - see snmp, mysql, pgsql modules
# for samples
#
AM_CONDITIONAL(ENABLE_OMTEMPLATE, test x$enable_omtemplate = xyes)
# end of copy template - be sure to search for omtemplate to find everything!
AM_CONDITIONAL(ENABLE_SMCUSTBINDCDR, test x$enable_sm_cust_bindcdr = xyes)
# settings for mmsnmptrapd message modification module
@ -1181,8 +1277,87 @@ AC_ARG_ENABLE(omhdfs,
AM_CONDITIONAL(ENABLE_OMHDFS, test x$enable_omhdfs = xyes)
#MONGODB SUPPORT
AC_ARG_ENABLE(ommongodb,
[AS_HELP_STRING([--enable-ommongodb],[Compiles ommongodb template module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_ommongodb="yes" ;;
no) enable_ommongodb="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-ommongodb) ;;
esac],
[enable_ommongodb=no]
)
if test "x$enable_ommongodb" = "xyes"; then
PKG_CHECK_MODULES(LIBMONGO_CLIENT, libmongo-client >= 0.1.4)
AC_SUBST(LIBMONGO_CLIENT_CFLAGS)
AC_SUBST(LIBMONGO_CLIENT_LIBS)
fi
AM_CONDITIONAL(ENABLE_OMMONGODB, test x$enable_ommongodb = xyes)
# end of mongodb code
# BEGIN ZMQ3 INPUT SUPPORT
AC_ARG_ENABLE(imzmq3,
[AS_HELP_STRING([--enable-imzmq3],[Compiles imzmq3 output module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_imzmq3="yes" ;;
no) enable_imzmq3="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-imzmq3) ;;
esac],
[enable_imzmq3=no]
)
if test "x$enable_imzmq3" = "xyes"; then
PKG_CHECK_MODULES(CZMQ, libczmq >= 1.1.0)
AC_SUBST(CZMQ_CFLAGS)
AC_SUBST(CZMQ_LIBS)
fi
AM_CONDITIONAL(ENABLE_IMZMQ3, test x$enable_imzmq3 = xyes)
# END ZMQ3 INPUT SUPPORT
# BEGIN ZMQ3 OUTPUT SUPPORT
AC_ARG_ENABLE(omzmq3,
[AS_HELP_STRING([--enable-omzmq3],[Compiles omzmq3 output module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_omzmq3="yes" ;;
no) enable_omzmq3="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-omzmq3) ;;
esac],
[enable_omzmq3=no]
)
if test "x$enable_omzmq3" = "xyes"; then
PKG_CHECK_MODULES(CZMQ, libczmq >= 1.1.0)
AC_SUBST(CZMQ_CFLAGS)
AC_SUBST(CZMQ_LIBS)
fi
AM_CONDITIONAL(ENABLE_OMZMQ3, test x$enable_omzmq3 = xyes)
# END ZMQ3 SUPPORT
# HIREDIS SUPPORT
AC_ARG_ENABLE(omhiredis,
[AS_HELP_STRING([--enable-omhiredis],[Compiles omhiredis template module @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_omhiredis="yes" ;;
no) enable_omhiredis="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-omhiredis) ;;
esac],
[enable_omhiredis=no]
)
#
if test "x$enable_omhiredis" = "xyes"; then
PKG_CHECK_MODULES(HIREDIS, hiredis >= 0.10.1)
AC_SUBST(HIREDIS_CFLAGS)
AC_SUBST(HIREDIS_LIBS)
fi
AM_CONDITIONAL(ENABLE_OMHIREDIS, test x$enable_omhiredis = xyes)
# END HIREDIS SUPPORT
AC_CONFIG_FILES([Makefile \
runtime/Makefile \
grammar/Makefile \
tools/Makefile \
doc/Makefile \
plugins/imudp/Makefile \
@ -1192,8 +1367,7 @@ AC_CONFIG_FILES([Makefile \
plugins/imuxsock/Makefile \
plugins/immark/Makefile \
plugins/imklog/Makefile \
plugins/imtemplate/Makefile \
plugins/omtemplate/Makefile \
plugins/imkmsg/Makefile \
plugins/omhdfs/Makefile \
plugins/omprog/Makefile \
plugins/omstdout/Makefile \
@ -1203,14 +1377,15 @@ AC_CONFIG_FILES([Makefile \
plugins/pmsnare/Makefile \
plugins/pmaixforwardedfrom/Makefile \
plugins/omruleset/Makefile \
plugins/omdbalerting/Makefile \
plugins/omuxsock/Makefile \
plugins/imfile/Makefile \
plugins/imsolaris/Makefile \
plugins/imptcp/Makefile \
plugins/imttcp/Makefile \
plugins/impstats/Makefile \
plugins/imrelp/Makefile \
plugins/imdiag/Makefile \
plugins/imzmq3/Makefile \
plugins/omtesting/Makefile \
plugins/omgssapi/Makefile \
plugins/ommysql/Makefile \
@ -1221,11 +1396,18 @@ AC_CONFIG_FILES([Makefile \
plugins/omsnmp/Makefile \
plugins/omoracle/Makefile \
plugins/omudpspoof/Makefile \
plugins/ommongodb/Makefile \
plugins/omhiredis/Makefile \
plugins/omzmq3/Makefile \
plugins/mmnormalize/Makefile \
plugins/mmjsonparse/Makefile \
plugins/mmaudit/Makefile \
plugins/omelasticsearch/Makefile \
plugins/sm_cust_bindcdr/Makefile \
plugins/mmsnmptrapd/Makefile \
plugins/cust1/Makefile \
java/Makefile \
tests/Makefile])
#add on demand: plugins/cust1/Makefile
AC_OUTPUT
echo "****************************************************"
@ -1238,28 +1420,29 @@ echo " Zlib compression support enabled: $enable_zlib"
echo " rsyslog runtime will be built: $enable_rsyslogrt"
echo " rsyslogd will be built: $enable_rsyslogd"
echo " GUI components will be built: $enable_gui"
echo " custom module 1 will be built: $enable_cust1"
echo " Unlimited select() support enabled: $enable_unlimited_select"
echo
echo "---{ input plugins }---"
echo " Klog functionality enabled: $enable_klog ($os_type)"
echo " /dev/kmsg functionality enabled: $enable_kmsg"
echo " plain tcp input module enabled: $enable_imptcp"
echo " threaded plain tcp input module enabled: $enable_imttcp"
echo " imdiag enabled: $enable_imdiag"
echo " file input module enabled: $enable_imfile"
echo " Solaris input module enabled: $enable_imsolaris"
echo " periodic statistics module enabled: $enable_impstats"
echo " input template module will be compiled: $enable_imtemplate"
echo " imzmq3 input module enabled: $enable_imzmq3"
echo
echo "---{ output plugins }---"
echo " Mail support enabled: $enable_mail"
echo " omprog module will be compiled: $enable_omprog"
echo " omstdout module will be compiled: $enable_omstdout"
echo " omhdfs module will be compiled: $enable_omhdfs"
echo " omelasticsearch module will be compiled: $enable_elasticsearch"
echo " omruleset module will be compiled: $enable_omruleset"
echo " omdbalerting module will be compiled: $enable_omdbalerting"
echo " omudpspoof module will be compiled: $enable_omudpspoof"
echo " omuxsock module will be compiled: $enable_omuxsock"
echo " output template module will be compiled: $enable_omtemplate"
echo " omzmq3 module will be compiled: $enable_omzmq3"
echo
echo "---{ parser modules }---"
echo " pmrfc3164sd module will be compiled: $enable_pmrfc3164sd"
@ -1269,6 +1452,9 @@ echo " pmaixforwardedfrom module w.be compiled: $enable_pmaixforwardedfrom"
echo " pmsnare module will be compiled: $enable_pmsnare"
echo
echo "---{ message modification modules }---"
echo " mmnormalize module will be compiled: $enable_mmnormalize"
echo " mmjsonparse module will be compiled: $enable_mmjsonparse"
echo " mmjaduit module will be compiled: $enable_mmaudit"
echo " mmsnmptrapd module will be compiled: $enable_mmsnmptrapd"
echo
echo "---{ strgen modules }---"
@ -1278,6 +1464,8 @@ echo "---{ database support }---"
echo " MySql support enabled: $enable_mysql"
echo " libdbi support enabled: $enable_libdbi"
echo " PostgreSQL support enabled: $enable_pgsql"
echo " mongodb support enabled: $enable_ommongodb"
echo " hiredis support enabled: $enable_omhiredis"
echo " Oracle (OCI) support enabled: $enable_oracle"
echo
echo "---{ protocol support }---"
@ -1292,7 +1480,9 @@ echo " Extended Testbench enabled: $enable_extended_tests"
echo " MySQL Tests enabled: $enable_mysql_tests"
echo " Debug mode enabled: $enable_debug"
echo " Runtime Instrumentation enabled: $enable_rtinst"
echo " (total) debugless mode enabled: $enable_debugless"
echo " Diagnostic tools enabled: $enable_diagtools"
echo " End-User tools enabled: $enable_usertools"
echo " Enhanced memory checking enabled: $enable_memcheck"
echo " Valgrind support settings enabled: $enable_valgrind"
echo

6
dirty.h

@ -30,7 +30,7 @@
rsRetVal multiSubmitMsg(multi_submit_t *pMultiSub);
rsRetVal submitMsg(msg_t *pMsg);
rsRetVal logmsgInternal(int iErr, int pri, uchar *msg, int flags);
rsRetVal parseAndSubmitMessage(uchar *hname, uchar *hnameIP, uchar *msg, int len, int flags, flowControl_t flowCtlTypeu, prop_t *pInputName, struct syslogTime *stTime, time_t ttGenTime);
rsRetVal parseAndSubmitMessage(uchar *hname, uchar *hnameIP, uchar *msg, int len, int flags, flowControl_t flowCtlTypeu, prop_t *pInputName, struct syslogTime *stTime, time_t ttGenTime, ruleset_t *pRuleset);
rsRetVal diagGetMainMsgQSize(int *piSize); /* for imdiag */
rsRetVal createMainQueue(qqueue_t **ppQueue, uchar *pszQueueName);
@ -39,11 +39,11 @@ rsRetVal createMainQueue(qqueue_t **ppQueue, uchar *pszQueueName);
* we move to the next interval until we reach the largest.
* TODO: move this to action object! Only action.c and syslogd.c use it.
*/
extern int bActExecWhenPrevSusp;
extern int MarkInterval;
extern int repeatinterval[2];
extern int bReduceRepeatMsgs;
extern qqueue_t *pMsgQueue; /* the main message queue */
extern int iConfigVerify; /* is this just a config verify run? */
extern int bHaveMainQueue;
#define MAXREPEAT ((int)((sizeof(repeatinterval) / sizeof(repeatinterval[0])) - 1))
#define REPEATTIME(f) ((f)->f_time + repeatinterval[(f)->f_repeatcount])
#define BACKOFF(f) { if (++(f)->f_repeatcount > MAXREPEAT) \

23
doc/Makefile.am

@ -31,6 +31,10 @@ html_files = \
version_naming.html \
contributors.html \
dev_queue.html \
ompipe.html \
omfwd.html \
omfile.html \
omusrmsg.html \
omstdout.html \
omudpspoof.html \
omruleset.html \
@ -110,6 +114,7 @@ html_files = \
src/tls_cert.dia \
gssapi.html \
licensing.html \
mmnormalize.html \
ommail.html \
omuxsock.html \
omrelp.html \
@ -125,6 +130,24 @@ html_files = \
rsyslog_conf_nomatch.html \
queues_analogy.html \
multi_ruleset.html \
dev_oplugins.html \
free_support.html \
imudp.html \
messageparser.html \
omhdfs.html \
omprog.html \
queue_msg_state.jpeg \
rsconf1_abortonuncleanconfig.html \
rsconf1_maxopenfiles.html \
rsconf1_omfileforcechown.html \
rsyslog_conf_file_syntax_differences.html \
rsyslog_conf_lines.html \
rsyslog_queue_pointers.jpeg \
rsyslog_queue_pointers2.jpeg \
v6compatibility.html \
v7compatibility.html \
rsyslog_conf_basic_structure.html \
imkmsg.html \
src/classes.dia
grfx_files = \

61
doc/Makefile.in

@ -36,11 +36,7 @@ host_triplet = @host@
subdir = doc
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/atomic_operations.m4 \
$(top_srcdir)/m4/atomic_operations_64bit.m4 \
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@ -69,7 +65,11 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CURL_CFLAGS = @CURL_CFLAGS@
CURL_LIBS = @CURL_LIBS@
CYGPATH_W = @CYGPATH_W@
CZMQ_CFLAGS = @CZMQ_CFLAGS@
CZMQ_LIBS = @CZMQ_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DL_LIBS = @DL_LIBS@
@ -85,27 +85,48 @@ GNUTLS_CFLAGS = @GNUTLS_CFLAGS@
GNUTLS_LIBS = @GNUTLS_LIBS@
GREP = @GREP@
GSS_LIBS = @GSS_LIBS@
HAVE_JAVAC = @HAVE_JAVAC@
HAVE_CURL_CONFIG = @HAVE_CURL_CONFIG@
HAVE_MYSQL_CONFIG = @HAVE_MYSQL_CONFIG@
HAVE_ORACLE_CONFIG = @HAVE_ORACLE_CONFIG@
HAVE_PGSQL_CONFIG = @HAVE_PGSQL_CONFIG@
HIREDIS_CFLAGS = @HIREDIS_CFLAGS@
HIREDIS_LIBS = @HIREDIS_LIBS@
IMUDP_LIBS = @IMUDP_LIBS@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JSON_CFLAGS = @JSON_CFLAGS@
JSON_C_CFLAGS = @JSON_C_CFLAGS@
JSON_C_LIBS = @JSON_C_LIBS@
JSON_LIBS = @JSON_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBDBI_CFLAGS = @LIBDBI_CFLAGS@
LIBDBI_LIBS = @LIBDBI_LIBS@
LIBEE_CFLAGS = @LIBEE_CFLAGS@
LIBEE_LIBS = @LIBEE_LIBS@
LIBESTR_CFLAGS = @LIBESTR_CFLAGS@
LIBESTR_LIBS = @LIBESTR_LIBS@
LIBLOGGING_CFLAGS = @LIBLOGGING_CFLAGS@
LIBLOGGING_LIBS = @LIBLOGGING_LIBS@
LIBLOGNORM_CFLAGS = @LIBLOGNORM_CFLAGS@
LIBLOGNORM_LIBS = @LIBLOGNORM_LIBS@
LIBMONGO_CLIENT_CFLAGS = @LIBMONGO_CLIENT_CFLAGS@
LIBMONGO_CLIENT_LIBS = @LIBMONGO_CLIENT_LIBS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIBUUID_CFLAGS = @LIBUUID_CFLAGS@
LIBUUID_LIBS = @LIBUUID_LIBS@
LIPO = @LIPO@
LN_S = @LN_S@
LOGNORM_CFLAGS = @LOGNORM_CFLAGS@
LOGNORM_LIBS = @LOGNORM_LIBS@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
@ -138,7 +159,9 @@ RANLIB = @RANLIB@
RELP_CFLAGS = @RELP_CFLAGS@
RELP_LIBS = @RELP_LIBS@
RSRT_CFLAGS = @RSRT_CFLAGS@
RSRT_CFLAGS1 = @RSRT_CFLAGS1@
RSRT_LIBS = @RSRT_LIBS@
RSRT_LIBS1 = @RSRT_LIBS1@
RT_LIBS = @RT_LIBS@
SED = @SED@
SET_MAKE = @SET_MAKE@
@ -150,6 +173,8 @@ STRIP = @STRIP@
UDPSPOOF_CFLAGS = @UDPSPOOF_CFLAGS@
UDPSPOOF_LIBS = @UDPSPOOF_LIBS@
VERSION = @VERSION@
YACC = @YACC@
YFLAGS = @YFLAGS@
ZLIB_LIBS = @ZLIB_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
@ -188,6 +213,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@