Deleted Added
full compact
vfs_syscalls.c (34951) vfs_syscalls.c (35105)
1/*
2 * Copyright (c) 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 * (c) UNIX System Laboratories, Inc.
5 * All or some portions of this file are derived from material licensed
6 * to the University of California by American Telephone and Telegraph
7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
8 * the permission of UNIX System Laboratories, Inc.

--- 22 unchanged lines hidden (view full) ---

31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 * SUCH DAMAGE.
37 *
38 * @(#)vfs_syscalls.c 8.13 (Berkeley) 4/15/94
1/*
2 * Copyright (c) 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 * (c) UNIX System Laboratories, Inc.
5 * All or some portions of this file are derived from material licensed
6 * to the University of California by American Telephone and Telegraph
7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
8 * the permission of UNIX System Laboratories, Inc.

--- 22 unchanged lines hidden (view full) ---

31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 * SUCH DAMAGE.
37 *
38 * @(#)vfs_syscalls.c 8.13 (Berkeley) 4/15/94
39 * $Id: vfs_syscalls.c,v 1.95 1998/03/08 09:57:21 julian Exp $
39 * $Id: vfs_syscalls.c,v 1.96 1998/03/29 18:23:44 dyson Exp $
40 */
41
42/* For 4.3 integer FS ID compatibility */
43#include "opt_compat.h"
44
45/*
46 * XXX - The following is required because of some magic done
47 * in getdirentries() below which is only done if the translucent

--- 212 unchanged lines hidden (view full) ---

260 * Set the mount level flags.
261 */
262 if (SCARG(uap, flags) & MNT_RDONLY)
263 mp->mnt_flag |= MNT_RDONLY;
264 else if (mp->mnt_flag & MNT_RDONLY)
265 mp->mnt_kern_flag |= MNTK_WANTRDWR;
266 mp->mnt_flag &=~ (MNT_NOSUID | MNT_NOEXEC | MNT_NODEV |
267 MNT_SYNCHRONOUS | MNT_UNION | MNT_ASYNC | MNT_NOATIME |
40 */
41
42/* For 4.3 integer FS ID compatibility */
43#include "opt_compat.h"
44
45/*
46 * XXX - The following is required because of some magic done
47 * in getdirentries() below which is only done if the translucent

--- 212 unchanged lines hidden (view full) ---

260 * Set the mount level flags.
261 */
262 if (SCARG(uap, flags) & MNT_RDONLY)
263 mp->mnt_flag |= MNT_RDONLY;
264 else if (mp->mnt_flag & MNT_RDONLY)
265 mp->mnt_kern_flag |= MNTK_WANTRDWR;
266 mp->mnt_flag &=~ (MNT_NOSUID | MNT_NOEXEC | MNT_NODEV |
267 MNT_SYNCHRONOUS | MNT_UNION | MNT_ASYNC | MNT_NOATIME |
268 MNT_NOSYMFOLLOW |
268 MNT_NOCLUSTERR | MNT_NOCLUSTERW | MNT_SUIDDIR);
269 mp->mnt_flag |= SCARG(uap, flags) & (MNT_NOSUID | MNT_NOEXEC |
270 MNT_NODEV | MNT_SYNCHRONOUS | MNT_UNION | MNT_ASYNC | MNT_FORCE |
269 MNT_NOCLUSTERR | MNT_NOCLUSTERW | MNT_SUIDDIR);
270 mp->mnt_flag |= SCARG(uap, flags) & (MNT_NOSUID | MNT_NOEXEC |
271 MNT_NODEV | MNT_SYNCHRONOUS | MNT_UNION | MNT_ASYNC | MNT_FORCE |
272 MNT_NOSYMFOLLOW |
271 MNT_NOATIME | MNT_NOCLUSTERR | MNT_NOCLUSTERW | MNT_SUIDDIR);
272 /*
273 * Mount the filesystem.
274 */
275 error = VFS_MOUNT(mp, SCARG(uap, path), SCARG(uap, data), &nd, p);
276 if (mp->mnt_flag & MNT_UPDATE) {
277 vrele(vp);
278 if (mp->mnt_kern_flag & MNTK_WANTRDWR)

--- 1219 unchanged lines hidden (view full) ---

1498 struct nameidata nd;
1499
1500 NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
1501 SCARG(uap, path), p);
1502 if (error = namei(&nd))
1503 return (error);
1504 vp = nd.ni_vp;
1505 error = vn_stat(vp, &sb, p);
273 MNT_NOATIME | MNT_NOCLUSTERR | MNT_NOCLUSTERW | MNT_SUIDDIR);
274 /*
275 * Mount the filesystem.
276 */
277 error = VFS_MOUNT(mp, SCARG(uap, path), SCARG(uap, data), &nd, p);
278 if (mp->mnt_flag & MNT_UPDATE) {
279 vrele(vp);
280 if (mp->mnt_kern_flag & MNTK_WANTRDWR)

--- 1219 unchanged lines hidden (view full) ---

1500 struct nameidata nd;
1501
1502 NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
1503 SCARG(uap, path), p);
1504 if (error = namei(&nd))
1505 return (error);
1506 vp = nd.ni_vp;
1507 error = vn_stat(vp, &sb, p);
1506 if (vp->v_type == VLNK)
1507 sb.st_mode |= S_IFLNK | ACCESSPERMS; /* 0777 */
1508 vput(vp);
1509 if (error)
1510 return (error);
1511 cvtstat(&sb, &osb);
1512 error = copyout((caddr_t)&osb, (caddr_t)SCARG(uap, ub), sizeof (osb));
1513 return (error);
1514}
1515

--- 85 unchanged lines hidden (view full) ---

1601 struct nameidata nd;
1602
1603 NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
1604 SCARG(uap, path), p);
1605 if (error = namei(&nd))
1606 return (error);
1607 vp = nd.ni_vp;
1608 error = vn_stat(vp, &sb, p);
1508 vput(vp);
1509 if (error)
1510 return (error);
1511 cvtstat(&sb, &osb);
1512 error = copyout((caddr_t)&osb, (caddr_t)SCARG(uap, ub), sizeof (osb));
1513 return (error);
1514}
1515

--- 85 unchanged lines hidden (view full) ---

1601 struct nameidata nd;
1602
1603 NDINIT(&nd, LOOKUP, NOFOLLOW | LOCKLEAF | NOOBJ, UIO_USERSPACE,
1604 SCARG(uap, path), p);
1605 if (error = namei(&nd))
1606 return (error);
1607 vp = nd.ni_vp;
1608 error = vn_stat(vp, &sb, p);
1609 if (vp->v_type == VLNK)
1610 sb.st_mode |= S_IFLNK | ACCESSPERMS; /* 0777 */
1611 vput(vp);
1612 if (error)
1613 return (error);
1614 error = copyout((caddr_t)&sb, (caddr_t)SCARG(uap, ub), sizeof (sb));
1615 return (error);
1616}
1617
1618/*

--- 1230 unchanged lines hidden ---
1609 vput(vp);
1610 if (error)
1611 return (error);
1612 error = copyout((caddr_t)&sb, (caddr_t)SCARG(uap, ub), sizeof (sb));
1613 return (error);
1614}
1615
1616/*

--- 1230 unchanged lines hidden ---