Blame SOURCES/rsyslog-8.37.0-rhbz1659898-imjournal-default-tag.patch

45f82e
diff -up ./plugins/imjournal/imjournal.c.default-tag ./plugins/imjournal/imjournal.c
45f82e
--- ./plugins/imjournal/imjournal.c.default-tag	2018-05-17 08:50:11.416418022 -0400
45f82e
+++ ./plugins/imjournal/imjournal.c	2018-05-17 08:53:02.884418022 -0400
45f82e
@@ -78,6 +78,7 @@ static struct configSettings_s {
45f82e
 	int bUseJnlPID;
45f82e
 	char *usePid;
45f82e
 	int bWorkAroundJournalBug;
45f82e
+	char *dfltTag;
45f82e
 } cs;
45f82e
 
45f82e
 static rsRetVal facilityHdlr(uchar **pp, void *pVal);
45f82e
@@ -93,7 +94,8 @@ static struct cnfparamdescr modpdescr[]
45f82e
 	{ "defaultfacility", eCmdHdlrString, 0 },
45f82e
 	{ "usepidfromsystem", eCmdHdlrBinary, 0 },
45f82e
 	{ "usepid", eCmdHdlrString, 0 },
45f82e
-	{ "workaroundjournalbug", eCmdHdlrBinary, 0 }
45f82e
+	{ "workaroundjournalbug", eCmdHdlrBinary, 0 },
45f82e
+	{ "defaulttag", eCmdHdlrGetWord, 0 }
45f82e
 };
45f82e
 static struct cnfparamblk modpblk =
45f82e
 	{ CNFPARAMBLK_VERSION,
45f82e
@@ -104,6 +106,7 @@ static struct cnfparamblk modpblk =
45f82e
 #define DFLT_persiststateinterval 10
45f82e
 #define DFLT_SEVERITY pri2sev(LOG_NOTICE)
45f82e
 #define DFLT_FACILITY pri2fac(LOG_USER)
45f82e
+#define DFLT_TAG "journal"
45f82e
 
45f82e
 static int bLegacyCnfModGlobalsPermitted = 1;/* are legacy module-global config parameters permitted? */
45f82e
 
45f82e
@@ -268,7 +271,7 @@ readjournal(void)
45f82e
 
45f82e
 	/* Information from messages */
45f82e
 	char *message = NULL;
45f82e
-	char *sys_iden;
45f82e
+	char *sys_iden = NULL;
45f82e
 	char *sys_iden_help = NULL;
45f82e
 	char *c = NULL;
45f82e
 
45f82e
@@ -331,7 +334,7 @@ readjournal(void)
45f82e
 	if (sd_journal_get_data(j, "SYSLOG_IDENTIFIER", &get, &length) >= 0) {
45f82e
 		CHKiRet(sanitizeValue(((const char *)get) + 18, length - 18, &sys_iden));
45f82e
 	} else {
45f82e
-		CHKmalloc(sys_iden = strdup("journal"));
45f82e
+		CHKmalloc(sys_iden = strdup(cs.dfltTag));
45f82e
 	}
45f82e
 
45f82e
 	/* trying to get PID, default is "SYSLOG_PID" property */
45f82e
@@ -654,6 +657,11 @@ CODESTARTrunInput
45f82e
 			"\"usepidfromsystem\" is depricated, use \"usepid\" instead");
45f82e
 	}
45f82e
 
45f82e
+	if (cs.dfltTag == NULL) {
45f82e
+		cs.dfltTag = strdup(DFLT_TAG);
45f82e
+	}
45f82e
+
45f82e
+
45f82e
 	if (cs.usePid && (strcmp(cs.usePid, "system") == 0)) {
45f82e
 		pidFieldName = "_PID";
45f82e
 		bPidFallBack = 0;
45f82e
@@ -732,6 +740,7 @@ CODESTARTbeginCnfLoad
45f82e
 	cs.bUseJnlPID = -1;
45f82e
 	cs.usePid = NULL;
45f82e
 	cs.bWorkAroundJournalBug = 0;
45f82e
+	cs.dfltTag = NULL;
45f82e
 ENDbeginCnfLoad
45f82e
 
45f82e
 
45f82e
@@ -754,6 +763,7 @@ BEGINfreeCnf
45f82e
 CODESTARTfreeCnf
45f82e
 	free(cs.stateFile);
45f82e
 	free(cs.usePid);
45f82e
+	free(cs.dfltTag);
45f82e
	statsobj.Destruct(&(statsCounter.stats));
45f82e
 ENDfreeCnf
45f82e
 
45f82e
@@ -832,6 +842,8 @@ CODESTARTsetModCnf
45f82e
 			cs.usePid = (char *)es_str2cstr(pvals[i].val.d.estr, NULL);
45f82e
 		} else if (!strcmp(modpblk.descr[i].name, "workaroundjournalbug")) {
45f82e
 			cs.bWorkAroundJournalBug = (int) pvals[i].val.d.n;
45f82e
+		} else if (!strcmp(modpblk.descr[i].name, "defaulttag")) {
45f82e
+			cs.dfltTag = (char *)es_str2cstr(pvals[i].val.d.estr, NULL);
45f82e
 		} else {
45f82e
 			dbgprintf("imjournal: program error, non-handled "
45f82e
 				"param '%s' in beginCnfLoad\n", modpblk.descr[i].name);
45f82e
@@ -799,6 +820,8 @@ CODEmodInit_QueryRegCFSLineHdlr
45f82e
 		facilityHdlr, &cs.iDfltFacility, STD_LOADABLE_MODULE_ID));
45f82e
 	CHKiRet(omsdRegCFSLineHdlr((uchar *)"imjournalusepidfromsystem", 0, eCmdHdlrBinary,
45f82e
 		NULL, &cs.bUseJnlPID, STD_LOADABLE_MODULE_ID));
45f82e
+	CHKiRet(omsdRegCFSLineHdlr((uchar *)"imjournaldefaulttag", 0, eCmdHdlrGetWord,
45f82e
+		NULL, &cs.dfltTag, STD_LOADABLE_MODULE_ID));
45f82e
 ENDmodInit
45f82e
 /* vim:set ai:
45f82e
  */