Re: syslogd patch

2001-01-17 Thread Alexander Langer

Thus spake Eric Melville ([EMAIL PROTECTED]):

 Should I send-pr this thing too, or is just sending it to -hackers enough?

To -audit, in general.

   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);

Why don't you just use basename(3)?

Alex

-- 
cat: /home/alex/.sig: No such file or directory


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



RE: syslogd patch

2001-01-16 Thread John Baldwin


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.oldSat Jan 13 21:20:28 2001
 +++ usr/src/usr.sbin/syslogd/syslogd.cSat 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