Page MenuHomeFreeBSD

D24291.diff
No OneTemporary

D24291.diff

Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
===================================================================
--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
+++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
@@ -628,7 +628,7 @@
vnode_t *dvp = ap->a_dvp;
vnode_t **vpp = ap->a_vpp;
cred_t *cr = ap->a_cnp->cn_cred;
- int flags = ap->a_cnp->cn_flags;
+ uint64_t flags = ap->a_cnp->cn_flags;
int lkflags = ap->a_cnp->cn_lkflags;
int nameiop = ap->a_cnp->cn_nameiop;
int err;
@@ -930,7 +930,7 @@
uint64_t snap_id;
int nameiop = cnp->cn_nameiop;
int lkflags = cnp->cn_lkflags;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int err;
ASSERT(dvp->v_type == VDIR);
Index: sys/fs/cd9660/cd9660_lookup.c
===================================================================
--- sys/fs/cd9660/cd9660_lookup.c
+++ sys/fs/cd9660/cd9660_lookup.c
@@ -136,7 +136,7 @@
char *name;
struct vnode **vpp = ap->a_vpp;
struct componentname *cnp = ap->a_cnp;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int nameiop = cnp->cn_nameiop;
ep2 = ep = NULL;
Index: sys/fs/devfs/devfs_vnops.c
===================================================================
--- sys/fs/devfs/devfs_vnops.c
+++ sys/fs/devfs/devfs_vnops.c
@@ -921,7 +921,8 @@
struct devfs_mount *dmp;
struct mount *mp;
struct cdev *cdev;
- int error, flags, nameiop, dvplocked;
+ int error, nameiop, dvplocked;
+ uint64_t flags;
char specname[SPECNAMELEN + 1], *pname;
cnp = ap->a_cnp;
Index: sys/fs/ext2fs/ext2_lookup.c
===================================================================
--- sys/fs/ext2fs/ext2_lookup.c
+++ sys/fs/ext2fs/ext2_lookup.c
@@ -341,7 +341,7 @@
u_long bmask; /* block offset mask */
int error;
struct ucred *cred = cnp->cn_cred;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int nameiop = cnp->cn_nameiop;
ino_t ino, ino1;
int ltype;
Index: sys/fs/fuse/fuse_vnops.c
===================================================================
--- sys/fs/fuse/fuse_vnops.c
+++ sys/fs/fuse/fuse_vnops.c
@@ -981,9 +981,9 @@
struct ucred *cred = cnp->cn_cred;
int nameiop = cnp->cn_nameiop;
- int flags = cnp->cn_flags;
- int wantparent = flags & (LOCKPARENT | WANTPARENT);
- int islastcn = flags & ISLASTCN;
+ uint64_t flags = cnp->cn_flags;
+ bool wantparent = (flags & (LOCKPARENT | WANTPARENT)) != 0;
+ bool islastcn = (flags & ISLASTCN) != 0;
struct mount *mp = vnode_mount(dvp);
int err = 0;
Index: sys/fs/msdosfs/msdosfs_lookup.c
===================================================================
--- sys/fs/msdosfs/msdosfs_lookup.c
+++ sys/fs/msdosfs/msdosfs_lookup.c
@@ -134,7 +134,7 @@
struct direntry *dep = NULL;
struct deget_dotdot dd_arg;
u_char dosfilename[12];
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int nameiop = cnp->cn_nameiop;
int unlen;
uint64_t inode1;
Index: sys/fs/nfsclient/nfs_clvnops.c
===================================================================
--- sys/fs/nfsclient/nfs_clvnops.c
+++ sys/fs/nfsclient/nfs_clvnops.c
@@ -1167,7 +1167,7 @@
struct vnode *dvp = ap->a_dvp;
struct vnode **vpp = ap->a_vpp;
struct mount *mp = dvp->v_mount;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
struct vnode *newvp;
struct nfsmount *nmp;
struct nfsnode *np, *newnp;
Index: sys/fs/nfsserver/nfs_nfsdport.c
===================================================================
--- sys/fs/nfsserver/nfs_nfsdport.c
+++ sys/fs/nfsserver/nfs_nfsdport.c
@@ -512,7 +512,8 @@
int i;
struct iovec aiov;
struct uio auio;
- int lockleaf = (cnp->cn_flags & LOCKLEAF) != 0, linklen;
+ bool lockleaf = (cnp->cn_flags & LOCKLEAF) != 0;
+ int linklen;
int error = 0;
char *cp;
Index: sys/fs/nfsserver/nfs_nfsdserv.c
===================================================================
--- sys/fs/nfsserver/nfs_nfsdserv.c
+++ sys/fs/nfsserver/nfs_nfsdserv.c
@@ -1252,7 +1252,8 @@
vnode_t vp, dirp = NULL;
nfsattrbit_t attrbits;
char *bufp = NULL, *pathcp = NULL;
- u_long *hashp, cnflags;
+ u_long *hashp;
+ uint64_t cnflags;
NFSACL_T *aclp = NULL;
struct thread *p = curthread;
Index: sys/fs/nullfs/null_vnops.c
===================================================================
--- sys/fs/nullfs/null_vnops.c
+++ sys/fs/nullfs/null_vnops.c
@@ -356,7 +356,7 @@
{
struct componentname *cnp = ap->a_cnp;
struct vnode *dvp = ap->a_dvp;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
struct vnode *vp, *ldvp, *lvp;
struct mount *mp;
int error;
@@ -373,8 +373,8 @@
vp = lvp = NULL;
KASSERT((ldvp->v_vflag & VV_ROOT) == 0 ||
((dvp->v_vflag & VV_ROOT) != 0 && (flags & ISDOTDOT) == 0),
- ("ldvp %p fl %#x dvp %p fl %#x flags %#x", ldvp, ldvp->v_vflag,
- dvp, dvp->v_vflag, flags));
+ ("ldvp %p fl %#x dvp %p fl %#x flags %#jx", ldvp, ldvp->v_vflag,
+ dvp, dvp->v_vflag, (uintmax_t)flags));
/*
* Hold ldvp. The reference on it, owned by dvp, is lost in
Index: sys/fs/smbfs/smbfs_vnops.c
===================================================================
--- sys/fs/smbfs/smbfs_vnops.c
+++ sys/fs/smbfs/smbfs_vnops.c
@@ -1183,11 +1183,11 @@
struct smbfattr fattr, *fap;
struct smb_cred *scred;
char *name = cnp->cn_nameptr;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int nameiop = cnp->cn_nameiop;
int nmlen = cnp->cn_namelen;
- int error, islastcn, isdot;
- int killit;
+ int error;
+ bool islastcn, isdot, killit;
SMBVDEBUG("\n");
if (dvp->v_type != VDIR)
@@ -1196,7 +1196,7 @@
SMBFSERR("invalid '..'\n");
return EIO;
}
- islastcn = flags & ISLASTCN;
+ islastcn = (flags & ISLASTCN) != 0;
if (islastcn && (mp->mnt_flag & MNT_RDONLY) && (nameiop != LOOKUP))
return EROFS;
error = vn_dir_check_exec(dvp, cnp);
Index: sys/fs/udf/udf_vnops.c
===================================================================
--- sys/fs/udf/udf_vnops.c
+++ sys/fs/udf/udf_vnops.c
@@ -1127,7 +1127,7 @@
struct fileid_desc *fid = NULL;
struct udf_dirstream *ds;
u_long nameiop;
- u_long flags;
+ uint64_t flags;
char *nameptr;
long namelen;
ino_t id = 0;
Index: sys/fs/unionfs/union_vnops.c
===================================================================
--- sys/fs/unionfs/union_vnops.c
+++ sys/fs/unionfs/union_vnops.c
@@ -84,7 +84,7 @@
int lockflag;
int error , uerror, lerror;
u_long nameiop;
- u_long cnflags, cnflagsbk;
+ uint64_t cnflags, cnflagsbk;
struct unionfs_node *dunp;
struct vnode *dvp, *udvp, *ldvp, *vp, *uvp, *lvp, *dtmpvp;
struct vattr va;
Index: sys/kern/uipc_mqueue.c
===================================================================
--- sys/kern/uipc_mqueue.c
+++ sys/kern/uipc_mqueue.c
@@ -849,7 +849,8 @@
struct mqfs_node *pd;
struct mqfs_node *pn;
struct mqfs_info *mqfs;
- int nameiop, flags, error, namelen;
+ int nameiop, error, namelen;
+ uint64_t flags;
char *pname;
struct thread *td;
Index: sys/kern/vfs_acl.c
===================================================================
--- sys/kern/vfs_acl.c
+++ sys/kern/vfs_acl.c
@@ -68,13 +68,13 @@
MALLOC_DEFINE(M_ACL, "acl", "Access Control Lists");
static int kern___acl_aclcheck_path(struct thread *td, const char *path,
- acl_type_t type, struct acl *aclp, int follow);
+ acl_type_t type, struct acl *aclp, uint64_t follow);
static int kern___acl_delete_path(struct thread *td, const char *path,
- acl_type_t type, int follow);
+ acl_type_t type, uint64_t follow);
static int kern___acl_get_path(struct thread *td, const char *path,
- acl_type_t type, struct acl *aclp, int follow);
+ acl_type_t type, struct acl *aclp, uint64_t follow);
static int kern___acl_set_path(struct thread *td, const char *path,
- acl_type_t type, const struct acl *aclp, int follow);
+ acl_type_t type, const struct acl *aclp, uint64_t follow);
static int vacl_set_acl(struct thread *td, struct vnode *vp,
acl_type_t type, const struct acl *aclp);
static int vacl_get_acl(struct thread *td, struct vnode *vp,
@@ -372,7 +372,7 @@
static int
kern___acl_get_path(struct thread *td, const char *path, acl_type_t type,
- struct acl *aclp, int follow)
+ struct acl *aclp, uint64_t follow)
{
struct nameidata nd;
int error;
@@ -410,7 +410,7 @@
static int
kern___acl_set_path(struct thread *td, const char *path,
- acl_type_t type, const struct acl *aclp, int follow)
+ acl_type_t type, const struct acl *aclp, uint64_t follow)
{
struct nameidata nd;
int error;
@@ -486,7 +486,7 @@
static int
kern___acl_delete_path(struct thread *td, const char *path,
- acl_type_t type, int follow)
+ acl_type_t type, uint64_t follow)
{
struct nameidata nd;
int error;
@@ -543,7 +543,7 @@
static int
kern___acl_aclcheck_path(struct thread *td, const char *path, acl_type_t type,
- struct acl *aclp, int follow)
+ struct acl *aclp, uint64_t follow)
{
struct nameidata nd;
int error;
Index: sys/kern/vfs_cache.c
===================================================================
--- sys/kern/vfs_cache.c
+++ sys/kern/vfs_cache.c
@@ -2128,7 +2128,7 @@
int error;
struct vnode **vpp = ap->a_vpp;
struct componentname *cnp = ap->a_cnp;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
*vpp = NULL;
dvp = ap->a_dvp;
Index: sys/kern/vfs_extattr.c
===================================================================
--- sys/kern/vfs_extattr.c
+++ sys/kern/vfs_extattr.c
@@ -51,14 +51,14 @@
static int kern_extattr_set_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
- size_t nbytes, int follow);
+ size_t nbytes, uint64_t follow);
static int kern_extattr_get_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
- size_t nbytes, int follow);
+ size_t nbytes, uint64_t follow);
static int kern_extattr_delete_path(struct thread *td, const char *path,
- int attrnamespace, const char *attrname, int follow);
+ int attrnamespace, const char *attrname, uint64_t follow);
static int kern_extattr_list_path(struct thread *td, const char *path,
- int attrnamespace, void *data, size_t nbytes, int follow);
+ int attrnamespace, void *data, size_t nbytes, uint64_t follow);
/*
* Syscall to push extended attribute configuration information into the VFS.
@@ -290,7 +290,7 @@
static int
kern_extattr_set_path(struct thread *td, const char *path, int attrnamespace,
- const char *uattrname, void *data, size_t nbytes, int follow)
+ const char *uattrname, void *data, size_t nbytes, uint64_t follow)
{
struct nameidata nd;
char attrname[EXTATTR_MAXNAMELEN];
@@ -455,7 +455,7 @@
static int
kern_extattr_get_path(struct thread *td, const char *path, int attrnamespace,
- const char *uattrname, void *data, size_t nbytes, int follow)
+ const char *uattrname, void *data, size_t nbytes, uint64_t follow)
{
struct nameidata nd;
char attrname[EXTATTR_MAXNAMELEN];
@@ -587,7 +587,7 @@
static int
kern_extattr_delete_path(struct thread *td, const char *path, int attrnamespace,
- const char *uattrname, int follow)
+ const char *uattrname, uint64_t follow)
{
struct nameidata nd;
char attrname[EXTATTR_MAXNAMELEN];
@@ -736,7 +736,7 @@
static int
kern_extattr_list_path(struct thread *td, const char *path, int attrnamespace,
- void *data, size_t nbytes, int follow)
+ void *data, size_t nbytes, uint64_t follow)
{
struct nameidata nd;
int error;
Index: sys/kern/vfs_lookup.c
===================================================================
--- sys/kern/vfs_lookup.c
+++ sys/kern/vfs_lookup.c
@@ -608,7 +608,7 @@
}
static int
-compute_cn_lkflags(struct mount *mp, int lkflags, int cnflags)
+compute_cn_lkflags(struct mount *mp, int lkflags, uint64_t cnflags)
{
if (mp == NULL || ((lkflags & LK_SHARED) &&
@@ -623,7 +623,7 @@
}
static __inline int
-needs_exclusive_leaf(struct mount *mp, int flags)
+needs_exclusive_leaf(struct mount *mp, uint64_t flags)
{
/*
@@ -700,9 +700,9 @@
struct mount *mp; /* mount table entry */
struct prison *pr;
size_t prev_ni_pathlen; /* saved ndp->ni_pathlen */
- int docache; /* == 0 do not cache last component */
- int wantparent; /* 1 => wantparent or lockparent flag */
- int rdonly; /* lookup read-only flag bit */
+ bool docache; /* == 0 do not cache last component */
+ bool wantparent; /* 1 => wantparent or lockparent flag */
+ bool rdonly; /* lookup read-only flag bit */
int error = 0;
int dpunlocked = 0; /* dp has already been unlocked */
int relookup = 0; /* do not consume the path component */
@@ -714,15 +714,15 @@
* Setup: break out flag bits into variables.
*/
ni_dvp_unlocked = 0;
- wantparent = cnp->cn_flags & (LOCKPARENT | WANTPARENT);
+ wantparent = (cnp->cn_flags & (LOCKPARENT | WANTPARENT)) != 0;
KASSERT(cnp->cn_nameiop == LOOKUP || wantparent,
("CREATE, DELETE, RENAME require LOCKPARENT or WANTPARENT."));
- docache = (cnp->cn_flags & NOCACHE) ^ NOCACHE;
+ docache = (cnp->cn_flags & NOCACHE) == 0;
if (cnp->cn_nameiop == DELETE ||
(wantparent && cnp->cn_nameiop != CREATE &&
cnp->cn_nameiop != LOOKUP))
- docache = 0;
- rdonly = cnp->cn_flags & RDONLY;
+ docache = false;
+ rdonly = (cnp->cn_flags & RDONLY) != 0;
cnp->cn_flags &= ~ISSYMLINK;
ndp->ni_dvp = NULL;
/*
@@ -783,7 +783,7 @@
ndp->ni_next = cp;
cnp->cn_flags |= MAKEENTRY;
- if (*cp == '\0' && docache == 0)
+ if (*cp == '\0' && !docache)
cnp->cn_flags &= ~MAKEENTRY;
if (cnp->cn_namelen == 2 &&
cnp->cn_nameptr[1] == '.' && cnp->cn_nameptr[0] == '.')
@@ -1184,9 +1184,9 @@
int
relookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)
{
- struct vnode *dp = NULL; /* the directory we are searching */
- int wantparent; /* 1 => wantparent or lockparent flag */
- int rdonly; /* lookup read-only flag bit */
+ struct vnode *dp = NULL; /* the directory we are searching */
+ bool wantparent; /* 1 => wantparent or lockparent flag */
+ bool rdonly; /* lookup read-only flag bit */
int error = 0;
KASSERT(cnp->cn_flags & ISLASTCN,
@@ -1194,9 +1194,9 @@
/*
* Setup: break out flag bits into variables.
*/
- wantparent = cnp->cn_flags & (LOCKPARENT|WANTPARENT);
+ wantparent = (cnp->cn_flags & (LOCKPARENT|WANTPARENT)) != 0;
KASSERT(wantparent, ("relookup: parent not wanted."));
- rdonly = cnp->cn_flags & RDONLY;
+ rdonly = (cnp->cn_flags & RDONLY) != 0;
cnp->cn_flags &= ~ISSYMLINK;
dp = dvp;
cnp->cn_lkflags = LK_EXCLUSIVE;
@@ -1313,7 +1313,7 @@
}
void
-NDINIT_ALL(struct nameidata *ndp, u_long op, u_long flags, enum uio_seg segflg,
+NDINIT_ALL(struct nameidata *ndp, u_long op, uint64_t flags, enum uio_seg segflg,
const char *namep, int dirfd, struct vnode *startdir, cap_rights_t *rightsp,
struct thread *td)
{
Index: sys/kern/vfs_syscalls.c
===================================================================
--- sys/kern/vfs_syscalls.c
+++ sys/kern/vfs_syscalls.c
@@ -1493,7 +1493,7 @@
int
kern_linkat(struct thread *td, int fd1, int fd2, const char *path1,
- const char *path2, enum uio_seg segflag, int follow)
+ const char *path2, enum uio_seg segflag, uint64_t follow)
{
struct nameidata nd;
int error;
@@ -2685,7 +2685,8 @@
enum uio_seg pathseg, u_long flags, int atflag)
{
struct nameidata nd;
- int error, follow;
+ int error;
+ uint64_t follow;
AUDIT_ARG_FFLAGS(flags);
follow = (atflag & AT_SYMLINK_NOFOLLOW) ? NOFOLLOW : FOLLOW;
@@ -2814,7 +2815,8 @@
enum uio_seg pathseg, mode_t mode, int flag)
{
struct nameidata nd;
- int error, follow;
+ int error;
+ uint64_t follow;
AUDIT_ARG_MODE(mode);
follow = (flag & AT_SYMLINK_NOFOLLOW) != 0 ? NOFOLLOW : FOLLOW;
@@ -2926,7 +2928,8 @@
enum uio_seg pathseg, int uid, int gid, int flag)
{
struct nameidata nd;
- int error, follow;
+ int error;
+ uint64_t follow;
AUDIT_ARG_OWNER(uid, gid);
follow = (flag & AT_SYMLINK_NOFOLLOW) ? NOFOLLOW : FOLLOW;
Index: sys/security/mac/mac_syscalls.c
===================================================================
--- sys/security/mac/mac_syscalls.c
+++ sys/security/mac/mac_syscalls.c
@@ -77,9 +77,9 @@
FEATURE(security_mac, "Mandatory Access Control Framework support");
static int kern___mac_get_path(struct thread *td, const char *path_p,
- struct mac *mac_p, int follow);
+ struct mac *mac_p, uint64_t follow);
static int kern___mac_set_path(struct thread *td, const char *path_p,
- struct mac *mac_p, int follow);
+ struct mac *mac_p, uint64_t follow);
int
sys___mac_get_pid(struct thread *td, struct __mac_get_pid_args *uap)
@@ -333,7 +333,7 @@
static int
kern___mac_get_path(struct thread *td, const char *path_p, struct mac *mac_p,
- int follow)
+ uint64_t follow)
{
char *elements, *buffer;
struct nameidata nd;
@@ -499,7 +499,7 @@
static int
kern___mac_set_path(struct thread *td, const char *path_p, struct mac *mac_p,
- int follow)
+ uint64_t follow)
{
struct label *intlabel;
struct nameidata nd;
Index: sys/sys/namei.h
===================================================================
--- sys/sys/namei.h
+++ sys/sys/namei.h
@@ -45,7 +45,7 @@
* Arguments to lookup.
*/
u_long cn_nameiop; /* namei operation */
- u_int64_t cn_flags; /* flags to namei */
+ uint64_t cn_flags; /* flags to namei */
struct thread *cn_thread;/* thread requesting lookup */
struct ucred *cn_cred; /* credentials */
int cn_lkflags; /* Lock flags LK_EXCLUSIVE or LK_SHARED */
@@ -117,17 +117,17 @@
#define RENAME 3 /* setup for file renaming */
#define OPMASK 3 /* mask for operation */
/*
- * namei operational modifier flags, stored in ni_cnd.flags
+ * namei operational modifier flags, stored in ni_cnd.cn_flags
*/
-#define LOCKLEAF 0x0004 /* lock vnode 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 BENEATH 0x0080 /* No escape from the start dir */
-#define LOCKSHARED 0x0100 /* Shared lock leaf */
-#define NOFOLLOW 0x0000 /* do not follow symbolic links (pseudo) */
-#define MODMASK 0x01fc /* mask of operational modifiers */
+#define LOCKLEAF 0x0004ULL /* lock vnode on return */
+#define LOCKPARENT 0x0008ULL /* want parent vnode returned locked */
+#define WANTPARENT 0x0010ULL /* want parent vnode returned unlocked */
+#define NOCACHE 0x0020ULL /* name must not be left in cache */
+#define FOLLOW 0x0040ULL /* follow symbolic links */
+#define BENEATH 0x0080ULL /* No escape from the start dir */
+#define LOCKSHARED 0x0100ULL /* Shared lock leaf */
+#define NOFOLLOW 0x0000ULL /* do not follow symbolic links (pseudo) */
+#define MODMASK 0x01fcULL /* mask of operational modifiers */
/*
* Namei parameter descriptors.
*
@@ -142,27 +142,27 @@
* name being sought. The caller is responsible for releasing the
* buffer and for vrele'ing ni_startdir.
*/
-#define RDONLY 0x00000200 /* lookup with read-only semantics */
-#define HASBUF 0x00000400 /* has allocated pathname buffer */
-#define SAVENAME 0x00000800 /* save pathname buffer */
-#define SAVESTART 0x00001000 /* save starting directory */
-#define ISDOTDOT 0x00002000 /* current component name is .. */
-#define MAKEENTRY 0x00004000 /* entry is to be added to name cache */
-#define ISLASTCN 0x00008000 /* this is last component of pathname */
-#define ISSYMLINK 0x00010000 /* symlink needs interpretation */
-#define ISWHITEOUT 0x00020000 /* found whiteout */
-#define DOWHITEOUT 0x00040000 /* do whiteouts */
-#define WILLBEDIR 0x00080000 /* new files will be dirs; allow trailing / */
-#define ISUNICODE 0x00100000 /* current component name is unicode*/
-#define ISOPEN 0x00200000 /* caller is opening; return a real vnode. */
-#define NOCROSSMOUNT 0x00400000 /* do not cross mount points */
-#define NOMACCHECK 0x00800000 /* do not perform MAC checks */
-#define AUDITVNODE1 0x04000000 /* audit the looked up vnode information */
-#define AUDITVNODE2 0x08000000 /* audit the looked up vnode information */
-#define TRAILINGSLASH 0x10000000 /* path ended in a slash */
-#define NOCAPCHECK 0x20000000 /* do not perform capability checks */
-#define NOEXECCHECK 0x40000000 /* do not perform exec check on dir */
-#define PARAMASK 0x7ffffe00 /* mask of parameter descriptors */
+#define RDONLY 0x00000200ULL /* lookup with read-only semantics */
+#define HASBUF 0x00000400ULL /* has allocated pathname buffer */
+#define SAVENAME 0x00000800ULL /* save pathname buffer */
+#define SAVESTART 0x00001000ULL /* save starting directory */
+#define ISDOTDOT 0x00002000ULL /* current component name is .. */
+#define MAKEENTRY 0x00004000ULL /* entry is to be added to name cache */
+#define ISLASTCN 0x00008000ULL /* this is last component of pathname */
+#define ISSYMLINK 0x00010000ULL /* symlink needs interpretation */
+#define ISWHITEOUT 0x00020000ULL /* found whiteout */
+#define DOWHITEOUT 0x00040000ULL /* do whiteouts */
+#define WILLBEDIR 0x00080000ULL /* new files will be dirs; allow trailing / */
+#define ISUNICODE 0x00100000ULL /* current component name is unicode*/
+#define ISOPEN 0x00200000ULL /* caller is opening; return a real vnode. */
+#define NOCROSSMOUNT 0x00400000ULL /* do not cross mount points */
+#define NOMACCHECK 0x00800000ULL /* do not perform MAC checks */
+#define AUDITVNODE1 0x04000000ULL /* audit the looked up vnode information */
+#define AUDITVNODE2 0x08000000ULL /* audit the looked up vnode information */
+#define TRAILINGSLASH 0x10000000ULL /* path ended in a slash */
+#define NOCAPCHECK 0x20000000ULL /* do not perform capability checks */
+#define NOEXECCHECK 0x40000000ULL /* do not perform exec check on dir */
+#define PARAMASK 0x7ffffe00ULL /* mask of parameter descriptors */
/*
* Namei results flags
@@ -190,7 +190,7 @@
#define NDINIT_ATVP(ndp, op, flags, segflg, namep, vp, td) \
NDINIT_ALL(ndp, op, flags, segflg, namep, AT_FDCWD, vp, 0, td)
-void NDINIT_ALL(struct nameidata *ndp, u_long op, u_long flags,
+void NDINIT_ALL(struct nameidata *ndp, u_long op, uint64_t flags,
enum uio_seg segflg, const char *namep, int dirfd, struct vnode *startdir,
cap_rights_t *rightsp, struct thread *td);
Index: sys/sys/syscallsubr.h
===================================================================
--- sys/sys/syscallsubr.h
+++ sys/sys/syscallsubr.h
@@ -177,7 +177,7 @@
int kern_kldstat(struct thread *td, int fileid, struct kld_file_stat *stat);
int kern_kldunload(struct thread *td, int fileid, int flags);
int kern_linkat(struct thread *td, int fd1, int fd2, const char *path1,
- const char *path2, enum uio_seg segflg, int follow);
+ const char *path2, enum uio_seg segflg, uint64_t follow);
int kern_listen(struct thread *td, int s, int backlog);
int kern_lseek(struct thread *td, int fd, off_t offset, int whence);
int kern_lutimes(struct thread *td, const char *path, enum uio_seg pathseg,
@@ -317,7 +317,7 @@
enum uio_seg pathseg, struct timeval *tptr, enum uio_seg tptrseg);
int kern_utimensat(struct thread *td, int fd, const char *path,
enum uio_seg pathseg, struct timespec *tptr, enum uio_seg tptrseg,
- int follow);
+ int flag);
int kern_wait(struct thread *td, pid_t pid, int *status, int options,
struct rusage *rup);
int kern_wait6(struct thread *td, enum idtype idtype, id_t id, int *status,
Index: sys/ufs/ufs/ufs_extern.h
===================================================================
--- sys/ufs/ufs/ufs_extern.h
+++ sys/ufs/ufs/ufs_extern.h
@@ -70,7 +70,7 @@
struct direct *);
int ufs_direnter(struct vnode *, struct vnode *, struct direct *,
struct componentname *, struct buf *, int);
-int ufs_dirremove(struct vnode *, struct inode *, int, int);
+int ufs_dirremove(struct vnode *, struct inode *, uint64_t, int);
int ufs_dirrewrite(struct inode *, struct inode *, ino_t, int, int);
int ufs_lookup_ino(struct vnode *, struct vnode **, struct componentname *,
ino_t *);
Index: sys/ufs/ufs/ufs_lookup.c
===================================================================
--- sys/ufs/ufs/ufs_lookup.c
+++ sys/ufs/ufs/ufs_lookup.c
@@ -214,7 +214,7 @@
u_long bmask; /* block offset mask */
int namlen, error;
struct ucred *cred = cnp->cn_cred;
- int flags = cnp->cn_flags;
+ uint64_t flags = cnp->cn_flags;
int nameiop = cnp->cn_nameiop;
ino_t ino, ino1;
int ltype;
@@ -1163,7 +1163,7 @@
ufs_dirremove(dvp, ip, flags, isrmdir)
struct vnode *dvp;
struct inode *ip;
- int flags;
+ uint64_t flags;
int isrmdir;
{
struct inode *dp;

File Metadata

Mime Type
text/plain
Expires
Fri, Oct 2, 5:46 AM (12 h, 51 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
40063458
Default Alt Text
D24291.diff (24 KB)

Event Timeline