Lines Matching defs:dir_ni

601 	ntfs_inode *ni, *dir_ni = NTFS_I(a->a_dvp);
624 if (!dir_ni) {
628 vol = dir_ni->vol;
633 (unsigned long long)dir_ni->mft_no,
640 if (!S_ISDIR(dir_ni->mode)) {
644 lck_rw_lock_shared(&dir_ni->lock);
646 if (NInoDeleted(dir_ni)) {
648 cache_purge(dir_ni->vn);
649 lck_rw_unlock_shared(&dir_ni->lock);
664 err = cache_lookup(dir_ni->vn, &vn, cn);
675 lck_rw_unlock_shared(&dir_ni->lock);
688 lck_rw_unlock_shared(&dir_ni->lock);
703 lck_rw_unlock_shared(&dir_ni->lock);
708 err = vnode_get(dir_ni->vn);
709 lck_rw_unlock_shared(&dir_ni->lock);
717 (unsigned long long)dir_ni->mft_no);
718 *a->a_vpp = dir_ni->vn;
723 vn = vnode_getparent(dir_ni->vn);
725 lck_rw_unlock_shared(&dir_ni->lock);
729 (unsigned long long)dir_ni->mft_no);
735 * directory @dir_ni and use its parent mft reference to run an
738 err = ntfs_inode_get_name_and_parent_mref(dir_ni, FALSE, &mref,
740 lck_rw_unlock_shared(&dir_ni->lock);
745 (unsigned long long)dir_ni->mft_no,
756 (unsigned long long)dir_ni->mft_no,
767 (unsigned long long)dir_ni->mft_no);
776 (unsigned long long)dir_ni->mft_no);
781 (unsigned long long)dir_ni->mft_no);
792 lck_rw_unlock_shared(&dir_ni->lock);
802 err = ntfs_lookup_inode_by_name(dir_ni, ntfs_name, ntfs_name_len,
805 lck_rw_unlock_shared(&dir_ni->lock);
813 * The name does not exist in the directory @dir_ni.
831 cache_enter(dir_ni->vn, NULL, cn);
854 lck_rw_unlock_shared(&dir_ni->lock);
900 lck_rw_unlock_shared(&dir_ni->lock);
928 dir_ni->vn, name_cn);
929 lck_rw_unlock_shared(&dir_ni->lock);
1082 cache_enter(dir_ni->vn, vn, &cn_buf);
1134 ntfs_inode *ni, *dir_ni = NTFS_I(dir_vn);
1145 if (!dir_ni) {
1149 vol = dir_ni->vol;
1150 if (!S_ISDIR(dir_ni->mode)) {
1155 if (dir_ni->file_attributes & FILE_ATTR_REPARSE_POINT) {
1177 fn->parent_directory = MK_LE_MREF(dir_ni->mft_no, dir_ni->seq_no);
1247 lck_rw_lock_exclusive(&dir_ni->lock);
1248 if (!dir_ni->link_count) {
1255 err = ntfs_mft_record_alloc(vol, va, cn, dir_ni, &ni, &m, &a);
1352 err = ntfs_dir_entry_add(dir_ni, fn, fn_size,
1372 cache_enter(dir_ni->vn, ni->vn, cn);
1374 lck_rw_unlock_exclusive(&dir_ni->lock);
1414 lck_rw_unlock_exclusive(&dir_ni->lock);
1432 if (dir_ni == vol->root_ni) {
1508 lck_rw_unlock_exclusive(&dir_ni->lock);
4011 * @dir_ni: directory ntfs inode from which to unlink the ntfs inode
4020 * inode @dir_ni.
4043 static errno_t ntfs_unlink_internal(ntfs_inode *dir_ni, ntfs_inode *ni,
4065 (unsigned long long)dir_ni->mft_no,
4412 if (MREF_LE(fn->parent_directory) != dir_ni->mft_no)
4493 err = ntfs_dir_entry_delete(dir_ni, ni, tfn, tfn_alloc);
4597 ni->last_mft_change_time = dir_ni->last_mft_change_time;
4644 * @dir_ni: directory ntfs inode from which to unlink the ntfs inode
4651 * the directory with ntfs inode @dir_ni.
4679 static errno_t ntfs_unlink(ntfs_inode *dir_ni, ntfs_inode *ni,
4699 (unsigned long long)dir_ni->mft_no, flags);
4712 if (!S_ISDIR(dir_ni->mode)) {
4715 (unsigned long long)dir_ni->mft_no);
4719 if (ni == dir_ni) {
4727 lck_rw_lock_exclusive(&dir_ni->lock);
4730 if (!dir_ni->link_count) {
4733 (unsigned long long)dir_ni->mft_no);
4738 cache_purge(dir_ni->vn);
4824 if (dir_ni == vol->extend_ni) {
4835 (dir_ni == vol->extend_ni) ?
4907 err = ntfs_lookup_inode_by_name(dir_ni, ntfs_name, ntfs_name_len,
4917 * The name does not exist in the directory @dir_ni.
4963 err = ntfs_unlink_internal(dir_ni, ni, ntfs_name, ntfs_name_len,
4970 (unsigned long long)dir_ni->mft_no, err);
4977 lck_rw_unlock_exclusive(&dir_ni->lock);
5019 ntfs_inode *dir_ni = NTFS_I(a->a_dvp);
5023 if (!dir_ni || !ni) {
5037 * @dir_ni: directory ntfs inode in which to create the hard link
5044 * the directory ntfs inode @dir_ni.
5058 static errno_t ntfs_link_internal(ntfs_inode *ni, ntfs_inode *dir_ni,
5077 cn->cn_nameptr, (unsigned long long)dir_ni->mft_no);
5101 fn->parent_directory = MK_LE_MREF(dir_ni->mft_no, dir_ni->seq_no);
5213 err = ntfs_dir_entry_add(dir_ni, fn, fn_size,
5290 ni->last_mft_change_time = dir_ni->last_mft_change_time;
5300 cache_purge_negatives(dir_ni->vn);
5328 vnode_update_identity(ni->vn, dir_ni->vn, cn->cn_nameptr,
5331 cache_enter(dir_ni->vn, ni->vn, cn);
5378 err2 = ntfs_dir_entry_delete(dir_ni, ni, fn, fn_size);
5415 ntfs_inode *ni, *dir_ni;
5422 dir_ni = NTFS_I(a->a_tdvp);
5423 if (!dir_ni || !ni) {
5431 cn->cn_nameptr, (unsigned long long)dir_ni->mft_no);
5440 if (!S_ISDIR(dir_ni->mode)) {
5443 (unsigned long long)dir_ni->mft_no);
5447 lck_rw_lock_exclusive(&dir_ni->lock);
5450 lck_rw_unlock_exclusive(&dir_ni->lock);
5460 if (!dir_ni->link_count) {
5463 (unsigned long long)dir_ni->mft_no);
5468 cache_purge(dir_ni->vn);
5577 err = ntfs_link_internal(ni, dir_ni, cn, FALSE, NULL, 0);
5585 (unsigned long long)dir_ni->mft_no,
5593 (unsigned long long)dir_ni->mft_no);
5599 lck_rw_unlock_exclusive(&dir_ni->lock);
6548 ntfs_inode *dir_ni = NTFS_I(a->a_dvp);
6553 if (!dir_ni || !ni) {
6557 err = ntfs_unlink(dir_ni, ni, a->a_cnp, 0, TRUE);
6595 ntfs_inode *dir_ni, *ni, *raw_ni;
6599 dir_ni = NTFS_I(a->a_dvp);
6600 if (!dir_ni) {
6607 (unsigned long long)dir_ni->mft_no, a->a_target);
6614 ntfs_error(dir_ni->vol->mp, "Invalid symbolic link target "
6621 err = ntfs_create(dir_ni->vn, a->a_vpp, a->a_cnp, a->a_vap, TRUE);
6624 ntfs_error(dir_ni->vol->mp, "Failed to create "
6630 (unsigned long long)dir_ni->mft_no,
6638 (unsigned long long)dir_ni->mft_no,
6660 ntfs_error(dir_ni->vol->mp, "Failed to allocate UIO.");
6718 ntfs_error(dir_ni->vol->mp, "Failed to write target path to symbolic "
6722 err2 = ntfs_unlink(dir_ni, ni, a->a_cnp, 0, FALSE);
6724 ntfs_error(dir_ni->vol->mp, "Failed to unlink symbolic link "
6727 NVolSetErrors(dir_ni->vol);
6786 ntfs_inode *dir_ni = NTFS_I(a->a_vp);
6789 if (!dir_ni) {
6794 (unsigned long long)dir_ni->mft_no);
6798 * that @dir_ni is a directory. We do not currently support NFS
6802 if (!S_ISDIR(dir_ni->mode)) {
6807 ntfs_error(dir_ni->vol->mp, "None of the VNODE_READDIR_* "
6811 lck_rw_lock_shared(&dir_ni->lock);
6813 if (NInoDeleted(dir_ni)) {
6815 cache_purge(dir_ni->vn);
6816 lck_rw_unlock_shared(&dir_ni->lock);
6821 err = ntfs_readdir(dir_ni, a->a_uio, a->a_eofflag, a->a_numdirent);
6828 if (uio_resid(a->a_uio) < start_count && !NVolReadOnly(dir_ni->vol) &&
6829 !(vfs_flags(dir_ni->vol->mp) & MNT_NOATIME)) {
6830 dir_ni->last_access_time = ntfs_utc_current_time();
6831 NInoSetDirtyTimes(dir_ni);
6833 lck_rw_unlock_shared(&dir_ni->lock);