diff options
author | rodrigc <rodrigc@FreeBSD.org> | 2006-06-10 23:10:55 +0000 |
---|---|---|
committer | rodrigc <rodrigc@FreeBSD.org> | 2006-06-10 23:10:55 +0000 |
commit | 3999749d1227b31f7b262dfabf366c047b08956f (patch) | |
tree | 65089ed17765522d4547146e458ffc4aaa21d2f0 /sys | |
parent | b0472df385dc202be78498c41d3af8d6c2ab37ca (diff) | |
download | FreeBSD-src-3999749d1227b31f7b262dfabf366c047b08956f.zip FreeBSD-src-3999749d1227b31f7b262dfabf366c047b08956f.tar.gz |
Logical OR the following flags into the va_mode field:
S_IFDIR when making a directory
S_IFLNK when making a symbolic link
S_IFIFO when making a pipe
xfs_ialloc() checks this field for these flags when figuring
out whether to make a directory, make a symbolic link or make a pipe.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c b/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c index f2bd911..c74cba3 100644 --- a/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c +++ b/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c @@ -865,10 +865,8 @@ _xfs_symlink( memset(&va, 0, sizeof (va)); va.va_mask |= XFS_AT_MODE; - va.va_mode = ap->a_vap->va_mode; + va.va_mode = ap->a_vap->va_mode | S_IFLNK; va.va_mask |= XFS_AT_TYPE; - printf("_xfs_symlink need to implement inode type 0x%x\n",ap->a_vap->va_type); - //va.va_type = ap->a_vap->va_type; XVOP_SYMLINK(VPTOXFSVP(ap->a_dvp), ap->a_cnp, &va, ap->a_target, &xvp, credp, error); @@ -901,10 +899,8 @@ _xfs_mknod( memset(&va, 0, sizeof (va)); va.va_mask |= XFS_AT_MODE; - va.va_mode = vap->va_mode; + va.va_mode = vap->va_mode | S_IFIFO; va.va_mask |= XFS_AT_TYPE; - printf("_xfs_mknod need to implement inode type 0x%x\n",vap->va_type); -// va.va_type = vap->va_type; va.va_mask |= XFS_AT_RDEV; va.va_rdev = vap->va_rdev; @@ -939,10 +935,8 @@ _xfs_mkdir( memset(&va, 0, sizeof (va)); va.va_mask |= XFS_AT_MODE; - va.va_mode = vap->va_mode; + va.va_mode = vap->va_mode | S_IFDIR; va.va_mask |= XFS_AT_TYPE; - printf("_xfs_mkdir need to implement inode type 0x%x\n",vap->va_type); -// va.va_type = vap->va_type; xvp = NULL; XVOP_MKDIR(VPTOXFSVP(dvp), cnp, &va, &xvp, credp, error); |