* Added test in postinst if user and group exist. Christoph Lameter run
into trouble upgrading a RedHat system.
* Fixed little mistake which prevented klogd from accepting a console
log level of 8 to get <7> alias KERN_DEBUG displayed.
* Linked against libc6 (Bug#11731)
* Added SHELL=/bin/bash to rules as Herbert Xu suggested
* Corrected syslog.conf(5) manpage
* syslogd resets the ignore priority flag now. Thanks to Herbert
Thielen. (Bug#12009)
* Fixed bug that caused syslogd to write into wrong files under some
race conditions. Thanks to Herbet Xu. (Bug#13506)
* /var/log/auth.log will only be touch if needed (Bug#14329)
* debian/conffiles is treated like a document (Bug#14521)
* Added script for generic logfile detection and rotation and included
that in cron scripts, included also its manpage (Bug#14610)
* Modified restart messages in /etc/init.d/sysklogd (Bug#15840)
* klogd will first try to load /boot/System.map-$ver, then
/boot/System.map, then /System.map-$ver and after that /System.map
* Modified ExpandKadds() because there were some problems accessing
memory r/w. (Bug#15336)
This commit is contained in:
23
ksym.c
23
ksym.c
@@ -107,8 +107,8 @@ static struct sym_table *sym_array = (struct sym_table *) 0;
|
||||
|
||||
static char *system_maps[] =
|
||||
{
|
||||
"/System.map",
|
||||
"/boot/System.map",
|
||||
"/System.map",
|
||||
#if defined(TEST)
|
||||
"./System.map",
|
||||
#endif
|
||||
@@ -313,18 +313,20 @@ static char * FindSymbolFile()
|
||||
if ( debugging )
|
||||
fputs("Searching for symbol map.\n", stderr);
|
||||
|
||||
for (mf = system_maps; *mf != (char *) 0; ++mf)
|
||||
for (mf = system_maps; *mf != (char *) 0 && sym_file == (FILE *) 0; ++mf)
|
||||
{
|
||||
sprintf (symfile, "%s", *mf);
|
||||
|
||||
sprintf (symfile, "%s-%s", *mf, utsname.release);
|
||||
if ( debugging )
|
||||
fprintf(stderr, "Trying %s.\n", symfile);
|
||||
if ( (sym_file = fopen(symfile, "r")) == (FILE *) 0 ) {
|
||||
sprintf (symfile, "%s-%s", *mf, utsname.release);
|
||||
sprintf (symfile, "%s", *mf);
|
||||
if ( debugging )
|
||||
fprintf(stderr, "Trying %s.\n", symfile);
|
||||
if ( (sym_file = fopen(symfile, "r")) == (FILE *) 0 )
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* At this point a map file was successfully opened. We
|
||||
@@ -352,9 +354,8 @@ static char * FindSymbolFile()
|
||||
switch ( version )
|
||||
{
|
||||
case -1:
|
||||
if ( debugging )
|
||||
fprintf(stderr, "Symbol table has incorrect " \
|
||||
"version number.\n");
|
||||
Syslog(LOG_ERR, "Symbol table has incorrect " \
|
||||
"version number.\n");
|
||||
break;
|
||||
|
||||
case 0:
|
||||
@@ -375,7 +376,6 @@ static char * FindSymbolFile()
|
||||
return(symfile);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
@@ -653,6 +653,7 @@ extern char * ExpandKadds(line, el)
|
||||
*elp = el,
|
||||
*symbol;
|
||||
|
||||
char num[15];
|
||||
auto int value;
|
||||
|
||||
auto struct symbol sym;
|
||||
@@ -704,8 +705,9 @@ extern char * ExpandKadds(line, el)
|
||||
return(el);
|
||||
}
|
||||
dlm = *kp;
|
||||
*kp = '\0';
|
||||
value = strtol(sl+1, (char **) 0, 16);
|
||||
strncpy(num,sl+1,kp-sl-1);
|
||||
num[kp-sl-1] = '\0';
|
||||
value = strtol(num, (char **) 0, 16);
|
||||
if ( (symbol = LookupSymbol(value, &sym)) == (char *) 0 )
|
||||
symbol = sl;
|
||||
|
||||
@@ -717,7 +719,6 @@ extern char * ExpandKadds(line, el)
|
||||
(sym.size==0) ? symbol+1 : symbol, \
|
||||
sym.offset, sym.size);
|
||||
|
||||
*kp = dlm;
|
||||
value = 2;
|
||||
if ( sym.size != 0 )
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user