namecache work stage 1: namespace cleanups. Add a NAMEI_ prefix to
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 23 Sep 2003 05:03:54 +0000 (05:03 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 23 Sep 2003 05:03:54 +0000 (05:03 +0000)
CREATE, LOOKUP, DELETE, and RENAME.  Add a CNP_ prefix too all the name
lookup flags (nd_flags) e.g. ISDOTDOT->CNP_ISDOTDOT.

64 files changed:
sys/dev/disk/ccd/ccd.c
sys/dev/disk/vn/vn.c
sys/emulation/ibcs2/coff/imgact_coff.c
sys/emulation/ibcs2/i386/ibcs2_stat.c
sys/emulation/ibcs2/i386/ibcs2_util.c
sys/emulation/ibcs2/i386/ibcs2_xenix.c
sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c
sys/emulation/linux/linux_getcwd.c
sys/emulation/linux/linux_misc.c
sys/emulation/linux/linux_stats.c
sys/emulation/linux/linux_util.c
sys/emulation/svr4/svr4_misc.c
sys/emulation/svr4/svr4_sysvec.c
sys/kern/imgact_elf.c
sys/kern/kern_acct.c
sys/kern/kern_acl.c
sys/kern/kern_descrip.c
sys/kern/kern_exec.c
sys/kern/kern_ktrace.c
sys/kern/kern_linker.c
sys/kern/kern_sig.c
sys/kern/link_aout.c
sys/kern/link_elf.c
sys/kern/uipc_usrreq.c
sys/kern/vfs_cache.c
sys/kern/vfs_lookup.c
sys/kern/vfs_subr.c
sys/kern/vfs_syscalls.c
sys/kern/vfs_vnops.c
sys/sys/namei.h
sys/vfs/coda/coda_vfsops.c
sys/vfs/coda/coda_vnops.c
sys/vfs/fdesc/fdesc_vnops.c
sys/vfs/gnu/ext2fs/ext2_lookup.c
sys/vfs/gnu/ext2fs/ext2_vfsops.c
sys/vfs/gnu/ext2fs/ext2_vnops.c
sys/vfs/hpfs/hpfs_vfsops.c
sys/vfs/hpfs/hpfs_vnops.c
sys/vfs/isofs/cd9660/cd9660_lookup.c
sys/vfs/isofs/cd9660/cd9660_vfsops.c
sys/vfs/msdosfs/msdosfs_lookup.c
sys/vfs/msdosfs/msdosfs_vfsops.c
sys/vfs/msdosfs/msdosfs_vnops.c
sys/vfs/nfs/nfs_serv.c
sys/vfs/nfs/nfs_subs.c
sys/vfs/nfs/nfs_syscalls.c
sys/vfs/nfs/nfs_vnops.c
sys/vfs/ntfs/ntfs_vfsops.c
sys/vfs/ntfs/ntfs_vnops.c
sys/vfs/nullfs/null_vfsops.c
sys/vfs/nullfs/null_vnops.c
sys/vfs/nwfs/nwfs_vnops.c
sys/vfs/portal/portal_vnops.c
sys/vfs/procfs/procfs_vnops.c
sys/vfs/smbfs/smbfs_vnops.c
sys/vfs/ufs/ffs_vfsops.c
sys/vfs/ufs/ufs_lookup.c
sys/vfs/ufs/ufs_quota.c
sys/vfs/ufs/ufs_vnops.c
sys/vfs/umapfs/umap_vfsops.c
sys/vfs/union/union_subr.c
sys/vfs/union/union_vfsops.c
sys/vfs/union/union_vnops.c
sys/vm/vm_swap.c

index ba6c566..726fc1e 100644 (file)
@@ -1,5 +1,5 @@
 /* $FreeBSD: src/sys/dev/ccd/ccd.c,v 1.73.2.1 2001/09/11 09:49:52 kris Exp $ */
-/* $DragonFly: src/sys/dev/disk/ccd/ccd.c,v 1.11 2003/08/27 10:35:16 rob Exp $ */
+/* $DragonFly: src/sys/dev/disk/ccd/ccd.c,v 1.12 2003/09/23 05:03:40 dillon Exp $ */
 
 /*     $NetBSD: ccd.c,v 1.22 1995/12/08 19:13:26 thorpej Exp $ */
 
@@ -1555,7 +1555,7 @@ ccdlookup(char *path, struct thread *td, struct vnode **vpp)
        KKASSERT(td->td_proc);
        cred = td->td_proc->p_ucred;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, path, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, path, td);
        if ((error = vn_open(&nd, FREAD|FWRITE, 0)) != 0) {
 #ifdef DEBUG
                if (ccddebug & CCDB_FOLLOW|CCDB_INIT)
index 57a029e..9e4bcf4 100644 (file)
@@ -39,7 +39,7 @@
  *
  *     from: @(#)vn.c  8.6 (Berkeley) 4/1/94
  * $FreeBSD: src/sys/dev/vn/vn.c,v 1.105.2.4 2001/11/18 07:11:00 dillon Exp $
- * $DragonFly: src/sys/dev/disk/vn/vn.c,v 1.6 2003/07/21 05:50:38 dillon Exp $
+ * $DragonFly: src/sys/dev/disk/vn/vn.c,v 1.7 2003/09/23 05:03:46 dillon Exp $
  */
 
 /*
@@ -545,13 +545,14 @@ vniocattach_file(vn, vio, dev, flag, td)
        KKASSERT(p != NULL);
 
        flags = FREAD|FWRITE;
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, vio->vn_file, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, vio->vn_file, td);
        error = vn_open(&nd, flags, 0);
        if (error) {
                if (error != EACCES && error != EPERM && error != EROFS)
                        return (error);
                flags &= ~FWRITE;
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, vio->vn_file, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW,
+                       UIO_USERSPACE, vio->vn_file, td);
                error = vn_open(&nd, flags, 0);
                if (error)
                        return (error);
index c5de706..cd29a96 100644 (file)
@@ -27,7 +27,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/ibcs2/imgact_coff.c,v 1.40 1999/12/15 23:01:47 eivind Exp $
- * $DragonFly: src/sys/emulation/ibcs2/coff/Attic/imgact_coff.c,v 1.6 2003/08/27 06:30:03 rob Exp $
+ * $DragonFly: src/sys/emulation/ibcs2/coff/Attic/imgact_coff.c,v 1.7 2003/09/23 05:03:50 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -173,7 +173,7 @@ coff_load_file(struct thread *td, char *name)
        vmspace = td->td_proc->p_vmspace;
 
        /* XXX use of 'curthread' should be 'td'?*/
-       NDINIT(&nd, LOOKUP, LOCKLEAF | FOLLOW | SAVENAME, UIO_SYSSPACE, name, curthread);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_LOCKLEAF | CNP_FOLLOW | CNP_SAVENAME, UIO_SYSSPACE, name, curthread);
 
        error = namei(&nd);
        if (error)
index 18393e8..322513e 100644 (file)
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/ibcs2/ibcs2_stat.c,v 1.10 1999/12/15 23:01:45 eivind Exp $
- * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_stat.c,v 1.8 2003/08/27 06:30:03 rob Exp $
+ * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_stat.c,v 1.9 2003/09/23 05:03:50 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -112,7 +112,7 @@ ibcs2_statfs(struct ibcs2_statfs_args *uap)
        caddr_t sg = stackgap_init();
 
        CHECKALTEXIST(&sg, SCARG(uap, path));
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
index 8b7f692..886ef96 100644 (file)
@@ -28,7 +28,7 @@
  *
  *     from: svr4_util.c,v 1.5 1995/01/22 23:44:50 christos Exp
  * $FreeBSD: src/sys/i386/ibcs2/ibcs2_util.c,v 1.7 1999/12/15 23:01:45 eivind Exp $
- * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_util.c,v 1.6 2003/08/07 21:17:17 dillon Exp $
+ * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_util.c,v 1.7 2003/09/23 05:03:50 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -111,7 +111,7 @@ ibcs2_emul_find(sgp, prefix, path, pbuf, cflag)
                for (cp = &ptr[len] - 1; *cp != '/'; cp--);
                *cp = '\0';
 
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -121,7 +121,7 @@ ibcs2_emul_find(sgp, prefix, path, pbuf, cflag)
                *cp = '/';
        }
        else {
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -136,7 +136,7 @@ ibcs2_emul_find(sgp, prefix, path, pbuf, cflag)
                 * root directory and never finding it, because "/" resolves
                 * to the emulation root directory. This is expensive :-(
                 */
-               NDINIT(&ndroot, LOOKUP, FOLLOW, UIO_SYSSPACE,
+               NDINIT(&ndroot, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE,
                        ibcs2_emul_path, td);
 
                if ((error = namei(&ndroot)) != 0) {
index c889885..ce8a63c 100644 (file)
@@ -28,7 +28,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/ibcs2/ibcs2_xenix.c,v 1.20 1999/12/15 23:01:46 eivind Exp $
- * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_xenix.c,v 1.8 2003/08/07 21:17:17 dillon Exp $
+ * $DragonFly: src/sys/emulation/ibcs2/i386/Attic/ibcs2_xenix.c,v 1.9 2003/09/23 05:03:50 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -202,7 +202,7 @@ xenix_eaccess(struct xenix_eaccess_args *uap)
 
        CHECKALTEXIST(&sg, SCARG(uap, path));
 
-        NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+        NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
             SCARG(uap, path), td);
         if ((error = namei(&nd)) != 0)
                 return error;
index e8a0c68..0c3744f 100644 (file)
@@ -39,7 +39,7 @@
  *     @(#)procfs_vnops.c      8.18 (Berkeley) 5/21/95
  *
  * $FreeBSD: src/sys/i386/linux/linprocfs/linprocfs_vnops.c,v 1.3.2.5 2001/08/12 14:29:19 rwatson Exp $
- * $DragonFly: src/sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c,v 1.8 2003/08/27 06:30:04 rob Exp $
+ * $DragonFly: src/sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c,v 1.9 2003/09/23 05:03:51 dillon Exp $
  */
 
 /*
@@ -660,9 +660,11 @@ linprocfs_lookup(ap)
 
        *vpp = NULL;
 
-       if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME ||
-           cnp->cn_nameiop == CREATE)
+       if (cnp->cn_nameiop == NAMEI_DELETE || 
+           cnp->cn_nameiop == NAMEI_RENAME ||
+           cnp->cn_nameiop == NAMEI_CREATE) {
                return (EROFS);
+       }
 
        if (cnp->cn_namelen == 1 && *pname == '.') {
                *vpp = dvp;
@@ -674,7 +676,7 @@ linprocfs_lookup(ap)
        pfs = VTOPFS(dvp);
        switch (pfs->pfs_type) {
        case Proot:
-               if (cnp->cn_flags & ISDOTDOT)
+               if (cnp->cn_flags & CNP_ISDOTDOT)
                        return (EIO);
 
                if (CNEQ(cnp, "self", 4))
@@ -703,7 +705,7 @@ linprocfs_lookup(ap)
                return (linprocfs_allocvp(dvp->v_mount, vpp, pid, Pproc));
 
        case Pproc:
-               if (cnp->cn_flags & ISDOTDOT)
+               if (cnp->cn_flags & CNP_ISDOTDOT)
                        return (linprocfs_root(dvp->v_mount, vpp));
 
                p = PFIND(pfs->pfs_pid);
@@ -726,7 +728,7 @@ linprocfs_lookup(ap)
                return (ENOTDIR);
        }
 
-       return (cnp->cn_nameiop == LOOKUP ? ENOENT : EROFS);
+       return (cnp->cn_nameiop == NAMEI_LOOKUP ? ENOENT : EROFS);
 }
 
 /*
index a094b93..ff1e2dd 100644 (file)
@@ -1,5 +1,5 @@
 /* $FreeBSD: src/sys/compat/linux/linux_getcwd.c,v 1.2.2.3 2001/11/05 19:08:22 marcel Exp $ */
-/* $DragonFly: src/sys/emulation/linux/linux_getcwd.c,v 1.11 2003/08/27 06:30:03 rob Exp $ */
+/* $DragonFly: src/sys/emulation/linux/linux_getcwd.c,v 1.12 2003/09/23 05:03:50 dillon Exp $ */
 /* $OpenBSD: linux_getcwd.c,v 1.2 2001/05/16 12:50:21 ho Exp $ */
 /* $NetBSD: vfs_getcwd.c,v 1.3.2.3 1999/07/11 10:24:09 sommerfeld Exp $ */
 
@@ -149,8 +149,8 @@ linux_getcwd_scandir(lvpp, uvpp, bpp, bufp, td)
         * Ok, we have to do it the hard way..
         * Next, get parent vnode using lookup of ..
         */
-       cn.cn_nameiop = LOOKUP;
-       cn.cn_flags = ISLASTCN | ISDOTDOT | RDONLY;
+       cn.cn_nameiop = NAMEI_LOOKUP;
+       cn.cn_flags = CNP_ISLASTCN | CNP_ISDOTDOT | CNP_RDONLY;
        cn.cn_td = td;
        cn.cn_cred = p->p_ucred;
        cn.cn_pnbuf = NULL;
index 649e0df..5fb5c3d 100644 (file)
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.85.2.9 2002/09/24 08:11:41 mdodd Exp $
- * $DragonFly: src/sys/emulation/linux/linux_misc.c,v 1.13 2003/08/15 06:32:51 dillon Exp $
+ * $DragonFly: src/sys/emulation/linux/linux_misc.c,v 1.14 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_compat.h"
@@ -268,7 +268,8 @@ linux_uselib(struct linux_uselib_args *args)
        locked = 0;
        vp = NULL;
 
-       NDINIT(&ni, LOOKUP, FOLLOW|LOCKLEAF, UIO_USERSPACE, args->library, td);
+       NDINIT(&ni, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF,
+               UIO_USERSPACE, args->library, td);
        error = namei(&ni);
        if (error)
                goto cleanup;
index 308283e..39e53ba 100644 (file)
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.22.2.3 2001/11/05 19:08:23 marcel Exp $
- * $DragonFly: src/sys/emulation/linux/linux_stats.c,v 1.7 2003/08/15 06:32:51 dillon Exp $
+ * $DragonFly: src/sys/emulation/linux/linux_stats.c,v 1.8 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -105,8 +105,8 @@ linux_newstat(struct linux_newstat_args *args)
                printf(ARGS(newstat, "%s, *"), args->path);
 #endif
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           args->path, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, args->path, td);
        error = namei(&nd);
        if (error)
                return (error);
@@ -137,8 +137,8 @@ linux_newlstat(struct linux_newlstat_args *args)
                printf(ARGS(newlstat, "%s, *"), args->path);
 #endif
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           args->path, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, args->path, td);
        error = namei(&nd);
        if (error)
                return (error);
@@ -250,7 +250,7 @@ linux_statfs(struct linux_statfs_args *args)
                printf(ARGS(statfs, "%s, *"), args->path);
 #endif
        ndp = &nd;
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args->path, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args->path, td);
        error = namei(ndp);
        if (error)
                return error;
@@ -418,8 +418,8 @@ linux_stat64(struct linux_stat64_args *args)
                printf(ARGS(stat64, "%s, *"), args->filename);
 #endif
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           args->filename, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+               UIO_USERSPACE, args->filename, td);
        error = namei(&nd);
        if (error)
                return (error);
@@ -450,8 +450,8 @@ linux_lstat64(struct linux_lstat64_args *args)
                printf(ARGS(lstat64, "%s, *"), args->filename);
 #endif
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           args->filename, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+               UIO_USERSPACE, args->filename, td);
        error = namei(&nd);
        if (error)
                return (error);
index 1e20ac0..e2b0481 100644 (file)
@@ -28,7 +28,7 @@
  *
  *     from: svr4_util.c,v 1.5 1995/01/22 23:44:50 christos Exp
  * $FreeBSD: src/sys/compat/linux/linux_util.c,v 1.12.2.2 2001/11/05 19:08:23 marcel Exp $
- * $DragonFly: src/sys/emulation/linux/linux_util.c,v 1.6 2003/08/07 21:17:18 dillon Exp $
+ * $DragonFly: src/sys/emulation/linux/linux_util.c,v 1.7 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -109,7 +109,7 @@ linux_emul_find(td, sgp, prefix, path, pbuf, cflag)
                for (cp = &ptr[len] - 1; *cp != '/'; cp--);
                *cp = '\0';
 
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -119,7 +119,7 @@ linux_emul_find(td, sgp, prefix, path, pbuf, cflag)
                *cp = '/';
        }
        else {
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -134,7 +134,7 @@ linux_emul_find(td, sgp, prefix, path, pbuf, cflag)
                 * root directory and never finding it, because "/" resolves
                 * to the emulation root directory. This is expensive :-(
                 */
-               NDINIT(&ndroot, LOOKUP, FOLLOW, UIO_SYSSPACE,
+               NDINIT(&ndroot, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE,
                        linux_emul_path, td);
 
                if ((error = namei(&ndroot)) != 0) {
index 95badeb..7c12cf6 100644 (file)
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * 
  * $FreeBSD: src/sys/svr4/svr4_misc.c,v 1.13.2.7 2003/01/14 21:33:58 dillon Exp $
- * $DragonFly: src/sys/emulation/svr4/Attic/svr4_misc.c,v 1.16 2003/09/14 16:38:48 dillon Exp $
+ * $DragonFly: src/sys/emulation/svr4/Attic/svr4_misc.c,v 1.17 2003/09/23 05:03:51 dillon Exp $
  */
 
 /*
@@ -1656,7 +1656,7 @@ svr4_sys_resolvepath(struct svr4_sys_resolvepath_args *uap)
 
        retval = &uap->sysmsg_result;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | SAVENAME, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_SAVENAME, UIO_USERSPACE,
            SCARG(uap, path), td);
 
        if ((error = namei(&nd)) != 0)
index e470b06..2f38f17 100644 (file)
@@ -28,7 +28,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * 
  * $FreeBSD: src/sys/svr4/svr4_sysvec.c,v 1.10.2.2 2002/07/09 14:12:43 robert Exp $
- * $DragonFly: src/sys/emulation/svr4/Attic/svr4_sysvec.c,v 1.7 2003/09/12 00:43:30 daver Exp $
+ * $DragonFly: src/sys/emulation/svr4/Attic/svr4_sysvec.c,v 1.8 2003/09/23 05:03:51 dillon Exp $
  */
 
 /* XXX we use functions that might not exist. */
@@ -301,7 +301,7 @@ svr4_emul_find(sgp, prefix, path, pbuf, cflag)
                for (cp = &ptr[len] - 1; *cp != '/'; cp--);
                *cp = '\0';
 
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -312,7 +312,7 @@ svr4_emul_find(sgp, prefix, path, pbuf, cflag)
                *cp = '/';
        }
        else {
-               NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, buf, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, buf, td);
 
                if ((error = namei(&nd)) != 0) {
                        free(buf, M_TEMP);
@@ -328,7 +328,7 @@ svr4_emul_find(sgp, prefix, path, pbuf, cflag)
                 * root directory and never finding it, because "/" resolves
                 * to the emulation root directory. This is expensive :-(
                 */
-               NDINIT(&ndroot, LOOKUP, FOLLOW, UIO_SYSSPACE,
+               NDINIT(&ndroot, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE,
                    svr4_emul_path, td);
 
                if ((error = namei(&ndroot)) != 0) {
index 9aac0a1..66e795e 100644 (file)
@@ -27,7 +27,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/imgact_elf.c,v 1.73.2.13 2002/12/28 19:49:41 dillon Exp $
- * $DragonFly: src/sys/kern/imgact_elf.c,v 1.8 2003/08/27 01:43:07 dillon Exp $
+ * $DragonFly: src/sys/kern/imgact_elf.c,v 1.9 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -369,7 +369,8 @@ elf_load_file(struct proc *p, const char *file, u_long *addr, u_long *entry)
                goto fail;
        }
 
-        NDINIT(nd, LOOKUP, LOCKLEAF|FOLLOW, UIO_SYSSPACE, file, td);
+        NDINIT(nd, NAMEI_LOOKUP, CNP_LOCKLEAF | CNP_FOLLOW,
+           UIO_SYSSPACE, file, td);
                         
        if ((error = namei(nd)) != 0) {
                nd->ni_vp = NULL;
index 70068fd..fff7206 100644 (file)
@@ -38,7 +38,7 @@
  *
  *     @(#)kern_acct.c 8.1 (Berkeley) 6/14/93
  * $FreeBSD: src/sys/kern/kern_acct.c,v 1.23.2.1 2002/07/24 18:33:55 johan Exp $
- * $DragonFly: src/sys/kern/kern_acct.c,v 1.6 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/kern_acct.c,v 1.7 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -130,7 +130,7 @@ acct(uap)
         * appending and make sure it's a 'normal'.
         */
        if (SCARG(uap, path) != NULL) {
-               NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE,
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_USERSPACE,
                        SCARG(uap, path), td);
                error = vn_open(&nd, FWRITE | O_APPEND, 0);
                if (error)
index 7fe5ccf..3e97090 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/kern_acl.c,v 1.2.2.1 2000/07/28 18:48:16 rwatson Exp $
- * $DragonFly: src/sys/kern/kern_acl.c,v 1.4 2003/06/25 03:55:57 dillon Exp $
+ * $DragonFly: src/sys/kern/kern_acl.c,v 1.5 2003/09/23 05:03:51 dillon Exp $
  */
 
 /*
@@ -161,7 +161,8 @@ __acl_get_file(struct __acl_get_file_args *uap)
        int error;
 
        /* what flags are required here -- possible not LOCKLEAF? */
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW,
+           UIO_USERSPACE, SCARG(uap, path), td);
        error = namei(&nd);
        if (error)
                return(error);
@@ -180,7 +181,8 @@ __acl_set_file(struct __acl_set_file_args *uap)
        struct nameidata nd;
        int error;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, 
+           UIO_USERSPACE, SCARG(uap, path), td);
        error = namei(&nd);
        if (error)
                return(error);
@@ -235,7 +237,8 @@ __acl_delete_file(struct __acl_delete_file_args *uap)
        struct nameidata nd;
        int error;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW,
+           UIO_USERSPACE, SCARG(uap, path), td);
        error = namei(&nd);
        if (error)
                return(error);
@@ -272,7 +275,8 @@ __acl_aclcheck_file(struct __acl_aclcheck_file_args *uap)
        struct nameidata        nd;
        int     error;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW,
+           UIO_USERSPACE, SCARG(uap, path), td);
        error = namei(&nd);
        if (error)
                return(error);
index 8ea0b3d..ebf90b4 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)kern_descrip.c      8.6 (Berkeley) 4/19/94
  * $FreeBSD: src/sys/kern/kern_descrip.c,v 1.81.2.17 2003/06/06 20:21:32 tegge Exp $
- * $DragonFly: src/sys/kern/kern_descrip.c,v 1.12 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/kern_descrip.c,v 1.13 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_compat.h"
@@ -1299,7 +1299,7 @@ fdcheckstd(struct proc *p)
                        error = falloc(p, &fp, &fd);
                        if (error != 0)
                                break;
-                       NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, 
+                       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, 
                           "/dev/null", td);
                        flags = FREAD | FWRITE;
                        error = vn_open(&nd, flags, 0);
index ff1b9e7..eca09b6 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/kern_exec.c,v 1.107.2.15 2002/07/30 15:40:46 nectar Exp $
- * $DragonFly: src/sys/kern/kern_exec.c,v 1.11 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/kern_exec.c,v 1.12 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -151,7 +151,7 @@ execve(struct execve_args *uap)
         *      in ni_vp amoung other things.
         */
        ndp = &nd;
-       NDINIT(ndp, LOOKUP, LOCKLEAF | FOLLOW | SAVENAME,
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_LOCKLEAF | CNP_FOLLOW | CNP_SAVENAME,
            UIO_USERSPACE, uap->fname, td);
 
 interpret:
@@ -218,7 +218,8 @@ interpret:
                NDFREE(ndp, NDF_ONLY_PNBUF);
                vrele(ndp->ni_vp);
                /* set new name to that of the interpreter */
-               NDINIT(ndp, LOOKUP, LOCKLEAF | FOLLOW | SAVENAME,
+               NDINIT(ndp, NAMEI_LOOKUP, 
+                   CNP_LOCKLEAF | CNP_FOLLOW | CNP_SAVENAME,
                    UIO_SYSSPACE, imgp->interpreter_name, td);
                goto interpret;
        }
index 3d8d746..7c070da 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     @(#)kern_ktrace.c       8.2 (Berkeley) 9/23/93
  * $FreeBSD: src/sys/kern/kern_ktrace.c,v 1.35.2.6 2002/07/05 22:36:38 darrenr Exp $
- * $DragonFly: src/sys/kern/kern_ktrace.c,v 1.9 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/kern_ktrace.c,v 1.10 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_ktrace.h"
@@ -281,7 +281,8 @@ ktrace(struct ktrace_args *uap)
                /*
                 * an operation which requires a file argument.
                 */
-               NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->fname, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_USERSPACE,
+                   uap->fname, td);
                error = vn_open(&nd, FREAD|FWRITE|O_NOFOLLOW, 0);
                if (error) {
                        curp->p_traceflag &= ~KTRFAC_ACTIVE;
index ce0458c..a8c1cd6 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/kern_linker.c,v 1.41.2.3 2001/11/21 17:50:35 luigi Exp $
- * $DragonFly: src/sys/kern/kern_linker.c,v 1.10 2003/07/30 00:19:14 dillon Exp $
+ * $DragonFly: src/sys/kern/kern_linker.c,v 1.11 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_ddb.h"
@@ -1035,7 +1035,7 @@ linker_search_path(const char *name)
         * Attempt to open the file, and return the path if we succeed and it's
         * a regular file.
         */
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, result, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, result, td);
        error = vn_open(&nd, FREAD, 0);
        if (error == 0) {
            NDFREE(&nd, NDF_ONLY_PNBUF);
index b7b0f8c..879774d 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)kern_sig.c  8.7 (Berkeley) 4/18/94
  * $FreeBSD: src/sys/kern/kern_sig.c,v 1.72.2.17 2003/05/16 16:34:34 obrien Exp $
- * $DragonFly: src/sys/kern/kern_sig.c,v 1.18 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/kern_sig.c,v 1.19 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_compat.h"
@@ -1530,7 +1530,7 @@ coredump(struct proc *p)
        name = expand_name(p->p_comm, p->p_ucred->cr_uid, p->p_pid);
        if (name == NULL)
                return (EINVAL);
-       NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_SYSSPACE, name, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_SYSSPACE, name, td);
        error = vn_open(&nd, O_CREAT | FWRITE | O_NOFOLLOW, S_IRUSR | S_IWUSR);
        free(name, M_TEMP);
        if (error)
index 39bc94d..da04086 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/link_aout.c,v 1.26 1999/12/24 15:33:36 bde Exp $
- * $DragonFly: src/sys/kern/link_aout.c,v 1.6 2003/08/07 21:17:23 dillon Exp $
+ * $DragonFly: src/sys/kern/link_aout.c,v 1.7 2003/09/23 05:03:51 dillon Exp $
  */
 
 #ifndef __alpha__
@@ -207,7 +207,7 @@ link_aout_load_file(const char* filename, linker_file_t* result)
     pathname = linker_search_path(filename);
     if (pathname == NULL)
        return ENOENT;
-    NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, pathname, td);
+    NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, pathname, td);
     error = vn_open(&nd, FREAD, 0);
     free(pathname, M_LINKER);
     if (error)
index dd9c4f3..5d974c2 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/link_elf.c,v 1.24 1999/12/24 15:33:36 bde Exp $
- * $DragonFly: src/sys/kern/link_elf.c,v 1.5 2003/07/18 05:12:39 dillon Exp $
+ * $DragonFly: src/sys/kern/link_elf.c,v 1.6 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -426,7 +426,7 @@ link_elf_load_file(const char* filename, linker_file_t* result)
     if (pathname == NULL)
        return ENOENT;
 
-    NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, pathname, td);
+    NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_SYSSPACE, pathname, td);
     error = vn_open(&nd, FREAD, 0);
     free(pathname, M_LINKER);
     if (error)
index a60055c..e22b187 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     From: @(#)uipc_usrreq.c 8.3 (Berkeley) 1/4/94
  * $FreeBSD: src/sys/kern/uipc_usrreq.c,v 1.54.2.10 2003/03/04 17:28:09 nectar Exp $
- * $DragonFly: src/sys/kern/uipc_usrreq.c,v 1.7 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/uipc_usrreq.c,v 1.8 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -599,7 +599,8 @@ unp_bind(struct unpcb *unp, struct sockaddr *nam, struct thread *td)
                return EINVAL;
        strncpy(buf, soun->sun_path, namelen);
        buf[namelen] = 0;       /* null-terminate the string */
-       NDINIT(&nd, CREATE, NOFOLLOW | LOCKPARENT, UIO_SYSSPACE, buf, td);
+       NDINIT(&nd, NAMEI_CREATE, CNP_NOFOLLOW | CNP_LOCKPARENT,
+           UIO_SYSSPACE, buf, td);
 /* SHOULD BE ABLE TO ADOPT EXISTING AND wakeup() ALA FIFO's */
        error = namei(&nd);
        if (error)
@@ -651,7 +652,8 @@ unp_connect(struct socket *so, struct sockaddr *nam, struct thread *td)
        strncpy(buf, soun->sun_path, len);
        buf[len] = 0;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_SYSSPACE, buf, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF,
+           UIO_SYSSPACE, buf, td);
        error = namei(&nd);
        if (error)
                return (error);
index 8e4a6d1..605b7fa 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)vfs_cache.c 8.5 (Berkeley) 3/22/95
  * $FreeBSD: src/sys/kern/vfs_cache.c,v 1.42.2.6 2001/10/05 20:07:03 dillon Exp $
- * $DragonFly: src/sys/kern/vfs_cache.c,v 1.7 2003/09/02 22:25:04 dillon Exp $
+ * $DragonFly: src/sys/kern/vfs_cache.c,v 1.8 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -188,7 +188,7 @@ cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
                if (cnp->cn_namelen == 2 && cnp->cn_nameptr[1] == '.') {
                        dotdothits++;
                        if (dvp->v_dd->v_id != dvp->v_ddid ||
-                           (cnp->cn_flags & MAKEENTRY) == 0) {
+                           (cnp->cn_flags & CNP_MAKEENTRY) == 0) {
                                dvp->v_ddid = 0;
                                return (0);
                        }
@@ -208,7 +208,7 @@ cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
 
        /* We failed to find an entry */
        if (ncp == 0) {
-               if ((cnp->cn_flags & MAKEENTRY) == 0) {
+               if ((cnp->cn_flags & CNP_MAKEENTRY) == 0) {
                        nummisszap++;
                } else {
                        nummiss++;
@@ -218,7 +218,7 @@ cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
        }
 
        /* We don't want to have an entry, so dump it */
-       if ((cnp->cn_flags & MAKEENTRY) == 0) {
+       if ((cnp->cn_flags & CNP_MAKEENTRY) == 0) {
                numposzaps++;
                nchstats.ncs_badhits++;
                cache_zap(ncp);
@@ -234,7 +234,7 @@ cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
        }
 
        /* We found a negative match, and want to create it, so purge */
-       if (cnp->cn_nameiop == CREATE) {
+       if (cnp->cn_nameiop == NAMEI_CREATE) {
                numnegzaps++;
                nchstats.ncs_badhits++;
                cache_zap(ncp);
@@ -250,7 +250,7 @@ cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
        TAILQ_INSERT_TAIL(&ncneg, ncp, nc_dst);
        nchstats.ncs_neghits++;
        if (ncp->nc_flag & NCF_WHITE)
-               cnp->cn_flags |= ISWHITEOUT;
+               cnp->cn_flags |= CNP_ISWHITEOUT;
        return (ENOENT);
 }
 
@@ -287,7 +287,7 @@ cache_enter(struct vnode *dvp, struct vnode *vp, struct componentname *cnp)
        numcache++;
        if (!vp) {
                numneg++;
-               ncp->nc_flag = cnp->cn_flags & ISWHITEOUT ? NCF_WHITE : 0;
+               ncp->nc_flag = cnp->cn_flags & CNP_ISWHITEOUT ? NCF_WHITE : 0;
        } else if (vp->v_type == VDIR) {
                vp->v_dd = dvp;
                vp->v_ddid = dvp->v_id;
@@ -437,13 +437,13 @@ vfs_cache_lookup(struct vop_lookup_args *ap)
 
        *vpp = NULL;
        dvp = ap->a_dvp;
-       lockparent = flags & LOCKPARENT;
+       lockparent = flags & CNP_LOCKPARENT;
 
        if (dvp->v_type != VDIR)
                 return (ENOTDIR);
 
-       if ((flags & ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME))
+       if ((flags & CNP_ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME))
                return (EROFS);
 
        error = VOP_ACCESS(dvp, VEXEC, cred, td);
@@ -461,23 +461,23 @@ vfs_cache_lookup(struct vop_lookup_args *ap)
 
        vp = *vpp;
        vpid = vp->v_id;
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
        if (dvp == vp) {   /* lookup on "." */
                VREF(vp);
                error = 0;
-       } else if (flags & ISDOTDOT) {
+       } else if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(dvp, 0, td);
-               cnp->cn_flags |= PDIRUNLOCK;
+               cnp->cn_flags |= CNP_PDIRUNLOCK;
                error = vget(vp, LK_EXCLUSIVE, td);
-               if (!error && lockparent && (flags & ISLASTCN)) {
+               if (!error && lockparent && (flags & CNP_ISLASTCN)) {
                        if ((error = vn_lock(dvp, LK_EXCLUSIVE, td)) == 0)
-                               cnp->cn_flags &= ~PDIRUNLOCK;
+                               cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                }
        } else {
                error = vget(vp, LK_EXCLUSIVE, td);
-               if (!lockparent || error || !(flags & ISLASTCN)) {
+               if (!lockparent || error || !(flags & CNP_ISLASTCN)) {
                        VOP_UNLOCK(dvp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
        }
        /*
@@ -488,16 +488,16 @@ vfs_cache_lookup(struct vop_lookup_args *ap)
                if (vpid == vp->v_id)
                        return (0);
                vput(vp);
-               if (lockparent && dvp != vp && (flags & ISLASTCN)) {
+               if (lockparent && dvp != vp && (flags & CNP_ISLASTCN)) {
                        VOP_UNLOCK(dvp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
        }
-       if (cnp->cn_flags & PDIRUNLOCK) {
+       if (cnp->cn_flags & CNP_PDIRUNLOCK) {
                error = vn_lock(dvp, LK_EXCLUSIVE, td);
                if (error)
                        return (error);
-               cnp->cn_flags &= ~PDIRUNLOCK;
+               cnp->cn_flags &= ~CNP_PDIRUNLOCK;
        }
        return (VOP_CACHEDLOOKUP(dvp, vpp, cnp));
 }
index 8ed6012..4e88c3b 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)vfs_lookup.c        8.4 (Berkeley) 2/16/94
  * $FreeBSD: src/sys/kern/vfs_lookup.c,v 1.38.2.3 2001/08/31 19:36:49 dillon Exp $
- * $DragonFly: src/sys/kern/vfs_lookup.c,v 1.5 2003/07/26 19:42:11 rob Exp $
+ * $DragonFly: src/sys/kern/vfs_lookup.c,v 1.6 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include "opt_ktrace.h"
@@ -59,7 +59,7 @@
 /*
  * Convert a pathname into a pointer to a locked inode.
  *
- * The FOLLOW flag is set when symbolic links are to be followed
+ * The CNP_FOLLOW flag is set when symbolic links are to be followed
  * when they occur at the end of the name translation process.
  * Symbolic links are always followed for all other pathname
  * components other than the last.
@@ -93,9 +93,9 @@ namei(struct nameidata *ndp)
        KKASSERT(p != NULL);
        KASSERT(cnp->cn_cred, ("namei: bad cred/proc"));
        KKASSERT(cnp->cn_cred == p->p_ucred); /* YYY */
-       KASSERT((cnp->cn_nameiop & (~OPMASK)) == 0,
+       KASSERT((cnp->cn_nameiop & (~NAMEI_OPMASK)) == 0,
            ("namei: nameiop contaminated with flags"));
-       KASSERT((cnp->cn_flags & OPMASK) == 0,
+       KASSERT((cnp->cn_flags & NAMEI_OPMASK) == 0,
            ("namei: flags contaminated with nameiops"));
        fdp = p->p_fd;
 
@@ -103,7 +103,7 @@ namei(struct nameidata *ndp)
         * Get a buffer for the name to be translated, and copy the
         * name into the buffer.
         */
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                cnp->cn_pnbuf = zalloc(namei_zone);
        if (ndp->ni_segflg == UIO_SYSSPACE)
                error = copystr(ndp->ni_dirp, cnp->cn_pnbuf,
@@ -161,21 +161,21 @@ namei(struct nameidata *ndp)
                /*
                 * Check for symbolic link
                 */
-               if ((cnp->cn_flags & ISSYMLINK) == 0) {
-                       if ((cnp->cn_flags & (SAVENAME | SAVESTART)) == 0)
+               if ((cnp->cn_flags & CNP_ISSYMLINK) == 0) {
+                       if ((cnp->cn_flags & (CNP_SAVENAME | CNP_SAVESTART)) == 0)
                                zfree(namei_zone, cnp->cn_pnbuf);
                        else
-                               cnp->cn_flags |= HASBUF;
+                               cnp->cn_flags |= CNP_HASBUF;
 
                        if (vn_canvmio(ndp->ni_vp) == TRUE &&
-                               (cnp->cn_nameiop != DELETE) &&
-                               ((cnp->cn_flags & (NOOBJ|LOCKLEAF)) ==
-                                LOCKLEAF))
+                               (cnp->cn_nameiop != NAMEI_DELETE) &&
+                               ((cnp->cn_flags & (CNP_NOOBJ|CNP_LOCKLEAF)) ==
+                                CNP_LOCKLEAF))
                                vfs_object_create(ndp->ni_vp, ndp->ni_cnd.cn_td);
 
                        return (0);
                }
-               if ((cnp->cn_flags & LOCKPARENT) && ndp->ni_pathlen == 1)
+               if ((cnp->cn_flags & CNP_LOCKPARENT) && ndp->ni_pathlen == 1)
                        VOP_UNLOCK(ndp->ni_dvp, 0, cnp->cn_td);
                if (ndp->ni_loopcnt++ >= MAXSYMLINKS) {
                        error = ELOOP;
@@ -240,7 +240,7 @@ namei(struct nameidata *ndp)
  * ni_more is clear if the path is completed; it is set to one if a
  * symbolic link needing interpretation is encountered.
  *
- * The flag argument is LOOKUP, CREATE, RENAME, or DELETE depending on
+ * The flag argument is NAMEI_LOOKUP, CREATE, RENAME, or DELETE depending on
  * whether the name is to be looked up, created, renamed, or deleted.
  * When CREATE, RENAME, or DELETE is specified, information usable in
  * creating, renaming, or deleting a directory entry may be calculated.
@@ -288,15 +288,15 @@ lookup(ndp)
        /*
         * Setup: break out flag bits into variables.
         */
-       wantparent = cnp->cn_flags & (LOCKPARENT | WANTPARENT);
-       docache = (cnp->cn_flags & NOCACHE) ^ NOCACHE;
-       if (cnp->cn_nameiop == DELETE ||
-           (wantparent && cnp->cn_nameiop != CREATE &&
-            cnp->cn_nameiop != LOOKUP))
+       wantparent = cnp->cn_flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
+       docache = (cnp->cn_flags & CNP_NOCACHE) ^ CNP_NOCACHE;
+       if (cnp->cn_nameiop == NAMEI_DELETE ||
+           (wantparent && cnp->cn_nameiop != NAMEI_CREATE &&
+            cnp->cn_nameiop != NAMEI_LOOKUP))
                docache = 0;
-       rdonly = cnp->cn_flags & RDONLY;
+       rdonly = cnp->cn_flags & CNP_RDONLY;
        ndp->ni_dvp = NULL;
-       cnp->cn_flags &= ~ISSYMLINK;
+       cnp->cn_flags &= ~CNP_ISSYMLINK;
        dp = ndp->ni_startdir;
        ndp->ni_startdir = NULLVP;
        vn_lock(dp, LK_EXCLUSIVE | LK_RETRY, td);
@@ -307,7 +307,7 @@ dirloop:
         *
         * The last component of the filename is left accessible via
         * cnp->cn_nameptr for callers that need the name. Callers needing
-        * the name set the SAVENAME flag. When done, they assume
+        * the name set the CNP_SAVENAME flag. When done, they assume
         * responsibility for freeing the pathname buffer.
         */
        cnp->cn_consume = 0;
@@ -345,18 +345,18 @@ dirloop:
        }
        ndp->ni_next = cp;
 
-       cnp->cn_flags |= MAKEENTRY;
+       cnp->cn_flags |= CNP_MAKEENTRY;
        if (*cp == '\0' && docache == 0)
-               cnp->cn_flags &= ~MAKEENTRY;
+               cnp->cn_flags &= ~CNP_MAKEENTRY;
        if (cnp->cn_namelen == 2 &&
            cnp->cn_nameptr[1] == '.' && cnp->cn_nameptr[0] == '.')
-               cnp->cn_flags |= ISDOTDOT;
+               cnp->cn_flags |= CNP_ISDOTDOT;
        else
-               cnp->cn_flags &= ~ISDOTDOT;
+               cnp->cn_flags &= ~CNP_ISDOTDOT;
        if (*ndp->ni_next == 0)
-               cnp->cn_flags |= ISLASTCN;
+               cnp->cn_flags |= CNP_ISLASTCN;
        else
-               cnp->cn_flags &= ~ISLASTCN;
+               cnp->cn_flags &= ~CNP_ISLASTCN;
 
 
        /*
@@ -369,7 +369,7 @@ dirloop:
                        error = ENOTDIR;
                        goto bad;
                }
-               if (cnp->cn_nameiop != LOOKUP) {
+               if (cnp->cn_nameiop != NAMEI_LOOKUP) {
                        error = EISDIR;
                        goto bad;
                }
@@ -378,11 +378,11 @@ dirloop:
                        VREF(dp);
                }
                ndp->ni_vp = dp;
-               if (!(cnp->cn_flags & (LOCKPARENT | LOCKLEAF)))
+               if (!(cnp->cn_flags & (CNP_LOCKPARENT | CNP_LOCKLEAF)))
                        VOP_UNLOCK(dp, 0, cnp->cn_td);
                /* XXX This should probably move to the top of function. */
-               if (cnp->cn_flags & SAVESTART)
-                       panic("lookup: SAVESTART");
+               if (cnp->cn_flags & CNP_SAVESTART)
+                       panic("lookup: CNP_SAVESTART");
                return (0);
        }
 
@@ -398,7 +398,7 @@ dirloop:
         * 3. If the vnode is the top directory of
         *    the jail or chroot, don't let them out.
         */
-       if (cnp->cn_flags & ISDOTDOT) {
+       if (cnp->cn_flags & CNP_ISDOTDOT) {
                for (;;) {
                        if (dp == ndp->ni_rootdir || 
                            dp == ndp->ni_topdir || 
@@ -409,7 +409,7 @@ dirloop:
                                goto nextname;
                        }
                        if ((dp->v_flag & VROOT) == 0 ||
-                           (cnp->cn_flags & NOCROSSMOUNT))
+                           (cnp->cn_flags & CNP_NOCROSSMOUNT))
                                break;
                        if (dp->v_mount == NULL) {      /* forced unmount */
                                error = EBADF;
@@ -429,7 +429,7 @@ dirloop:
 unionlookup:
        ndp->ni_dvp = dp;
        ndp->ni_vp = NULL;
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
        ASSERT_VOP_LOCKED(dp, "lookup");
        if ((error = VOP_LOOKUP(dp, &ndp->ni_vp, cnp)) != 0) {
                KASSERT(ndp->ni_vp == NULL, ("leaf should be empty"));
@@ -441,7 +441,7 @@ unionlookup:
                    (dp->v_mount->mnt_flag & MNT_UNION)) {
                        tdp = dp;
                        dp = dp->v_mount->mnt_vnodecovered;
-                       if (cnp->cn_flags & PDIRUNLOCK)
+                       if (cnp->cn_flags & CNP_PDIRUNLOCK)
                                vrele(tdp);
                        else
                                vput(tdp);
@@ -461,7 +461,7 @@ unionlookup:
                        goto bad;
                }
                if (*cp == '\0' && trailing_slash &&
-                    !(cnp->cn_flags & WILLBEDIR)) {
+                    !(cnp->cn_flags & CNP_WILLBEDIR)) {
                        error = ENOENT;
                        goto bad;
                }
@@ -470,7 +470,7 @@ unionlookup:
                 * doesn't currently exist, leaving a pointer to the
                 * (possibly locked) directory inode in ndp->ni_dvp.
                 */
-               if (cnp->cn_flags & SAVESTART) {
+               if (cnp->cn_flags & CNP_SAVESTART) {
                        ndp->ni_startdir = ndp->ni_dvp;
                        VREF(ndp->ni_startdir);
                }
@@ -500,7 +500,7 @@ unionlookup:
         * if so find the root of the mounted file system.
         */
        while (dp->v_type == VDIR && (mp = dp->v_mountedhere) &&
-              (cnp->cn_flags & NOCROSSMOUNT) == 0) {
+              (cnp->cn_flags & CNP_NOCROSSMOUNT) == 0) {
                if (vfs_busy(mp, 0, 0, td))
                        continue;
                VOP_UNLOCK(dp, 0, td);
@@ -518,9 +518,9 @@ unionlookup:
         * Check for symbolic link
         */
        if ((dp->v_type == VLNK) &&
-           ((cnp->cn_flags & FOLLOW) || trailing_slash ||
+           ((cnp->cn_flags & CNP_FOLLOW) || trailing_slash ||
             *ndp->ni_next == '/')) {
-               cnp->cn_flags |= ISSYMLINK;
+               cnp->cn_flags |= CNP_ISSYMLINK;
                if (dp->v_mount == NULL) {
                        /* We can't know whether the directory was mounted with
                         * NOSYMFOLLOW, so we can't follow safely. */
@@ -562,23 +562,23 @@ nextname:
         * Disallow directory write attempts on read-only file systems.
         */
        if (rdonly &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)) {
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME)) {
                error = EROFS;
                goto bad2;
        }
-       if (cnp->cn_flags & SAVESTART) {
+       if (cnp->cn_flags & CNP_SAVESTART) {
                ndp->ni_startdir = ndp->ni_dvp;
                VREF(ndp->ni_startdir);
        }
        if (!wantparent)
                vrele(ndp->ni_dvp);
 
-       if ((cnp->cn_flags & LOCKLEAF) == 0)
+       if ((cnp->cn_flags & CNP_LOCKLEAF) == 0)
                VOP_UNLOCK(dp, 0, td);
        return (0);
 
 bad2:
-       if ((cnp->cn_flags & (LOCKPARENT | PDIRUNLOCK)) == LOCKPARENT &&
+       if ((cnp->cn_flags & (CNP_LOCKPARENT | CNP_PDIRUNLOCK)) == CNP_LOCKPARENT &&
            *ndp->ni_next == '\0')
                VOP_UNLOCK(ndp->ni_dvp, 0, td);
        vrele(ndp->ni_dvp);
@@ -614,13 +614,13 @@ relookup(dvp, vpp, cnp)
        /*
         * Setup: break out flag bits into variables.
         */
-       wantparent = cnp->cn_flags & (LOCKPARENT|WANTPARENT);
-       docache = (cnp->cn_flags & NOCACHE) ^ NOCACHE;
-       if (cnp->cn_nameiop == DELETE ||
-           (wantparent && cnp->cn_nameiop != CREATE))
+       wantparent = cnp->cn_flags & (CNP_LOCKPARENT|CNP_WANTPARENT);
+       docache = (cnp->cn_flags & CNP_NOCACHE) ^ CNP_NOCACHE;
+       if (cnp->cn_nameiop == NAMEI_DELETE ||
+           (wantparent && cnp->cn_nameiop != NAMEI_CREATE))
                docache = 0;
-       rdonly = cnp->cn_flags & RDONLY;
-       cnp->cn_flags &= ~ISSYMLINK;
+       rdonly = cnp->cn_flags & CNP_RDONLY;
+       cnp->cn_flags &= ~CNP_ISSYMLINK;
        dp = dvp;
        vn_lock(dp, LK_EXCLUSIVE | LK_RETRY, td);
 
@@ -630,7 +630,7 @@ relookup(dvp, vpp, cnp)
         *
         * The last component of the filename is left accessible via
         * cnp->cn_nameptr for callers that need the name. Callers needing
-        * the name set the SAVENAME flag. When done, they assume
+        * the name set the CNP_SAVENAME flag. When done, they assume
         * responsibility for freeing the pathname buffer.
         */
 #ifdef NAMEI_DIAGNOSTIC
@@ -647,7 +647,7 @@ relookup(dvp, vpp, cnp)
         * e.g. like "/." or ".".
         */
        if (cnp->cn_nameptr[0] == '\0') {
-               if (cnp->cn_nameiop != LOOKUP || wantparent) {
+               if (cnp->cn_nameiop != NAMEI_LOOKUP || wantparent) {
                        error = EISDIR;
                        goto bad;
                }
@@ -655,16 +655,16 @@ relookup(dvp, vpp, cnp)
                        error = ENOTDIR;
                        goto bad;
                }
-               if (!(cnp->cn_flags & LOCKLEAF))
+               if (!(cnp->cn_flags & CNP_LOCKLEAF))
                        VOP_UNLOCK(dp, 0, td);
                *vpp = dp;
                /* XXX This should probably move to the top of function. */
-               if (cnp->cn_flags & SAVESTART)
-                       panic("lookup: SAVESTART");
+               if (cnp->cn_flags & CNP_SAVESTART)
+                       panic("lookup: CNP_SAVESTART");
                return (0);
        }
 
-       if (cnp->cn_flags & ISDOTDOT)
+       if (cnp->cn_flags & CNP_ISDOTDOT)
                panic ("relookup: lookup on dot-dot");
 
        /*
@@ -683,7 +683,7 @@ relookup(dvp, vpp, cnp)
                        goto bad;
                }
                /* ASSERT(dvp == ndp->ni_startdir) */
-               if (cnp->cn_flags & SAVESTART)
+               if (cnp->cn_flags & CNP_SAVESTART)
                        VREF(dvp);
                /*
                 * We return with ni_vp NULL to indicate that the entry
@@ -697,34 +697,34 @@ relookup(dvp, vpp, cnp)
        /*
         * Check for symbolic link
         */
-       KASSERT(dp->v_type != VLNK || !(cnp->cn_flags & FOLLOW),
+       KASSERT(dp->v_type != VLNK || !(cnp->cn_flags & CNP_FOLLOW),
            ("relookup: symlink found.\n"));
 
        /*
         * Disallow directory write attempts on read-only file systems.
         */
        if (rdonly &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)) {
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME)) {
                error = EROFS;
                goto bad2;
        }
        /* ASSERT(dvp == ndp->ni_startdir) */
-       if (cnp->cn_flags & SAVESTART)
+       if (cnp->cn_flags & CNP_SAVESTART)
                VREF(dvp);
        
        if (!wantparent)
                vrele(dvp);
 
        if (vn_canvmio(dp) == TRUE &&
-               ((cnp->cn_flags & (NOOBJ|LOCKLEAF)) == LOCKLEAF))
+               ((cnp->cn_flags & (CNP_NOOBJ|CNP_LOCKLEAF)) == CNP_LOCKLEAF))
                vfs_object_create(dp, cnp->cn_td);
 
-       if ((cnp->cn_flags & LOCKLEAF) == 0)
+       if ((cnp->cn_flags & CNP_LOCKLEAF) == 0)
                VOP_UNLOCK(dp, 0, td);
        return (0);
 
 bad2:
-       if ((cnp->cn_flags & LOCKPARENT) && (cnp->cn_flags & ISLASTCN))
+       if ((cnp->cn_flags & CNP_LOCKPARENT) && (cnp->cn_flags & CNP_ISLASTCN))
                VOP_UNLOCK(dvp, 0, td);
        vrele(dvp);
 bad:
index d266c16..add74a0 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)vfs_subr.c  8.31 (Berkeley) 5/26/95
  * $FreeBSD: src/sys/kern/vfs_subr.c,v 1.249.2.30 2003/04/04 20:35:57 tegge Exp $
- * $DragonFly: src/sys/kern/vfs_subr.c,v 1.19 2003/09/01 00:35:29 hmp Exp $
+ * $DragonFly: src/sys/kern/vfs_subr.c,v 1.20 2003/09/23 05:03:51 dillon Exp $
  */
 
 /*
@@ -3124,21 +3124,21 @@ NDFREE(ndp, flags)
      const uint flags;
 {
        if (!(flags & NDF_NO_FREE_PNBUF) &&
-           (ndp->ni_cnd.cn_flags & HASBUF)) {
+           (ndp->ni_cnd.cn_flags & CNP_HASBUF)) {
                zfree(namei_zone, ndp->ni_cnd.cn_pnbuf);
-               ndp->ni_cnd.cn_flags &= ~HASBUF;
+               ndp->ni_cnd.cn_flags &= ~CNP_HASBUF;
        }
        if (!(flags & NDF_NO_DVP_UNLOCK) &&
-           (ndp->ni_cnd.cn_flags & LOCKPARENT) &&
+           (ndp->ni_cnd.cn_flags & CNP_LOCKPARENT) &&
            ndp->ni_dvp != ndp->ni_vp)
                VOP_UNLOCK(ndp->ni_dvp, 0, ndp->ni_cnd.cn_td);
        if (!(flags & NDF_NO_DVP_RELE) &&
-           (ndp->ni_cnd.cn_flags & (LOCKPARENT|WANTPARENT))) {
+           (ndp->ni_cnd.cn_flags & (CNP_LOCKPARENT|CNP_WANTPARENT))) {
                vrele(ndp->ni_dvp);
                ndp->ni_dvp = NULL;
        }
        if (!(flags & NDF_NO_VP_UNLOCK) &&
-           (ndp->ni_cnd.cn_flags & LOCKLEAF) && ndp->ni_vp)
+           (ndp->ni_cnd.cn_flags & CNP_LOCKLEAF) && ndp->ni_vp)
                VOP_UNLOCK(ndp->ni_vp, 0, ndp->ni_cnd.cn_td);
        if (!(flags & NDF_NO_VP_RELE) &&
            ndp->ni_vp) {
@@ -3146,7 +3146,7 @@ NDFREE(ndp, flags)
                ndp->ni_vp = NULL;
        }
        if (!(flags & NDF_NO_STARTDIR_RELE) &&
-           (ndp->ni_cnd.cn_flags & SAVESTART)) {
+           (ndp->ni_cnd.cn_flags & CNP_SAVESTART)) {
                vrele(ndp->ni_startdir);
                ndp->ni_startdir = NULL;
        }
index a4ba453..bb43df0 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)vfs_syscalls.c      8.13 (Berkeley) 4/15/94
  * $FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.151.2.18 2003/04/04 20:35:58 tegge Exp $
- * $DragonFly: src/sys/kern/vfs_syscalls.c,v 1.16 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/vfs_syscalls.c,v 1.17 2003/09/23 05:03:51 dillon Exp $
  */
 
 /* For 4.3 integer FS ID compatibility */
@@ -132,7 +132,7 @@ mount(struct mount_args *uap)
        /*
         * Get vnode to be covered
         */
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
@@ -419,7 +419,7 @@ unmount(struct unmount_args *uap)
        struct nameidata nd;
 
        KKASSERT(p);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
@@ -596,7 +596,8 @@ quotactl(struct quotactl_args *uap)
        KKASSERT(p);
        if (p->p_ucred->cr_prison && !prison_quotas)
                return (EPERM);
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        mp = nd.ni_vp->v_mount;
@@ -622,7 +623,8 @@ statfs(struct statfs_args *uap)
        struct nameidata nd;
        struct statfs sb;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        mp = nd.ni_vp->v_mount;
@@ -798,7 +800,7 @@ chdir(struct chdir_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = change_dir(&nd, td)) != 0)
                return (error);
@@ -870,7 +872,7 @@ chroot(struct chroot_args *uap)
                error = chroot_refuse_vdir_fds(fdp);
        if (error)
                return (error);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = change_dir(&nd, td)) != 0)
                return (error);
@@ -937,7 +939,8 @@ open(struct open_args *uap)
                return (error);
        fp = nfp;
        cmode = ((SCARG(uap, mode) &~ fdp->fd_cmask) & ALLPERMS) &~ S_ISTXT;
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        p->p_dupfd = -indx - 1;                 /* XXX check for fdopen */
        /*
         * Bump the ref count to prevent another process from closing
@@ -1098,7 +1101,8 @@ mknod(struct mknod_args *uap)
        if (error)
                return (error);
        bwillwrite();
-       NDINIT(&nd, CREATE, LOCKPARENT, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_CREATE, CNP_LOCKPARENT, UIO_USERSPACE,
+               SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -1131,7 +1135,7 @@ mknod(struct mknod_args *uap)
        if (!error) {
                VOP_LEASE(nd.ni_dvp, td, p->p_ucred, LEASE_WRITE);
                if (whiteout)
-                       error = VOP_WHITEOUT(nd.ni_dvp, &nd.ni_cnd, CREATE);
+                       error = VOP_WHITEOUT(nd.ni_dvp, &nd.ni_cnd, NAMEI_CREATE);
                else {
                        error = VOP_MKNOD(nd.ni_dvp, &nd.ni_vp,
                                                &nd.ni_cnd, &vattr);
@@ -1170,7 +1174,8 @@ mkfifo(struct mkfifo_args *uap)
        struct nameidata nd;
 
        bwillwrite();
-       NDINIT(&nd, CREATE, LOCKPARENT, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_CREATE, CNP_LOCKPARENT, UIO_USERSPACE,
+               SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        if (nd.ni_vp != NULL) {
@@ -1210,7 +1215,8 @@ link(struct link_args *uap)
        int error;
 
        bwillwrite();
-       NDINIT(&nd, LOOKUP, FOLLOW|NOOBJ, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_NOOBJ, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1218,7 +1224,8 @@ link(struct link_args *uap)
        if (vp->v_type == VDIR)
                error = EPERM;          /* POSIX */
        else {
-               NDINIT(&nd, CREATE, LOCKPARENT|NOOBJ, UIO_USERSPACE, SCARG(uap, link), td);
+               NDINIT(&nd, NAMEI_CREATE, CNP_LOCKPARENT | CNP_NOOBJ,
+                       UIO_USERSPACE, SCARG(uap, link), td);
                error = namei(&nd);
                if (!error) {
                        if (nd.ni_vp != NULL) {
@@ -1264,7 +1271,8 @@ symlink(struct symlink_args *uap)
        if ((error = copyinstr(SCARG(uap, path), path, MAXPATHLEN, NULL)) != 0)
                goto out;
        bwillwrite();
-       NDINIT(&nd, CREATE, LOCKPARENT|NOOBJ, UIO_USERSPACE, SCARG(uap, link), td);
+       NDINIT(&nd, NAMEI_CREATE, CNP_LOCKPARENT | CNP_NOOBJ, UIO_USERSPACE,
+               SCARG(uap, link), td);
        if ((error = namei(&nd)) != 0)
                goto out;
        if (nd.ni_vp) {
@@ -1307,13 +1315,13 @@ undelete(struct undelete_args *uap)
        struct nameidata nd;
 
        bwillwrite();
-       NDINIT(&nd, DELETE, LOCKPARENT|DOWHITEOUT, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_DELETE, CNP_LOCKPARENT | CNP_DOWHITEOUT, UIO_USERSPACE,
            SCARG(uap, path), td);
        error = namei(&nd);
        if (error)
                return (error);
 
-       if (nd.ni_vp != NULLVP || !(nd.ni_cnd.cn_flags & ISWHITEOUT)) {
+       if (nd.ni_vp != NULLVP || !(nd.ni_cnd.cn_flags & CNP_ISWHITEOUT)) {
                NDFREE(&nd, NDF_ONLY_PNBUF);
                if (nd.ni_dvp == nd.ni_vp)
                        vrele(nd.ni_dvp);
@@ -1325,7 +1333,7 @@ undelete(struct undelete_args *uap)
        }
 
        VOP_LEASE(nd.ni_dvp, td, p->p_ucred, LEASE_WRITE);
-       error = VOP_WHITEOUT(nd.ni_dvp, &nd.ni_cnd, DELETE);
+       error = VOP_WHITEOUT(nd.ni_dvp, &nd.ni_cnd, NAMEI_DELETE);
        NDFREE(&nd, NDF_ONLY_PNBUF);
        vput(nd.ni_dvp);
        ASSERT_VOP_UNLOCKED(nd.ni_dvp, "undelete");
@@ -1348,7 +1356,7 @@ unlink(struct unlink_args *uap)
        struct nameidata nd;
 
        bwillwrite();
-       NDINIT(&nd, DELETE, LOCKPARENT, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_DELETE, CNP_LOCKPARENT, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -1473,8 +1481,8 @@ access(struct access_args *uap)
        tmpcred->cr_uid = p->p_ucred->cr_ruid;
        tmpcred->cr_groups[0] = p->p_ucred->cr_rgid;
        p->p_ucred = tmpcred;
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                goto out1;
        vp = nd.ni_vp;
@@ -1515,8 +1523,8 @@ ostat(struct ostat_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1545,8 +1553,8 @@ olstat(struct olstat_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -1603,8 +1611,8 @@ stat(struct stat_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        error = vn_stat(nd.ni_vp, &sb, td);
@@ -1631,8 +1639,8 @@ lstat(struct lstat_args *uap)
        struct stat sb;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -1682,8 +1690,8 @@ nstat(struct nstat_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1712,8 +1720,8 @@ nlstat(struct nlstat_args *uap)
        struct nstat nsb;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -1740,8 +1748,8 @@ pathconf(struct pathconf_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1767,8 +1775,8 @@ readlink(struct readlink_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
-           SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW | CNP_LOCKLEAF | CNP_NOOBJ,
+           UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1832,7 +1840,8 @@ chflags(struct chflags_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1890,7 +1899,8 @@ chmod(struct chmod_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1912,7 +1922,8 @@ lchmod(struct lchmod_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1971,7 +1982,8 @@ chown(struct chown_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -1993,7 +2005,8 @@ lchown(struct lchown_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_USERSPACE,
+           SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -2079,7 +2092,7 @@ utimes(struct utimes_args *uap)
        usrtvp = SCARG(uap, tptr);
        if ((error = getutimes(usrtvp, ts)) != 0)
                return (error);
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -2106,7 +2119,7 @@ lutimes(struct lutimes_args *uap)
        usrtvp = SCARG(uap, tptr);
        if ((error = getutimes(usrtvp, ts)) != 0)
                return (error);
-       NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_NOFOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        NDFREE(&nd, NDF_ONLY_PNBUF);
@@ -2157,7 +2170,7 @@ truncate(struct truncate_args *uap)
 
        if (uap->length < 0)
                return(EINVAL);
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -2301,15 +2314,17 @@ rename(struct rename_args *uap)
        int error;
 
        bwillwrite();
-       NDINIT(&fromnd, DELETE, WANTPARENT | SAVESTART, UIO_USERSPACE,
-           SCARG(uap, from), td);
+       NDINIT(&fromnd, NAMEI_DELETE, CNP_WANTPARENT | CNP_SAVESTART,
+               UIO_USERSPACE, SCARG(uap, from), td);
        if ((error = namei(&fromnd)) != 0)
                return (error);
        fvp = fromnd.ni_vp;
-       NDINIT(&tond, RENAME, LOCKPARENT | LOCKLEAF | NOCACHE | SAVESTART | NOOBJ,
+       NDINIT(&tond, NAMEI_RENAME, 
+           CNP_LOCKPARENT | CNP_LOCKLEAF | CNP_NOCACHE |
+            CNP_SAVESTART | CNP_NOOBJ,
            UIO_USERSPACE, SCARG(uap, to), td);
        if (fromnd.ni_vp->v_type == VDIR)
-               tond.ni_cnd.cn_flags |= WILLBEDIR;
+               tond.ni_cnd.cn_flags |= CNP_WILLBEDIR;
        if ((error = namei(&tond)) != 0) {
                /* Translate error code for rename("dir1", "dir2/."). */
                if (error == EISDIR && fvp->v_type == VDIR)
@@ -2393,8 +2408,9 @@ mkdir(struct mkdir_args *uap)
        struct nameidata nd;
 
        bwillwrite();
-       NDINIT(&nd, CREATE, LOCKPARENT, UIO_USERSPACE, SCARG(uap, path), td);
-       nd.ni_cnd.cn_flags |= WILLBEDIR;
+       NDINIT(&nd, NAMEI_CREATE, CNP_LOCKPARENT, UIO_USERSPACE,
+               SCARG(uap, path), td);
+       nd.ni_cnd.cn_flags |= CNP_WILLBEDIR;
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -2437,7 +2453,7 @@ rmdir(struct rmdir_args *uap)
        struct nameidata nd;
 
        bwillwrite();
-       NDINIT(&nd, DELETE, LOCKPARENT | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_DELETE, CNP_LOCKPARENT | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
@@ -2717,7 +2733,7 @@ revoke(struct revoke_args *uap)
        int error;
        struct nameidata nd;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        vp = nd.ni_vp;
@@ -2774,7 +2790,7 @@ getfh(struct getfh_args *uap)
        error = suser(td);
        if (error)
                return (error);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE, uap->fname, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE, uap->fname, td);
        error = namei(&nd);
        if (error)
                return (error);
@@ -3058,7 +3074,7 @@ extattrctl(struct extattrctl_args *uap)
        struct mount *mp;
        int error;
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
        mp = nd.ni_vp->v_mount;
@@ -3088,7 +3104,7 @@ extattr_set_file(struct extattr_set_file_args *uap)
        error = copyin(SCARG(uap, attrname), attrname, EXTATTR_MAXNAMELEN);
        if (error)
                return (error);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return(error);
@@ -3151,7 +3167,7 @@ extattr_get_file(struct extattr_get_file_args *uap)
        error = copyin(SCARG(uap, attrname), attrname, EXTATTR_MAXNAMELEN);
        if (error)
                return (error);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return (error);
@@ -3211,7 +3227,7 @@ extattr_delete_file(struct extattr_delete_file_args *uap)
        error = copyin(SCARG(uap, attrname), attrname, EXTATTR_MAXNAMELEN);
        if (error)
                return(error);
-       NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF, UIO_USERSPACE,
            SCARG(uap, path), td);
        if ((error = namei(&nd)) != 0)
                return(error);
index 6106c1a..25599d7 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)vfs_vnops.c 8.2 (Berkeley) 1/21/94
  * $FreeBSD: src/sys/kern/vfs_vnops.c,v 1.87.2.13 2002/12/29 18:19:53 dillon Exp $
- * $DragonFly: src/sys/kern/vfs_vnops.c,v 1.12 2003/08/26 21:09:02 rob Exp $
+ * $DragonFly: src/sys/kern/vfs_vnops.c,v 1.13 2003/09/23 05:03:51 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -96,10 +96,10 @@ vn_open(ndp, fmode, cmode)
        KKASSERT(cred == td->td_proc->p_ucred);
 
        if (fmode & O_CREAT) {
-               ndp->ni_cnd.cn_nameiop = CREATE;
-               ndp->ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF;
+               ndp->ni_cnd.cn_nameiop = NAMEI_CREATE;
+               ndp->ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF;
                if ((fmode & O_EXCL) == 0 && (fmode & O_NOFOLLOW) == 0)
-                       ndp->ni_cnd.cn_flags |= FOLLOW;
+                       ndp->ni_cnd.cn_flags |= CNP_FOLLOW;
                bwillwrite();
                error = namei(ndp);
                if (error)
@@ -137,9 +137,9 @@ vn_open(ndp, fmode, cmode)
                        fmode &= ~O_CREAT;
                }
        } else {
-               ndp->ni_cnd.cn_nameiop = LOOKUP;
-               ndp->ni_cnd.cn_flags =
-                   ((fmode & O_NOFOLLOW) ? NOFOLLOW : FOLLOW) | LOCKLEAF;
+               ndp->ni_cnd.cn_nameiop = NAMEI_LOOKUP;
+               ndp->ni_cnd.cn_flags = CNP_LOCKLEAF |
+                   ((fmode & O_NOFOLLOW) ? CNP_NOFOLLOW : CNP_FOLLOW);
                error = namei(ndp);
                if (error)
                        return (error);
index 14638b8..44b08e7 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     @(#)namei.h     8.5 (Berkeley) 1/9/95
  * $FreeBSD: src/sys/sys/namei.h,v 1.29.2.2 2001/09/30 21:12:54 luigi Exp $
- * $DragonFly: src/sys/sys/namei.h,v 1.5 2003/08/20 07:31:21 rob Exp $
+ * $DragonFly: src/sys/sys/namei.h,v 1.6 2003/09/23 05:03:52 dillon Exp $
  */
 
 #ifndef _SYS_NAMEI_H_
@@ -76,13 +76,9 @@ struct nameidata {
         */
        const   char *ni_dirp;          /* pathname pointer */
        enum    uio_seg ni_segflg;      /* location of pathname */
-     /* u_long ni_nameiop;                namei operation */
-     /* u_long ni_flags;                  flags to namei */
-     /* struct proc *ni_proc;             process requesting lookup */
        /*
         * Arguments to lookup.
         */
-     /* struct ucred *ni_cred;            credentials */
        struct  vnode *ni_startdir;     /* starting directory */
        struct  vnode *ni_rootdir;      /* logical root directory */
        struct  vnode *ni_topdir;       /* logical top directory */
@@ -94,7 +90,7 @@ struct nameidata {
        /*
         * Shared between namei and lookup/commit routines.
         */
-       size_t  ni_pathlen;             /* remaining chars in path */
+       size_t  ni_pathlen;             /* remaining chars in path incl \0 */
        char    *ni_next;               /* next location in pathname */
        u_long  ni_loopcnt;             /* count of symlinks encountered */
        /*
@@ -109,22 +105,22 @@ struct nameidata {
 /*
  * namei operations
  */
-#define        LOOKUP          0       /* perform name lookup only */
-#define        CREATE          1       /* setup for file creation */
-#define        DELETE          2       /* setup for file deletion */
-#define        RENAME          3       /* setup for file renaming */
-#define        OPMASK          3       /* mask for operation */
+#define        NAMEI_LOOKUP    0       /* perform name lookup only */
+#define        NAMEI_CREATE    1       /* setup for file creation */
+#define        NAMEI_DELETE    2       /* setup for file deletion */
+#define        NAMEI_RENAME    3       /* setup for file renaming */
+#define        NAMEI_OPMASK    3       /* mask for operation */
 /*
  * namei operational modifier flags, stored in ni_cnd.flags
  */
-#define        LOCKLEAF        0x0004  /* lock inode on return */
-#define        LOCKPARENT      0x0008  /* want parent vnode returned locked */
-#define        WANTPARENT      0x0010  /* want parent vnode returned unlocked */
-#define        NOCACHE         0x0020  /* name must not be left in cache */
-#define        FOLLOW          0x0040  /* follow symbolic links */
-#define        NOOBJ           0x0080  /* don't create object */
-#define        NOFOLLOW        0x0000  /* do not follow symbolic links (pseudo) */
-#define        MODMASK         0x00fc  /* mask of operational modifiers */
+#define        CNP_LOCKLEAF        0x00000004  /* return target vnode locked */
+#define        CNP_LOCKPARENT      0x00000008  /* return parent vnode locked */
+#define        CNP_WANTPARENT      0x00000010  /* return parent vnode unlocked */
+#define        CNP_NOCACHE         0x00000020  /* name must not be left in cache */
+#define        CNP_FOLLOW          0x00000040  /* follow symbolic links */
+#define        CNP_NOOBJ           0x00000080  /* don't create object */
+#define        CNP_NOFOLLOW        0x00000000  /* do not follow symlinks (pseudo) */
+#define        CNP_MODMASK         0x000000fc  /* mask of operational modifiers */
 /*
  * Namei parameter descriptors.
  *
@@ -139,21 +135,21 @@ struct nameidata {
  * name being sought. The caller is responsible for releasing the
  * buffer and for vrele'ing ni_startdir.
  */
-#define        NOCROSSMOUNT    0x000100 /* do not cross mount points */
-#define        RDONLY          0x000200 /* lookup with read-only semantics */
-#define        HASBUF          0x000400 /* has allocated pathname buffer */
-#define        SAVENAME        0x000800 /* save pathname buffer */
-#define        SAVESTART       0x001000 /* save starting directory */
-#define ISDOTDOT       0x002000 /* current component name is .. */
-#define MAKEENTRY      0x004000 /* entry is to be added to name cache */
-#define ISLASTCN       0x008000 /* this is last component of pathname */
-#define ISSYMLINK      0x010000 /* symlink needs interpretation */
-#define        ISWHITEOUT      0x020000 /* found whiteout */
-#define        DOWHITEOUT      0x040000 /* do whiteouts */
-#define        WILLBEDIR       0x080000 /* new files will be dirs; allow trailing / */
-#define        ISUNICODE       0x100000 /* current component name is unicode*/
-#define        PDIRUNLOCK      0x200000 /* file system lookup() unlocked parent dir */
-#define PARAMASK       0x1fff00 /* mask of parameter descriptors */
+#define        CNP_NOCROSSMOUNT    0x00000100 /* do not cross mount points */
+#define        CNP_RDONLY          0x00000200 /* lookup with read-only semantics */
+#define        CNP_HASBUF          0x00000400 /* has allocated pathname buffer */
+#define        CNP_SAVENAME        0x00000800 /* save pathname buffer */
+#define        CNP_SAVESTART       0x00001000 /* save starting directory */
+#define CNP_ISDOTDOT       0x00002000 /* current component name is .. */
+#define CNP_MAKEENTRY      0x00004000 /* entry will be added to name cache */
+#define CNP_ISLASTCN       0x00008000 /* flag last component of pathname */
+#define CNP_ISSYMLINK      0x00010000 /* symlink needs interpretation */
+#define        CNP_ISWHITEOUT      0x00020000 /* found whiteout */
+#define        CNP_DOWHITEOUT      0x00040000 /* do whiteouts */
+#define        CNP_WILLBEDIR       0x00080000 /* will be dir, allow trailing / */
+#define        CNP_ISUNICODE       0x00100000 /* current component name is unicode*/
+#define        CNP_PDIRUNLOCK      0x00200000 /* fs lookup() unlocked parent dir */
+#define CNP_PARAMASK       0x001fff00 /* mask of parameter descriptors */
 /*
  * Initialization of an nameidata structure.
  */
index b2d575b..d5eb9a0 100644 (file)
@@ -28,7 +28,7 @@
  * 
  *     @(#) src/sys/cfs/coda_vfsops.c,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $
  * $FreeBSD: src/sys/coda/coda_vfsops.c,v 1.24.2.1 2001/07/26 20:36:45 iedowse Exp $
- * $DragonFly: src/sys/vfs/coda/Attic/coda_vfsops.c,v 1.9 2003/08/20 09:56:31 rob Exp $
+ * $DragonFly: src/sys/vfs/coda/Attic/coda_vfsops.c,v 1.10 2003/09/23 05:03:52 dillon Exp $
  * 
  */
 
@@ -137,7 +137,7 @@ coda_mount(vfsp, path, data, ndp, td)
     }
     
     /* Validate mount device.  Similar to getmdev(). */
-    NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, data, td);
+    NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, data, td);
     error = namei(ndp);
     dvp = ndp->ni_vp;
 
index ffa0591..1f4ccd2 100644 (file)
@@ -28,7 +28,7 @@
  * 
  *     @(#) src/sys/coda/coda_vnops.c,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $
  * $FreeBSD: src/sys/coda/coda_vnops.c,v 1.22.2.1 2001/06/29 16:26:22 shafeeq Exp $
- * $DragonFly: src/sys/vfs/coda/Attic/coda_vnops.c,v 1.9 2003/08/07 21:17:40 dillon Exp $
+ * $DragonFly: src/sys/vfs/coda/Attic/coda_vnops.c,v 1.10 2003/09/23 05:03:52 dillon Exp $
  * 
  */
 
@@ -548,7 +548,7 @@ coda_ioctl(v)
     /* Should we use the name cache here? It would get it from
        lookupname sooner or later anyway, right? */
 
-    NDINIT(&ndp, LOOKUP, (iap->follow ? FOLLOW : NOFOLLOW), UIO_USERSPACE, iap->path, td);
+    NDINIT(&ndp, NAMEI_LOOKUP, (iap->follow ? CNP_FOLLOW : CNP_NOFOLLOW), UIO_USERSPACE, iap->path, td);
     error = namei(&ndp);
     tvp = ndp.ni_vp;
 
@@ -1033,12 +1033,12 @@ coda_lookup(v)
      * we need to save the last component of the name.  (Create will
      * have to free the name buffer later...lucky us...)
      */
-    if (((cnp->cn_nameiop == CREATE) || (cnp->cn_nameiop == RENAME))
-       && (cnp->cn_flags & ISLASTCN)
+    if (((cnp->cn_nameiop == NAMEI_CREATE) || (cnp->cn_nameiop == NAMEI_RENAME))
+       && (cnp->cn_flags & CNP_ISLASTCN)
        && (error == ENOENT))
     {
        error = EJUSTRETURN;
-       cnp->cn_flags |= SAVENAME;
+       cnp->cn_flags |= CNP_SAVENAME;
        *ap->a_vpp = NULL;
     }
 
@@ -1052,11 +1052,11 @@ coda_lookup(v)
      * fact find the name, otherwise coda_remove won't have a chance
      * to free the pathname.  
      */
-    if ((cnp->cn_nameiop == DELETE)
-       && (cnp->cn_flags & ISLASTCN)
+    if ((cnp->cn_nameiop == NAMEI_DELETE)
+       && (cnp->cn_flags & CNP_ISLASTCN)
        && !error)
     {
-       cnp->cn_flags |= SAVENAME;
+       cnp->cn_flags |= CNP_SAVENAME;
     }
 
     /* 
@@ -1069,7 +1069,7 @@ coda_lookup(v)
      * we are ISLASTCN
      */
     if (!error || (error == EJUSTRETURN)) {
-       if (!(cnp->cn_flags & LOCKPARENT) || !(cnp->cn_flags & ISLASTCN)) {
+       if (!(cnp->cn_flags & CNP_LOCKPARENT) || !(cnp->cn_flags & CNP_ISLASTCN)) {
            if ((error = VOP_UNLOCK(dvp, 0, td))) {
                return error; 
            }       
@@ -1175,7 +1175,7 @@ coda_create(v)
     }
 
     if (!error) {
-       if (cnp->cn_flags & LOCKLEAF) {
+       if (cnp->cn_flags & CNP_LOCKLEAF) {
            if ((error = VOP_LOCK(*ap->a_vpp, LK_EXCLUSIVE, td))) {
                printf("coda_create: ");
                panic("unlocked parent but couldn't lock child");
index c1fca74..01b8b8d 100644 (file)
@@ -36,7 +36,7 @@
  *     @(#)fdesc_vnops.c       8.9 (Berkeley) 1/21/94
  *
  * $FreeBSD: src/sys/miscfs/fdesc/fdesc_vnops.c,v 1.47.2.1 2001/10/22 22:49:26 chris Exp $
- * $DragonFly: src/sys/vfs/fdesc/fdesc_vnops.c,v 1.7 2003/08/20 09:56:31 rob Exp $
+ * $DragonFly: src/sys/vfs/fdesc/fdesc_vnops.c,v 1.8 2003/09/23 05:03:52 dillon Exp $
  */
 
 /*
@@ -186,7 +186,7 @@ fdesc_lookup(ap)
 
        KKASSERT(p);
        nfiles = p->p_fd->fd_nfiles;
-       if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME) {
+       if (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME) {
                error = EROFS;
                goto bad;
        }
index 6267579..7f229bc 100644 (file)
@@ -5,7 +5,7 @@
  *  University of Utah, Department of Computer Science
  *
  * $FreeBSD: src/sys/gnu/ext2fs/ext2_lookup.c,v 1.21.2.3 2002/11/17 02:02:42 bde Exp $
- * $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_lookup.c,v 1.6 2003/08/20 09:56:31 rob Exp $
+ * $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_lookup.c,v 1.7 2003/09/23 05:03:52 dillon Exp $
  */
 /*
  * Copyright (c) 1989, 1993
@@ -330,8 +330,8 @@ ext2_lookup(ap)
        *vpp = NULL;
        vdp = ap->a_dvp;
        dp = VTOI(vdp);
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT|CNP_WANTPARENT);
 
        /*
         * We now have a segment name to search for, and a directory to search.
@@ -345,8 +345,8 @@ ext2_lookup(ap)
         */
        slotstatus = FOUND;
        slotfreespace = slotsize = slotneeded = 0;
-       if ((nameiop == CREATE || nameiop == RENAME) &&
-           (flags & ISLASTCN)) {
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) &&
+           (flags & CNP_ISLASTCN)) {
                slotstatus = NONE;
                slotneeded = EXT2_DIR_REC_LEN(cnp->cn_namelen); 
                /* was
@@ -366,7 +366,7 @@ ext2_lookup(ap)
         * of simplicity.
         */
        bmask = VFSTOUFS(vdp->v_mount)->um_mountp->mnt_stat.f_iosize - 1;
-       if (nameiop != LOOKUP || dp->i_diroff == 0 ||
+       if (nameiop != NAMEI_LOOKUP || dp->i_diroff == 0 ||
            dp->i_diroff > dp->i_size) {
                entryoffsetinblock = 0;
                dp->i_offset = 0;
@@ -495,8 +495,8 @@ searchloop:
         * directory has not been removed, then can consider
         * allowing file to be created.
         */
-       if ((nameiop == CREATE || nameiop == RENAME) &&
-           (flags & ISLASTCN) && dp->i_nlink != 0) {
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) &&
+           (flags & CNP_ISLASTCN) && dp->i_nlink != 0) {
                /*
                 * Access for write is interpreted as allowing
                 * creation of files in the directory.
@@ -537,7 +537,7 @@ searchloop:
                 * NB - if the directory is unlocked, then this
                 * information cannot be used.
                 */
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent)
                        VOP_UNLOCK(vdp, 0, td);
                return (EJUSTRETURN);
@@ -545,7 +545,7 @@ searchloop:
        /*
         * Insert name into cache (as non-existent) if appropriate.
         */
-       if ((cnp->cn_flags & MAKEENTRY) && nameiop != CREATE)
+       if ((cnp->cn_flags & CNP_MAKEENTRY) && nameiop != NAMEI_CREATE)
                cache_enter(vdp, *vpp, cnp);
        return (ENOENT);
 
@@ -569,7 +569,7 @@ found:
         * If the final component of path name, save information
         * in the cache as to where the entry was found.
         */
-       if ((flags & ISLASTCN) && nameiop == LOOKUP)
+       if ((flags & CNP_ISLASTCN) && nameiop == NAMEI_LOOKUP)
                dp->i_diroff = dp->i_offset &~ (DIRBLKSIZ - 1);
 
        /*
@@ -579,7 +579,7 @@ found:
         * the directory (in ndp->ni_dvp), otherwise we go
         * on and lock the inode, being careful with ".".
         */
-       if (nameiop == DELETE && (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_DELETE && (flags & CNP_ISLASTCN)) {
                /*
                 * Write access to directory required to delete files.
                 */
@@ -627,8 +627,8 @@ found:
         * Must get inode of directory entry to verify it's a
         * regular file, or empty directory.
         */
-       if (nameiop == RENAME && wantparent &&
-           (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_RENAME && wantparent &&
+           (flags & CNP_ISLASTCN)) {
                if ((error = VOP_ACCESS(vdp, VWRITE, cred, cnp->cn_td)) != 0)
                        return (error);
                /*
@@ -640,7 +640,7 @@ found:
                if ((error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp)) != 0)
                        return (error);
                *vpp = tdp;
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent)
                        VOP_UNLOCK(vdp, 0, td);
                return (0);
@@ -666,13 +666,13 @@ found:
         * that point backwards in the directory structure.
         */
        pdp = vdp;
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(pdp, 0, td); /* race to get the inode */
                if ((error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp)) != 0) {
                        vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td);
                        return (error);
                }
-               if (lockparent && (flags & ISLASTCN) &&
+               if (lockparent && (flags & CNP_ISLASTCN) &&
                    (error = vn_lock(pdp, LK_EXCLUSIVE, td))) {
                        vput(tdp);
                        return (error);
@@ -684,7 +684,7 @@ found:
        } else {
                if ((error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp)) != 0)
                        return (error);
-               if (!lockparent || !(flags & ISLASTCN))
+               if (!lockparent || !(flags & CNP_ISLASTCN))
                        VOP_UNLOCK(pdp, 0, td);
                *vpp = tdp;
        }
@@ -692,7 +692,7 @@ found:
        /*
         * Insert name into cache if appropriate.
         */
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(vdp, *vpp, cnp);
        return (0);
 }
@@ -767,7 +767,7 @@ ext2_direnter(ip, dvp, cnp)
 
 
 #if DIAGNOSTIC
-       if ((cnp->cn_flags & SAVENAME) == 0)
+       if ((cnp->cn_flags & CNP_SAVENAME) == 0)
                panic("direnter: missing name");
 #endif
        dp = VTOI(dvp);
index ac68c89..550baca 100644 (file)
@@ -38,7 +38,7 @@
  *
  *     @(#)ffs_vfsops.c        8.8 (Berkeley) 4/18/94
  *     $FreeBSD: src/sys/gnu/ext2fs/ext2_vfsops.c,v 1.63.2.7 2002/07/01 00:18:51 iedowse Exp $
- *     $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_vfsops.c,v 1.10 2003/08/20 09:56:31 rob Exp $
+ *     $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_vfsops.c,v 1.11 2003/09/23 05:03:52 dillon Exp $
  */
 
 #include "opt_quota.h"
@@ -272,7 +272,7 @@ ext2_mount(mp, path, data, ndp, td)
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        if ((error = namei(ndp)) != 0)
                return (error);
        NDFREE(ndp, NDF_ONLY_PNBUF);
index 0723571..f76d6aa 100644 (file)
@@ -44,7 +44,7 @@
  *     @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
  *     @(#)ext2_vnops.c        8.7 (Berkeley) 2/3/94
  * $FreeBSD: src/sys/gnu/ext2fs/ext2_vnops.c,v 1.51.2.2 2003/01/02 17:26:18 bde Exp $
- * $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_vnops.c,v 1.8 2003/08/20 09:56:31 rob Exp $
+ * $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_vnops.c,v 1.9 2003/09/23 05:03:52 dillon Exp $
  */
 
 #include "opt_quota.h"
@@ -345,7 +345,7 @@ ext2_link(ap)
        int error;
 
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_link: no name");
 #endif
        if (tdvp->v_mount != vp->v_mount) {
@@ -409,8 +409,8 @@ ext2_rename(ap)
        u_char namlen;
 
 #ifdef DIAGNOSTIC
-       if ((tcnp->cn_flags & HASBUF) == 0 ||
-           (fcnp->cn_flags & HASBUF) == 0)
+       if ((tcnp->cn_flags & CNP_HASBUF) == 0 ||
+           (fcnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_rename: no name");
 #endif
        /*
@@ -467,7 +467,7 @@ abortit:
                 * Avoid ".", "..", and aliases of "." for obvious reasons.
                 */
                if ((fcnp->cn_namelen == 1 && fcnp->cn_nameptr[0] == '.') ||
-                   dp == ip || (fcnp->cn_flags | tcnp->cn_flags) & ISDOTDOT ||
+                   dp == ip || (fcnp->cn_flags | tcnp->cn_flags) & CNP_ISDOTDOT ||
                    (ip->i_flag & IN_RENAME)) {
                        VOP_UNLOCK(fvp, 0, td);
                        error = EINVAL;
@@ -648,8 +648,8 @@ abortit:
        /*
         * 3) Unlink the source.
         */
-       fcnp->cn_flags &= ~MODMASK;
-       fcnp->cn_flags |= LOCKPARENT | LOCKLEAF;
+       fcnp->cn_flags &= ~CNP_MODMASK;
+       fcnp->cn_flags |= CNP_LOCKPARENT | CNP_LOCKLEAF;
        VREF(fdvp);
        error = relookup(fdvp, &fvp, fcnp);
        if (error == 0)
@@ -766,7 +766,7 @@ ext2_mkdir(ap)
        int error, dmode;
 
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_mkdir: no name");
 #endif
        dp = VTOI(dvp);
@@ -847,7 +847,7 @@ ext2_mkdir(ap)
        ip->i_mode = dmode;
        tvp->v_type = VDIR;     /* Rest init'd in getnewvnode(). */
        ip->i_nlink = 2;
-       if (cnp->cn_flags & ISWHITEOUT)
+       if (cnp->cn_flags & CNP_ISWHITEOUT)
                ip->i_flags |= UF_OPAQUE;
        error = UFS_UPDATE(tvp, 1);
 
@@ -1038,7 +1038,7 @@ ext2_makeinode(mode, dvp, vpp, cnp)
 
        pdir = VTOI(dvp);
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ext2_makeinode: no name");
 #endif
        *vpp = NULL;
@@ -1116,7 +1116,7 @@ ext2_makeinode(mode, dvp, vpp, cnp)
            suser_cred(cnp->cn_cred, PRISON_ROOT))
                ip->i_mode &= ~ISGID;
 
-       if (cnp->cn_flags & ISWHITEOUT)
+       if (cnp->cn_flags & CNP_ISWHITEOUT)
                ip->i_flags |= UF_OPAQUE;
 
        /*
index 66e8a7a..a7a4060 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/fs/hpfs/hpfs_vfsops.c,v 1.3.2.2 2001/12/25 01:44:45 dillon Exp $
- * $DragonFly: src/sys/vfs/hpfs/hpfs_vfsops.c,v 1.9 2003/08/20 09:56:32 rob Exp $
+ * $DragonFly: src/sys/vfs/hpfs/hpfs_vfsops.c,v 1.10 2003/09/23 05:03:52 dillon Exp $
  */
 
 
@@ -230,7 +230,7 @@ hpfs_mount (
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        err = namei(ndp);
        if (err) {
                /* can't get devvp!*/
index 1ae7dc8..3afe31d 100644 (file)
@@ -24,7 +24,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/fs/hpfs/hpfs_vnops.c,v 1.2.2.2 2002/01/15 18:35:09 semenu Exp $
- * $DragonFly: src/sys/vfs/hpfs/hpfs_vnops.c,v 1.9 2003/08/20 09:56:32 rob Exp $
+ * $DragonFly: src/sys/vfs/hpfs/hpfs_vnops.c,v 1.10 2003/09/23 05:03:52 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -1157,15 +1157,15 @@ hpfs_lookup(ap)
        int error;
        int nameiop = cnp->cn_nameiop;
        int flags = cnp->cn_flags;
-       int lockparent = flags & LOCKPARENT;
+       int lockparent = flags & CNP_LOCKPARENT;
 #if HPFS_DEBUG
-       int wantparent = flags & (LOCKPARENT|WANTPARENT);
+       int wantparent = flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
 #endif
        dprintf(("hpfs_lookup(0x%x, %s, %ld, %d, %d): \n",
                dhp->h_no, cnp->cn_nameptr, cnp->cn_namelen,
                lockparent, wantparent));
 
-       if (nameiop != CREATE && nameiop != DELETE && nameiop != LOOKUP) {
+       if (nameiop != NAMEI_CREATE && nameiop != NAMEI_DELETE && nameiop != NAMEI_LOOKUP) {
                printf("hpfs_lookup: LOOKUP, DELETE and CREATE are only supported\n");
                return (EOPNOTSUPP);
        }
@@ -1183,7 +1183,7 @@ hpfs_lookup(ap)
 
                return (0);
        } else if( (cnp->cn_namelen == 2) &&
-           !strncmp(cnp->cn_nameptr,"..",2) && (flags & ISDOTDOT) ) {
+           !strncmp(cnp->cn_nameptr,"..",2) && (flags & CNP_ISDOTDOT) ) {
                dprintf(("hpfs_lookup(0x%x,...): .. faked (0x%x)\n",
                        dhp->h_no, dhp->h_fn.fn_parent));
 
@@ -1196,7 +1196,7 @@ hpfs_lookup(ap)
                        return(error);
                }
 
-               if( lockparent && (flags & ISLASTCN) && 
+               if( lockparent && (flags & CNP_ISLASTCN) && 
                    (error = VOP__LOCK(dvp, 0, cnp->cn_td)) ) {
                        vput( *(ap->a_vpp) );
                        return (error);
@@ -1210,11 +1210,11 @@ hpfs_lookup(ap)
                error = hpfs_genlookupbyname(dhp,
                                cnp->cn_nameptr, cnp->cn_namelen, &bp, &dep);
                if (error) {
-                       if ((error == ENOENT) && (flags & ISLASTCN) &&
-                           (nameiop == CREATE || nameiop == RENAME)) {
+                       if ((error == ENOENT) && (flags & CNP_ISLASTCN) &&
+                           (nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME)) {
                                if(!lockparent)
                                        VOP__UNLOCK(dvp, 0, cnp->cn_td);
-                               cnp->cn_flags |= SAVENAME;
+                               cnp->cn_flags |= CNP_SAVENAME;
                                return (EJUSTRETURN);
                        }
 
@@ -1224,7 +1224,7 @@ hpfs_lookup(ap)
                dprintf(("hpfs_lookup: fnode: 0x%x, CPID: 0x%x\n",
                         dep->de_fnode, dep->de_cpid));
 
-               if (nameiop == DELETE && (flags & ISLASTCN)) {
+               if (nameiop == NAMEI_DELETE && (flags & CNP_ISLASTCN)) {
                        error = VOP_ACCESS(dvp, VWRITE, cred, cnp->cn_td);
                        if (error) {
                                brelse(bp);
@@ -1258,11 +1258,11 @@ hpfs_lookup(ap)
 
                brelse(bp);
 
-               if(!lockparent || !(flags & ISLASTCN))
+               if(!lockparent || !(flags & CNP_ISLASTCN))
                        VOP__UNLOCK(dvp, 0, cnp->cn_td);
-               if ((flags & MAKEENTRY) &&
-                   (!(flags & ISLASTCN) || 
-                    (nameiop != DELETE && nameiop != CREATE)))
+               if ((flags & CNP_MAKEENTRY) &&
+                   (!(flags & CNP_ISLASTCN) || 
+                    (nameiop != NAMEI_DELETE && nameiop != NAMEI_CREATE)))
                        cache_enter(dvp, *ap->a_vpp, cnp);
        }
        return (error);
@@ -1302,7 +1302,7 @@ hpfs_create(ap)
        dprintf(("hpfs_create(0x%x, %s, %ld): \n", VTOHP(ap->a_dvp)->h_no,
                ap->a_cnp->cn_nameptr, ap->a_cnp->cn_namelen));
 
-       if (!(ap->a_cnp->cn_flags & HASBUF)) 
+       if (!(ap->a_cnp->cn_flags & CNP_HASBUF)) 
                panic ("hpfs_create: no name\n");
 
        error = hpfs_makefnode (ap->a_dvp, ap->a_vpp, ap->a_cnp, ap->a_vap);
index 572dec0..9407af8 100644 (file)
@@ -39,7 +39,7 @@
  *
  *     @(#)cd9660_lookup.c     8.2 (Berkeley) 1/23/94
  * $FreeBSD: src/sys/isofs/cd9660/cd9660_lookup.c,v 1.23.2.2 2001/11/04 06:19:47 dillon Exp $
- * $DragonFly: src/sys/vfs/isofs/cd9660/cd9660_lookup.c,v 1.6 2003/08/07 21:17:41 dillon Exp $
+ * $DragonFly: src/sys/vfs/isofs/cd9660/cd9660_lookup.c,v 1.7 2003/09/23 05:03:52 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -128,9 +128,9 @@ cd9660_lookup(ap)
        vdp = ap->a_dvp;
        dp = VTOI(vdp);
        imp = dp->i_mnt;
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
 
        /*
         * We now have a segment name to search for, and a directory to search.
@@ -159,7 +159,7 @@ cd9660_lookup(ap)
         * of simplicity.
         */
        bmask = imp->im_bmask;
-       if (nameiop != LOOKUP || dp->i_diroff == 0 ||
+       if (nameiop != NAMEI_LOOKUP || dp->i_diroff == 0 ||
            dp->i_diroff > dp->i_size) {
                entryoffsetinblock = 0;
                dp->i_offset = 0;
@@ -227,9 +227,9 @@ searchloop:
                        if (!(isoflags & 4) == !assoc) {
                                if ((len == 1
                                     && *name == '.')
-                                   || (flags & ISDOTDOT)) {
+                                   || (flags & CNP_ISDOTDOT)) {
                                        if (namelen == 1
-                                           && ep->name[0] == ((flags & ISDOTDOT) ? 1 : 0)) {
+                                           && ep->name[0] == ((flags & CNP_ISDOTDOT) ? 1 : 0)) {
                                                /*
                                                 * Save directory entry's inode number and
                                                 * release directory buffer.
@@ -309,9 +309,9 @@ notfound:
        /*
         * Insert name into cache (as non-existent) if appropriate.
         */
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(vdp, *vpp, cnp);
-       if (nameiop == CREATE || nameiop == RENAME)
+       if (nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME)
                return (EROFS);
        return (ENOENT);
 
@@ -324,7 +324,7 @@ found:
         * If the final component of path name, save information
         * in the cache as to where the entry was found.
         */
-       if ((flags & ISLASTCN) && nameiop == LOOKUP)
+       if ((flags & CNP_ISLASTCN) && nameiop == NAMEI_LOOKUP)
                dp->i_diroff = dp->i_offset;
 
        /*
@@ -351,7 +351,7 @@ found:
         * If ino is different from dp->i_ino,
         * it's a relocated directory.
         */
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(pdp, 0, td); /* race to get the inode */
                error = cd9660_vget_internal(vdp->v_mount, dp->i_ino, &tdp,
                                             dp->i_ino != ino, ep);
@@ -360,14 +360,14 @@ found:
                        vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td);
                        return (error);
                }
-               if (lockparent && (flags & ISLASTCN)) {
+               if (lockparent && (flags & CNP_ISLASTCN)) {
                        if ((error = vn_lock(pdp, LK_EXCLUSIVE, td)) != 0) {
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                                vput(tdp);
                                return (error);
                        }
                } else
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                *vpp = tdp;
        } else if (dp->i_number == dp->i_ino) {
                brelse(bp);
@@ -379,8 +379,8 @@ found:
                brelse(bp);
                if (error)
                        return (error);
-               if (!lockparent || !(flags & ISLASTCN)) {
-                       cnp->cn_flags |= PDIRUNLOCK;
+               if (!lockparent || !(flags & CNP_ISLASTCN)) {
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                        VOP_UNLOCK(pdp, 0, td);
                }
                *vpp = tdp;
@@ -389,7 +389,7 @@ found:
        /*
         * Insert name into cache if appropriate.
         */
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(vdp, *vpp, cnp);
        return (0);
 }
index 48680bd..ea0dcab 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)cd9660_vfsops.c     8.18 (Berkeley) 5/22/95
  * $FreeBSD: src/sys/isofs/cd9660/cd9660_vfsops.c,v 1.74.2.7 2002/04/08 09:39:29 bde Exp $
- * $DragonFly: src/sys/vfs/isofs/cd9660/cd9660_vfsops.c,v 1.10 2003/08/20 09:56:32 rob Exp $
+ * $DragonFly: src/sys/vfs/isofs/cd9660/cd9660_vfsops.c,v 1.11 2003/09/23 05:03:52 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -214,7 +214,7 @@ cd9660_mount(mp, path, data, ndp, td)
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        if ((error = namei(ndp)))
                return (error);
        NDFREE(ndp, NDF_ONLY_PNBUF);
index 481953b..24490ab 100644 (file)
@@ -1,5 +1,5 @@
 /* $FreeBSD: src/sys/msdosfs/msdosfs_lookup.c,v 1.30.2.1 2000/11/03 15:55:39 bp Exp $ */
-/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_lookup.c,v 1.5 2003/08/07 21:17:41 dillon Exp $ */
+/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_lookup.c,v 1.6 2003/09/23 05:03:52 dillon Exp $ */
 /*     $NetBSD: msdosfs_lookup.c,v 1.37 1997/11/17 15:36:54 ws Exp $   */
 
 /*-
@@ -117,7 +117,7 @@ msdosfs_lookup(ap)
        int wincnt = 1;
        int chksum = -1;
        int olddos = 1;
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
 
 #ifdef MSDOSFS_DEBUG
        printf("msdosfs_lookup(): looking for %s\n", cnp->cn_nameptr);
@@ -125,8 +125,8 @@ msdosfs_lookup(ap)
        dp = VTODE(vdp);
        pmp = dp->de_pmp;
        *vpp = NULL;
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT | WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
 #ifdef MSDOSFS_DEBUG
        printf("msdosfs_lookup(): vdp %p, dp %p, Attr %02x\n",
            vdp, dp, dp->de_Attributes);
@@ -181,8 +181,8 @@ msdosfs_lookup(ap)
         * case it doesn't already exist.
         */
        slotcount = wincnt;
-       if ((nameiop == CREATE || nameiop == RENAME) &&
-           (flags & ISLASTCN))
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) &&
+           (flags & CNP_ISLASTCN))
                slotcount = 0;
 
 #ifdef MSDOSFS_DEBUG
@@ -335,8 +335,8 @@ notfound:
        printf("               slotcount %d, slotoffset %d\n",
               slotcount, slotoffset);
 #endif
-       if ((nameiop == CREATE || nameiop == RENAME) &&
-           (flags & ISLASTCN) && dp->de_refcnt != 0) {
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) &&
+           (flags & CNP_ISLASTCN) && dp->de_refcnt != 0) {
                /*
                 * Access for write is interpreted as allowing
                 * creation of files in the directory.
@@ -364,17 +364,17 @@ notfound:
                 * NB - if the directory is unlocked, then this
                 * information cannot be used.
                 */
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (EJUSTRETURN);
        }
        /*
         * Insert name into cache (as non-existent) if appropriate.
         */
-       if ((cnp->cn_flags & MAKEENTRY) && nameiop != CREATE)
+       if ((cnp->cn_flags & CNP_MAKEENTRY) && nameiop != NAMEI_CREATE)
                cache_enter(vdp, *vpp, cnp);
        return (ENOENT);
 
@@ -429,7 +429,7 @@ foundroot:
         * the directory (in ndp->ni_dvp), otherwise we go
         * on and lock the inode, being careful with ".".
         */
-       if (nameiop == DELETE && (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_DELETE && (flags & CNP_ISLASTCN)) {
                /*
                 * Don't allow deleting the root.
                 */
@@ -458,7 +458,7 @@ foundroot:
                *vpp = DETOV(tdp);
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (0);
        }
@@ -469,10 +469,10 @@ foundroot:
         * Must get inode of directory entry to verify it's a
         * regular file, or empty directory.
         */
-       if (nameiop == RENAME && wantparent &&
-           (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_RENAME && wantparent &&
+           (flags & CNP_ISLASTCN)) {
                if (blkoff == MSDOSFSROOT_OFS)
-                       return EROFS;                           /* really? XXX */
+                       return EROFS;                   /* really? XXX */
 
                error = VOP_ACCESS(vdp, VWRITE, cnp->cn_cred, cnp->cn_td);
                if (error)
@@ -488,10 +488,10 @@ foundroot:
                if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0)
                        return (error);
                *vpp = DETOV(tdp);
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (0);
        }
@@ -516,22 +516,22 @@ foundroot:
         * that point backwards in the directory structure.
         */
        pdp = vdp;
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(pdp, 0, td);
-               cnp->cn_flags |= PDIRUNLOCK;
+               cnp->cn_flags |= CNP_PDIRUNLOCK;
                error = deget(pmp, cluster, blkoff,  &tdp);
                if (error) {
                        vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td); 
-                       cnp->cn_flags &= ~PDIRUNLOCK;
+                       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                        return (error);
                }
-               if (lockparent && (flags & ISLASTCN)) {
+               if (lockparent && (flags & CNP_ISLASTCN)) {
                        error = vn_lock(pdp, LK_EXCLUSIVE, td);
                        if (error) {
                                vput(DETOV(tdp));
                                return (error);
                        }
-                       cnp->cn_flags &= ~PDIRUNLOCK;
+                       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                }
                *vpp = DETOV(tdp);
        } else if (dp->de_StartCluster == scn && isadir) {
@@ -540,9 +540,9 @@ foundroot:
        } else {
                if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0)
                        return (error);
-               if (!lockparent || !(flags & ISLASTCN)) {
+               if (!lockparent || !(flags & CNP_ISLASTCN)) {
                        VOP_UNLOCK(pdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                *vpp = DETOV(tdp);
        }
@@ -550,7 +550,7 @@ foundroot:
        /*
         * Insert name into cache if appropriate.
         */
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(vdp, *vpp, cnp);
        return (0);
 }
index 4c48ddc..cf6c9c4 100644 (file)
@@ -1,5 +1,5 @@
 /* $FreeBSD: src/sys/msdosfs/msdosfs_vfsops.c,v 1.60.2.6 2002/09/12 21:33:38 trhodes Exp $ */
-/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_vfsops.c,v 1.8 2003/08/20 09:56:32 rob Exp $ */
+/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_vfsops.c,v 1.9 2003/09/23 05:03:52 dillon Exp $ */
 /*     $NetBSD: msdosfs_vfsops.c,v 1.51 1997/11/17 15:36:58 ws Exp $   */
 
 /*-
@@ -301,7 +301,7 @@ msdosfs_mount(mp, path, data, ndp, td)
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        error = namei(ndp);
        if (error)
                return (error);
index 67e1f8a..f8d27d5 100644 (file)
@@ -1,5 +1,5 @@
 /* $FreeBSD: src/sys/msdosfs/msdosfs_vnops.c,v 1.95.2.4 2003/06/13 15:05:47 trhodes Exp $ */
-/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_vnops.c,v 1.11 2003/08/20 09:56:32 rob Exp $ */
+/* $DragonFly: src/sys/vfs/msdosfs/msdosfs_vnops.c,v 1.12 2003/09/23 05:03:52 dillon Exp $ */
 /*     $NetBSD: msdosfs_vnops.c,v 1.68 1998/02/10 14:10:04 mrg Exp $   */
 
 /*-
@@ -167,7 +167,7 @@ msdosfs_create(ap)
         * readonly.
         */
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("msdosfs_create: no name");
 #endif
        bzero(&ndirent, sizeof(ndirent));
@@ -1020,8 +1020,8 @@ msdosfs_rename(ap)
        pmp = VFSTOMSDOSFS(fdvp->v_mount);
 
 #ifdef DIAGNOSTIC
-       if ((tcnp->cn_flags & HASBUF) == 0 ||
-           (fcnp->cn_flags & HASBUF) == 0)
+       if ((tcnp->cn_flags & CNP_HASBUF) == 0 ||
+           (fcnp->cn_flags & CNP_HASBUF) == 0)
                panic("msdosfs_rename: no name");
 #endif
        /*
@@ -1068,8 +1068,8 @@ abortit:
                 */
                if ((fcnp->cn_namelen == 1 && fcnp->cn_nameptr[0] == '.') ||
                    dp == ip ||
-                   (fcnp->cn_flags & ISDOTDOT) ||
-                   (tcnp->cn_flags & ISDOTDOT) ||
+                   (fcnp->cn_flags & CNP_ISDOTDOT) ||
+                   (tcnp->cn_flags & CNP_ISDOTDOT) ||
                    (ip->de_flag & DE_RENAME)) {
                        VOP_UNLOCK(fvp, 0, td);
                        error = EINVAL;
@@ -1117,7 +1117,7 @@ abortit:
                error = doscheckpath(ip, dp);
                if (error)
                        goto out;
-               if ((tcnp->cn_flags & SAVESTART) == 0)
+               if ((tcnp->cn_flags & CNP_SAVESTART) == 0)
                        panic("msdosfs_rename: lost to startdir");
                error = relookup(tdvp, &tvp, tcnp);
                if (error)
@@ -1166,9 +1166,9 @@ abortit:
         * Since from wasn't locked at various places above,
         * have to do a relookup here.
         */
-       fcnp->cn_flags &= ~MODMASK;
-       fcnp->cn_flags |= LOCKPARENT | LOCKLEAF;
-       if ((fcnp->cn_flags & SAVESTART) == 0)
+       fcnp->cn_flags &= ~CNP_MODMASK;
+       fcnp->cn_flags |= CNP_LOCKPARENT | CNP_LOCKLEAF;
+       if ((fcnp->cn_flags & CNP_SAVESTART) == 0)
                panic("msdosfs_rename: lost from startdir");
        if (!newparent)
                VOP_UNLOCK(tdvp, 0, td);
@@ -1417,7 +1417,7 @@ msdosfs_mkdir(ap)
         * directory.
         */
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("msdosfs_mkdir: no name");
 #endif
        error = uniqdosname(pdep, cnp, ndirent.de_Name);
index 657f85a..4a44726 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)nfs_serv.c  8.8 (Berkeley) 7/31/95
  * $FreeBSD: src/sys/nfs/nfs_serv.c,v 1.93.2.6 2002/12/29 18:19:53 dillon Exp $
- * $DragonFly: src/sys/vfs/nfs/nfs_serv.c,v 1.8 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/nfs/nfs_serv.c,v 1.9 2003/09/23 05:03:53 dillon Exp $
  */
 
 /*
@@ -484,8 +484,8 @@ nfsrv_lookup(nfsd, slp, td, mrq)
        pubflag = nfs_ispublicfh(fhp);
 
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = LOOKUP;
-       nd.ni_cnd.cn_flags = LOCKLEAF | SAVESTART;
+       nd.ni_cnd.cn_nameiop = NAMEI_LOOKUP;
+       nd.ni_cnd.cn_flags = CNP_LOCKLEAF | CNP_SAVESTART;
        error = nfs_namei(&nd, fhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), pubflag);
 
@@ -1629,8 +1629,8 @@ nfsrv_create(nfsd, slp, td, mrq)
        nfsm_srvnamesiz(len);
 
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = CREATE;
-       nd.ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF | SAVESTART;
+       nd.ni_cnd.cn_nameiop = NAMEI_CREATE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF | CNP_SAVESTART;
 
        /*
         * Call namei and do initial cleanup to get a few things
@@ -1779,8 +1779,8 @@ nfsrv_create(nfsd, slp, td, mrq)
                         * Even though LOCKPARENT was cleared, ni_dvp may
                         * be garbage. 
                         */
-                       nd.ni_cnd.cn_nameiop = LOOKUP;
-                       nd.ni_cnd.cn_flags &= ~(LOCKPARENT);
+                       nd.ni_cnd.cn_nameiop = NAMEI_LOOKUP;
+                       nd.ni_cnd.cn_flags &= ~(CNP_LOCKPARENT);
                        nd.ni_cnd.cn_td = td;
                        nd.ni_cnd.cn_cred = cred;
 
@@ -1792,7 +1792,7 @@ nfsrv_create(nfsd, slp, td, mrq)
                                /* fall through on certain errors */
                        }
                        nfsrv_object_create(nd.ni_vp);
-                       if (nd.ni_cnd.cn_flags & ISSYMLINK) {
+                       if (nd.ni_cnd.cn_flags & CNP_ISSYMLINK) {
                                error = EINVAL;
                                goto nfsmreply0;
                        }
@@ -1802,7 +1802,7 @@ nfsrv_create(nfsd, slp, td, mrq)
        } else {
                if (vap->va_size != -1) {
                        error = nfsrv_access(nd.ni_vp, VWRITE, cred,
-                           (nd.ni_cnd.cn_flags & RDONLY), td, 0);
+                           (nd.ni_cnd.cn_flags & CNP_RDONLY), td, 0);
                        if (!error) {
                                nqsrv_getl(nd.ni_vp, ND_WRITE);
                                tempsize = vap->va_size;
@@ -1905,8 +1905,8 @@ nfsrv_mknod(nfsd, slp, td, mrq)
        nfsm_srvnamesiz(len);
 
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = CREATE;
-       nd.ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF | SAVESTART;
+       nd.ni_cnd.cn_nameiop = NAMEI_CREATE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF | CNP_SAVESTART;
 
        /*
         * Handle nfs_namei() call.  If an error occurs, the nd structure
@@ -1976,8 +1976,8 @@ nfsrv_mknod(nfsd, slp, td, mrq)
                nd.ni_dvp = NULL;
 
                KKASSERT(td->td_proc);
-               nd.ni_cnd.cn_nameiop = LOOKUP;
-               nd.ni_cnd.cn_flags &= ~(LOCKPARENT);
+               nd.ni_cnd.cn_nameiop = NAMEI_LOOKUP;
+               nd.ni_cnd.cn_flags &= ~(CNP_LOCKPARENT);
                nd.ni_cnd.cn_td = td;
                nd.ni_cnd.cn_cred = td->td_proc->p_ucred;
 
@@ -1986,7 +1986,7 @@ nfsrv_mknod(nfsd, slp, td, mrq)
 
                if (error)
                        goto out;
-               if (nd.ni_cnd.cn_flags & ISSYMLINK)
+               if (nd.ni_cnd.cn_flags & CNP_ISSYMLINK)
                        error = EINVAL;
        }
 
@@ -2084,8 +2084,8 @@ nfsrv_remove(nfsd, slp, td, mrq)
        nfsm_srvnamesiz(len);
 
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = DELETE;
-       nd.ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF;
+       nd.ni_cnd.cn_nameiop = NAMEI_DELETE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF;
        error = nfs_namei(&nd, fhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (dirp) {
@@ -2192,8 +2192,8 @@ nfsrv_rename(nfsd, slp, td, mrq)
         */
        saved_uid = cred->cr_uid;
        fromnd.ni_cnd.cn_cred = cred;
-       fromnd.ni_cnd.cn_nameiop = DELETE;
-       fromnd.ni_cnd.cn_flags = WANTPARENT | SAVESTART;
+       fromnd.ni_cnd.cn_nameiop = NAMEI_DELETE;
+       fromnd.ni_cnd.cn_flags = CNP_WANTPARENT | CNP_SAVESTART;
        error = nfs_namei(&fromnd, ffhp, len, slp, nam, &md,
                &dpos, &fdirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (fdirp) {
@@ -2216,8 +2216,9 @@ nfsrv_rename(nfsd, slp, td, mrq)
        nfsm_strsiz(len2, NFS_MAXNAMLEN);
        cred->cr_uid = saved_uid;
        tond.ni_cnd.cn_cred = cred;
-       tond.ni_cnd.cn_nameiop = RENAME;
-       tond.ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF | NOCACHE | SAVESTART;
+       tond.ni_cnd.cn_nameiop = NAMEI_RENAME;
+       tond.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF | 
+               CNP_NOCACHE | CNP_SAVESTART;
        error = nfs_namei(&tond, tfhp, len2, slp, nam, &md,
                &dpos, &tdirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (tdirp) {
@@ -2304,8 +2305,8 @@ out:
                tond.ni_dvp = NULL;
                tond.ni_vp = NULL;
                if (error) {
-                       fromnd.ni_cnd.cn_flags &= ~HASBUF;
-                       tond.ni_cnd.cn_flags &= ~HASBUF;
+                       fromnd.ni_cnd.cn_flags &= ~CNP_HASBUF;
+                       tond.ni_cnd.cn_flags &= ~CNP_HASBUF;
                }
        } else {
                if (error == -1)
@@ -2412,8 +2413,8 @@ nfsrv_link(nfsd, slp, td, mrq)
                goto out1;
        }
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = CREATE;
-       nd.ni_cnd.cn_flags = LOCKPARENT;
+       nd.ni_cnd.cn_nameiop = NAMEI_CREATE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT;
        error = nfs_namei(&nd, dfhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (dirp) {
@@ -2512,8 +2513,8 @@ nfsrv_symlink(nfsd, slp, td, mrq)
        nfsm_srvmtofh(fhp);
        nfsm_srvnamesiz(len);
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = CREATE;
-       nd.ni_cnd.cn_flags = LOCKPARENT | SAVESTART;
+       nd.ni_cnd.cn_nameiop = NAMEI_CREATE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_SAVESTART;
        error = nfs_namei(&nd, fhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (dirp) {
@@ -2580,9 +2581,9 @@ nfsrv_symlink(nfsd, slp, td, mrq)
                 * since LOCKPARENT is not set, ni_dvp will be garbage on
                 * return whether an error occurs or not.
                 */
-               nd.ni_cnd.cn_nameiop = LOOKUP;
-               nd.ni_cnd.cn_flags &= ~(LOCKPARENT | FOLLOW);
-               nd.ni_cnd.cn_flags |= (NOFOLLOW | LOCKLEAF);
+               nd.ni_cnd.cn_nameiop = NAMEI_LOOKUP;
+               nd.ni_cnd.cn_flags &= ~(CNP_LOCKPARENT | CNP_FOLLOW);
+               nd.ni_cnd.cn_flags |= (CNP_NOFOLLOW | CNP_LOCKLEAF);
                nd.ni_cnd.cn_td = td;
                nd.ni_cnd.cn_cred = cred;
 
@@ -2688,8 +2689,8 @@ nfsrv_mkdir(nfsd, slp, td, mrq)
        nfsm_srvmtofh(fhp);
        nfsm_srvnamesiz(len);
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = CREATE;
-       nd.ni_cnd.cn_flags = LOCKPARENT;
+       nd.ni_cnd.cn_nameiop = NAMEI_CREATE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT;
 
        error = nfs_namei(&nd, fhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
@@ -2821,8 +2822,8 @@ nfsrv_rmdir(nfsd, slp, td, mrq)
        nfsm_srvmtofh(fhp);
        nfsm_srvnamesiz(len);
        nd.ni_cnd.cn_cred = cred;
-       nd.ni_cnd.cn_nameiop = DELETE;
-       nd.ni_cnd.cn_flags = LOCKPARENT | LOCKLEAF;
+       nd.ni_cnd.cn_nameiop = NAMEI_DELETE;
+       nd.ni_cnd.cn_flags = CNP_LOCKPARENT | CNP_LOCKLEAF;
        error = nfs_namei(&nd, fhp, len, slp, nam, &md, &dpos,
                &dirp, td, (nfsd->nd_flag & ND_KERBAUTH), FALSE);
        if (dirp) {
index 09b160a..6677aad 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)nfs_subs.c  8.8 (Berkeley) 5/22/95
  * $FreeBSD: src/sys/nfs/nfs_subs.c,v 1.90.2.2 2001/10/25 19:18:53 dillon Exp $
- * $DragonFly: src/sys/vfs/nfs/nfs_subs.c,v 1.8 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/nfs/nfs_subs.c,v 1.9 2003/09/23 05:03:53 dillon Exp $
  */
 
 /*
@@ -1540,7 +1540,7 @@ nfs_namei(ndp, fhp, len, slp, nam, mdp, dposp, retdirp, td, kerbflag, pubflag)
        }
 
        if (rdonly)
-               cnp->cn_flags |= RDONLY;
+               cnp->cn_flags |= CNP_RDONLY;
 
        /*
         * Set return directory.  Reference to dp is implicitly transfered 
@@ -1607,7 +1607,7 @@ nfs_namei(ndp, fhp, len, slp, nam, mdp, dposp, retdirp, td, kerbflag, pubflag)
                if (cnp->cn_pnbuf[0] == '/')
                        dp = rootvnode;
        } else {
-               cnp->cn_flags |= NOCROSSMOUNT;
+               cnp->cn_flags |= CNP_NOCROSSMOUNT;
        }
 
        /*
@@ -1638,10 +1638,10 @@ nfs_namei(ndp, fhp, len, slp, nam, mdp, dposp, retdirp, td, kerbflag, pubflag)
                 * Note: zfree is safe because error is 0, so we will
                 * not zfree it again when we break.
                 */
-               if ((cnp->cn_flags & ISSYMLINK) == 0) {
+               if ((cnp->cn_flags & CNP_ISSYMLINK) == 0) {
                        nfsrv_object_create(ndp->ni_vp);
-                       if (cnp->cn_flags & (SAVENAME | SAVESTART))
-                               cnp->cn_flags |= HASBUF;
+                       if (cnp->cn_flags & (CNP_SAVENAME | CNP_SAVESTART))
+                               cnp->cn_flags |= CNP_HASBUF;
                        else
                                zfree(namei_zone, cnp->cn_pnbuf);
                        break;
@@ -1650,7 +1650,7 @@ nfs_namei(ndp, fhp, len, slp, nam, mdp, dposp, retdirp, td, kerbflag, pubflag)
                /*
                 * Validate symlink
                 */
-               if ((cnp->cn_flags & LOCKPARENT) && ndp->ni_pathlen == 1)
+               if ((cnp->cn_flags & CNP_LOCKPARENT) && ndp->ni_pathlen == 1)
                        VOP_UNLOCK(ndp->ni_dvp, 0, td);
                if (!pubflag) {
                        error = EINVAL;
@@ -1735,8 +1735,8 @@ out:
                ndp->ni_vp = NULL;
                ndp->ni_dvp = NULL;
                ndp->ni_startdir = NULL;
-               cnp->cn_flags &= ~HASBUF;
-       } else if ((ndp->ni_cnd.cn_flags & (WANTPARENT|LOCKPARENT)) == 0) {
+               cnp->cn_flags &= ~CNP_HASBUF;
+       } else if ((ndp->ni_cnd.cn_flags & (CNP_WANTPARENT|CNP_LOCKPARENT)) == 0) {
                ndp->ni_dvp = NULL;
        }
        return (error);
index 095c044..f360a16 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)nfs_syscalls.c      8.5 (Berkeley) 3/30/95
  * $FreeBSD: src/sys/nfs/nfs_syscalls.c,v 1.58.2.1 2000/11/26 02:30:06 dillon Exp $
- * $DragonFly: src/sys/vfs/nfs/nfs_syscalls.c,v 1.10 2003/09/03 14:30:57 hmp Exp $
+ * $DragonFly: src/sys/vfs/nfs/nfs_syscalls.c,v 1.11 2003/09/23 05:03:53 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -169,8 +169,8 @@ nfssvc(struct nfssvc_args *uap)
                error = copyin(uap->argp, (caddr_t)&ncd, sizeof (ncd));
                if (error)
                        return (error);
-               NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE,
-                       ncd.ncd_dirp, td);
+               NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW | CNP_LOCKLEAF,
+                       UIO_USERSPACE, ncd.ncd_dirp, td);
                error = namei(&nd);
                if (error)
                        return (error);
index 3dbc1af..f75ddfe 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)nfs_vnops.c 8.16 (Berkeley) 5/27/95
  * $FreeBSD: src/sys/nfs/nfs_vnops.c,v 1.150.2.5 2001/12/20 19:56:28 dillon Exp $
- * $DragonFly: src/sys/vfs/nfs/nfs_vnops.c,v 1.11 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/nfs/nfs_vnops.c,v 1.12 2003/09/23 05:03:53 dillon Exp $
  */
 
 
@@ -838,13 +838,13 @@ nfs_lookup(ap)
        struct thread *td = cnp->cn_td;
 
        *vpp = NULLVP;
-       if ((flags & ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME))
+       if ((flags & CNP_ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME))
                return (EROFS);
        if (dvp->v_type != VDIR)
                return (ENOTDIR);
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT|CNP_WANTPARENT);
        nmp = VFSTONFS(dvp->v_mount);
        np = VTONFS(dvp);
        if ((error = cache_lookup(dvp, vpp, cnp)) && error != ENOENT) {
@@ -865,14 +865,14 @@ nfs_lookup(ap)
                if (dvp == newvp) {
                        VREF(newvp);
                        error = 0;
-               } else if (flags & ISDOTDOT) {
+               } else if (flags & CNP_ISDOTDOT) {
                        VOP_UNLOCK(dvp, 0, td);
                        error = vget(newvp, LK_EXCLUSIVE, td);
-                       if (!error && lockparent && (flags & ISLASTCN))
+                       if (!error && lockparent && (flags & CNP_ISLASTCN))
                                error = vn_lock(dvp, LK_EXCLUSIVE, td);
                } else {
                        error = vget(newvp, LK_EXCLUSIVE, td);
-                       if (!lockparent || error || !(flags & ISLASTCN))
+                       if (!lockparent || error || !(flags & CNP_ISLASTCN))
                                VOP_UNLOCK(dvp, 0, td);
                }
                if (!error) {
@@ -880,15 +880,15 @@ nfs_lookup(ap)
                           if (!VOP_GETATTR(newvp, &vattr, td)
                            && vattr.va_ctime.tv_sec == VTONFS(newvp)->n_ctime) {
                                nfsstats.lookupcache_hits++;
-                               if (cnp->cn_nameiop != LOOKUP &&
-                                   (flags & ISLASTCN))
-                                       cnp->cn_flags |= SAVENAME;
+                               if (cnp->cn_nameiop != NAMEI_LOOKUP &&
+                                   (flags & CNP_ISLASTCN))
+                                       cnp->cn_flags |= CNP_SAVENAME;
                                return (0);
                           }
                           cache_purge(newvp);
                        }
                        vput(newvp);
-                       if (lockparent && dvp != newvp && (flags & ISLASTCN))
+                       if (lockparent && dvp != newvp && (flags & CNP_ISLASTCN))
                                VOP_UNLOCK(dvp, 0, td);
                }
                error = vn_lock(dvp, LK_EXCLUSIVE, td);
@@ -916,7 +916,7 @@ nfs_lookup(ap)
        /*
         * Handle RENAME case...
         */
-       if (cnp->cn_nameiop == RENAME && wantparent && (flags & ISLASTCN)) {
+       if (cnp->cn_nameiop == NAMEI_RENAME && wantparent && (flags & CNP_ISLASTCN)) {
                if (NFS_CMPFH(np, fhp, fhsize)) {
                        m_freem(mrep);
                        return (EISDIR);
@@ -934,13 +934,13 @@ nfs_lookup(ap)
                        nfsm_loadattr(newvp, (struct vattr *)0);
                *vpp = newvp;
                m_freem(mrep);
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent)
                        VOP_UNLOCK(dvp, 0, td);
                return (0);
        }
 
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(dvp, 0, td);
                error = nfs_nget(dvp->v_mount, fhp, fhsize, &np);
                if (error) {
@@ -948,7 +948,7 @@ nfs_lookup(ap)
                        return (error);
                }
                newvp = NFSTOV(np);
-               if (lockparent && (flags & ISLASTCN) &&
+               if (lockparent && (flags & CNP_ISLASTCN) &&
                    (error = vn_lock(dvp, LK_EXCLUSIVE, td))) {
                        vput(newvp);
                        return (error);
@@ -962,7 +962,7 @@ nfs_lookup(ap)
                        m_freem(mrep);
                        return (error);
                }
-               if (!lockparent || !(flags & ISLASTCN))
+               if (!lockparent || !(flags & CNP_ISLASTCN))
                        VOP_UNLOCK(dvp, 0, td);
                newvp = NFSTOV(np);
        }
@@ -971,10 +971,10 @@ nfs_lookup(ap)
                nfsm_postop_attr(dvp, attrflag);
        } else
                nfsm_loadattr(newvp, (struct vattr *)0);
-       if (cnp->cn_nameiop != LOOKUP && (flags & ISLASTCN))
-               cnp->cn_flags |= SAVENAME;
-       if ((cnp->cn_flags & MAKEENTRY) &&
-           (cnp->cn_nameiop != DELETE || !(flags & ISLASTCN))) {
+       if (cnp->cn_nameiop != NAMEI_LOOKUP && (flags & CNP_ISLASTCN))
+               cnp->cn_flags |= CNP_SAVENAME;
+       if ((cnp->cn_flags & CNP_MAKEENTRY) &&
+           (cnp->cn_nameiop != NAMEI_DELETE || !(flags & CNP_ISLASTCN))) {
                np->n_ctime = np->n_vattr.va_ctime.tv_sec;
                cache_enter(dvp, newvp, cnp);
        }
@@ -985,8 +985,8 @@ nfs_lookup(ap)
                        vrele(newvp);
                        *vpp = NULLVP;
                }
-               if ((cnp->cn_nameiop == CREATE || cnp->cn_nameiop == RENAME) &&
-                   (flags & ISLASTCN) && error == ENOENT) {
+               if ((cnp->cn_nameiop == NAMEI_CREATE || cnp->cn_nameiop == NAMEI_RENAME) &&
+                   (flags & CNP_ISLASTCN) && error == ENOENT) {
                        if (!lockparent)
                                VOP_UNLOCK(dvp, 0, td);
                        if (dvp->v_mount->mnt_flag & MNT_RDONLY)
@@ -994,8 +994,8 @@ nfs_lookup(ap)
                        else
                                error = EJUSTRETURN;
                }
-               if (cnp->cn_nameiop != LOOKUP && (flags & ISLASTCN))
-                       cnp->cn_flags |= SAVENAME;
+               if (cnp->cn_nameiop != NAMEI_LOOKUP && (flags & CNP_ISLASTCN))
+                       cnp->cn_flags |= CNP_SAVENAME;
        }
        return (error);
 }
@@ -1328,7 +1328,7 @@ nfs_mknodrpc(dvp, vpp, cnp, vap)
                if (newvp)
                        vput(newvp);
        } else {
-               if (cnp->cn_flags & MAKEENTRY)
+               if (cnp->cn_flags & CNP_MAKEENTRY)
                        cache_enter(dvp, newvp, cnp);
                *vpp = newvp;
        }
@@ -1465,7 +1465,7 @@ again:
                error = nfs_setattrrpc(newvp, vap, cnp->cn_cred, cnp->cn_td);
        }
        if (!error) {
-               if (cnp->cn_flags & MAKEENTRY)
+               if (cnp->cn_flags & CNP_MAKEENTRY)
                        cache_enter(dvp, newvp, cnp);
                *ap->a_vpp = newvp;
        }
@@ -1503,7 +1503,7 @@ nfs_remove(ap)
        struct vattr vattr;
 
 #ifndef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("nfs_remove: no name");
        if (vp->v_usecount < 1)
                panic("nfs_remove: bad v_usecount");
@@ -1612,8 +1612,8 @@ nfs_rename(ap)
        int error;
 
 #ifndef DIAGNOSTIC
-       if ((tcnp->cn_flags & HASBUF) == 0 ||
-           (fcnp->cn_flags & HASBUF) == 0)
+       if ((tcnp->cn_flags & CNP_HASBUF) == 0 ||
+           (fcnp->cn_flags & CNP_HASBUF) == 0)
                panic("nfs_rename: no name");
 #endif
        /* Check for cross-device rename */
index e16ce90..1189f28 100644 (file)
@@ -26,7 +26,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/ntfs/ntfs_vfsops.c,v 1.20.2.5 2001/12/25 01:44:45 dillon Exp $
- * $DragonFly: src/sys/vfs/ntfs/ntfs_vfsops.c,v 1.9 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/ntfs/ntfs_vfsops.c,v 1.10 2003/09/23 05:03:53 dillon Exp $
  */
 
 
@@ -312,7 +312,7 @@ ntfs_mount (
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        err = namei(ndp);
        if (err) {
                /* can't get devvp!*/
index 0dc151f..352f68c 100644 (file)
@@ -36,7 +36,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/ntfs/ntfs_vnops.c,v 1.9.2.4 2002/08/06 19:35:18 semenu Exp $
- * $DragonFly: src/sys/vfs/ntfs/ntfs_vnops.c,v 1.7 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/ntfs/ntfs_vnops.c,v 1.8 2003/09/23 05:03:53 dillon Exp $
  *
  */
 
@@ -742,9 +742,9 @@ ntfs_lookup(ap)
        struct componentname *cnp = ap->a_cnp;
        struct ucred *cred = cnp->cn_cred;
        int error;
-       int lockparent = cnp->cn_flags & LOCKPARENT;
+       int lockparent = cnp->cn_flags & CNP_LOCKPARENT;
 #if NTFS_DEBUG
-       int wantparent = cnp->cn_flags & (LOCKPARENT|WANTPARENT);
+       int wantparent = cnp->cn_flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
 #endif
        dprintf(("ntfs_lookup: \"%.*s\" (%ld bytes) in %d, lp: %d, wp: %d \n",
                (int)cnp->cn_namelen, cnp->cn_nameptr, cnp->cn_namelen,
@@ -754,9 +754,9 @@ ntfs_lookup(ap)
        if(error)
                return (error);
 
-       if ((cnp->cn_flags & ISLASTCN) &&
+       if ((cnp->cn_flags & CNP_ISLASTCN) &&
            (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME))
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME))
                return (EROFS);
 
 #ifdef __NetBSD__
@@ -779,7 +779,7 @@ ntfs_lookup(ap)
                VREF(dvp);
                *ap->a_vpp = dvp;
                error = 0;
-       } else if (cnp->cn_flags & ISDOTDOT) {
+       } else if (cnp->cn_flags & CNP_ISDOTDOT) {
                struct ntvattr *vap;
 
                dprintf(("ntfs_lookup: faking .. directory in %d\n",
@@ -790,7 +790,7 @@ ntfs_lookup(ap)
                        return (error);
 
                VOP__UNLOCK(dvp,0,cnp->cn_td);
-               cnp->cn_flags |= PDIRUNLOCK;
+               cnp->cn_flags |= CNP_PDIRUNLOCK;
 
                dprintf(("ntfs_lookup: parentdir: %d\n",
                         vap->va_a_name->n_pnumber));
@@ -799,17 +799,17 @@ ntfs_lookup(ap)
                ntfs_ntvattrrele(vap);
                if (error) {
                        if (VN_LOCK(dvp,LK_EXCLUSIVE|LK_RETRY,cnp->cn_td)==0)
-                               cnp->cn_flags &= ~PDIRUNLOCK;
+                               cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                        return (error);
                }
 
-               if (lockparent && (cnp->cn_flags & ISLASTCN)) {
+               if (lockparent && (cnp->cn_flags & CNP_ISLASTCN)) {
                        error = VN_LOCK(dvp, LK_EXCLUSIVE, cnp->cn_td);
                        if (error) {
                                vput( *(ap->a_vpp) );
                                return (error);
                        }
-                       cnp->cn_flags &= ~PDIRUNLOCK;
+                       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                }
        } else {
                error = ntfs_ntlookupfile(ntmp, dvp, cnp, ap->a_vpp);
@@ -821,11 +821,11 @@ ntfs_lookup(ap)
                dprintf(("ntfs_lookup: found ino: %d\n", 
                        VTONT(*ap->a_vpp)->i_number));
 
-               if(!lockparent || !(cnp->cn_flags & ISLASTCN))
+               if(!lockparent || !(cnp->cn_flags & CNP_ISLASTCN))
                        VOP__UNLOCK(dvp, 0, cnp->cn_td);
        }
 
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(dvp, *ap->a_vpp, cnp);
 
        return (error);
index 7c6a4bf..7e0e728 100644 (file)
@@ -37,7 +37,7 @@
  *
  * @(#)lofs_vfsops.c   1.2 (Berkeley) 6/18/92
  * $FreeBSD: src/sys/miscfs/nullfs/null_vfsops.c,v 1.35.2.3 2001/07/26 20:37:11 iedowse Exp $
- * $DragonFly: src/sys/vfs/nullfs/null_vfsops.c,v 1.5 2003/08/07 21:17:43 dillon Exp $
+ * $DragonFly: src/sys/vfs/nullfs/null_vfsops.c,v 1.6 2003/09/23 05:03:53 dillon Exp $
  */
 
 /*
@@ -124,7 +124,7 @@ nullfs_mount(mp, path, data, ndp, td)
        /*
         * Find lower node
         */
-       NDINIT(ndp, LOOKUP, FOLLOW|WANTPARENT|LOCKLEAF,
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW | CNP_WANTPARENT | CNP_LOCKLEAF,
                UIO_USERSPACE, args.target, td);
        error = namei(ndp);
        /*
index 50a707a..382c13b 100644 (file)
@@ -38,7 +38,7 @@
  * Ancestors:
  *     @(#)lofs_vnops.c        1.2 (Berkeley) 6/18/92
  * $FreeBSD: src/sys/miscfs/nullfs/null_vnops.c,v 1.38.2.6 2002/07/31 00:32:28 semenu Exp $
- * $DragonFly: src/sys/vfs/nullfs/null_vnops.c,v 1.6 2003/08/07 21:17:43 dillon Exp $
+ * $DragonFly: src/sys/vfs/nullfs/null_vnops.c,v 1.7 2003/09/23 05:03:53 dillon Exp $
  *     ...and...
  *     @(#)null_vnodeops.c 1.20 92/07/07 UCLA Ficus project
  *
@@ -368,8 +368,8 @@ null_lookup(ap)
        struct vnode *vp, *ldvp, *lvp;
        int error;
 
-       if ((flags & ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME))
+       if ((flags & CNP_ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME))
                return (EROFS);
        /*
         * Although it is possible to call null_bypass(), we'll do
@@ -378,16 +378,16 @@ null_lookup(ap)
        ldvp = NULLVPTOLOWERVP(dvp);
        vp = lvp = NULL;
        error = VOP_LOOKUP(ldvp, &lvp, cnp);
-       if (error == EJUSTRETURN && (flags & ISLASTCN) &&
+       if (error == EJUSTRETURN && (flags & CNP_ISLASTCN) &&
            (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == CREATE || cnp->cn_nameiop == RENAME))
+           (cnp->cn_nameiop == NAMEI_CREATE || cnp->cn_nameiop == NAMEI_RENAME))
                error = EROFS;
 
        /*
         * Rely only on the PDIRUNLOCK flag which should be carefully
         * tracked by underlying filesystem.
         */
-       if (cnp->cn_flags & PDIRUNLOCK)
+       if (cnp->cn_flags & CNP_PDIRUNLOCK)
                VOP_UNLOCK(dvp, LK_THISLAYER, td);
        if ((error == 0 || error == EJUSTRETURN) && lvp != NULL) {
                if (ldvp == lvp) {
index ae26ed7..49def03 100644 (file)
@@ -30,7 +30,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/nwfs/nwfs_vnops.c,v 1.6.2.3 2001/03/14 11:26:59 bp Exp $
- * $DragonFly: src/sys/vfs/nwfs/nwfs_vnops.c,v 1.7 2003/08/07 21:54:36 dillon Exp $
+ * $DragonFly: src/sys/vfs/nwfs/nwfs_vnops.c,v 1.8 2003/09/23 05:03:53 dillon Exp $
  */
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -466,7 +466,7 @@ nwfs_create(ap)
                        np->opened = 0;
                        *vpp = vp;
                }
-               if (cnp->cn_flags & MAKEENTRY)
+               if (cnp->cn_flags & CNP_MAKEENTRY)
                        cache_enter(dvp, vp, cnp);
        }
        return (error);
@@ -920,7 +920,7 @@ nwfs_lookup(ap)
        
        if (dvp->v_type != VDIR)
                return (ENOTDIR);
-       if ((flags & ISDOTDOT) && (dvp->v_flag & VROOT)) {
+       if ((flags & CNP_ISDOTDOT) && (dvp->v_flag & VROOT)) {
                printf("nwfs_lookup: invalid '..'\n");
                return EIO;
        }
@@ -928,20 +928,20 @@ nwfs_lookup(ap)
        NCPVNDEBUG("%d '%s' in '%s' id=d\n", nameiop, _name, 
                VTONW(dvp)->n_name/*, VTONW(dvp)->n_name*/);
 
-       islastcn = flags & ISLASTCN;
-       if (islastcn && (mp->mnt_flag & MNT_RDONLY) && (nameiop != LOOKUP))
+       islastcn = flags & CNP_ISLASTCN;
+       if (islastcn && (mp->mnt_flag & MNT_RDONLY) && (nameiop != NAMEI_LOOKUP))
                return (EROFS);
        if ((error = VOP_ACCESS(dvp, VEXEC, cnp->cn_cred, td)))
                return (error);
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
        nmp = VFSTONWFS(mp);
        dnp = VTONW(dvp);
 /*
-printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDOT);
+printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & CNP_ISDOTDOT);
 */
        error = ncp_pathcheck(cnp->cn_nameptr, cnp->cn_namelen, &nmp->m.nls, 
-           (nameiop == CREATE || nameiop == RENAME) && (nmp->m.nls.opt & NWHP_NOSTRICT) == 0);
+           (nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) && (nmp->m.nls.opt & NWHP_NOSTRICT) == 0);
        if (error) 
            return ENOENT;
 
@@ -959,7 +959,7 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                        vref(vp);
                        error = 0;
                        NCPVNDEBUG("cached '.'");
-               } else if (flags & ISDOTDOT) {
+               } else if (flags & CNP_ISDOTDOT) {
                        VOP_UNLOCK(dvp, 0, td); /* unlock parent */
                        error = vget(vp, LK_EXCLUSIVE, td);
                        if (!error && lockparent && islastcn)
@@ -973,8 +973,8 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                        if (vpid == vp->v_id) {
                           if (!VOP_GETATTR(vp, &vattr, td)
                            && vattr.va_ctime.tv_sec == VTONW(vp)->n_ctime) {
-                               if (nameiop != LOOKUP && islastcn)
-                                       cnp->cn_flags |= SAVENAME;
+                               if (nameiop != NAMEI_LOOKUP && islastcn)
+                                       cnp->cn_flags |= CNP_SAVENAME;
                                NCPVNDEBUG("use cached vnode");
                                return (0);
                           }
@@ -993,7 +993,7 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
        error = 0;
        *vpp = NULLVP;
        fap = NULL;
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                if (NWCMPF(&dnp->n_parent, &nmp->n_rootent)) {
                        fid = nmp->n_rootent;
                        fap = NULL;
@@ -1024,8 +1024,8 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                return (notfound);      /* hard error */
        if (notfound) { /* entry not found */
                /* Handle RENAME or CREATE case... */
-               if ((nameiop == CREATE || nameiop == RENAME) && wantparent && islastcn) {
-                       cnp->cn_flags |= SAVENAME;
+               if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) && wantparent && islastcn) {
+                       cnp->cn_flags |= CNP_SAVENAME;
                        if (!lockparent)
                                VOP_UNLOCK(dvp, 0, td);
                        return (EJUSTRETURN);
@@ -1035,7 +1035,7 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                NCPVNDEBUG("Found entry %s with id=%d\n", fap->entryName, fap->dirEntNum);
        }*/
        /* handle DELETE case ... */
-       if (nameiop == DELETE && islastcn) {    /* delete last component */
+       if (nameiop == NAMEI_DELETE && islastcn) {      /* delete last component */
                error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, cnp->cn_td);
                if (error) return (error);
                if (NWCMPF(&dnp->n_fid, &fid)) {        /* we found ourselfs */
@@ -1046,23 +1046,23 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                error = nwfs_nget(mp, fid, fap, dvp, &vp);
                if (error) return (error);
                *vpp = vp;
-               cnp->cn_flags |= SAVENAME;      /* I free it later */
+               cnp->cn_flags |= CNP_SAVENAME;  /* I free it later */
                if (!lockparent) VOP_UNLOCK(dvp,0,td);
                return (0);
        }
-       if (nameiop == RENAME && islastcn && wantparent) {
+       if (nameiop == NAMEI_RENAME && islastcn && wantparent) {
                error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, cnp->cn_td);
                if (error) return (error);
                if (NWCMPF(&dnp->n_fid, &fid)) return EISDIR;
                error = nwfs_nget(mp, fid, fap, dvp, &vp);
                if (error) return (error);
                *vpp = vp;
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent)
                        VOP_UNLOCK(dvp,0,td);
                return (0);
        }
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(dvp, 0, td);         /* race to get the inode */
                error = nwfs_nget(mp, fid, NULL, NULL, &vp);
                if (error) {
@@ -1086,7 +1086,7 @@ printf("dvp %d:%d:%d\n", (int)mp, (int)dvp->v_flag & VROOT, (int)flags & ISDOTDO
                if (!lockparent || !islastcn)
                        VOP_UNLOCK(dvp, 0, td);
        }
-       if ((cnp->cn_flags & MAKEENTRY)/* && !islastcn*/) {
+       if ((cnp->cn_flags & CNP_MAKEENTRY)/* && !islastcn*/) {
                VTONW(*vpp)->n_ctime = VTONW(*vpp)->n_vattr.va_ctime.tv_sec;
                cache_enter(dvp, *vpp, cnp);
        }
index 0d757e6..399f5e1 100644 (file)
@@ -36,7 +36,7 @@
  *     @(#)portal_vnops.c      8.14 (Berkeley) 5/21/95
  *
  * $FreeBSD: src/sys/miscfs/portal/portal_vnops.c,v 1.38 1999/12/21 06:29:00 chris Exp $
- * $DragonFly: src/sys/vfs/portal/portal_vnops.c,v 1.7 2003/08/20 09:56:33 rob Exp $
+ * $DragonFly: src/sys/vfs/portal/portal_vnops.c,v 1.8 2003/09/23 05:03:53 dillon Exp $
  */
 
 /*
@@ -120,7 +120,7 @@ portal_lookup(ap)
 
        *vpp = NULLVP;
 
-       if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)
+       if (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME)
                return (EROFS);
 
        if (cnp->cn_namelen == 1 && *pname == '.') {
index 032a566..8189db9 100644 (file)
@@ -37,7 +37,7 @@
  *     @(#)procfs_vnops.c      8.18 (Berkeley) 5/21/95
  *
  * $FreeBSD: src/sys/miscfs/procfs/procfs_vnops.c,v 1.76.2.7 2002/01/22 17:22:59 nectar Exp $
- * $DragonFly: src/sys/vfs/procfs/procfs_vnops.c,v 1.9 2003/09/01 01:14:55 hmp Exp $
+ * $DragonFly: src/sys/vfs/procfs/procfs_vnops.c,v 1.10 2003/09/23 05:03:53 dillon Exp $
  */
 
 /*
@@ -711,7 +711,7 @@ procfs_lookup(ap)
 
        *vpp = NULL;
 
-       if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)
+       if (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME)
                return (EROFS);
 
        if (cnp->cn_namelen == 1 && *pname == '.') {
@@ -724,7 +724,7 @@ procfs_lookup(ap)
        pfs = VTOPFS(dvp);
        switch (pfs->pfs_type) {
        case Proot:
-               if (cnp->cn_flags & ISDOTDOT)
+               if (cnp->cn_flags & CNP_ISDOTDOT)
                        return (EIO);
 
                if (CNEQ(cnp, "curproc", 7))
@@ -745,7 +745,7 @@ procfs_lookup(ap)
                return (procfs_allocvp(dvp->v_mount, vpp, pid, Pproc));
 
        case Pproc:
-               if (cnp->cn_flags & ISDOTDOT)
+               if (cnp->cn_flags & CNP_ISDOTDOT)
                        return (procfs_root(dvp->v_mount, vpp));
 
                p = PFIND(pfs->pfs_pid);
@@ -771,7 +771,7 @@ procfs_lookup(ap)
                return (ENOTDIR);
        }
 
-       return (cnp->cn_nameiop == LOOKUP ? ENOENT : EROFS);
+       return (cnp->cn_nameiop == NAMEI_LOOKUP ? ENOENT : EROFS);
 }
 
 /*
index 67ae575..0767941 100644 (file)
@@ -30,7 +30,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/fs/smbfs/smbfs_vnops.c,v 1.2.2.8 2003/04/04 08:57:23 tjr Exp $
- * $DragonFly: src/sys/vfs/smbfs/smbfs_vnops.c,v 1.7 2003/08/07 21:54:36 dillon Exp $
+ * $DragonFly: src/sys/vfs/smbfs/smbfs_vnops.c,v 1.8 2003/09/23 05:03:53 dillon Exp $
  */
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -550,7 +550,7 @@ smbfs_create(ap)
        if (error)
                return error;
        *vpp = vp;
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(dvp, vp, cnp);
        return error;
 }
@@ -1079,7 +1079,7 @@ smbfs_pathcheck(struct smbmount *smp, const char *name, int nmlen, int nameiop)
        const char *cp;
        int i, error;
 
-       if (nameiop == LOOKUP)
+       if (nameiop == NAMEI_LOOKUP)
                return 0;
        error = ENOENT;
        if (SMB_DIALECT(SSTOVC(smp->sm_share)) < SMB_DIALECT_LANMAN2_0) {
@@ -1135,10 +1135,10 @@ smbfs_lookup(ap)
        int lockparent, wantparent, error, islastcn, isdot;
        
        SMBVDEBUG("\n");
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
        if (dvp->v_type != VDIR)
                return ENOTDIR;
-       if ((flags & ISDOTDOT) && (dvp->v_flag & VROOT)) {
+       if ((flags & CNP_ISDOTDOT) && (dvp->v_flag & VROOT)) {
                SMBFSERR("invalid '..'\n");
                return EIO;
        }
@@ -1154,13 +1154,13 @@ smbfs_lookup(ap)
                *cp = c;
        }
 #endif
-       islastcn = flags & ISLASTCN;
-       if (islastcn && (mp->mnt_flag & MNT_RDONLY) && (nameiop != LOOKUP))
+       islastcn = flags & CNP_ISLASTCN;
+       if (islastcn && (mp->mnt_flag & MNT_RDONLY) && (nameiop != NAMEI_LOOKUP))
                return EROFS;
        if ((error = VOP_ACCESS(dvp, VEXEC, cnp->cn_cred, td)) != 0)
                return error;
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT | CNP_WANTPARENT);
        smp = VFSTOSMBFS(mp);
        dnp = VTOSMB(dvp);
        isdot = (nmlen == 1 && name[0] == '.');
@@ -1184,28 +1184,28 @@ smbfs_lookup(ap)
                        vref(vp);
                        error = 0;
                        SMBVDEBUG("cached '.'\n");
-               } else if (flags & ISDOTDOT) {
+               } else if (flags & CNP_ISDOTDOT) {
                        VOP_UNLOCK(dvp, 0, td); /* unlock parent */
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                        error = vget(vp, LK_EXCLUSIVE, td);
                        if (!error && lockparent && islastcn) {
                                error = vn_lock(dvp, LK_EXCLUSIVE, td);
                                if (error == 0)
-                                       cnp->cn_flags &= ~PDIRUNLOCK;
+                                       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                        }
                } else {
                        error = vget(vp, LK_EXCLUSIVE, td);
                        if (!lockparent || error || !islastcn) {
                                VOP_UNLOCK(dvp, 0, td);
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                        }
                }
                if (!error) {
                        if (vpid == vp->v_id) {
                           if (!VOP_GETATTR(vp, &vattr, td)
                        /*    && vattr.va_ctime.tv_sec == VTOSMB(vp)->n_ctime*/) {
-                               if (nameiop != LOOKUP && islastcn)
-                                       cnp->cn_flags |= SAVENAME;
+                               if (nameiop != NAMEI_LOOKUP && islastcn)
+                                       cnp->cn_flags |= CNP_SAVENAME;
                                SMBVDEBUG("use cached vnode\n");
                                return (0);
                           }
@@ -1218,10 +1218,10 @@ smbfs_lookup(ap)
                error = vn_lock(dvp, LK_EXCLUSIVE, td);
                *vpp = NULLVP;
                if (error) {
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                        return (error);
                }
-               cnp->cn_flags &= ~PDIRUNLOCK;
+               cnp->cn_flags &= ~CNP_PDIRUNLOCK;
        }
        /* 
         * entry is not in the cache or has been expired
@@ -1230,7 +1230,7 @@ smbfs_lookup(ap)
        *vpp = NULLVP;
        smb_makescred(&scred, td, cnp->cn_cred);
        fap = &fattr;
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                error = smbfs_smb_lookup(VTOSMB(dnp->n_parent), NULL, 0, fap,
                    &scred);
                SMBVDEBUG("result of dotdot lookup: %d\n", error);
@@ -1246,14 +1246,14 @@ smbfs_lookup(ap)
                /*
                 * Handle RENAME or CREATE case...
                 */
-               if ((nameiop == CREATE || nameiop == RENAME) && wantparent && islastcn) {
+               if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) && wantparent && islastcn) {
                        error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, td);
                        if (error)
                                return error;
-                       cnp->cn_flags |= SAVENAME;
+                       cnp->cn_flags |= CNP_SAVENAME;
                        if (!lockparent) {
                                VOP_UNLOCK(dvp, 0, td);
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                        }
                        return (EJUSTRETURN);
                }
@@ -1264,7 +1264,7 @@ smbfs_lookup(ap)
        /*
         * handle DELETE case ...
         */
-       if (nameiop == DELETE && islastcn) {    /* delete last component */
+       if (nameiop == NAMEI_DELETE && islastcn) {      /* delete last component */
                error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, td);
                if (error)
                        return error;
@@ -1277,14 +1277,14 @@ smbfs_lookup(ap)
                if (error)
                        return error;
                *vpp = vp;
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(dvp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return 0;
        }
-       if (nameiop == RENAME && islastcn && wantparent) {
+       if (nameiop == NAMEI_RENAME && islastcn && wantparent) {
                error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, td);
                if (error)
                        return error;
@@ -1294,14 +1294,14 @@ smbfs_lookup(ap)
                if (error)
                        return error;
                *vpp = vp;
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(dvp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return 0;
        }
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(dvp, 0, td);
                error = smbfs_nget(mp, dvp, name, nmlen, NULL, &vp);
                if (error) {
@@ -1311,7 +1311,7 @@ smbfs_lookup(ap)
                if (lockparent && islastcn) {
                        error = vn_lock(dvp, LK_EXCLUSIVE, td);
                        if (error) {
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                                vput(vp);
                                return error;
                        }
@@ -1328,10 +1328,10 @@ smbfs_lookup(ap)
                SMBVDEBUG("lookup: getnewvp!\n");
                if (!lockparent || !islastcn) {
                        VOP_UNLOCK(dvp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
        }
-       if ((cnp->cn_flags & MAKEENTRY)/* && !islastcn*/) {
+       if ((cnp->cn_flags & CNP_MAKEENTRY)/* && !islastcn*/) {
 /*             VTOSMB(*vpp)->n_ctime = VTOSMB(*vpp)->n_vattr.va_ctime.tv_sec;*/
                cache_enter(dvp, *vpp, cnp);
        }
index 76a82e3..263820b 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     @(#)ffs_vfsops.c        8.31 (Berkeley) 5/20/95
  * $FreeBSD: src/sys/ufs/ffs/ffs_vfsops.c,v 1.117.2.10 2002/06/23 22:34:52 iedowse Exp $
- * $DragonFly: src/sys/vfs/ufs/ffs_vfsops.c,v 1.11 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/ufs/ffs_vfsops.c,v 1.12 2003/09/23 05:03:53 dillon Exp $
  */
 
 #include "opt_quota.h"
@@ -283,7 +283,7 @@ ffs_mount( mp, path, data, ndp, td)
         * Not an update, or updating the name: look up the name
         * and verify that it refers to a sensible block device.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, args.fspec, td);
        err = namei(ndp);
        if (err) {
                /* can't get devvp!*/
index f9cd8df..7cbccf2 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)ufs_lookup.c        8.15 (Berkeley) 6/16/95
  * $FreeBSD: src/sys/ufs/ufs/ufs_lookup.c,v 1.33.2.7 2001/09/22 19:22:13 iedowse Exp $
- * $DragonFly: src/sys/vfs/ufs/ufs_lookup.c,v 1.6 2003/08/07 21:17:44 dillon Exp $
+ * $DragonFly: src/sys/vfs/ufs/ufs_lookup.c,v 1.7 2003/09/23 05:03:53 dillon Exp $
  */
 
 #include "opt_ufs.h"
@@ -158,7 +158,7 @@ ufs_lookup(ap)
 
        bp = NULL;
        slotoffset = -1;
-       cnp->cn_flags &= ~PDIRUNLOCK;
+       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
 /*
  *  XXX there was a soft-update diff about this I couldn't merge.
  * I think this was the equiv.
@@ -167,8 +167,8 @@ ufs_lookup(ap)
 
        vdp = ap->a_dvp;
        dp = VTOI(vdp);
-       lockparent = flags & LOCKPARENT;
-       wantparent = flags & (LOCKPARENT|WANTPARENT);
+       lockparent = flags & CNP_LOCKPARENT;
+       wantparent = flags & (CNP_LOCKPARENT|CNP_WANTPARENT);
 
        /*
         * We now have a segment name to search for, and a directory to search.
@@ -180,8 +180,8 @@ ufs_lookup(ap)
         */
        slotstatus = FOUND;
        slotfreespace = slotsize = slotneeded = 0;
-       if ((nameiop == CREATE || nameiop == RENAME) &&
-           (flags & ISLASTCN)) {
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME) &&
+           (flags & CNP_ISLASTCN)) {
                slotstatus = NONE;
                slotneeded = DIRECTSIZ(cnp->cn_namelen);
        }
@@ -211,7 +211,7 @@ ufs_lookup(ap)
                numdirpasses = 1;
                entryoffsetinblock = 0; /* silence compiler warning */
                switch (ufsdirhash_lookup(dp, cnp->cn_nameptr, cnp->cn_namelen,
-                   &dp->i_offset, &bp, nameiop == DELETE ? &prevoff : NULL)) {
+                   &dp->i_offset, &bp, nameiop == NAMEI_DELETE ? &prevoff : NULL)) {
                case 0:
                        ep = (struct direct *)((char *)bp->b_data +
                            (dp->i_offset & bmask));
@@ -236,7 +236,7 @@ ufs_lookup(ap)
         * profiling time and hence has been removed in the interest
         * of simplicity.
         */
-       if (nameiop != LOOKUP || dp->i_diroff == 0 ||
+       if (nameiop != NAMEI_LOOKUP || dp->i_diroff == 0 ||
            dp->i_diroff >= dp->i_size) {
                entryoffsetinblock = 0;
                dp->i_offset = 0;
@@ -356,7 +356,7 @@ foundentry:
                                        slotsize = ep->d_reclen;
                                        dp->i_reclen = slotsize;
                                        enduseful = dp->i_size;
-                                       ap->a_cnp->cn_flags |= ISWHITEOUT;
+                                       ap->a_cnp->cn_flags |= CNP_ISWHITEOUT;
                                        numdirpasses--;
                                        goto notfound;
                                }
@@ -389,11 +389,11 @@ notfound:
         * directory has not been removed, then can consider
         * allowing file to be created.
         */
-       if ((nameiop == CREATE || nameiop == RENAME ||
-            (nameiop == DELETE &&
-             (ap->a_cnp->cn_flags & DOWHITEOUT) &&
-             (ap->a_cnp->cn_flags & ISWHITEOUT))) &&
-           (flags & ISLASTCN) && dp->i_effnlink != 0) {
+       if ((nameiop == NAMEI_CREATE || nameiop == NAMEI_RENAME ||
+            (nameiop == NAMEI_DELETE &&
+             (ap->a_cnp->cn_flags & CNP_DOWHITEOUT) &&
+             (ap->a_cnp->cn_flags & CNP_ISWHITEOUT))) &&
+           (flags & CNP_ISLASTCN) && dp->i_effnlink != 0) {
                /*
                 * Access for write is interpreted as allowing
                 * creation of files in the directory.
@@ -414,7 +414,7 @@ notfound:
                        dp->i_offset = roundup2(dp->i_size, DIRBLKSIZ);
                        dp->i_count = 0;
                        enduseful = dp->i_offset;
-               } else if (nameiop == DELETE) {
+               } else if (nameiop == NAMEI_DELETE) {
                        dp->i_offset = slotoffset;
                        if ((dp->i_offset & (DIRBLKSIZ - 1)) == 0)
                                dp->i_count = 0;
@@ -441,17 +441,17 @@ notfound:
                 * NB - if the directory is unlocked, then this
                 * information cannot be used.
                 */
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (EJUSTRETURN);
        }
        /*
         * Insert name into cache (as non-existent) if appropriate.
         */
-       if ((cnp->cn_flags & MAKEENTRY) && nameiop != CREATE)
+       if ((cnp->cn_flags & CNP_MAKEENTRY) && nameiop != NAMEI_CREATE)
                cache_enter(vdp, *vpp, cnp);
        return (ENOENT);
 
@@ -474,7 +474,7 @@ found:
         * If the final component of path name, save information
         * in the cache as to where the entry was found.
         */
-       if ((flags & ISLASTCN) && nameiop == LOOKUP)
+       if ((flags & CNP_ISLASTCN) && nameiop == NAMEI_LOOKUP)
                dp->i_diroff = dp->i_offset &~ (DIRBLKSIZ - 1);
 
        /*
@@ -484,7 +484,7 @@ found:
         * the directory (in ndp->ni_dvp), otherwise we go
         * on and lock the inode, being careful with ".".
         */
-       if (nameiop == DELETE && (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_DELETE && (flags & CNP_ISLASTCN)) {
                /*
                 * Write access to directory required to delete files.
                 */
@@ -506,12 +506,12 @@ found:
                        *vpp = vdp;
                        return (0);
                }
-               if (flags & ISDOTDOT)
+               if (flags & CNP_ISDOTDOT)
                        VOP_UNLOCK(vdp, 0, td); /* race to get the inode */
                error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp);
-               if (flags & ISDOTDOT) {
+               if (flags & CNP_ISDOTDOT) {
                        if (vn_lock(vdp, LK_EXCLUSIVE | LK_RETRY, td) != 0)
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                if (error)
                        return (error);
@@ -531,7 +531,7 @@ found:
                *vpp = tdp;
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (0);
        }
@@ -542,7 +542,7 @@ found:
         * Must get inode of directory entry to verify it's a
         * regular file, or empty directory.
         */
-       if (nameiop == RENAME && wantparent && (flags & ISLASTCN)) {
+       if (nameiop == NAMEI_RENAME && wantparent && (flags & CNP_ISLASTCN)) {
                if ((error = VOP_ACCESS(vdp, VWRITE, cred, cnp->cn_td)) != 0)
                        return (error);
                /*
@@ -551,20 +551,20 @@ found:
                 */
                if (dp->i_number == dp->i_ino)
                        return (EISDIR);
-               if (flags & ISDOTDOT)
+               if (flags & CNP_ISDOTDOT)
                        VOP_UNLOCK(vdp, 0, td); /* race to get the inode */
                error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp);
-               if (flags & ISDOTDOT) {
+               if (flags & CNP_ISDOTDOT) {
                        if (vn_lock(vdp, LK_EXCLUSIVE | LK_RETRY, td) != 0)
-                               cnp->cn_flags |= PDIRUNLOCK;
+                               cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                if (error)
                        return (error);
                *vpp = tdp;
-               cnp->cn_flags |= SAVENAME;
+               cnp->cn_flags |= CNP_SAVENAME;
                if (!lockparent) {
                        VOP_UNLOCK(vdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                return (0);
        }
@@ -589,20 +589,20 @@ found:
         * that point backwards in the directory structure.
         */
        pdp = vdp;
-       if (flags & ISDOTDOT) {
+       if (flags & CNP_ISDOTDOT) {
                VOP_UNLOCK(pdp, 0, td); /* race to get the inode */
-               cnp->cn_flags |= PDIRUNLOCK;
+               cnp->cn_flags |= CNP_PDIRUNLOCK;
                if ((error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp)) != 0) {
                        if (vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td) == 0)
-                               cnp->cn_flags &= ~PDIRUNLOCK;
+                               cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                        return (error);
                }
-               if (lockparent && (flags & ISLASTCN)) {
+               if (lockparent && (flags & CNP_ISLASTCN)) {
                        if ((error = vn_lock(pdp, LK_EXCLUSIVE, td)) != 0) {
                                vput(tdp);
                                return (error);
                        }
-                       cnp->cn_flags &= ~PDIRUNLOCK;
+                       cnp->cn_flags &= ~CNP_PDIRUNLOCK;
                }
                *vpp = tdp;
        } else if (dp->i_number == dp->i_ino) {
@@ -612,9 +612,9 @@ found:
                error = VFS_VGET(vdp->v_mount, dp->i_ino, &tdp);
                if (error)
                        return (error);
-               if (!lockparent || !(flags & ISLASTCN)) {
+               if (!lockparent || !(flags & CNP_ISLASTCN)) {
                        VOP_UNLOCK(pdp, 0, td);
-                       cnp->cn_flags |= PDIRUNLOCK;
+                       cnp->cn_flags |= CNP_PDIRUNLOCK;
                }
                *vpp = tdp;
        }
@@ -622,7 +622,7 @@ found:
        /*
         * Insert name into cache if appropriate.
         */
-       if (cnp->cn_flags & MAKEENTRY)
+       if (cnp->cn_flags & CNP_MAKEENTRY)
                cache_enter(vdp, *vpp, cnp);
        return (0);
 }
@@ -702,7 +702,7 @@ ufs_makedirentry(ip, cnp, newdirp)
 {
 
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & SAVENAME) == 0)
+       if ((cnp->cn_flags & CNP_SAVENAME) == 0)
                panic("ufs_makedirentry: missing name");
 #endif
        newdirp->d_ino = ip->i_number;
@@ -983,7 +983,7 @@ ufs_dirremove(dvp, ip, flags, isrmdir)
 
        dp = VTOI(dvp);
 
-       if (flags & DOWHITEOUT) {
+       if (flags & CNP_DOWHITEOUT) {
                /*
                 * Whiteout entry: set d_ino to WINO.
                 */
@@ -1043,7 +1043,7 @@ out:
                        ip->i_nlink--;
                        ip->i_flag |= IN_CHANGE;
                }
-               if (flags & DOWHITEOUT)
+               if (flags & CNP_DOWHITEOUT)
                        error = VOP_BWRITE(bp->b_vp, bp);
                else if (DOINGASYNC(dvp) && dp->i_count != 0) {
                        bdwrite(bp);
index 3eea7ae..fafcc94 100644 (file)
@@ -35,7 +35,7 @@
  *
  *     @(#)ufs_quota.c 8.5 (Berkeley) 5/20/95
  * $FreeBSD: src/sys/ufs/ufs/ufs_quota.c,v 1.27.2.3 2002/01/15 10:33:32 phk Exp $
- * $DragonFly: src/sys/vfs/ufs/ufs_quota.c,v 1.10 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/ufs/ufs_quota.c,v 1.11 2003/09/23 05:03:53 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -402,7 +402,7 @@ quotaon(td, mp, type, fname)
        cred = td->td_proc->p_ucred;
 
        vpp = &ump->um_quotas[type];
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, fname, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, fname, td);
        error = vn_open(&nd, FREAD|FWRITE, 0);
        if (error)
                return (error);
index 4eeb6dc..a72b09b 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
  * $FreeBSD: src/sys/ufs/ufs/ufs_vnops.c,v 1.131.2.8 2003/01/02 17:26:19 bde Exp $
- * $DragonFly: src/sys/vfs/ufs/ufs_vnops.c,v 1.9 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/ufs/ufs_vnops.c,v 1.10 2003/09/23 05:03:53 dillon Exp $
  */
 
 #include "opt_quota.h"
@@ -740,7 +740,7 @@ ufs_link(ap)
        int error;
 
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_link: no name");
 #endif
        if (tdvp->v_mount != vp->v_mount) {
@@ -803,16 +803,16 @@ ufs_whiteout(ap)
        int error = 0;
 
        switch (ap->a_flags) {
-       case LOOKUP:
+       case NAMEI_LOOKUP:
                /* 4.4 format directories support whiteout operations */
                if (dvp->v_mount->mnt_maxsymlinklen > 0)
                        return (0);
                return (EOPNOTSUPP);
 
-       case CREATE:
+       case NAMEI_CREATE:
                /* create a new directory whiteout */
 #ifdef DIAGNOSTIC
-               if ((cnp->cn_flags & SAVENAME) == 0)
+               if ((cnp->cn_flags & CNP_SAVENAME) == 0)
                        panic("ufs_whiteout: missing name");
                if (dvp->v_mount->mnt_maxsymlinklen <= 0)
                        panic("ufs_whiteout: old format filesystem");
@@ -825,14 +825,14 @@ ufs_whiteout(ap)
                error = ufs_direnter(dvp, NULL, &newdir, cnp, NULL);
                break;
 
-       case DELETE:
+       case NAMEI_DELETE:
                /* remove an existing directory whiteout */
 #ifdef DIAGNOSTIC
                if (dvp->v_mount->mnt_maxsymlinklen <= 0)
                        panic("ufs_whiteout: old format filesystem");
 #endif
 
-               cnp->cn_flags &= ~DOWHITEOUT;
+               cnp->cn_flags &= ~CNP_DOWHITEOUT;
                error = ufs_dirremove(dvp, NULL, cnp->cn_flags, 0);
                break;
        default:
@@ -889,8 +889,8 @@ ufs_rename(ap)
        int error = 0, ioflag;
 
 #ifdef DIAGNOSTIC
-       if ((tcnp->cn_flags & HASBUF) == 0 ||
-           (fcnp->cn_flags & HASBUF) == 0)
+       if ((tcnp->cn_flags & CNP_HASBUF) == 0 ||
+           (fcnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_rename: no name");
 #endif
        /*
@@ -947,7 +947,7 @@ abortit:
                 * Avoid ".", "..", and aliases of "." for obvious reasons.
                 */
                if ((fcnp->cn_namelen == 1 && fcnp->cn_nameptr[0] == '.') ||
-                   dp == ip || (fcnp->cn_flags | tcnp->cn_flags) & ISDOTDOT ||
+                   dp == ip || (fcnp->cn_flags | tcnp->cn_flags) & CNP_ISDOTDOT ||
                    (ip->i_flag & IN_RENAME)) {
                        VOP_UNLOCK(fvp, 0, td);
                        error = EINVAL;
@@ -1008,7 +1008,7 @@ abortit:
                error = ufs_checkpath(ip, dp, tcnp->cn_cred);
                if (error)
                        goto out;
-               if ((tcnp->cn_flags & SAVESTART) == 0)
+               if ((tcnp->cn_flags & CNP_SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
                VREF(tdvp);
                error = relookup(tdvp, &tvp, tcnp);
@@ -1153,9 +1153,9 @@ abortit:
        /*
         * 3) Unlink the source.
         */
-       fcnp->cn_flags &= ~MODMASK;
-       fcnp->cn_flags |= LOCKPARENT | LOCKLEAF;
-       if ((fcnp->cn_flags & SAVESTART) == 0)
+       fcnp->cn_flags &= ~CNP_MODMASK;
+       fcnp->cn_flags |= CNP_LOCKPARENT | CNP_LOCKLEAF;
+       if ((fcnp->cn_flags & CNP_SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
        VREF(fdvp);
        error = relookup(fdvp, &fvp, fcnp);
@@ -1252,7 +1252,7 @@ ufs_mkdir(ap)
        long blkoff;
 
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_mkdir: no name");
 #endif
        dp = VTOI(dvp);
@@ -1335,7 +1335,7 @@ ufs_mkdir(ap)
        ip->i_nlink = 2;
        if (DOINGSOFTDEP(tvp))
                softdep_change_linkcnt(ip);
-       if (cnp->cn_flags & ISWHITEOUT)
+       if (cnp->cn_flags & CNP_ISWHITEOUT)
                ip->i_flags |= UF_OPAQUE;
 
        /*
@@ -2054,7 +2054,7 @@ ufs_makeinode(mode, dvp, vpp, cnp)
 
        pdir = VTOI(dvp);
 #ifdef DIAGNOSTIC
-       if ((cnp->cn_flags & HASBUF) == 0)
+       if ((cnp->cn_flags & CNP_HASBUF) == 0)
                panic("ufs_makeinode: no name");
 #endif
        *vpp = NULL;
@@ -2133,7 +2133,7 @@ ufs_makeinode(mode, dvp, vpp, cnp)
                ip->i_mode &= ~ISGID;
        }
 
-       if (cnp->cn_flags & ISWHITEOUT)
+       if (cnp->cn_flags & CNP_ISWHITEOUT)
                ip->i_flags |= UF_OPAQUE;
 
        /*
index 398ac83..ef2385a 100644 (file)
@@ -36,7 +36,7 @@
  *     @(#)umap_vfsops.c       8.8 (Berkeley) 5/14/95
  *
  * $FreeBSD: src/sys/miscfs/umapfs/umap_vfsops.c,v 1.31.2.2 2001/09/11 09:49:53 kris Exp $
- * $DragonFly: src/sys/vfs/umapfs/Attic/umap_vfsops.c,v 1.7 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/umapfs/Attic/umap_vfsops.c,v 1.8 2003/09/23 05:03:54 dillon Exp $
  */
 
 /*
@@ -125,7 +125,7 @@ umapfs_mount(struct mount *mp, char *path, caddr_t data,
        /*
         * Find lower node
         */
-       NDINIT(ndp, LOOKUP, FOLLOW|WANTPARENT|LOCKLEAF,
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW | CNP_WANTPARENT | CNP_LOCKLEAF,
                UIO_USERSPACE, args.target, td);
        error = namei(ndp);
        if (error)
index ca53bbf..9cc6a40 100644 (file)
@@ -36,7 +36,7 @@
  *
  *     @(#)union_subr.c        8.20 (Berkeley) 5/20/95
  * $FreeBSD: src/sys/miscfs/union/union_subr.c,v 1.43.2.2 2001/12/25 01:44:45 dillon Exp $
- * $DragonFly: src/sys/vfs/union/union_subr.c,v 1.7 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/union/union_subr.c,v 1.8 2003/09/23 05:03:54 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -848,8 +848,9 @@ union_relookup(um, dvp, vpp, cnp, cn, path, pathlen)
        bcopy(path, cn->cn_pnbuf, cn->cn_namelen);
        cn->cn_pnbuf[cn->cn_namelen] = '\0';
 
-       cn->cn_nameiop = CREATE;
-       cn->cn_flags = (LOCKPARENT|LOCKLEAF|HASBUF|SAVENAME|ISLASTCN);
+       cn->cn_nameiop = NAMEI_CREATE;
+       cn->cn_flags = (CNP_LOCKPARENT | CNP_LOCKLEAF | CNP_HASBUF |
+                       CNP_SAVENAME | CNP_ISLASTCN);
        cn->cn_td = cnp->cn_td;
        if (um->um_op == UNMNT_ABOVE)
                cn->cn_cred = cnp->cn_cred;
@@ -913,9 +914,9 @@ union_mkshadow(um, dvp, cnp, vpp)
                return (error);
 
        if (*vpp) {
-               if (cn.cn_flags & HASBUF) {
+               if (cn.cn_flags & CNP_HASBUF) {
                        zfree(namei_zone, cn.cn_pnbuf);
-                       cn.cn_flags &= ~HASBUF;
+                       cn.cn_flags &= ~CNP_HASBUF;
                }
                if (dvp == *vpp)
                        vrele(*vpp);
@@ -941,9 +942,9 @@ union_mkshadow(um, dvp, cnp, vpp)
        VOP_LEASE(dvp, td, cn.cn_cred, LEASE_WRITE);
 
        error = VOP_MKDIR(dvp, vpp, &cn, &va);
-       if (cn.cn_flags & HASBUF) {
+       if (cn.cn_flags & CNP_HASBUF) {
                zfree(namei_zone, cn.cn_pnbuf);
-               cn.cn_flags &= ~HASBUF;
+               cn.cn_flags &= ~CNP_HASBUF;
        }
        /*vput(dvp);*/
        return (error);
@@ -979,9 +980,9 @@ union_mkwhiteout(um, dvp, cnp, path)
                return (error);
 
        if (wvp) {
-               if (cn.cn_flags & HASBUF) {
+               if (cn.cn_flags & CNP_HASBUF) {
                        zfree(namei_zone, cn.cn_pnbuf);
-                       cn.cn_flags &= ~HASBUF;
+                       cn.cn_flags &= ~CNP_HASBUF;
                }
                if (wvp == dvp)
                        vrele(wvp);
@@ -993,10 +994,10 @@ union_mkwhiteout(um, dvp, cnp, path)
        /* VOP_LEASE: dvp is locked */
        VOP_LEASE(dvp, td, cred, LEASE_WRITE);
 
-       error = VOP_WHITEOUT(dvp, &cn, CREATE);
-       if (cn.cn_flags & HASBUF) {
+       error = VOP_WHITEOUT(dvp, &cn, NAMEI_CREATE);
+       if (cn.cn_flags & CNP_HASBUF) {
                zfree(namei_zone, cn.cn_pnbuf);
-               cn.cn_flags &= ~HASBUF;
+               cn.cn_flags &= ~CNP_HASBUF;
        }
        return (error);
 }
@@ -1048,8 +1049,9 @@ union_vn_create(vpp, un, td)
        cn.cn_namelen = strlen(un->un_path);
        cn.cn_pnbuf = zalloc(namei_zone);
        bcopy(un->un_path, cn.cn_pnbuf, cn.cn_namelen+1);
-       cn.cn_nameiop = CREATE;
-       cn.cn_flags = (LOCKPARENT|LOCKLEAF|HASBUF|SAVENAME|ISLASTCN);
+       cn.cn_nameiop = NAMEI_CREATE;
+       cn.cn_flags = (CNP_LOCKPARENT | CNP_LOCKLEAF | CNP_HASBUF |
+                       CNP_SAVENAME | CNP_ISLASTCN);
        cn.cn_td = td;
        cn.cn_cred = cred;
        cn.cn_nameptr = cn.cn_pnbuf;
@@ -1071,9 +1073,9 @@ union_vn_create(vpp, un, td)
         */
        if (vp) {
                vput(un->un_dirvp);
-               if (cn.cn_flags & HASBUF) {
+               if (cn.cn_flags & CNP_HASBUF) {
                        zfree(namei_zone, cn.cn_pnbuf);
-                       cn.cn_flags &= ~HASBUF;
+                       cn.cn_flags &= ~CNP_HASBUF;
                }
                if (vp == un->un_dirvp)
                        vrele(vp);
@@ -1097,9 +1099,9 @@ union_vn_create(vpp, un, td)
        vap->va_mode = cmode;
        VOP_LEASE(un->un_dirvp, td, cred, LEASE_WRITE);
        error = VOP_CREATE(un->un_dirvp, &vp, &cn, vap);
-       if (cn.cn_flags & HASBUF) {
+       if (cn.cn_flags & CNP_HASBUF) {
                zfree(namei_zone, cn.cn_pnbuf);
-               cn.cn_flags &= ~HASBUF;
+               cn.cn_flags &= ~CNP_HASBUF;
        }
        vput(un->un_dirvp);
        if (error)
index 8cc8db8..52707a0 100644 (file)
@@ -36,7 +36,7 @@
  *
  *     @(#)union_vfsops.c      8.20 (Berkeley) 5/20/95
  * $FreeBSD: src/sys/miscfs/union/union_vfsops.c,v 1.39.2.2 2001/10/25 19:18:53 dillon Exp $
- * $DragonFly: src/sys/vfs/union/union_vfsops.c,v 1.5 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/union/union_vfsops.c,v 1.6 2003/09/23 05:03:54 dillon Exp $
  */
 
 /*
@@ -136,7 +136,8 @@ union_mount(mp, path, data, ndp, td)
         * Obtain upper vnode by calling namei() on the path.  The
         * upperrootvp will be turned referenced but not locked.
         */
-       NDINIT(ndp, LOOKUP, FOLLOW|WANTPARENT, UIO_USERSPACE, args.target, td);
+       NDINIT(ndp, NAMEI_LOOKUP, CNP_FOLLOW | CNP_WANTPARENT,
+               UIO_USERSPACE, args.target, td);
 
        error = namei(ndp);
 
@@ -221,7 +222,7 @@ union_mount(mp, path, data, ndp, td)
         * supports whiteout operations
         */
        if ((mp->mnt_flag & MNT_RDONLY) == 0) {
-               error = VOP_WHITEOUT(um->um_uppervp, NULL, LOOKUP);
+               error = VOP_WHITEOUT(um->um_uppervp, NULL, NAMEI_LOOKUP);
                if (error)
                        goto bad;
        }
index 7994f16..430c075 100644 (file)
@@ -36,7 +36,7 @@
  *
  *     @(#)union_vnops.c       8.32 (Berkeley) 6/23/95
  * $FreeBSD: src/sys/miscfs/union/union_vnops.c,v 1.72 1999/12/15 23:02:14 eivind Exp $
- * $DragonFly: src/sys/vfs/union/union_vnops.c,v 1.7 2003/08/20 09:56:34 rob Exp $
+ * $DragonFly: src/sys/vfs/union/union_vnops.c,v 1.8 2003/09/23 05:03:54 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -190,7 +190,7 @@ union_lookup1(udvp, pdvp, vpp, cnp)
         * lookup would do by stepping back down the mount
         * hierarchy.
         */
-       if (cnp->cn_flags & ISDOTDOT) {
+       if (cnp->cn_flags & CNP_ISDOTDOT) {
                while ((dvp != udvp) && (dvp->v_flag & VROOT)) {
                        /*
                         * Don't do the NOCROSSMOUNT check
@@ -232,7 +232,7 @@ union_lookup1(udvp, pdvp, vpp, cnp)
         */
        UDEBUG(("parentdir %p result %p flag %lx\n", dvp, tdvp, cnp->cn_flags));
 
-       if (dvp != tdvp && (cnp->cn_flags & ISLASTCN) == 0)
+       if (dvp != tdvp && (cnp->cn_flags & CNP_ISLASTCN) == 0)
                vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY, td);
 
        /*
@@ -293,7 +293,7 @@ union_lookup(ap)
        struct union_node *dun = VTOUNION(dvp); /* associated union node */
        struct componentname *cnp = ap->a_cnp;
        struct thread *td = cnp->cn_td;
-       int lockparent = cnp->cn_flags & LOCKPARENT;
+       int lockparent = cnp->cn_flags & CNP_LOCKPARENT;
        struct union_mount *um = MOUNTTOUNIONMOUNT(dvp->v_mount);
        struct ucred *saved_cred = NULL;
        int iswhiteout;
@@ -304,16 +304,16 @@ union_lookup(ap)
        /*
         * Disallow write attemps to the filesystem mounted read-only.
         */
-       if ((cnp->cn_flags & ISLASTCN) && 
+       if ((cnp->cn_flags & CNP_ISLASTCN) && 
            (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-           (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)) {
+           (cnp->cn_nameiop == NAMEI_DELETE || cnp->cn_nameiop == NAMEI_RENAME)) {
                return (EROFS);
        }
 
        /*
         * For any lookup's we do, always return with the parent locked
         */
-       cnp->cn_flags |= LOCKPARENT;
+       cnp->cn_flags |= CNP_LOCKPARENT;
 
        lowerdvp = dun->un_lowervp;
        uppervp = NULLVP;
@@ -372,9 +372,9 @@ union_lookup(ap)
                /*
                 * Disallow write attemps to the filesystem mounted read-only.
                 */
-               if (uerror == EJUSTRETURN && (cnp->cn_flags & ISLASTCN) &&
+               if (uerror == EJUSTRETURN && (cnp->cn_flags & CNP_ISLASTCN) &&
                    (dvp->v_mount->mnt_flag & MNT_RDONLY) &&
-                   (cnp->cn_nameiop == CREATE || cnp->cn_nameiop == RENAME)) {
+                   (cnp->cn_nameiop == NAMEI_CREATE || cnp->cn_nameiop == NAMEI_RENAME)) {
                        error = EROFS;
                        goto out;
                }
@@ -398,7 +398,7 @@ union_lookup(ap)
                 */
 
                if (uerror == ENOENT || uerror == EJUSTRETURN) {
-                       if (cnp->cn_flags & ISWHITEOUT) {
+                       if (cnp->cn_flags & CNP_ISWHITEOUT) {
                                iswhiteout = 1;
                        } else if (lowerdvp != NULLVP) {
                                int terror;
@@ -428,7 +428,7 @@ union_lookup(ap)
                 * we won't be making changes to it anyway.
                 */
                nameiop = cnp->cn_nameiop;
-               cnp->cn_nameiop = LOOKUP;
+               cnp->cn_nameiop = NAMEI_LOOKUP;
                if (um->um_op == UNMNT_BELOW) {
                        saved_cred = cnp->cn_cred;
                        cnp->cn_cred = um->um_cred;
@@ -467,7 +467,7 @@ union_lookup(ap)
                }
        } else {
                UDEBUG(("C %p\n", lowerdvp));
-               if ((cnp->cn_flags & ISDOTDOT) && dun->un_pvp != NULLVP) {
+               if ((cnp->cn_flags & CNP_ISDOTDOT) && dun->un_pvp != NULLVP) {
                        if ((lowervp = LOWERVP(dun->un_pvp)) != NULL) {
                                VREF(lowervp);
                                vn_lock(lowervp, LK_EXCLUSIVE | LK_RETRY, td);
@@ -579,7 +579,7 @@ out:
         */
 
        if (!lockparent)
-               cnp->cn_flags &= ~LOCKPARENT;
+               cnp->cn_flags &= ~CNP_LOCKPARENT;
 
        UDEBUG(("Out %d vpp %p/%d lower %p upper %p\n", error, *ap->a_vpp,
                ((*ap->a_vpp) ? (*ap->a_vpp)->v_usecount : -99),
@@ -599,7 +599,7 @@ out:
 
        if (*ap->a_vpp != dvp) {
                if ((error == 0 || error == EJUSTRETURN) &&
-                   (!lockparent || (cnp->cn_flags & ISLASTCN) == 0)) {
+                   (!lockparent || (cnp->cn_flags & CNP_ISLASTCN) == 0)) {
                        VOP_UNLOCK(dvp, 0, td);
                }
        }
@@ -1271,7 +1271,7 @@ union_remove(ap)
 
        if ((uppervp = union_lock_upper(un, td)) != NULLVP) {
                if (union_dowhiteout(un, cnp->cn_cred, td))
-                       cnp->cn_flags |= DOWHITEOUT;
+                       cnp->cn_flags |= CNP_DOWHITEOUT;
                error = VOP_REMOVE(upperdvp, uppervp, cnp);
 #if 0
                /* XXX */
@@ -1452,7 +1452,7 @@ union_rename(ap)
                }
 
                if (un->un_lowervp != NULLVP)
-                       ap->a_fcnp->cn_flags |= DOWHITEOUT;
+                       ap->a_fcnp->cn_flags |= CNP_DOWHITEOUT;
                fvp = un->un_uppervp;
                VREF(fvp);
                vrele(ap->a_fvp);
@@ -1582,7 +1582,7 @@ union_rmdir(ap)
 
        if ((uppervp = union_lock_upper(un, td)) != NULLVP) {
                if (union_dowhiteout(un, cnp->cn_cred, td))
-                       cnp->cn_flags |= DOWHITEOUT;
+                       cnp->cn_flags |= CNP_DOWHITEOUT;
                error = VOP_RMDIR(upperdvp, uppervp, ap->a_cnp);
                union_unlock_upper(uppervp, td);
        } else {
index 43c7c23..12df4c4 100644 (file)
@@ -32,7 +32,7 @@
  *
  *     @(#)vm_swap.c   8.5 (Berkeley) 2/17/94
  * $FreeBSD: src/sys/vm/vm_swap.c,v 1.96.2.2 2001/10/14 18:46:47 iedowse Exp $
- * $DragonFly: src/sys/vm/vm_swap.c,v 1.8 2003/08/20 08:03:01 rob Exp $
+ * $DragonFly: src/sys/vm/vm_swap.c,v 1.9 2003/09/23 05:03:54 dillon Exp $
  */
 
 #include "opt_swap.h"
@@ -195,7 +195,7 @@ swapon(struct swapon_args *uap)
        if (error)
                return (error);
 
-       NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->name, td);
+       NDINIT(&nd, NAMEI_LOOKUP, CNP_FOLLOW, UIO_USERSPACE, uap->name, td);
        error = namei(&nd);
        if (error)
                return (error);