usr/src/uts/common/fs/ctfs/ctfs_all.c
changeset 6492 903545192033
parent 5663 029cc4273b57
equal deleted inserted replaced
6491:448e02e63395 6492:903545192033
    17  * information: Portions Copyright [yyyy] [name of copyright owner]
    17  * information: Portions Copyright [yyyy] [name of copyright owner]
    18  *
    18  *
    19  * CDDL HEADER END
    19  * CDDL HEADER END
    20  */
    20  */
    21 /*
    21 /*
    22  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
    22  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
    23  * Use is subject to license terms.
    23  * Use is subject to license terms.
    24  */
    24  */
    25 
    25 
    26 #pragma ident	"%Z%%M%	%I%	%E% SMI"
    26 #pragma ident	"%Z%%M%	%I%	%E% SMI"
    27 
    27 
    49  */
    49  */
    50 
    50 
    51 static int ctfs_adir_do_readdir(vnode_t *, void *, int *, offset_t *,
    51 static int ctfs_adir_do_readdir(vnode_t *, void *, int *, offset_t *,
    52     offset_t *, void *, int);
    52     offset_t *, void *, int);
    53 static int ctfs_adir_do_lookup(vnode_t *, const char *, vnode_t **, ino64_t *,
    53 static int ctfs_adir_do_lookup(vnode_t *, const char *, vnode_t **, ino64_t *,
    54     cred_t *);
    54     cred_t *, int, int *, pathname_t *);
    55 
    55 
    56 /*
    56 /*
    57  * ctfs_create_adirnode
    57  * ctfs_create_adirnode
    58  */
    58  */
    59 /* ARGSUSED */
    59 /* ARGSUSED */
    96 }
    96 }
    97 
    97 
    98 /* ARGSUSED */
    98 /* ARGSUSED */
    99 static int
    99 static int
   100 ctfs_adir_do_lookup(vnode_t *vp, const char *nm, vnode_t **vpp, ino64_t *inop,
   100 ctfs_adir_do_lookup(vnode_t *vp, const char *nm, vnode_t **vpp, ino64_t *inop,
   101     cred_t *cr)
   101     cred_t *cr, int flags, int *deflags, pathname_t *rpnp)
   102 {
   102 {
   103 	int i;
   103 	int i;
   104 	contract_t *ct;
   104 	contract_t *ct;
   105 
   105 
   106 	i = stoi((char **)&nm);
   106 	i = stoi((char **)&nm);
   125 {
   125 {
   126 	uint64_t zuniqid;
   126 	uint64_t zuniqid;
   127 	ctid_t next;
   127 	ctid_t next;
   128 	struct dirent64 *odp = dp;
   128 	struct dirent64 *odp = dp;
   129 
   129 
   130 	/* ctfs does not support V_RDDIR_ENTFLAGS */
   130 	ASSERT(!(flags & V_RDDIR_ENTFLAGS));
   131 	if (flags & V_RDDIR_ENTFLAGS)
       
   132 		return (ENOTSUP);
       
   133 
   131 
   134 	zuniqid = VTOZONE(vp)->zone_uniqid;
   132 	zuniqid = VTOZONE(vp)->zone_uniqid;
   135 	next = contract_lookup(zuniqid, *offp);
   133 	next = contract_lookup(zuniqid, *offp);
   136 
   134 
   137 	if (next == -1) {
   135 	if (next == -1) {