On 17-Jan-01 Eric Melville wrote:
> Printing out the whole path to the kernel all the time in syslog messages is
> a bit redundant and ugly, especially seeing that it isn't done for any other
> binaries.
>
> Should I send-pr this thing too, or is just sending it to -hackers enough?
>
> --- usr/src/usr.sbin/syslogd/syslogd.c.old Sat Jan 13 21:20:28 2001
> +++ usr/src/usr.sbin/syslogd/syslogd.c Sat Jan 13 22:27:44 2001
> @@ -734,8 +734,8 @@
> int flags;
> {
> struct filed *f;
> - int i, fac, msglen, omask, prilev;
> - char *timestamp;
> + int i, fac, msglen, omask, prilev, bflen;
> + char *timestamp, *bfshort;
> char prog[NAME_MAX+1];
> char buf[MAXLINE+1];
>
> @@ -784,7 +784,16 @@
>
> /* add kernel prefix for kernel messages */
> if (flags & ISKERNEL) {
> - snprintf(buf, sizeof(buf), "%s: %s", bootfile, msg);
> + /* ignore path to kernel */
> + bflen = strlen(bootfile);
> + bfshort = bootfile;
> + while(bflen--)
> + if(*(bootfile+bflen) == '/')
> + {
> + bfshort = bootfile+bflen+1;
> + break;
> + }
> + snprintf(buf, sizeof(buf), "%s: %s", bfshort, msg);
You could use strrchr(3) here instead of rolling your own loop. However, this
will print out 'kernel' for every kernel. If I 'boot kernel.foo' from the
loader, then the bootfile will be /boot/kernel.foo/kernel, and this will trim
the /boot/kenrel.foo/ part. The kernel.foo part is actually the important
part, however, so I'd prefer it to not do this.
--
John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message