Lines Matching refs:cfi
43 int udf_write_fi(struct inode *inode, struct fileIdentDesc *cfi, in udf_write_fi() argument
50 uint16_t liu = le16_to_cpu(cfi->lengthOfImpUse); in udf_write_fi()
51 uint8_t lfi = cfi->lengthFileIdent; in udf_write_fi()
99 crc = crc_itu_t(0, (uint8_t *)cfi + sizeof(struct tag), in udf_write_fi()
118 cfi->descTag.descCRC = cpu_to_le16(crc); in udf_write_fi()
119 cfi->descTag.descCRCLength = cpu_to_le16(crclen); in udf_write_fi()
120 cfi->descTag.tagChecksum = udf_tag_checksum(&cfi->descTag); in udf_write_fi()
123 memcpy((uint8_t *)sfi, (uint8_t *)cfi, in udf_write_fi()
126 memcpy((uint8_t *)sfi, (uint8_t *)cfi, -fibh->soffset); in udf_write_fi()
127 memcpy(fibh->ebh->b_data, (uint8_t *)cfi - fibh->soffset, in udf_write_fi()
144 struct fileIdentDesc *cfi) in udf_find_entry() argument
191 fi = udf_fileident_read(dir, &f_pos, fibh, cfi, &epos, &eloc, in udf_find_entry()
196 liu = le16_to_cpu(cfi->lengthOfImpUse); in udf_find_entry()
197 lfi = cfi->lengthFileIdent; in udf_find_entry()
219 if ((cfi->fileCharacteristics & FID_FILE_CHAR_DELETED) != 0) { in udf_find_entry()
224 if ((cfi->fileCharacteristics & FID_FILE_CHAR_HIDDEN) != 0) { in udf_find_entry()
229 if ((cfi->fileCharacteristics & FID_FILE_CHAR_PARENT) && in udf_find_entry()
257 struct fileIdentDesc cfi; in udf_lookup() local
278 if (udf_find_entry(dir, &dentry->d_name, &fibh, &cfi)) { in udf_lookup()
285 loc = lelb_to_cpu(cfi.icb.extLocation); in udf_lookup()
297 struct fileIdentDesc *cfi, int *err) in udf_add_entry() argument
370 fi = udf_fileident_read(dir, &f_pos, fibh, cfi, &epos, &eloc, in udf_add_entry()
378 liu = le16_to_cpu(cfi->lengthOfImpUse); in udf_add_entry()
379 lfi = cfi->lengthFileIdent; in udf_add_entry()
381 if ((cfi->fileCharacteristics & FID_FILE_CHAR_DELETED) != 0) { in udf_add_entry()
384 cfi->descTag.tagSerialNum = cpu_to_le16(1); in udf_add_entry()
385 cfi->fileVersionNum = cpu_to_le16(1); in udf_add_entry()
386 cfi->fileCharacteristics = 0; in udf_add_entry()
387 cfi->lengthFileIdent = namelen; in udf_add_entry()
388 cfi->lengthOfImpUse = cpu_to_le16(0); in udf_add_entry()
389 if (!udf_write_fi(dir, cfi, fi, fibh, NULL, in udf_add_entry()
493 memset(cfi, 0, sizeof(struct fileIdentDesc)); in udf_add_entry()
495 udf_new_tag((char *)cfi, TAG_IDENT_FID, 3, 1, block, in udf_add_entry()
498 udf_new_tag((char *)cfi, TAG_IDENT_FID, 2, 1, block, in udf_add_entry()
500 cfi->fileVersionNum = cpu_to_le16(1); in udf_add_entry()
501 cfi->lengthFileIdent = namelen; in udf_add_entry()
502 cfi->lengthOfImpUse = cpu_to_le16(0); in udf_add_entry()
503 if (!udf_write_fi(dir, cfi, fi, fibh, NULL, name)) { in udf_add_entry()
541 struct fileIdentDesc *cfi) in udf_delete_entry() argument
543 cfi->fileCharacteristics |= FID_FILE_CHAR_DELETED; in udf_delete_entry()
546 memset(&(cfi->icb), 0x00, sizeof(struct long_ad)); in udf_delete_entry()
548 return udf_write_fi(inode, cfi, fi, fibh, NULL, NULL); in udf_delete_entry()
556 struct fileIdentDesc cfi, *fi; in udf_add_nondir() local
559 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_add_nondir()
566 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_add_nondir()
567 cfi.icb.extLocation = cpu_to_lelb(iinfo->i_location); in udf_add_nondir()
568 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_add_nondir()
570 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_add_nondir()
640 struct fileIdentDesc cfi, *fi; in udf_mkdir() local
652 fi = udf_add_entry(inode, NULL, &fibh, &cfi, &err); in udf_mkdir()
660 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_mkdir()
661 cfi.icb.extLocation = cpu_to_lelb(dinfo->i_location); in udf_mkdir()
662 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_mkdir()
664 cfi.fileCharacteristics = in udf_mkdir()
666 udf_write_fi(inode, &cfi, fi, &fibh, NULL, NULL); in udf_mkdir()
670 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_mkdir()
678 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_mkdir()
679 cfi.icb.extLocation = cpu_to_lelb(iinfo->i_location); in udf_mkdir()
680 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_mkdir()
682 cfi.fileCharacteristics |= FID_FILE_CHAR_DIRECTORY; in udf_mkdir()
683 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_mkdir()
700 struct fileIdentDesc *fi, cfi; in empty_dir() local
739 fi = udf_fileident_read(dir, &f_pos, &fibh, &cfi, &epos, &eloc, in empty_dir()
749 if (cfi.lengthFileIdent && in empty_dir()
750 (cfi.fileCharacteristics & FID_FILE_CHAR_DELETED) == 0) { in empty_dir()
772 struct fileIdentDesc *fi, cfi; in udf_rmdir() local
776 fi = udf_find_entry(dir, &dentry->d_name, &fibh, &cfi); in udf_rmdir()
781 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_rmdir()
787 retval = udf_delete_entry(dir, fi, &fibh, &cfi); in udf_rmdir()
815 struct fileIdentDesc cfi; in udf_unlink() local
819 fi = udf_find_entry(dir, &dentry->d_name, &fibh, &cfi); in udf_unlink()
824 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_unlink()
833 retval = udf_delete_entry(dir, fi, &fibh, &cfi); in udf_unlink()
1004 struct fileIdentDesc cfi, *fi; in udf_link() local
1007 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_link()
1011 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_link()
1012 cfi.icb.extLocation = cpu_to_lelb(UDF_I(inode)->i_location); in udf_link()
1014 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_link()
1017 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_link()
1179 struct fileIdentDesc cfi; in udf_get_parent() local
1182 if (!udf_find_entry(d_inode(child), &dotdot, &fibh, &cfi)) in udf_get_parent()
1189 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_get_parent()