udf: Provide function to mark entry as deleted using new directory iteration code
authorJan Kara <jack@suse.cz>
Wed, 5 Oct 2022 17:26:59 +0000 (19:26 +0200)
committerJan Kara <jack@suse.cz>
Mon, 9 Jan 2023 09:39:52 +0000 (10:39 +0100)
Provide function udf_fiiter_delete_entry() to mark directory entry as
deleted using new directory iteration code.

Signed-off-by: Jan Kara <jack@suse.cz>
fs/udf/namei.c

index 964ac7d..f38ed9c 100644 (file)
@@ -711,6 +711,16 @@ out_ok:
        return fi;
 }
 
+static void udf_fiiter_delete_entry(struct udf_fileident_iter *iter)
+{
+       iter->fi.fileCharacteristics |= FID_FILE_CHAR_DELETED;
+
+       if (UDF_QUERY_FLAG(iter->dir->i_sb, UDF_FLAG_STRICT))
+               memset(&iter->fi.icb, 0x00, sizeof(struct long_ad));
+
+       udf_fiiter_write_fi(iter, NULL);
+}
+
 static int udf_delete_entry(struct inode *inode, struct fileIdentDesc *fi,
                            struct udf_fileident_bh *fibh,
                            struct fileIdentDesc *cfi)