union_vnops.c (27ed09c2f080ccf8a1216cb6ccf5a92e96046d03) | union_vnops.c (831a80b0d5d50e416fe5e4b237d3a9fd4eea00b8) |
---|---|
1/* 2 * Copyright (c) 1992, 1993, 1994, 1995 Jan-Simon Pendry. 3 * Copyright (c) 1992, 1993, 1994, 1995 4 * The Regents of the University of California. All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * Jan-Simon Pendry. 8 * --- 21 unchanged lines hidden (view full) --- 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 35 * SUCH DAMAGE. 36 * 37 * @(#)union_vnops.c 8.32 (Berkeley) 6/23/95 | 1/* 2 * Copyright (c) 1992, 1993, 1994, 1995 Jan-Simon Pendry. 3 * Copyright (c) 1992, 1993, 1994, 1995 4 * The Regents of the University of California. All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * Jan-Simon Pendry. 8 * --- 21 unchanged lines hidden (view full) --- 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 35 * SUCH DAMAGE. 36 * 37 * @(#)union_vnops.c 8.32 (Berkeley) 6/23/95 |
38 * $Id: union_vnops.c,v 1.58 1998/07/04 20:45:35 julian Exp $ | 38 * $Id: union_vnops.c,v 1.59 1998/12/14 05:00:59 dillon Exp $ |
39 */ 40 41#include <sys/param.h> 42#include <sys/systm.h> 43#include <sys/proc.h> 44#include <sys/fcntl.h> 45#include <sys/stat.h> 46#include <sys/kernel.h> --- 643 unchanged lines hidden (view full) --- 690 struct vnode *vp; 691 struct vnode *savedvp; 692 693 /* 694 * Disallow write attempts on filesystems mounted read-only. 695 */ 696 if (ap->a_mode & VWRITE && (ap->a_vp->v_mount->mnt_flag & MNT_RDONLY)) { 697 switch (ap->a_vp->v_type) { | 39 */ 40 41#include <sys/param.h> 42#include <sys/systm.h> 43#include <sys/proc.h> 44#include <sys/fcntl.h> 45#include <sys/stat.h> 46#include <sys/kernel.h> --- 643 unchanged lines hidden (view full) --- 690 struct vnode *vp; 691 struct vnode *savedvp; 692 693 /* 694 * Disallow write attempts on filesystems mounted read-only. 695 */ 696 if (ap->a_mode & VWRITE && (ap->a_vp->v_mount->mnt_flag & MNT_RDONLY)) { 697 switch (ap->a_vp->v_type) { |
698 case VREG: case VDIR: case VLNK: | 698 case VREG: 699 case VDIR: 700 case VLNK: |
699 return (EROFS); | 701 return (EROFS); |
702 default: 703 break; |
|
700 } 701 } 702 if ((vp = un->un_uppervp) != NULLVP) { 703 FIXUP(un, p); 704 ap->a_vp = vp; 705 return (VCALL(vp, VOFFSET(vop_access), ap)); 706 } 707 --- 1093 unchanged lines hidden --- | 704 } 705 } 706 if ((vp = un->un_uppervp) != NULLVP) { 707 FIXUP(un, p); 708 ap->a_vp = vp; 709 return (VCALL(vp, VOFFSET(vop_access), ap)); 710 } 711 --- 1093 unchanged lines hidden --- |