diff -ur sysklogd-1.3-31.orig/klogd.c sysklogd-1.3-31/klogd.c --- sysklogd-1.3-31.orig/klogd.c Tue Jan 19 03:09:12 1999 +++ sysklogd-1.3-31/klogd.c Tue Sep 12 20:06:48 2000 @@ -806,8 +806,7 @@ value = strtoul(sym_start+1, (char **) 0, 16); *(line-1) = '>'; /* put back delim */ - symbol = LookupSymbol(value, &sym); - if ( !symbol_lookup || symbol == (char *) 0 ) + if ( !symbol_lookup || (symbol = LookupSymbol(value, &sym)) == (char *)0 ) { parse_state = PARSING_TEXT; break; @@ -1058,8 +1057,11 @@ if ( one_shot ) { if (symbol_lookup) { - InitKsyms(symfile); - InitMsyms(); + symbol_lookup = (InitKsyms(symfile) == 1); + symbol_lookup |= InitMsyms(); + if (symbol_lookup == 0) { + Syslog(LOG_WARNING, "cannot find any symbols, turning off symbol lookups\n"); + } } if ( (logsrc = GetKernelLogSrc()) == kernel ) LogKernelLine(); @@ -1074,8 +1076,11 @@ #endif logsrc = GetKernelLogSrc(); if (symbol_lookup) { - InitKsyms(symfile); - InitMsyms(); + symbol_lookup = (InitKsyms(symfile) == 1); + symbol_lookup |= InitMsyms(); + if (symbol_lookup == 0) { + Syslog(LOG_WARNING, "cannot find any symbols, turning off symbol lookups\n"); + } } /* The main loop. */