* 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:
Joey Schulze 1998-01-02 03:07:16 +00:00
parent 67383f9931
commit 05c061eaa5
3 changed files with 39 additions and 18 deletions

23
ksym.c
View File

@ -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 )
{

View File

@ -17,7 +17,7 @@
.\" along with this program; if not, write to the Free Software
.\" Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
.\"
.TH SYSLOG.CONF 5 "24 November 1995" "Version 1.3" "Linux System Administration"
.TH SYSLOG.CONF 5 "1 January 1998" "Version 1.3" "Linux System Administration"
.SH NAME
syslog.conf \- syslogd(8) configuration file
.SH DESCRIPTION
@ -108,19 +108,18 @@ stands for no priority of the given facility.
You can specify multiple facilities with the same priority pattern in
one statement using the comma (``,'') operator. You may specify as
much facilities as you want. Remember that only the facility part from
much facilities as you want. Remember that only the facility part from
such a statement is taken, a priority part would be skipped.
Multiple selectors may be specified for a single
.I action
using the semicolon (``;'') separator. Remember that each selector in
using the semicolon (``;'') separator. Remember that each selector in
the
.I selector
field is capable to overwrite the preceding ones. Using this
behavior you can exclude some priorities from the pattern.
This
.BR syslogd (8)
has a syntax extension to the original BSD source, that makes its use
more intuitively. You may precede every priority with an equation sign

View File

@ -316,6 +316,15 @@ static char sccsid[] = "@(#)syslogd.c 5.27 (Berkeley) 10/10/88";
*
* Sun Jun 15 16:23:29 MET DST 1997: Michael Alan Dorman
* Some more glibc patches made by <mdorman@debian.org>.
*
* Thu Jan 1 16:04:52 CET 1998: Martin Schulze
* Applied patch from Herbert Thielen <Herbert.Thielen@lpr.e-technik.tu-muenchen.de>.
* This included some balance parentheses for emacs and a bug in
* the exclamation mark handling.
*
* Fixed small bug which caused syslogd to write messages to the
* wrong logfile under some very rare conditions. Thanks to
* Herbert Xu <herbert@gondor.apana.org.au> for fiddling this out.
*/
@ -840,7 +849,7 @@ int main(argc, argv)
(char *) &on, sizeof(on)) < 0 ) {
logerror("setsockopt, suspending inet");
}
else {
else if (AcceptRemote) {
if (bind(finet, (struct sockaddr *) &sin, \
sizeof(sin)) < 0) {
logerror("bind, suspending inet");
@ -1406,13 +1415,13 @@ void logmsg(pri, msg, from, flags)
/* new line, save it */
if (f->f_prevcount)
fprintlog(f, (char *)from, 0, (char *)NULL);
f->f_prevpri = pri;
f->f_repeatcount = 0;
(void) strncpy(f->f_lasttime, timestamp, 15);
(void) strncpy(f->f_prevhost, from,
sizeof(f->f_prevhost));
if (msglen < MAXSVLINE) {
f->f_prevlen = msglen;
f->f_prevpri = pri;
(void) strcpy(f->f_prevline, msg);
fprintlog(f, (char *)from, flags, (char *)NULL);
} else {
@ -1426,6 +1435,9 @@ void logmsg(pri, msg, from, flags)
(void) sigsetmask(omask);
#endif
}
#if FALSE
} /* balance parentheses for emacs */
#endif
void fprintlog(f, from, flags, msg)
register struct filed *f;
@ -1638,6 +1650,9 @@ void fprintlog(f, from, flags, msg)
f->f_prevcount = 0;
return;
}
#if FALSE
}} /* balance parentheses for emacs */
#endif
jmp_buf ttybuf;
@ -1915,7 +1930,7 @@ void die(sig)
/* Close the sockets. */
close(funix);
close(inetm);
if (InetInuse) close(inetm);
/* Clean-up files. */
(void) unlink(LogName);
@ -2112,6 +2127,9 @@ void init()
(void) signal(SIGHUP, sighup_handler);
dprintf("syslogd: restarted.\n");
}
#if FALSE
}}} /* balance parentheses for emacs */
#endif
/*
* Crack a configuration file line
@ -2168,6 +2186,9 @@ void cfline(line, f)
*bp=*(bp+1);
*bp='\0';
}
else {
ignorepri = 0;
}
if ( *buf == '=' )
{
singlpri = 1;