Deleted Added
full compact
ufs_vnops.c (105572) ufs_vnops.c (105988)
1/*
2 * Copyright (c) 1982, 1986, 1989, 1993, 1995
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 * @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
1/*
2 * Copyright (c) 1982, 1986, 1989, 1993, 1995
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 * @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
39 * $FreeBSD: head/sys/ufs/ufs/ufs_vnops.c 105572 2002-10-20 22:11:13Z rwatson $
39 * $FreeBSD: head/sys/ufs/ufs/ufs_vnops.c 105988 2002-10-26 14:38:24Z rwatson $
40 */
41
42#include "opt_mac.h"
43#include "opt_quota.h"
44#include "opt_suiddir.h"
45#include "opt_ufs.h"
46
47#include <sys/param.h>

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

1518 DIP(dp, i_nlink) = dp->i_nlink;
1519 dp->i_flag |= IN_CHANGE;
1520 if (DOINGSOFTDEP(dvp))
1521 softdep_change_linkcnt(dp);
1522 error = UFS_UPDATE(tvp, !(DOINGSOFTDEP(dvp) | DOINGASYNC(dvp)));
1523 if (error)
1524 goto bad;
1525#ifdef MAC
40 */
41
42#include "opt_mac.h"
43#include "opt_quota.h"
44#include "opt_suiddir.h"
45#include "opt_ufs.h"
46
47#include <sys/param.h>

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

1518 DIP(dp, i_nlink) = dp->i_nlink;
1519 dp->i_flag |= IN_CHANGE;
1520 if (DOINGSOFTDEP(dvp))
1521 softdep_change_linkcnt(dp);
1522 error = UFS_UPDATE(tvp, !(DOINGSOFTDEP(dvp) | DOINGASYNC(dvp)));
1523 if (error)
1524 goto bad;
1525#ifdef MAC
1526 error = vop_stdcreatevnode_ea(dvp, tvp, cnp->cn_cred);
1527 if (error)
1528 goto bad;
1526 if (dvp->v_mount->mnt_flag & MNT_MULTILABEL) {
1527 error = mac_create_vnode_extattr(cnp->cn_cred, dvp->v_mount,
1528 dvp, tvp, cnp);
1529 if (error)
1530 goto bad;
1531 }
1529#endif
1530#ifdef UFS_ACL
1531 if (acl != NULL) {
1532 /*
1533 * XXX: If we abort now, will Soft Updates notify the extattr
1534 * code that the EAs for the file need to be released?
1535 */
1536 error = VOP_SETACL(tvp, ACL_TYPE_ACCESS, acl, cnp->cn_cred,

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

2454
2455 /*
2456 * Make sure inode goes to disk before directory entry.
2457 */
2458 error = UFS_UPDATE(tvp, !(DOINGSOFTDEP(tvp) | DOINGASYNC(tvp)));
2459 if (error)
2460 goto bad;
2461#ifdef MAC
1532#endif
1533#ifdef UFS_ACL
1534 if (acl != NULL) {
1535 /*
1536 * XXX: If we abort now, will Soft Updates notify the extattr
1537 * code that the EAs for the file need to be released?
1538 */
1539 error = VOP_SETACL(tvp, ACL_TYPE_ACCESS, acl, cnp->cn_cred,

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

2457
2458 /*
2459 * Make sure inode goes to disk before directory entry.
2460 */
2461 error = UFS_UPDATE(tvp, !(DOINGSOFTDEP(tvp) | DOINGASYNC(tvp)));
2462 if (error)
2463 goto bad;
2464#ifdef MAC
2462 error = vop_stdcreatevnode_ea(dvp, tvp, cnp->cn_cred);
2463 if (error)
2464 goto bad;
2465 if (dvp->v_mount->mnt_flag & MNT_MULTILABEL) {
2466 error = mac_create_vnode_extattr(cnp->cn_cred, dvp->v_mount,
2467 dvp, tvp, cnp);
2468 if (error)
2469 goto bad;
2470 }
2465#endif
2466#ifdef UFS_ACL
2467 if (acl != NULL) {
2468 /*
2469 * XXX: If we abort now, will Soft Updates notify the extattr
2470 * code that the EAs for the file need to be released?
2471 */
2472 error = VOP_SETACL(tvp, ACL_TYPE_ACCESS, acl, cnp->cn_cred,

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

2644 { &vop_pathconf_desc, (vop_t *) ufs_pathconf },
2645 { &vop_poll_desc, (vop_t *) vop_stdpoll },
2646 { &vop_kqfilter_desc, (vop_t *) ufs_kqfilter },
2647 { &vop_getwritemount_desc, (vop_t *) vop_stdgetwritemount },
2648 { &vop_print_desc, (vop_t *) ufs_print },
2649 { &vop_readdir_desc, (vop_t *) ufs_readdir },
2650 { &vop_readlink_desc, (vop_t *) ufs_readlink },
2651 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2471#endif
2472#ifdef UFS_ACL
2473 if (acl != NULL) {
2474 /*
2475 * XXX: If we abort now, will Soft Updates notify the extattr
2476 * code that the EAs for the file need to be released?
2477 */
2478 error = VOP_SETACL(tvp, ACL_TYPE_ACCESS, acl, cnp->cn_cred,

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

2650 { &vop_pathconf_desc, (vop_t *) ufs_pathconf },
2651 { &vop_poll_desc, (vop_t *) vop_stdpoll },
2652 { &vop_kqfilter_desc, (vop_t *) ufs_kqfilter },
2653 { &vop_getwritemount_desc, (vop_t *) vop_stdgetwritemount },
2654 { &vop_print_desc, (vop_t *) ufs_print },
2655 { &vop_readdir_desc, (vop_t *) ufs_readdir },
2656 { &vop_readlink_desc, (vop_t *) ufs_readlink },
2657 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2652#ifdef MAC
2653 { &vop_refreshlabel_desc, (vop_t *) vop_stdrefreshlabel_ea },
2654#endif
2655 { &vop_remove_desc, (vop_t *) ufs_remove },
2656 { &vop_rename_desc, (vop_t *) ufs_rename },
2657 { &vop_rmdir_desc, (vop_t *) ufs_rmdir },
2658 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2659#ifdef MAC
2660 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2661#endif
2662 { &vop_strategy_desc, (vop_t *) ufs_strategy },

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

2685 { &vop_close_desc, (vop_t *) ufsspec_close },
2686 { &vop_getattr_desc, (vop_t *) ufs_getattr },
2687 { &vop_inactive_desc, (vop_t *) ufs_inactive },
2688 { &vop_islocked_desc, (vop_t *) vop_stdislocked },
2689 { &vop_lock_desc, (vop_t *) vop_stdlock },
2690 { &vop_print_desc, (vop_t *) ufs_print },
2691 { &vop_read_desc, (vop_t *) ufsspec_read },
2692 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2658 { &vop_remove_desc, (vop_t *) ufs_remove },
2659 { &vop_rename_desc, (vop_t *) ufs_rename },
2660 { &vop_rmdir_desc, (vop_t *) ufs_rmdir },
2661 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2662#ifdef MAC
2663 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2664#endif
2665 { &vop_strategy_desc, (vop_t *) ufs_strategy },

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

2688 { &vop_close_desc, (vop_t *) ufsspec_close },
2689 { &vop_getattr_desc, (vop_t *) ufs_getattr },
2690 { &vop_inactive_desc, (vop_t *) ufs_inactive },
2691 { &vop_islocked_desc, (vop_t *) vop_stdislocked },
2692 { &vop_lock_desc, (vop_t *) vop_stdlock },
2693 { &vop_print_desc, (vop_t *) ufs_print },
2694 { &vop_read_desc, (vop_t *) ufsspec_read },
2695 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2693#ifdef MAC
2694 { &vop_refreshlabel_desc, (vop_t *) vop_stdrefreshlabel_ea },
2695#endif
2696 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2697#ifdef MAC
2698 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2699#endif
2700 { &vop_unlock_desc, (vop_t *) vop_stdunlock },
2701 { &vop_write_desc, (vop_t *) ufsspec_write },
2702#ifdef UFS_EXTATTR
2703 { &vop_getextattr_desc, (vop_t *) ufs_getextattr },

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

2722 { &vop_getattr_desc, (vop_t *) ufs_getattr },
2723 { &vop_inactive_desc, (vop_t *) ufs_inactive },
2724 { &vop_islocked_desc, (vop_t *) vop_stdislocked },
2725 { &vop_kqfilter_desc, (vop_t *) ufsfifo_kqfilter },
2726 { &vop_lock_desc, (vop_t *) vop_stdlock },
2727 { &vop_print_desc, (vop_t *) ufs_print },
2728 { &vop_read_desc, (vop_t *) ufsfifo_read },
2729 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2696 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2697#ifdef MAC
2698 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2699#endif
2700 { &vop_unlock_desc, (vop_t *) vop_stdunlock },
2701 { &vop_write_desc, (vop_t *) ufsspec_write },
2702#ifdef UFS_EXTATTR
2703 { &vop_getextattr_desc, (vop_t *) ufs_getextattr },

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

2722 { &vop_getattr_desc, (vop_t *) ufs_getattr },
2723 { &vop_inactive_desc, (vop_t *) ufs_inactive },
2724 { &vop_islocked_desc, (vop_t *) vop_stdislocked },
2725 { &vop_kqfilter_desc, (vop_t *) ufsfifo_kqfilter },
2726 { &vop_lock_desc, (vop_t *) vop_stdlock },
2727 { &vop_print_desc, (vop_t *) ufs_print },
2728 { &vop_read_desc, (vop_t *) ufsfifo_read },
2729 { &vop_reclaim_desc, (vop_t *) ufs_reclaim },
2730#ifdef MAC
2731 { &vop_refreshlabel_desc, (vop_t *) vop_stdrefreshlabel_ea },
2732#endif
2733 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2734#ifdef MAC
2735 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2736#endif
2737 { &vop_unlock_desc, (vop_t *) vop_stdunlock },
2738 { &vop_write_desc, (vop_t *) ufsfifo_write },
2739#ifdef UFS_EXTATTR
2740 { &vop_getextattr_desc, (vop_t *) ufs_getextattr },

--- 42 unchanged lines hidden ---
2730 { &vop_setattr_desc, (vop_t *) ufs_setattr },
2731#ifdef MAC
2732 { &vop_setlabel_desc, (vop_t *) vop_stdsetlabel_ea },
2733#endif
2734 { &vop_unlock_desc, (vop_t *) vop_stdunlock },
2735 { &vop_write_desc, (vop_t *) ufsfifo_write },
2736#ifdef UFS_EXTATTR
2737 { &vop_getextattr_desc, (vop_t *) ufs_getextattr },

--- 42 unchanged lines hidden ---