Module Name: src
Committed By: dholland
Date: Mon Jun 29 05:03:12 UTC 2009
Modified Files:
src/sys/rump/include/rump: rump_namei.h
src/sys/sys: namei.h
Log Message:
regen
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/rump/include/rump/rump_namei.h
cvs rdiff -u -r1.64 -r1.65 src/sys/sys/namei.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/rump/include/rump/rump_namei.h
diff -u src/sys/rump/include/rump/rump_namei.h:1.3 src/sys/rump/include/rump/rump_namei.h:1.4
--- src/sys/rump/include/rump/rump_namei.h:1.3 Wed Feb 11 00:20:18 2009
+++ src/sys/rump/include/rump/rump_namei.h Mon Jun 29 05:03:12 2009
@@ -1,11 +1,11 @@
-/* $NetBSD: rump_namei.h,v 1.3 2009/02/11 00:20:18 enami Exp $ */
+/* $NetBSD: rump_namei.h,v 1.4 2009/06/29 05:03:12 dholland Exp $ */
/*
* WARNING: GENERATED FILE. DO NOT EDIT
* (edit namei.src and run make namei in src/sys/sys)
* by: NetBSD: gennameih.awk,v 1.4 2008/12/03 10:54:27 ad Exp
- * from: NetBSD: namei.src,v 1.10 2009/02/11 00:19:11 enami Exp
+ * from: NetBSD: namei.src,v 1.11 2009/06/29 05:00:14 dholland Exp
*/
#ifndef _RUMP_RUMP_NAMEI_H_
Index: src/sys/sys/namei.h
diff -u src/sys/sys/namei.h:1.64 src/sys/sys/namei.h:1.65
--- src/sys/sys/namei.h:1.64 Wed Feb 11 00:20:18 2009
+++ src/sys/sys/namei.h Mon Jun 29 05:03:12 2009
@@ -1,11 +1,11 @@
-/* $NetBSD: namei.h,v 1.64 2009/02/11 00:20:18 enami Exp $ */
+/* $NetBSD: namei.h,v 1.65 2009/06/29 05:03:12 dholland Exp $ */
/*
* WARNING: GENERATED FILE. DO NOT EDIT
* (edit namei.src and run make namei in src/sys/sys)
* by: NetBSD: gennameih.awk,v 1.4 2008/12/03 10:54:27 ad Exp
- * from: NetBSD: namei.src,v 1.10 2009/02/11 00:19:11 enami Exp
+ * from: NetBSD: namei.src,v 1.11 2009/06/29 05:00:14 dholland Exp
*/
/*
@@ -204,6 +204,36 @@
#define PNBUF_GET() pool_cache_get(pnbuf_cache, PR_WAITOK)
#define PNBUF_PUT(pnb) pool_cache_put(pnbuf_cache, (pnb))
+/*
+ * Typesafe flags for namei_simple.
+ *
+ * This encoding is not optimal but serves the important purpose of
+ * not being type-compatible with the regular namei flags.
+ */
+struct namei_simple_flags_type; /* Opaque. */
+typedef const struct namei_simple_flags_type *namei_simple_flags_t; /* Gross. */
+extern const namei_simple_flags_t
+ NSM_NOFOLLOW_NOEMULROOT,
+ NSM_NOFOLLOW_TRYEMULROOT,
+ NSM_FOLLOW_NOEMULROOT,
+ NSM_FOLLOW_TRYEMULROOT;
+
+/*
+ * namei_simple_* - the simple cases of namei, with no struct
+ * nameidata involved.
+ *
+ * namei_simple_kernel takes a kernel-space path as the first argument.
+ * namei_simple_user takes a user-space path as the first argument.
+ *
+ * A namei call can be converted to namei_simple_* if:
+ * - the second arg to NDINIT is LOOKUP;
+ * - it does not need the parent vnode, nd.ni_dvp;
+ * - the only flags it uses are (NO)FOLLOW and TRYEMULROOT;
+ * - it does not do anything else gross with the contents of nd.
+ */
+int namei_simple_kernel(const char *, namei_simple_flags_t, struct vnode **);
+int namei_simple_user(const char *, namei_simple_flags_t, struct vnode **);
+
int namei(struct nameidata *);
uint32_t namei_hash(const char *, const char **);
int lookup(struct nameidata *);