Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 May 1998 16:29:32 +0800
From:      Peter Wemm <peter@netplex.com.au>
To:        dyson@FreeBSD.ORG
Cc:        kkennawa@physics.adelaide.edu.au (Kris Kennaway), current@FreeBSD.ORG
Subject:   Re: libc corruption 
Message-ID:  <199805160829.QAA29907@spinner.netplex.com.au>
In-Reply-To: Your message of "Fri, 15 May 1998 15:35:38 EST." <199805152035.PAA03073@dyson.iquest.net> 

next in thread | previous in thread | raw e-mail | index | archive | help
"John S. Dyson" wrote:
> Kris Kennaway said:
> > [morden|root] 23:39 ~/trash strings libc.a | grep SYS
> > SYS_nlstat
> > SYS_nfstat
> > SYS_nstat
> > SYS_netbsd_msync
> > SYS_lutimes
> > SYS_netbsd_lchown
> > SYS_lchmod
> > SYS_getdents
> > SYS_futimes
> > 
> > (~/trash holds the corrupted version)
> > 
> > I cant seem to find these symbols defined anywhere in the 
> > /usr/src/lib/libc tree - any ideas where they came from? Anyone want to 
> > take a look at the strange library? :-) I'm running softupdates on this 
> > partition - it's possible there was some kind of corruption there.
> >
> Those are symbols created from the kernel list of system calls.

It's times like this that I'd really like to have a *seperate* list of 
syscalls and numbers stored in lib/libc explicitly.  I've blown holes in 
my feet over this so many times that I don't have much of my feet left. :-]

This will also insulate libc a little more from kernel syscall fiddling. I
think the extra work in adding syscalls would be well worth it in return
for the extra safety.  It should be possible to roll kernel sources
backwards and forwards without ending up with accidental libc symbol
changes.

To make it a little easier, perhaps have libc's syscall tables explicitly 
generated from the kernel sources and committed.  That should make it 
a no-brainer to keep them in sync and yet will stop accidental leakage 
from the kernel into libc.

Cheers,
-Peter
--
Peter Wemm <peter@netplex.com.au>   Netplex Consulting



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199805160829.QAA29907>