This breaks the build on .37-stable, so I'll not apply it.

thanks,

greg k-h

On Mon, Feb 14, 2011 at 10:03:33AM +1100, James Morris wrote:
> ---------- Forwarded message ----------
> Date: Sat, 12 Feb 2011 00:59:18 GMT
> From: Linux Kernel Mailing List <[email protected]>
> To: [email protected]
> Subject: pci: use security_capable() when checking capablities during config
>     space read
> 
> Gitweb:     
> http://git.kernel.org/linus/47970b1b2aa64464bc0a9543e86361a622ae7c03
> Commit:     47970b1b2aa64464bc0a9543e86361a622ae7c03
> Parent:     6037b715d6fab139742c3df8851db4c823081561
> Author:     Chris Wright <[email protected]>
> AuthorDate: Thu Feb 10 15:58:56 2011 -0800
> Committer:  James Morris <[email protected]>
> CommitDate: Fri Feb 11 17:58:11 2011 +1100
> 
>     pci: use security_capable() when checking capablities during config space 
> read
>     
>     Eric Paris noted that commit de139a3 ("pci: check caps from sysfs file
>     open to read device dependent config space") caused the capability check
>     to bypass security modules and potentially auditing.  Rectify this by
>     calling security_capable() when checking the open file's capabilities
>     for config space reads.
>     
>     Reported-by: Eric Paris <[email protected]>
>     Signed-off-by: Chris Wright <[email protected]>
>     Signed-off-by: James Morris <[email protected]>
> ---
>  drivers/pci/pci-sysfs.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
> index 8ecaac9..f7771f3 100644
> --- a/drivers/pci/pci-sysfs.c
> +++ b/drivers/pci/pci-sysfs.c
> @@ -23,6 +23,7 @@
>  #include <linux/mm.h>
>  #include <linux/fs.h>
>  #include <linux/capability.h>
> +#include <linux/security.h>
>  #include <linux/pci-aspm.h>
>  #include <linux/slab.h>
>  #include "pci.h"
> @@ -368,7 +369,7 @@ pci_read_config(struct file *filp, struct kobject *kobj,
>       u8 *data = (u8*) buf;
>  
>       /* Several chips lock up trying to read undefined config space */
> -     if (cap_raised(filp->f_cred->cap_effective, CAP_SYS_ADMIN)) {
> +     if (security_capable(filp->f_cred, CAP_SYS_ADMIN)) {
>               size = dev->cfg_size;
>       } else if (dev->hdr_type == PCI_HEADER_TYPE_CARDBUS) {
>               size = 128;
> --
> To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> _______________________________________________
> stable mailing list
> [email protected]
> http://linux.kernel.org/mailman/listinfo/stable

_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable

Reply via email to