[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1190295535.6763.29.camel@heimdal.trondhjem.org>
Date: Thu, 20 Sep 2007 09:38:55 -0400
From: Trond Myklebust <Trond.Myklebust@...app.com>
To: Andrew Morgan <morgan@...nel.org>
Cc: David Howells <dhowells@...hat.com>, viro@....linux.org.uk,
hch@...radead.org, sds@...ho.nsa.gov, casey@...aufler-ca.com,
linux-kernel@...r.kernel.org, selinux@...ho.nsa.gov,
linux-security-module@...r.kernel.org
Subject: Re: [PATCH 3/3] CRED: Move the effective capabilities into the
cred struct
On Wed, 2007-09-19 at 21:11 -0700, Andrew Morgan wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> David Howells wrote:
> > Move the effective capabilities mask from the task struct into the credentials
> > record.
> >
> > Note that the effective capabilities mask in the cred struct shadows that in
> > the task_struct because a thread can have its capabilities masks changed by
> > another thread. The shadowing is performed by update_current_cred() which is
> > invoked on entry to any system call that might need it.
>
> OOC If we were to simply drop support for one process changing the
> capabilities of another, would we need this patch?
No. This has nothing to do about one process changing some other
process' capabilities. It has to do with being able to pass security
information around the kernel beyond the confines of the task struct.
This is needed in order to deal with asynchronous i/o where security
checks may have to be deferred, and where the task struct may no longer
be available.
One example would be a failover situation when doing deferred writes: if
the first choice of storage medium is unavailable, and the kernel tries
to fail the write over to another storage. On NFS that might involve
having to build up a new RPCSEC_GSS security context for the new server.
Currently, you cannot do this safely because all the security info is
cached in the task struct and much of it cannot be copied.
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists