Author: hawk                         Date: Fri Apr 25 17:28:41 2008 GMT
Module: SOURCES                       Tag: Titanium
---- Log message:
- more 2.6.25 fixes, small cleanup

---- Files affected:
SOURCES:
   linux-2.6-grsec-vs-minimal.patch (1.1.2.8.2.5 -> 1.1.2.8.2.6) 

---- Diffs:

================================================================
Index: SOURCES/linux-2.6-grsec-vs-minimal.patch
diff -u SOURCES/linux-2.6-grsec-vs-minimal.patch:1.1.2.8.2.5 
SOURCES/linux-2.6-grsec-vs-minimal.patch:1.1.2.8.2.6
--- SOURCES/linux-2.6-grsec-vs-minimal.patch:1.1.2.8.2.5        Fri Apr 25 
19:13:03 2008
+++ SOURCES/linux-2.6-grsec-vs-minimal.patch    Fri Apr 25 19:28:36 2008
@@ -90,7 +90,7 @@
                goto loop;
 +
 +      if (gr_handle_follow_link(path->dentry->d_parent->d_inode,
-+                                path->dentry->d_inode, path->dentry, 
nd->mnt)) {
++                                path->dentry->d_inode, path->dentry)) {
 +              err = -EACCES;
 +              goto loop;
 +      }
@@ -103,7 +103,7 @@
         * It already exists.
         */
 +
-+      if (gr_handle_fifo(path.dentry, nd->mnt, dir, flag, acc_mode)) {
++      if (gr_handle_fifo(path.dentry, dir, flag, acc_mode)) {
 +              mutex_unlock(&dir->d_inode->i_mutex);
 +              error = -EACCES;
 +              goto exit_dput;
@@ -118,7 +118,7 @@
                goto exit_dput;
 +
 +      if (gr_handle_follow_link(path.dentry->d_parent->d_inode, 
path.dentry->d_inode,
-+                                path.dentry, nd->mnt)) {
++                                path.dentry)) {
 +              error = -EACCES;
 +              goto exit_dput;
 +      }
@@ -126,14 +126,13 @@
        error = __do_follow_link(&path, nd);
        if (error) {
                /* Does someone understand code flow here? Or it is only
-@@ -2514,8 +2536,17 @@ asmlinkage long sys_linkat(int olddfd, c
+@@ -2514,8 +2536,16 @@ asmlinkage long sys_linkat(int olddfd, c
        error = PTR_ERR(new_dentry);
        if (IS_ERR(new_dentry))
                goto out_unlock;
 +
-+      if (gr_handle_hardlink(old_nd.dentry, old_nd.mnt,
-+                             old_nd.dentry->d_inode,
-+                             old_nd.dentry->d_inode->i_mode, to)) {
++      if (gr_handle_hardlink(old_nd.path.dentry, old_nd.path.dentry->d_inode,
++                             old_nd.path.dentry->d_inode->i_mode, to)) {
 +              error = -EACCES;
 +              goto out_unlock_dput;
 +      }
@@ -443,8 +442,8 @@
 +#include <linux/grinternal.h>
 +
 +int
-+gr_handle_fifo(const struct dentry *dentry, const struct vfsmount *mnt,
-+             const struct dentry *dir, const int flag, const int acc_mode)
++gr_handle_fifo(const struct dentry *dentry, const struct dentry *dir,
++             const int flag, const int acc_mode)
 +{
 +#ifdef CONFIG_GRKERNSEC_FIFO
 +      if (grsec_enable_fifo && S_ISFIFO(dentry->d_inode->i_mode) &&
@@ -494,7 +493,7 @@
 diff -urNp linux-2.6.25.orig/grsecurity/grsec_link.c 
linux-2.6.25/grsecurity/grsec_link.c
 --- linux-2.6.25.orig/grsecurity/grsec_link.c  1970-01-01 01:00:00.000000000 
+0100
 +++ linux-2.6.25/grsecurity/grsec_link.c       2008-04-25 15:10:25.000000000 
+0200
-@@ -0,0 +1,37 @@
+@@ -0,0 +1,36 @@
 +#include <linux/kernel.h>
 +#include <linux/sched.h>
 +#include <linux/fs.h>
@@ -504,7 +503,7 @@
 +int
 +gr_handle_follow_link(const struct inode *parent,
 +                    const struct inode *inode,
-+                    const struct dentry *dentry, const struct vfsmount *mnt)
++                    const struct dentry *dentry)
 +{
 +#ifdef CONFIG_GRKERNSEC_LINK
 +      if (grsec_enable_link && S_ISLNK(inode->i_mode) &&
@@ -517,9 +516,8 @@
 +}
 +
 +int
-+gr_handle_hardlink(const struct dentry *dentry,
-+                 const struct vfsmount *mnt,
-+                 struct inode *inode, const int mode, const char *to)
++gr_handle_hardlink(const struct dentry *dentry, struct inode *inode,
++                 const int mode, const char *to)
 +{
 +#ifdef CONFIG_GRKERNSEC_LINK
 +      if (grsec_enable_link && current->fsuid != inode->i_uid &&
@@ -780,7 +778,7 @@
 diff -urNp linux-2.6.25.orig/include/linux/grsecurity.h 
linux-2.6.25/include/linux/grsecurity.h
 --- linux-2.6.25.orig/include/linux/grsecurity.h       1970-01-01 
01:00:00.000000000 +0100
 +++ linux-2.6.25/include/linux/grsecurity.h    2008-04-25 15:10:25.000000000 
+0200
-@@ -0,0 +1,21 @@
+@@ -0,0 +1,18 @@
 +#ifndef GR_SECURITY_H
 +#define GR_SECURITY_H
 +#include <linux/fs.h>
@@ -790,14 +788,11 @@
 +
 +int gr_handle_follow_link(const struct inode *parent,
 +                               const struct inode *inode,
-+                               const struct dentry *dentry,
-+                               const struct vfsmount *mnt);
++                               const struct dentry *dentry);
 +int gr_handle_fifo(const struct dentry *dentry,
-+                        const struct vfsmount *mnt,
 +                        const struct dentry *dir, const int flag,
 +                        const int acc_mode);
 +int gr_handle_hardlink(const struct dentry *dentry,
-+                            const struct vfsmount *mnt,
 +                            struct inode *inode,
 +                            const int mode, const char *to);
 +
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/linux-2.6-grsec-vs-minimal.patch?r1=1.1.2.8.2.5&r2=1.1.2.8.2.6&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to