Lines Matching +full:attribute +full:- +full:set

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * inode.h - Defines for inode structures NTFS Linux kernel driver. Part of
4 * the Linux-NTFS project.
6 * Copyright (c) 2001-2007 Anton Altaparmakov
30 * The NTFS in-memory inode structure. It is just used as an extension to the
35 s64 initialized_size; /* Copy from the attribute record. */
36 s64 allocated_size; /* Copy from the attribute record. */
44 * If NInoAttr() is true, the below fields describe the attribute which
45 * this fake inode belongs to. The actual inode of this attribute is
46 * pointed to by base_ntfs_ino and nr_extents is always set to -1 (see
47 * below). For real inodes, we also set the type (AT_DATA for files and
52 ATTR_TYPE type; /* Attribute type of this fake inode. */
53 ntfschar *name; /* Attribute name of this fake inode. */
54 u32 name_len; /* Attribute name length of this fake inode. */
55 runlist runlist; /* If state has the NI_NonResident bit set,
56 the runlist of the unnamed data attribute
58 attribute (directory) or of the attribute
62 NI_NonResident is clear, the attribute is
64 no $I30 index allocation attribute
80 * Attribute list support (only for use by the attribute lookup
81 * functions). Setup during read_inode for all inodes with attribute
82 * lists. Only valid if NI_AttrList is set in state, and attr_list_rl is
83 * further only valid if NI_AttrListNonResident is set.
85 u32 attr_list_size; /* Length of attribute list value in bytes. */
86 u8 *attr_list; /* Attribute list value itself. */
87 runlist attr_list_rl; /* Run list for the attribute list value. */
98 struct { /* It is a compressed/sparse file/attribute inode. */
111 inodes describing an attribute this is -1. */
118 ntfs_inode *base_ntfs_ino; /* For nr_extents == -1, the
122 the attribute belongs. */
132 NI_AttrList, /* 1: Mft record contains an attribute list. */
133 NI_AttrListNonResident, /* 1: Attribute list is non-resident. Implies
134 NI_AttrList is set. */
136 NI_Attr, /* 1: Fake inode for attribute i/o.
139 NI_MstProtected, /* 1: Attribute is protected by MST fixups.
140 0: Attribute is not protected by fixups. */
141 NI_NonResident, /* 1: Unnamed data attr is non-resident (f).
142 1: Attribute is non-resident (a). */
147 1: Attribute is compressed (a). */
150 1: Attribute is encrypted (a). */
153 1: Attribute is sparse (a). */
171 return test_bit(NI_##flag, &(ni)->state); \
175 set_bit(NI_##flag, &(ni)->state); \
179 clear_bit(NI_##flag, &(ni)->state); \
188 return test_and_set_bit(NI_##flag, &(ni)->state); \
192 return test_and_clear_bit(NI_##flag, &(ni)->state); \
221 * NTFS_I - return the ntfs inode given a vfs inode
233 return &((big_ntfs_inode *)ni)->vfs_inode; in VFS_I()
237 * ntfs_attr - ntfs in memory attribute structure
238 * @mft_no: mft record number of the base mft record of this attribute
239 * @name: Unicode name of the attribute (NULL if unnamed)
241 * @type: attribute type (see layout.h)
275 __ntfs_init_inode(vi->i_sb, ni); in ntfs_init_big_inode()
276 ni->mft_no = vi->i_ino; in ntfs_init_big_inode()