Re: [AppArmor 39/45] AppArmor: Profile loading and manipulation, pathname matching

2007-06-26 Thread Lars Marowsky-Bree
On 2007-06-25T17:14:11, Pavel Machek <[EMAIL PROTECTED]> wrote: > Actually, I surprised Lars a lot by telling him ln /etc/shadow /tmp/ > allows any user to make AA ineffective on large part of systems -- in > internal discussion. (It is not actually a _bug_, but it is certainly > unexpected). Pav

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Adrian Bunk
On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > Quoting James Morris ([EMAIL PROTECTED]): > > On Mon, 25 Jun 2007, Andreas Gruenbacher wrote: > > > > > It's useful for some LSMs to be modular, and LSMs which are y/n options > > > won't > > > have any security architecture issu

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Serge E. Hallyn
Quoting Kyle Moffett ([EMAIL PROTECTED]): > On Jun 25, 2007, at 16:37:58, Andreas Gruenbacher wrote: > >On Monday 25 June 2007 06:33, James Morris wrote: > >>Convert LSM into a static interface, as the ability to unload a > >>security module is not required by in-tree users and potentially > >>

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Serge E. Hallyn
Quoting Adrian Bunk ([EMAIL PROTECTED]): > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > > Quoting James Morris ([EMAIL PROTECTED]): > > > On Mon, 25 Jun 2007, Andreas Gruenbacher wrote: > > > > > > > It's useful for some LSMs to be modular, and LSMs which are y/n options > >

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Adrian Bunk
On Tue, Jun 26, 2007 at 09:06:44AM -0500, Serge E. Hallyn wrote: > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > > > Quoting James Morris ([EMAIL PROTECTED]): > > > > On Mon, 25 Jun 2007, Andreas Gruenbacher wrote: > > > > > > > > >

Re: What kind of feature does New LSM security model need?

2007-06-26 Thread Casey Schaufler
--- "Kazuki Omo(Company)" <[EMAIL PROTECTED]> wrote: > Folks, > > May I ask some foolish questions? So long as you're not afraid of foolish answers. > I just want to make sure what do we need > if we want to put new security module(which is using LSM) in mainline. > > 1. Does it have to provi

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Serge E. Hallyn
Quoting Adrian Bunk ([EMAIL PROTECTED]): > On Tue, Jun 26, 2007 at 09:06:44AM -0500, Serge E. Hallyn wrote: > > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > > > > Quoting James Morris ([EMAIL PROTECTED]): > > > > > On Mon, 25 Jun

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Greg KH
On Tue, Jun 26, 2007 at 09:06:44AM -0500, Serge E. Hallyn wrote: > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > > > Quoting James Morris ([EMAIL PROTECTED]): > > > > On Mon, 25 Jun 2007, Andreas Gruenbacher wrote: > > > > > > > > >

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Serge E. Hallyn
Quoting Greg KH ([EMAIL PROTECTED]): > On Tue, Jun 26, 2007 at 09:06:44AM -0500, Serge E. Hallyn wrote: > > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: > > > > Quoting James Morris ([EMAIL PROTECTED]): > > > > > On Mon, 25 Jun 2007

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Adrian Bunk
On Tue, Jun 26, 2007 at 10:53:29AM -0500, Serge E. Hallyn wrote: > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > On Tue, Jun 26, 2007 at 09:06:44AM -0500, Serge E. Hallyn wrote: > > > Quoting Adrian Bunk ([EMAIL PROTECTED]): > > > > On Mon, Jun 25, 2007 at 10:57:31PM -0500, Serge E. Hallyn wrote: >

Re: [AppArmor 39/45] AppArmor: Profile loading and manipulation, pathname matching

2007-06-26 Thread Crispin Cowan
Chris Wright wrote: > * Chris Mason ([EMAIL PROTECTED]) wrote: >> I'm sure people there will have a different versions of events. The >> one part that was discussed was if pathname based security was >> useful, and a number of the people in the room (outside of >> novell) said it was. Now, it

[AppArmor 00/44] AppArmor security module overview

2007-06-26 Thread jjohansen
This post contains patches to include the AppArmor application security framework, with request for inclusion into -mm for wider testing. These patches are currently against lkml but we will gladly rebase them against -mm so that they will apply cleanly. Any comments and feedback to improve imple

[AppArmor 03/44] Add a vfsmount parameter to notify_change()

2007-06-26 Thread jjohansen
The vfsmount parameter must be set appropriately for files visibile outside the kernel. Files that are only used in a filesystem (e.g., reiserfs xattr files) will have a NULL vfsmount. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-b

[AppArmor 01/44] Pass struct vfsmount to the inode_create LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h |9 ++--- sec

[AppArmor 02/44] Pass struct path down to remove_suid and children

2007-06-26 Thread jjohansen
Required by a later patch that adds a struct vfsmount parameter to notify_change(). Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ntfs/file.c |2 +- fs/reiserfs/file.c

[AppArmor 05/44] Add struct vfsmount parameter to vfs_mkdir()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |5 - fs/namei.c

[AppArmor 06/44] Pass struct vfsmount to the inode_mkdir LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h |8 ++-- secu

[AppArmor 09/44] Add a struct vfsmount parameter to vfs_symlink()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |4 +++- fs/namei.c |

[AppArmor 08/44] Pass struct vfsmount to the inode_mknod LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h |7 +-- secur

[AppArmor 07/44] Add a struct vfsmount parameter to vfs_mknod()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |5 - fs/namei.c |

[AppArmor 10/44] Pass struct vfsmount to the inode_symlink LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h |9 ++--- sec

[AppArmor 11/44] Pass struct vfsmount to the inode_readlink LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/stat.c|2 +- include/linux/security.h | 11 +++ s

[AppArmor 13/44] Pass the struct vfsmounts to the inode_link LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |3 ++- include/linux/security.h | 18 +

[AppArmor 14/44] Add a struct vfsmount parameter to vfs_rmdir()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |4 +++- fs/namei.c

[AppArmor 15/44] Pass struct vfsmount to the inode_rmdir LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h | 12

[AppArmor 17/44] Add a struct vfsmount parameter to vfs_unlink()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |3 ++- fs/namei.c|

[AppArmor 18/44] Pass struct vfsmount to the inode_unlink LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |2 +- include/linux/security.h | 12

[AppArmor 16/44] Call lsm hook before unhashing dentry in vfs_rmdir()

2007-06-26 Thread jjohansen
If we unhash the dentry before calling the security_inode_rmdir hook, we cannot compute the file's pathname in the hook anymore. AppArmor needs to know the filename in order to decide whether a file may be deleted, though. Signed-off-by: John Johansen <[EMAIL PROTECTED]> Signed-off-by: Andreas Gru

[AppArmor 19/44] Add struct vfsmount parameters to vfs_rename()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |7 ++- fs/namei.c |

[AppArmor 20/44] Pass struct vfsmount to the inode_rename LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |6 -- include/linux/security.h | 18 ++

[AppArmor 23/44] Add a struct vfsmount parameter to vfs_getxattr()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/nfsd/nfs4xdr.c |2 +- fs/nfsd/vfs.c

[AppArmor 22/44] Pass struct vfsmount to the inode_setxattr LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c |4 ++-- include/linux/security.h | 40

[AppArmor 21/44] Add a struct vfsmount parameter to vfs_setxattr()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/nfsd/vfs.c | 16 +++- fs/xattr.c

[AppArmor 25/44] Add a struct vfsmount parameter to vfs_listxattr()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c| 25 ++--- i

[AppArmor 27/44] Add a struct vfsmount parameter to vfs_removexattr()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/nfsd/vfs.c |7 --- fs/xattr.c

[AppArmor 28/44] Pass struct vfsmount to the inode_removexattr LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c |2 +- include/linux/security.h | 15 +-

[AppArmor 26/44] Pass struct vfsmount to the inode_listxattr LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c |2 +- include/linux/security.h | 12 +++-

[AppArmor 12/44] Add struct vfsmount parameters to vfs_link()

2007-06-26 Thread jjohansen
The vfsmount will be passed down to the LSM hook so that LSMs can compute pathnames. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/ecryptfs/inode.c |9 +++-- fs/namei.c

[AppArmor 30/44] Make d_path() consistent across mount operations

2007-06-26 Thread jjohansen
The path that __d_path() computes can become slightly inconsistent when it races with mount operations: it grabs the vfsmount_lock when traversing mount points but immediately drops it again, only to re-grab it when it reaches the next mount point. The result is that the filename computed is not a

[AppArmor 29/44] Fix __d_path() for lazy unmounts and make it unambiguous

2007-06-26 Thread jjohansen
First, when __d_path() hits a lazily unmounted mount point, it tries to prepend the name of the lazily unmounted dentry to the path name. It gets this wrong, and also overwrites the slash that separates the name from the following pathname component. This patch fixes that; if a process was in dire

[AppArmor 32/44] Enable LSM hooks to distinguish operations on file descriptors from operations on pathnames

2007-06-26 Thread jjohansen
Struct iattr already contains ia_file since commit cc4e69de from Miklos (which is related to commit befc649c). Use this to pass struct file down the setattr hooks. This allows LSMs to distinguish operations on file descriptors from operations on paths. Signed-off-by: Andreas Gruenbacher <[EMAIL P

[AppArmor 34/44] Factor out sysctl pathname code

2007-06-26 Thread jjohansen
Convert the selinux sysctl pathname computation code into a standalone function. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- include/linux/sysctl.h |2 ++ kernel/sysctl.c | 27 +++ security/s

[AppArmor 33/44] Pass struct file down the inode_*xattr security LSM hooks

2007-06-26 Thread jjohansen
This allows LSMs to also distinguish between file descriptor and path access for the xattr operations. (The other relevant operations are covered by the setattr hook.) Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c

[AppArmor 35/44] Allow permission functions to tell between parent and leaf checks

2007-06-26 Thread jjohansen
Set the LOOKUP_CONTINUE flag when checking parent permissions. This allows permission functions to tell between parent and leaf checks. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |6 ++ 1 file changed, 6 insertio

[AppArmor 36/44] Export audit subsystem for use by modules

2007-06-26 Thread jjohansen
Update kenel audit range comments to show AppArmor's registered range of 1500-1599. This range used to be reserved for LSPP but LSPP uses the SE Linux range and the range was given to AppArmor. Adds necessary export symbols for audit subsystem routines. Changes audit_log_vformat to be externally v

[AppArmor 37/44] AppArmor: Main Part

2007-06-26 Thread jjohansen
The underlying functions by which the AppArmor LSM hooks are implemented. Signed-off-by: John Johansen <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> --- security/apparmor/main.c | 1255 +++ 1 file changed, 1255 insertions(+

[AppArmor 38/44] AppArmor: Module and LSM hooks

2007-06-26 Thread jjohansen
Module parameters, LSM hooks, initialization and teardown. Signed-off-by: John Johansen <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> --- security/apparmor/lsm.c | 817 1 file changed, 817 insertions(+) --- /dev/null

[AppArmor 39/44] AppArmor: Profile loading and manipulation, pathname matching

2007-06-26 Thread jjohansen
Pathname matching, transition table loading, profile loading and manipulation. Signed-off-by: John Johansen <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> --- security/apparmor/match.c| 248 ++ security/apparmor/match.h| 83

[AppArmor 41/44] Add AppArmor LSM to security/Makefile

2007-06-26 Thread jjohansen
Signed-off-by: John Johansen <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> --- security/Kconfig |1 + security/Makefile |1 + security/apparmor/Kconfig |3 ++- 3 files changed, 4 insertions(+), 1 deletion(-) --- a/security/Kconfig +++ b/s

[AppArmor 40/44] AppArmor: all the rest

2007-06-26 Thread jjohansen
All the things that didn't nicely fit in a category on their own: kbuild code, declararions and inline functions, /sys/kernel/security/apparmor filesystem for controlling apparmor from user space, profile list functions, locking documentation, /proc/$pid/task/$tid/attr/current access. Signed-off-b

[AppArmor 42/44] Switch to vfs_permission() in do_path_lookup()

2007-06-26 Thread jjohansen
Switch from file_permission() to vfs_permission() in do_path_lookup(): this avoids calling permission() with a NULL nameidata here. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c | 13 ++--- 1 file changed, 6 inser

[AppArmor 44/44] Fix file_permission()

2007-06-26 Thread jjohansen
We cannot easily switch from file_permission() to vfs_permission() everywhere, so fix file_permission() to not use a NULL nameidata for the remaining users. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c |8 +++- 1 f

[AppArmor 43/44] Switch to vfs_permission() in sys_fchdir()

2007-06-26 Thread jjohansen
Switch from file_permission() to vfs_permission() in sys_fchdir(): this avoids calling permission() with a NULL nameidata here. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/open.c | 16 +++- 1 file changed, 7 inserti

[AppArmor 04/44] Pass struct vfsmount to the inode_setattr LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/attr.c|4 ++-- include/linux/security.h |8 ++-- se

[RFD 0/4] AppArmor - Don't pass NULL nameidata to vfs_create/lookup/permission IOPs

2007-06-26 Thread jjohansen
-- This post is a request for discussion on creating a second smaller nameidata struct to eliminate conditionally passing of vfsmounts to the LSM. It contains a series of patches that apply on top of the AppArmor patch series. These patches were previously post on May 14, but received no feedba

[RFD 2/4] Never pass a NULL nameidata to vfs_create()

2007-06-26 Thread jjohansen
Create a nameidata2 struct in nfsd and mqueue so that vfs_create does need to conditionally pass the vfsmnt. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/namei.c|2 +- fs/nfsd/vfs.c | 42 +

[RFD 3/4] Dont use a NULL nameidata in xattr_permission()

2007-06-26 Thread jjohansen
Create nameidata2 struct xattr_permission so that it does not pass NULL to permission. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c | 18 +- 1 file changed, 13 insertions(+), 5 deletions(-) --- a/fs/xatt

[RFD 4/4] Pass nameidata2 to permission() from nfsd_permission()

2007-06-26 Thread jjohansen
Construct a nameidata object and pass it down to permission(), so that we can do the proper mount flag checks there. Note that confining nfsd with AppArmor makes no sense, and so this patch is not necessary for AppArmor alone. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by:

Re: [RFD 0/4] AppArmor - Don't pass NULL nameidata to vfs_create/lookup/permission IOPs

2007-06-26 Thread Trond Myklebust
On Tue, 2007-06-26 at 16:15 -0700, [EMAIL PROTECTED] wrote: > To remove conditionally passing of vfsmounts to the LSM, a nameidata > struct can be instantiated in the nfsd and mqueue filesystems. This > however results in useless information being passed down, as not > all fields in the nameidata

Re: [AppArmor 00/44] AppArmor security module overview

2007-06-26 Thread Andrew Morton
On Tue, 26 Jun 2007 16:07:56 -0700 [EMAIL PROTECTED] wrote: > This post contains patches to include the AppArmor application security > framework, with request for inclusion into -mm for wider testing. Patches 24 and 31 didn't come through. Rolled-up diffstat (excluding 24&31): fs/attr.c

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Kyle Moffett
On Jun 26, 2007, at 09:47:12, Serge E. Hallyn wrote: Quoting Kyle Moffett ([EMAIL PROTECTED]): On Jun 25, 2007, at 16:37:58, Andreas Gruenbacher wrote: It's useful for some LSMs to be modular, and LSMs which are y/n options won't have any security architecture issues with unloading at all. T

Re: [RFD 1/4] Pass no useless nameidata to the create, lookup, and permission IOPs

2007-06-26 Thread Erez Zadok
In message <[EMAIL PROTECTED]>, [EMAIL PROTECTED] writes: > The create, lookup, and permission inode operations are all passed a > full nameidata. This is unfortunate because in nfsd and the mqueue > filesystem, we must instantiate a struct nameidata but cannot provide > all of the same informatio

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Crispin Cowan
Kyle Moffett wrote: > Let's go over the differences between "my fs" and "my LSM", and the > similarities between "my VM" and "my LSM": Filesystems don't get > hooked from virtually every userspace-initiated operation, whereas > both VMs and LSMs do. VMs and LSMs attach anonymous state data to a >

[AppArmor 24/44] Pass struct vfsmount to the inode_getxattr LSM hook

2007-06-26 Thread jjohansen
This is needed for computing pathnames in the AppArmor LSM. Signed-off-by: Tony Jones <[EMAIL PROTECTED]> Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL PROTECTED]> --- fs/xattr.c |2 +- include/linux/security.h | 13 -

[AppArmor 31/44] Add d_namespace_path() to compute namespace relative pathnames

2007-06-26 Thread jjohansen
In AppArmor, we are interested in pathnames relative to the namespace root. This is the same as d_path() except for the root where the search ends. Add a function for computing the namespace-relative path. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Signed-off-by: John Johansen <[EMAIL

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Kyle Moffett
On Jun 26, 2007, at 20:57:53, Crispin Cowan wrote: Kyle Moffett wrote: Let's go over the differences between "my fs" and "my LSM", and the similarities between "my VM" and "my LSM": Filesystems don't get hooked from virtually every userspace-initiated operation, whereas both VMs and LSMs d

Re: [AppArmor 00/44] AppArmor security module overview

2007-06-26 Thread John Johansen
On Tue, Jun 26, 2007 at 04:52:02PM -0700, Andrew Morton wrote: > On Tue, 26 Jun 2007 16:07:56 -0700 > [EMAIL PROTECTED] wrote: > > > This post contains patches to include the AppArmor application security > > framework, with request for inclusion into -mm for wider testing. > > Patches 24 and 31

Re: [AppArmor 00/44] AppArmor security module overview

2007-06-26 Thread Andrew Morton
On Tue, 26 Jun 2007 19:24:03 -0700 John Johansen <[EMAIL PROTECTED]> wrote: > > > > so... where do we stand with this? Fundamental, irreconcilable > > differences over the use of pathname-based security? > > > There certainly seems to be some differences of opinion over the use > of pathname-b

Re: [PATCH try #2] security: Convert LSM into a static interface

2007-06-26 Thread Chris Wright
* Crispin Cowan ([EMAIL PROTECTED]) wrote: > and simple LSMs that can be > unloaded safely can permit it. there are none, and making the above possible is prohibitively expensive. - To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to [EMAIL

Re: implement-file-posix-capabilities.patch

2007-06-26 Thread Andrew Morgan
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Serge E. Hallyn wrote: > >> I don't particularly mind, but can you point out any case where >> it is an advantage to have the one bit for f'E rather than just >> drop f'E altogether? Instead of having > >> f'I=something >> f'P=something >>

Re: [AppArmor 00/44] AppArmor security module overview

2007-06-26 Thread John Johansen
On Tue, Jun 26, 2007 at 07:47:00PM -0700, Andrew Morton wrote: > On Tue, 26 Jun 2007 19:24:03 -0700 John Johansen <[EMAIL PROTECTED]> wrote: > > > > > > > so... where do we stand with this? Fundamental, irreconcilable > > > differences over the use of pathname-based security? > > > > > There c