[BACK]Return to ext2fs_vnops.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / ufs / ext2fs

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/ufs/ext2fs/ext2fs_vnops.c between version 1.75 and 1.76

version 1.75, 2007/10/10 20:42:33 version 1.76, 2007/11/26 19:02:27
Line 213  ext2fs_open(void *v)
Line 213  ext2fs_open(void *v)
                 struct vnode *a_vp;                  struct vnode *a_vp;
                 int  a_mode;                  int  a_mode;
                 kauth_cred_t a_cred;                  kauth_cred_t a_cred;
                 struct lwp *a_l;  
         } */ *ap = v;          } */ *ap = v;
   
         /*          /*
Line 232  ext2fs_access(void *v)
Line 231  ext2fs_access(void *v)
                 struct vnode *a_vp;                  struct vnode *a_vp;
                 int  a_mode;                  int  a_mode;
                 kauth_cred_t a_cred;                  kauth_cred_t a_cred;
                 struct lwp *a_l;  
         } */ *ap = v;          } */ *ap = v;
         struct vnode *vp = ap->a_vp;          struct vnode *vp = ap->a_vp;
         struct inode *ip = VTOI(vp);          struct inode *ip = VTOI(vp);
Line 272  ext2fs_getattr(void *v)
Line 270  ext2fs_getattr(void *v)
                 struct vnode *a_vp;                  struct vnode *a_vp;
                 struct vattr *a_vap;                  struct vattr *a_vap;
                 kauth_cred_t a_cred;                  kauth_cred_t a_cred;
                 struct lwp *a_l;  
         } */ *ap = v;          } */ *ap = v;
         struct vnode *vp = ap->a_vp;          struct vnode *vp = ap->a_vp;
         struct inode *ip = VTOI(vp);          struct inode *ip = VTOI(vp);
Line 327  ext2fs_setattr(void *v)
Line 324  ext2fs_setattr(void *v)
                 struct vnode *a_vp;                  struct vnode *a_vp;
                 struct vattr *a_vap;                  struct vattr *a_vap;
                 kauth_cred_t a_cred;                  kauth_cred_t a_cred;
                 struct lwp *a_l;  
         } */ *ap = v;          } */ *ap = v;
         struct vattr *vap = ap->a_vap;          struct vattr *vap = ap->a_vap;
         struct vnode *vp = ap->a_vp;          struct vnode *vp = ap->a_vp;
         struct inode *ip = VTOI(vp);          struct inode *ip = VTOI(vp);
         kauth_cred_t cred = ap->a_cred;          kauth_cred_t cred = ap->a_cred;
         struct lwp *l = ap->a_l;          struct lwp *l = curlwp;
         int error;          int error;
   
         /*          /*
Line 416  ext2fs_setattr(void *v)
Line 412  ext2fs_setattr(void *v)
                         (error = kauth_authorize_generic(cred, KAUTH_GENERIC_ISSUSER,                          (error = kauth_authorize_generic(cred, KAUTH_GENERIC_ISSUSER,
                         NULL)) &&                          NULL)) &&
                         ((vap->va_vaflags & VA_UTIMES_NULL) == 0 ||                          ((vap->va_vaflags & VA_UTIMES_NULL) == 0 ||
                         (error = VOP_ACCESS(vp, VWRITE, cred, l))))                          (error = VOP_ACCESS(vp, VWRITE, cred))))
                         return (error);                          return (error);
                 if (vap->va_atime.tv_sec != VNOVAL)                  if (vap->va_atime.tv_sec != VNOVAL)
                         if (!(vp->v_mount->mnt_flag & MNT_NOATIME))                          if (!(vp->v_mount->mnt_flag & MNT_NOATIME))
Line 730  abortit:
Line 726  abortit:
                 goto abortit;                  goto abortit;
         }          }
         if ((ip->i_e2fs_mode & IFMT) == IFDIR) {          if ((ip->i_e2fs_mode & IFMT) == IFDIR) {
                 error = VOP_ACCESS(fvp, VWRITE, tcnp->cn_cred, tcnp->cn_lwp);                  error = VOP_ACCESS(fvp, VWRITE, tcnp->cn_cred);
                 if (!error && tvp)                  if (!error && tvp)
                         error = VOP_ACCESS(tvp, VWRITE, tcnp->cn_cred,                          error = VOP_ACCESS(tvp, VWRITE, tcnp->cn_cred);
                             tcnp->cn_lwp);  
                 if (error) {                  if (error) {
                         VOP_UNLOCK(fvp, 0);                          VOP_UNLOCK(fvp, 0);
                         error = EACCES;                          error = EACCES;
Line 789  abortit:
Line 784  abortit:
          * to namei, as the parent directory is unlocked by the           * to namei, as the parent directory is unlocked by the
          * call to checkpath().           * call to checkpath().
          */           */
         error = VOP_ACCESS(fvp, VWRITE, tcnp->cn_cred, tcnp->cn_lwp);          error = VOP_ACCESS(fvp, VWRITE, tcnp->cn_cred);
         VOP_UNLOCK(fvp, 0);          VOP_UNLOCK(fvp, 0);
         if (oldparent != dp->i_number)          if (oldparent != dp->i_number)
                 newparent = dp->i_number;                  newparent = dp->i_number;
Line 1349  ext2fs_fsync(void *v)
Line 1344  ext2fs_fsync(void *v)
         if (error == 0 && ap->a_flags & FSYNC_CACHE) {          if (error == 0 && ap->a_flags & FSYNC_CACHE) {
                 int l = 0;                  int l = 0;
                 error = VOP_IOCTL(VTOI(vp)->i_devvp, DIOCCACHESYNC, &l, FWRITE,                  error = VOP_IOCTL(VTOI(vp)->i_devvp, DIOCCACHESYNC, &l, FWRITE,
                     ap->a_l->l_cred, ap->a_l);                      curlwp->l_cred);
         }          }
   
         return error;          return error;
Line 1494  ext2fs_reclaim(void *v)
Line 1489  ext2fs_reclaim(void *v)
         struct inode *ip = VTOI(vp);          struct inode *ip = VTOI(vp);
         int error;          int error;
   
         if ((error = ufs_reclaim(vp, ap->a_l)) != 0)          if ((error = ufs_reclaim(vp)) != 0)
                 return (error);                  return (error);
         if (ip->i_din.e2fs_din != NULL)          if (ip->i_din.e2fs_din != NULL)
                 pool_put(&ext2fs_dinode_pool, ip->i_din.e2fs_din);                  pool_put(&ext2fs_dinode_pool, ip->i_din.e2fs_din);

Legend:
Removed from v.1.75  
changed lines
  Added in v.1.76

CVSweb <webmaster@jp.NetBSD.org>