diff --git a/.gitignore b/.gitignore index 06e8815..ae91f6e 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,5 @@ rsyslog-4.6.3.tar.gz /rsyslog-8.32.0.tar.gz /rsyslog-doc-8.34.0.tar.gz /rsyslog-8.34.0.tar.gz +/rsyslog-8.35.0.tar.gz +/rsyslog-doc-8.35.0.tar.gz diff --git a/rsyslog-8.30.0-imgssapi-compile-error.patch b/rsyslog-8.30.0-imgssapi-compile-error.patch new file mode 100644 index 0000000..8427aea --- /dev/null +++ b/rsyslog-8.30.0-imgssapi-compile-error.patch @@ -0,0 +1,128 @@ +From 8d793eafdde0b74d0b4424f0d194b5dc6801a5d1 Mon Sep 17 00:00:00 2001 +From: Rainer Gerhards +Date: Tue, 17 Oct 2017 17:34:49 +0200 +Subject: [PATCH] imgssapi: fix compiler warnings + +--- + plugins/imgssapi/imgssapi.c | 25 ++++++++++++------------- + 1 file changed, 12 insertions(+), 13 deletions(-) + +diff --git a/plugins/imgssapi/imgssapi.c b/plugins/imgssapi/imgssapi.c +index aafce7d2..836931c7 100644 +--- a/plugins/imgssapi/imgssapi.c ++++ b/plugins/imgssapi/imgssapi.c +@@ -9,7 +9,7 @@ + * NOTE: read comments in module-template.h to understand how this file + * works! + * +- * Copyright 2007, 2014 Rainer Gerhards and Adiscon GmbH. ++ * Copyright 2007, 2017 Rainer Gerhards and Adiscon GmbH. + * + * This file is part of rsyslog. + * +@@ -63,7 +63,6 @@ + + MODULE_TYPE_INPUT + MODULE_TYPE_NOKEEP +-MODULE_CNFNAME("imgssapi") + + /* defines */ + #define ALLOWEDMETHOD_GSS 2 +@@ -162,7 +161,7 @@ OnSessDestruct(void *ppUsr) + OM_uint32 maj_stat, min_stat; + maj_stat = gss_delete_sec_context(&min_stat, &(*ppGSess)->gss_context, GSS_C_NO_BUFFER); + if (maj_stat != GSS_S_COMPLETE) +- gssutil.display_status("deleting context", maj_stat, min_stat); ++ gssutil.display_status((char*)"deleting context", maj_stat, min_stat); + } + + free(*ppGSess); +@@ -291,7 +290,7 @@ finalize_it: + + + static rsRetVal +-doRcvData(tcps_sess_t *pSess, char *buf, size_t lenBuf, ssize_t *piLenRcvd) ++doRcvData(tcps_sess_t *pSess, char *buf, size_t lenBuf, ssize_t *piLenRcvd, int *const oserr) + { + DEFiRet; + int allowedMethods; +@@ -307,7 +306,7 @@ doRcvData(tcps_sess_t *pSess, char *buf, size_t lenBuf, ssize_t *piLenRcvd) + CHKiRet(TCPSessGSSRecv(pSess, buf, lenBuf, piLenRcvd)); + } else { + *piLenRcvd = lenBuf; +- CHKiRet(netstrm.Rcv(pSess->pStrm, (uchar*) buf, piLenRcvd) != RS_RET_OK); ++ CHKiRet(netstrm.Rcv(pSess->pStrm, (uchar*) buf, piLenRcvd, oserr)); + } + + finalize_it: +@@ -380,11 +379,11 @@ static int TCPSessGSSInit(void) + if (gss_server_creds != GSS_C_NO_CREDENTIAL) + return 0; + +- name_buf.value = (gss_listen_service_name == NULL) ? "host" : gss_listen_service_name; ++ name_buf.value = (gss_listen_service_name == NULL) ? (char*)"host" : gss_listen_service_name; + name_buf.length = strlen(name_buf.value) + 1; + maj_stat = gss_import_name(&min_stat, &name_buf, GSS_C_NT_HOSTBASED_SERVICE, &server_name); + if (maj_stat != GSS_S_COMPLETE) { +- gssutil.display_status("importing name", maj_stat, min_stat); ++ gssutil.display_status((char*)"importing name", maj_stat, min_stat); + return -1; + } + +@@ -392,7 +391,7 @@ static int TCPSessGSSInit(void) + GSS_C_NULL_OID_SET, GSS_C_ACCEPT, + &gss_server_creds, NULL, NULL); + if (maj_stat != GSS_S_COMPLETE) { +- gssutil.display_status("acquiring credentials", maj_stat, min_stat); ++ gssutil.display_status((char*)"acquiring credentials", maj_stat, min_stat); + return -1; + } + +@@ -549,7 +548,7 @@ OnSessAcceptGSS(tcpsrv_t *pThis, tcps_sess_t *pSess) + pGSess->allowedMethods = ALLOWEDMETHOD_TCP; + ABORT_FINALIZE(RS_RET_OK); // TODO: define good error codes + } +- gssutil.display_status("accepting context", maj_stat, acc_sec_min_stat); ++ gssutil.display_status((char*)"accepting context", maj_stat, acc_sec_min_stat); + ABORT_FINALIZE(RS_RET_ERR); // TODO: define good error codes + } + if (send_tok.length != 0) { +@@ -566,7 +565,7 @@ OnSessAcceptGSS(tcpsrv_t *pThis, tcps_sess_t *pSess) + + maj_stat = gss_display_name(&min_stat, client, &recv_tok, NULL); + if (maj_stat != GSS_S_COMPLETE) { +- gssutil.display_status("displaying name", maj_stat, min_stat); ++ gssutil.display_status((char*)"displaying name", maj_stat, min_stat); + } else { + dbgprintf("GSS-API Accepted connection from peer %s: %s\n", (char *)pszPeer, (char*) recv_tok.value); + } +@@ -608,7 +607,7 @@ int TCPSessGSSRecv(tcps_sess_t *pSess, void *buf, size_t buf_len, ssize_t *piLen + maj_stat = gss_unwrap(&min_stat, *context, &xmit_buf, &msg_buf, + &conf_state, (gss_qop_t *) NULL); + if(maj_stat != GSS_S_COMPLETE) { +- gssutil.display_status("unsealing message", maj_stat, min_stat); ++ gssutil.display_status((char*)"unsealing message", maj_stat, min_stat); + if(xmit_buf.value) { + free(xmit_buf.value); + xmit_buf.value = 0; +@@ -644,7 +643,7 @@ void TCPSessGSSClose(tcps_sess_t* pSess) + context = &pGSess->gss_context; + maj_stat = gss_delete_sec_context(&min_stat, context, GSS_C_NO_BUFFER); + if (maj_stat != GSS_S_COMPLETE) +- gssutil.display_status("deleting context", maj_stat, min_stat); ++ gssutil.display_status((char*)"deleting context", maj_stat, min_stat); + *context = GSS_C_NO_CONTEXT; + pGSess->gss_flags = 0; + pGSess->allowedMethods = 0; +@@ -665,7 +664,7 @@ TCPSessGSSDeinit(void) + if (gss_server_creds != GSS_C_NO_CREDENTIAL) { + maj_stat = gss_release_cred(&min_stat, &gss_server_creds); + if (maj_stat != GSS_S_COMPLETE) +- gssutil.display_status("releasing credentials", maj_stat, min_stat); ++ gssutil.display_status((char*)"releasing credentials", maj_stat, min_stat); + } + RETiRet; + } +-- +2.13.6 + diff --git a/rsyslog-8.30.0-imjournal-fix.patch b/rsyslog-8.30.0-imjournal-fix.patch new file mode 100644 index 0000000..a786b8c --- /dev/null +++ b/rsyslog-8.30.0-imjournal-fix.patch @@ -0,0 +1,77 @@ +From 4736e53d471ac45024333588fcdf5bce5f8c61b8 Mon Sep 17 00:00:00 2001 +From: Rainer Gerhards +Date: Wed, 25 Oct 2017 11:09:40 +0200 +Subject: [PATCH] imjournal bugfix: module did not work at all + +The open function was broken by commit 92ac801 (v8.30.0), +resulting in no data being ever read from the journal. + +patch bases on the idea of Radovan Sroka given here: +https://github.com/rsyslog/rsyslog/issues/1895#issuecomment-339017357 +but follows the current imjournal-paradigm of having the journal +handle inside a global variable. + +see also https://github.com/rsyslog/rsyslog/issues/1895 +closes https://github.com/rsyslog/rsyslog/issues/1897 +--- + plugins/imjournal/imjournal.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/plugins/imjournal/imjournal.c b/plugins/imjournal/imjournal.c +index 8f043d5e1..2f1569837 100644 +--- a/plugins/imjournal/imjournal.c ++++ b/plugins/imjournal/imjournal.c +@@ -118,20 +118,20 @@ static sd_journal *j; + static rsRetVal persistJournalState(void); + static rsRetVal loadJournalState(void); + +-static rsRetVal openJournal(sd_journal* jj) { ++static rsRetVal openJournal(void) { + DEFiRet; + +- if (sd_journal_open(&jj, SD_JOURNAL_LOCAL_ONLY) < 0) ++ if (sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY) < 0) + iRet = RS_RET_IO_ERROR; + RETiRet; + } + +-static void closeJournal(sd_journal* jj) { ++static void closeJournal(void) { + + if (cs.stateFile) { /* can't persist without a state file */ + persistJournalState(); + } +- sd_journal_close(jj); ++ sd_journal_close(j); + } + + +@@ -513,10 +513,10 @@ pollJournal(void) + /* do not persist stateFile sd_journal_get_cursor will fail! */ + char* tmp = cs.stateFile; + cs.stateFile = NULL; +- closeJournal(j); ++ closeJournal(); + cs.stateFile = tmp; + +- iRet = openJournal(j); ++ iRet = openJournal(); + if (iRet != RS_RET_OK) { + char errStr[256]; + rs_strerror_r(errno, errStr, sizeof(errStr)); +@@ -773,13 +773,13 @@ ENDfreeCnf + /* open journal */ + BEGINwillRun + CODESTARTwillRun +- iRet = openJournal(j); ++ iRet = openJournal(); + ENDwillRun + + /* close journal */ + BEGINafterRun + CODESTARTafterRun +- closeJournal(j); ++ closeJournal(); + ratelimitDestruct(ratelimiter); + ENDafterRun + diff --git a/rsyslog.spec b/rsyslog.spec index 7179be9..0e9cf7e 100644 --- a/rsyslog.spec +++ b/rsyslog.spec @@ -15,8 +15,8 @@ Summary: Enhanced system logging and kernel message trapping daemon Name: rsyslog -Version: 8.34.0 -Release: 1%{?dist} +Version: 8.35.0 +Release: 2%{?dist} License: (GPLv3+ and ASL 2.0) Group: System Environment/Daemons URL: http://www.rsyslog.com/ @@ -323,6 +323,7 @@ export HIREDIS_LIBS="-L%{_libdir} -lhiredis" --enable-mmanon \ --enable-mmaudit \ --enable-mmcount \ + --enable-mmkubernetes \ --enable-mmjsonparse \ --enable-mmnormalize \ --enable-mmsnmptrapd \ @@ -349,8 +350,7 @@ export HIREDIS_LIBS="-L%{_libdir} -lhiredis" --enable-snmp \ --enable-unlimited-select \ --enable-usertools \ - --enable-omkafka \ - --enable-mmkubernetes \ + --enable-omkafka make V=1 @@ -449,6 +449,7 @@ done %{_libdir}/rsyslog/pmlastmsg.so %{_libdir}/rsyslog/pmsnare.so %{_libdir}/rsyslog/fmhttp.so +%{_libdir}/rsyslog/fmhash.so %files crypto %{_bindir}/rscryutil @@ -526,6 +527,9 @@ done %{_libdir}/rsyslog/mmkubernetes.so %changelog +* Thu May 17 2018 Radovan Sroka - 8.35.0-2 +- rebase to 8.35.0 + * Thu Apr 05 2018 Jiri Vymazal - 8.34.0-1 - rebase to 8.34.0 - added mmkubernetes module diff --git a/sources b/sources index 2599b7d..a3ec2f7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rsyslog-doc-8.34.0.tar.gz) = edf9aa63c777624c3dc27dfd64b38893b9b4c9b56941df1d7a8c6bc3cb4cbbfb83e8c356cbefeab7c688ecb6017b66ed99931cb71b69b7c927b4743548dd40d4 -SHA512 (rsyslog-8.34.0.tar.gz) = 69eaececa2f8b98799deac8e6cb2cf635a5117da7a21cbb0b880b7df1d83c6ccf16133dab099a6e5fb865f34c2dad164a1bf1952d16ca116af3b1dd35d15065e +SHA512 (rsyslog-8.35.0.tar.gz) = 3b8845fc057147c2dd740b3bb432e7fb101ad60be5c6bc86a2c2796bcd3f3526c617d45b9e8301388d51047a125ca18ba4ac54f8be2a13eabbbe8fb9361beecc +SHA512 (rsyslog-doc-8.35.0.tar.gz) = f78d0451eef789d60f7c5ae1eed46c4a9f7a6ade73b829f65aa2373aa786b00e84e8957089532b1b652838bd9f62b41d92530276a0d27e21b8e94d5f0e4728a6