オープンソース・ソフトウェアの開発とダウンロード

Subversion リポジトリの参照

Diff of /trunk/1.6.x/ccs-patch/patches/ccs-patch-2.6.21.diff

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 897 by kumaneko, Tue Jan 15 03:04:13 2008 UTC revision 993 by kumaneko, Mon Feb 18 04:20:40 2008 UTC
# Line 443  Source code for this patch is http://www Line 443  Source code for this patch is http://www
443                          break;                          break;
444                  case S_IFCHR: case S_IFBLK:                  case S_IFCHR: case S_IFBLK:
445  +                       /***** TOMOYO Linux start. *****/  +                       /***** TOMOYO Linux start. *****/
446  +                       if ((error = pre_vfs_mknod(nd.dentry->d_inode, dentry, mode)) == 0 && (error = CheckSingleWritePermission(S_ISCHR(mode) ? TYPE_MKCHAR_ACL : TYPE_MKBLOCK_ACL, dentry, nd.mnt)) == 0)  +                       if ((error = pre_vfs_mknod(nd.dentry->d_inode, dentry, mode)) == 0 && (error = CheckSingleWritePermission(S_ISCHR(mode) ? TYPE_MKCHAR_ACL : TYPE_MKBLOCK_ACL, dentry, nd.mnt)) == 0)
447  +                       /***** TOMOYO Linux end. *****/  +                       /***** TOMOYO Linux end. *****/
448                          error = vfs_mknod(nd.dentry->d_inode,dentry,mode,                          error = vfs_mknod(nd.dentry->d_inode,dentry,mode,
449                                          new_decode_dev(dev));                                          new_decode_dev(dev));
450                          break;                          break;
451                  case S_IFIFO: case S_IFSOCK:                  case S_IFIFO: case S_IFSOCK:
452  +                       /***** TOMOYO Linux start. *****/  +                       /***** TOMOYO Linux start. *****/
453  +                       if ((error = pre_vfs_mknod(nd.dentry->d_inode, dentry, mode)) == 0 && (error = CheckSingleWritePermission(S_ISFIFO(mode) ? TYPE_MKFIFO_ACL : TYPE_MKSOCK_ACL, dentry, nd.mnt)) == 0)  +                       if ((error = pre_vfs_mknod(nd.dentry->d_inode, dentry, mode)) == 0 && (error = CheckSingleWritePermission(S_ISFIFO(mode) ? TYPE_MKFIFO_ACL : TYPE_MKSOCK_ACL, dentry, nd.mnt)) == 0)
454  +                       /***** TOMOYO Linux end. *****/  +                       /***** TOMOYO Linux end. *****/
455                          error = vfs_mknod(nd.dentry->d_inode,dentry,mode,0);                          error = vfs_mknod(nd.dentry->d_inode,dentry,mode,0);
456                          break;                          break;
457                  case S_IFDIR:                  case S_IFDIR:
# Line 490  Source code for this patch is http://www Line 490  Source code for this patch is http://www
490                  if (inode)                  if (inode)
491                          atomic_inc(&inode->i_count);                          atomic_inc(&inode->i_count);
492  +               /***** TOMOYO Linux start. *****/  +               /***** TOMOYO Linux start. *****/
493  +               if ((error = pre_vfs_unlink(nd.dentry->d_inode, dentry)) == 0 && (error = CheckSingleWritePermission(TYPE_UNLINK_ACL, dentry, nd.mnt)) == 0)  +               if ((error = pre_vfs_unlink(nd.dentry->d_inode, dentry)) == 0 && (error = CheckSingleWritePermission(TYPE_UNLINK_ACL, dentry, nd.mnt)) == 0)
494  +               /***** TOMOYO Linux end. *****/  +               /***** TOMOYO Linux end. *****/
495                  error = vfs_unlink(nd.dentry->d_inode, dentry);                  error = vfs_unlink(nd.dentry->d_inode, dentry);
496          exit2:          exit2:
497                  dput(dentry);                  dput(dentry);
# Line 540  Source code for this patch is http://www Line 540  Source code for this patch is http://www
540          if (new_dentry == trap)          if (new_dentry == trap)
541                  goto exit5;                  goto exit5;
542  +       /***** TOMOYO Linux start. *****/  +       /***** TOMOYO Linux start. *****/
543  +       if ((error = pre_vfs_rename(old_dir->d_inode, old_dentry, new_dir->d_inode, new_dentry)) < 0 ||  +       if ((error = pre_vfs_rename(old_dir->d_inode, old_dentry, new_dir->d_inode, new_dentry)) < 0 ||
544  +               (error = CheckDoubleWritePermission(TYPE_RENAME_ACL, old_dentry, oldnd.mnt, new_dentry, newnd.mnt)) < 0) {  +               (error = CheckDoubleWritePermission(TYPE_RENAME_ACL, old_dentry, oldnd.mnt, new_dentry, newnd.mnt)) < 0) {
545  +               goto exit5;  +               goto exit5;
546  +       }  +       }

Legend:
Removed from v.897  
changed lines
  Added in v.993

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26