Module Name: src Committed By: salazar Date: Thu May 5 17:06:41 UTC 2016
Modified Files: src/share/man/man9: namei.9 Log Message: update struct nameidata documentation To generate a diff of this commit: cvs rdiff -u -r1.34 -r1.35 src/share/man/man9/namei.9 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/share/man/man9/namei.9 diff -u src/share/man/man9/namei.9:1.34 src/share/man/man9/namei.9:1.35 --- src/share/man/man9/namei.9:1.34 Tue Apr 21 10:00:30 2015 +++ src/share/man/man9/namei.9 Thu May 5 17:06:41 2016 @@ -1,4 +1,4 @@ -.\" $NetBSD: namei.9,v 1.34 2015/04/21 10:00:30 wiz Exp $ +.\" $NetBSD: namei.9,v 1.35 2016/05/05 17:06:41 salazar Exp $ .\" .\" Copyright (c) 2001, 2005, 2006 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,7 +27,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 21, 2015 +.Dd May 05, 2016 .Dt NAMEI 9 .Os .Sh NAME @@ -84,45 +84,54 @@ structure. It has the following layout: .Bd -literal struct nameidata { - /* - * Arguments to namei/lookup. - */ - struct vnode *ni_startdir; /* starting dir, cwd if null */ - struct pathbuf *ni_pathbuf; /* pathname container */ - char *ni_pnbuf; /* extra pathname buffer ref (XXX) */ - /* - * Arguments to lookup. - */ - struct vnode *ni_startdir; /* starting directory */ - struct vnode *ni_rootdir; /* logical root directory */ - /* - * Results: returned from/manipulated by lookup - */ - struct vnode *ni_vp; /* vnode of result */ - struct vnode *ni_dvp; /* vnode of intermediate dir */ - /* - * Shared between namei and lookup/commit routines. - */ - size_t ni_pathlen; /* remaining chars in path */ - const char *ni_next; /* next location in pathname */ - unsigned int ni_loopcnt; /* count of symlinks encountered */ - /* - * Lookup parameters - */ - struct componentname { - /* - * Arguments to lookup. - */ - uint32_t cn_nameiop; /* namei operation */ - uint32_t cn_flags; /* flags to namei */ - kauth_cred_t cn_cred; /* credentials */ - /* - * Shared between lookup and commit routines. - */ - const char *cn_nameptr; /* pointer to looked up name */ - size_t cn_namelen; /* length of looked up component */ - size_t cn_consume; /* chars to be consumed this time */ - } ni_cnd; + /* + * Arguments to namei/lookup. + */ + struct vnode *ni_atdir; /* startup dir, cwd if null */ + struct pathbuf *ni_pathbuf; /* pathname container */ + char *ni_pnbuf; /* extra pathname buffer ref (XXX) */ + /* + * Arguments to lookup. + */ + struct vnode *ni_rootdir; /* logical root directory */ + struct vnode *ni_erootdir; /* emulation root directory */ + /* + * Results: returned from/manipulated by lookup + */ + struct vnode *ni_vp; /* vnode of result */ + struct vnode *ni_dvp; /* vnode of intermediate directory */ + /* + * Shared between namei and lookup/commit routines. + */ + size_t ni_pathlen; /* remaining chars in path */ + const char *ni_next; /* next location in pathname */ + unsigned int ni_loopcnt; /* count of symlinks encountered */ + /* + * Lookup parameters: this structure describes the subset of + * information from the nameidata structure that is passed + * through the VOP interface. + */ + struct componentname ni_cnd; +}; +.Ed +.Pp +The +.Em componentname +structure has the following layout: +.Bd -literal +struct componentname { + /* + * Arguments to lookup. + */ + uint32_t cn_nameiop; /* namei operation */ + uint32_t cn_flags; /* flags to namei */ + kauth_cred_t cn_cred; /* credentials */ + /* + * Shared between lookup and commit routines. + */ + const char *cn_nameptr; /* pointer to looked up name */ + size_t cn_namelen; /* length of looked up comp */ + size_t cn_consume; /* chars to consume in lookup */ }; .Ed .Pp