diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2008-03-19 17:35:09 +0000 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2008-03-19 17:35:09 +0000 |
commit | 81d32abb341f087ce6d1d05ed8ed12949a69654d (patch) | |
tree | 37c6f73664c88c1f62e82860c4b6ceb16b3f668d | |
parent | 53cd617ee98ae15501e8f3ef8dbeb99f77715132 (diff) | |
download | rsyslog-81d32abb341f087ce6d1d05ed8ed12949a69654d.tar.gz rsyslog-81d32abb341f087ce6d1d05ed8ed12949a69654d.tar.xz rsyslog-81d32abb341f087ce6d1d05ed8ed12949a69654d.zip |
bugfix: imklog leaked several hundered KB on each HUP. Thanks to
varmojfekoj for the patch
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | plugins/imklog/imklog.c | 3 | ||||
-rw-r--r-- | plugins/imklog/imklog.h | 2 | ||||
-rw-r--r-- | plugins/imklog/ksym.c | 6 | ||||
-rw-r--r-- | plugins/imklog/ksym_mod.c | 6 |
5 files changed, 19 insertions, 0 deletions
@@ -2,6 +2,8 @@ Version 3.12.4 (rgerhards), 2008-03-?? - added flow control options to other input sources - bugfix/doc: removed no longer supported -h option from man page +- bugfix: imklog leaked several hundered KB on each HUP. Thanks to + varmojfekoj for the patch --------------------------------------------------------------------------- Version 3.12.3 (rgerhards), 2008-03-18 - added advanced flow control for congestion cases (mode depending on message diff --git a/plugins/imklog/imklog.c b/plugins/imklog/imklog.c index 02a4a348..bfea8c6f 100644 --- a/plugins/imklog/imklog.c +++ b/plugins/imklog/imklog.c @@ -642,6 +642,9 @@ CODESTARTafterRun /* cleanup here */ if(logsrc != none) CloseLogSrc(); + + DeinitKsyms(); + DeinitMsyms(); ENDafterRun diff --git a/plugins/imklog/imklog.h b/plugins/imklog/imklog.h index d9bd3c02..2db75009 100644 --- a/plugins/imklog/imklog.h +++ b/plugins/imklog/imklog.h @@ -33,7 +33,9 @@ extern int dbgPrintSymbols; /* prototypes */ extern int InitKsyms(char *); +extern void DeinitKsyms(void); extern int InitMsyms(void); +extern void DeinitMsyms(void); extern char * ExpandKadds(char *, char *); extern void SetParanoiaLevel(int); extern void vsyslog(int pri, const char *fmt, va_list ap); diff --git a/plugins/imklog/ksym.c b/plugins/imklog/ksym.c index d8891479..c9fd7147 100644 --- a/plugins/imklog/ksym.c +++ b/plugins/imklog/ksym.c @@ -269,6 +269,12 @@ extern int InitKsyms(char *mapfile) } +extern void DeinitKsyms(void) +{ + FreeSymbols(); +} + + /************************************************************************** * Function: FindSymbolFile * diff --git a/plugins/imklog/ksym_mod.c b/plugins/imklog/ksym_mod.c index a8f4790e..3c7e0e45 100644 --- a/plugins/imklog/ksym_mod.c +++ b/plugins/imklog/ksym_mod.c @@ -279,6 +279,12 @@ static int symsort(const void *p1, const void *p2) } +extern void DeinitMsyms(void) +{ + FreeModules(); +} + + /************************************************************************** * Function: FreeModules * |