Lines Matching defs:ni
50 * @ni: opened ntfs inode for which perform check
61 int ntfs_attrlist_need(ntfs_inode *ni)
65 if (!ni) {
71 ntfs_log_trace("Entering for inode 0x%llx.\n", (long long) ni->mft_no);
73 if (!NInoAttrList(ni)) {
79 if (!ni->attr_list) {
86 ale = (ATTR_LIST_ENTRY *)ni->attr_list;
87 while ((u8*)ale < ni->attr_list + ni->attr_list_size) {
88 if (MREF_LE(ale->mft_reference) != ni->mft_no)
97 * @ni: opened ntfs inode, which contains that attribute
107 int ntfs_attrlist_entry_add(ntfs_inode *ni, ATTR_RECORD *attr)
117 (long long) ni->mft_no,
120 if (!ni || !attr) {
126 mref = MK_LE_MREF(ni->mft_no, le16_to_cpu(ni->mrec->sequence_number));
128 if (ni->nr_extents == -1)
129 ni = ni->base_ni;
131 if (!NInoAttrList(ni)) {
140 new_al = ntfs_calloc(ni->attr_list_size + entry_len);
145 ctx = ntfs_attr_get_search_ctx(ni, NULL);
179 /* Don't need it anymore, @ctx->al_entry points to @ni->attr_list. */
183 entry_offset = ((u8 *)ale - ni->attr_list);
203 na = ntfs_attr_open(ni, AT_ATTRIBUTE_LIST, AT_UNNAMED, 0);
209 if (ntfs_attr_truncate(na, ni->attr_list_size + entry_len)) {
216 memcpy(new_al, ni->attr_list, entry_offset);
217 memcpy(new_al + entry_offset + entry_len, ni->attr_list +
218 entry_offset, ni->attr_list_size - entry_offset);
221 free(ni->attr_list);
222 ni->attr_list = new_al;
223 ni->attr_list_size = ni->attr_list_size + entry_len;
224 NInoAttrListSetDirty(ni);