From owner-p4-projects@FreeBSD.ORG Wed Aug 6 14:20:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 18D0437B404; Wed, 6 Aug 2003 14:20:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C213337B401 for ; Wed, 6 Aug 2003 14:20:45 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 52B9843F75 for ; Wed, 6 Aug 2003 14:20:45 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h76LKj0U003278 for ; Wed, 6 Aug 2003 14:20:45 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h76LKi3d003275 for perforce@freebsd.org; Wed, 6 Aug 2003 14:20:44 -0700 (PDT) Date: Wed, 6 Aug 2003 14:20:44 -0700 (PDT) Message-Id: <200308062120.h76LKi3d003275@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 35655 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Aug 2003 21:20:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=35655 Change 35655 by rwatson@rwatson_paprika on 2003/08/06 14:20:05 Various cleanups and fixes relating to pushing the umask handling down into the file systems. Affected files ... .. //depot/projects/trustedbsd/acl/sys/coda/coda_vnops.c#6 edit .. //depot/projects/trustedbsd/acl/sys/fs/devfs/devfs_vnops.c#6 edit .. //depot/projects/trustedbsd/acl/sys/fs/msdosfs/msdosfs_vnops.c#6 edit .. //depot/projects/trustedbsd/acl/sys/kern/kern_alq.c#5 edit .. //depot/projects/trustedbsd/acl/sys/kern/kern_sig.c#6 edit .. //depot/projects/trustedbsd/acl/sys/kern/vfs_syscalls.c#5 edit .. //depot/projects/trustedbsd/acl/sys/nfsclient/nfs_vnops.c#7 edit Differences ... ==== //depot/projects/trustedbsd/acl/sys/coda/coda_vnops.c#6 (text+ko) ==== @@ -1150,7 +1150,7 @@ /* All creates are exclusive XXX */ /* I'm assuming the 'mode' argument is the file mode bits XXX */ - mode ~= cmask; + mode = mode &~ cmask; /* Check for create of control object. */ if (IS_CTL_NAME(dvp, nm, len)) { ==== //depot/projects/trustedbsd/acl/sys/fs/devfs/devfs_vnops.c#6 (text+ko) ==== @@ -743,7 +743,7 @@ (vap->va_gen != VNOVAL)) { return (EINVAL); } - mode = vap->va_mode &~ ap->a_cmask; + mode = vap->va_mode; de = vp->v_data; if (vp->v_type == VDIR) ==== //depot/projects/trustedbsd/acl/sys/fs/msdosfs/msdosfs_vnops.c#6 (text+ko) ==== @@ -141,7 +141,7 @@ struct denode *dep; struct denode *pdep = VTODE(ap->a_dvp); struct timespec ts; - u_short mode + u_short mode; int error; #ifdef MSDOSFS_DEBUG ==== //depot/projects/trustedbsd/acl/sys/kern/kern_alq.c#5 (text+ko) ==== @@ -38,8 +38,10 @@ #include #include #include +#include #include #include +#include #include /* Async. Logging Queue */ ==== //depot/projects/trustedbsd/acl/sys/kern/kern_sig.c#6 (text+ko) ==== @@ -52,6 +52,7 @@ #include #include #include +#include #include #include #include @@ -2548,7 +2549,7 @@ NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_SYSSPACE, name, td); /* XXXKSE */ flags = O_CREAT | FWRITE | O_NOFOLLOW; /* - * XXXACL: creation mask here? */ + * XXXACL: creation mask here? */ FILEDESC_LOCK(td->td_proc->p_fd); cmask = td->td_proc->p_fd->fd_cmask; ==== //depot/projects/trustedbsd/acl/sys/kern/vfs_syscalls.c#5 (text+ko) ==== @@ -1155,7 +1155,7 @@ struct mount *mp; struct vattr vattr; char *syspath; - int error; + int cmask, error; struct nameidata nd; if (segflg == UIO_SYSSPACE) { ==== //depot/projects/trustedbsd/acl/sys/nfsclient/nfs_vnops.c#7 (text+ko) ==== @@ -216,7 +216,8 @@ VNODEOP_SET(fifo_nfsv2nodeop_opv_desc); static int nfs_mknodrpc(struct vnode *dvp, struct vnode **vpp, - struct componentname *cnp, struct vattr *vap); + struct componentname *cnp, struct vattr *vap, + int cmask); static int nfs_removerpc(struct vnode *dvp, const char *name, int namelen, struct ucred *cred, struct thread *td); static int nfs_renamerpc(struct vnode *fdvp, const char *fnameptr,