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()
163 struct fileIdentDesc *cfi) in udf_find_entry() argument
217 fi = udf_fileident_read(dir, &f_pos, fibh, cfi, &epos, &eloc, in udf_find_entry()
224 liu = le16_to_cpu(cfi->lengthOfImpUse); in udf_find_entry()
225 lfi = cfi->lengthFileIdent; in udf_find_entry()
247 if ((cfi->fileCharacteristics & FID_FILE_CHAR_DELETED) != 0) { in udf_find_entry()
252 if ((cfi->fileCharacteristics & FID_FILE_CHAR_HIDDEN) != 0) { in udf_find_entry()
257 if ((cfi->fileCharacteristics & FID_FILE_CHAR_PARENT) && in udf_find_entry()
290 struct fileIdentDesc cfi; in udf_lookup() local
312 fi = udf_find_entry(dir, &dentry->d_name, &fibh, &cfi); in udf_lookup()
323 loc = lelb_to_cpu(cfi.icb.extLocation); in udf_lookup()
335 struct fileIdentDesc *cfi, int *err) in udf_add_entry() argument
408 fi = udf_fileident_read(dir, &f_pos, fibh, cfi, &epos, &eloc, in udf_add_entry()
416 liu = le16_to_cpu(cfi->lengthOfImpUse); in udf_add_entry()
417 lfi = cfi->lengthFileIdent; in udf_add_entry()
419 if ((cfi->fileCharacteristics & FID_FILE_CHAR_DELETED) != 0) { in udf_add_entry()
422 cfi->descTag.tagSerialNum = cpu_to_le16(1); in udf_add_entry()
423 cfi->fileVersionNum = cpu_to_le16(1); in udf_add_entry()
424 cfi->fileCharacteristics = 0; in udf_add_entry()
425 cfi->lengthFileIdent = namelen; in udf_add_entry()
426 cfi->lengthOfImpUse = cpu_to_le16(0); in udf_add_entry()
427 if (!udf_write_fi(dir, cfi, fi, fibh, NULL, in udf_add_entry()
531 memset(cfi, 0, sizeof(struct fileIdentDesc)); in udf_add_entry()
533 udf_new_tag((char *)cfi, TAG_IDENT_FID, 3, 1, block, in udf_add_entry()
536 udf_new_tag((char *)cfi, TAG_IDENT_FID, 2, 1, block, in udf_add_entry()
538 cfi->fileVersionNum = cpu_to_le16(1); in udf_add_entry()
539 cfi->lengthFileIdent = namelen; in udf_add_entry()
540 cfi->lengthOfImpUse = cpu_to_le16(0); in udf_add_entry()
541 if (!udf_write_fi(dir, cfi, fi, fibh, NULL, name)) { in udf_add_entry()
579 struct fileIdentDesc *cfi) in udf_delete_entry() argument
581 cfi->fileCharacteristics |= FID_FILE_CHAR_DELETED; in udf_delete_entry()
584 memset(&(cfi->icb), 0x00, sizeof(struct long_ad)); in udf_delete_entry()
586 return udf_write_fi(inode, cfi, fi, fibh, NULL, NULL); in udf_delete_entry()
594 struct fileIdentDesc cfi, *fi; in udf_add_nondir() local
597 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_add_nondir()
604 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_add_nondir()
605 cfi.icb.extLocation = cpu_to_lelb(iinfo->i_location); in udf_add_nondir()
606 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_add_nondir()
608 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_add_nondir()
678 struct fileIdentDesc cfi, *fi; in udf_mkdir() local
690 fi = udf_add_entry(inode, NULL, &fibh, &cfi, &err); in udf_mkdir()
698 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_mkdir()
699 cfi.icb.extLocation = cpu_to_lelb(dinfo->i_location); in udf_mkdir()
700 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_mkdir()
702 cfi.fileCharacteristics = in udf_mkdir()
704 udf_write_fi(inode, &cfi, fi, &fibh, NULL, NULL); in udf_mkdir()
708 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_mkdir()
716 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_mkdir()
717 cfi.icb.extLocation = cpu_to_lelb(iinfo->i_location); in udf_mkdir()
718 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_mkdir()
720 cfi.fileCharacteristics |= FID_FILE_CHAR_DIRECTORY; in udf_mkdir()
721 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_mkdir()
738 struct fileIdentDesc *fi, cfi; in empty_dir() local
777 fi = udf_fileident_read(dir, &f_pos, &fibh, &cfi, &epos, &eloc, in empty_dir()
787 if (cfi.lengthFileIdent && in empty_dir()
788 (cfi.fileCharacteristics & FID_FILE_CHAR_DELETED) == 0) { in empty_dir()
810 struct fileIdentDesc *fi, cfi; in udf_rmdir() local
814 fi = udf_find_entry(dir, &dentry->d_name, &fibh, &cfi); in udf_rmdir()
822 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_rmdir()
828 retval = udf_delete_entry(dir, fi, &fibh, &cfi); in udf_rmdir()
856 struct fileIdentDesc cfi; in udf_unlink() local
860 fi = udf_find_entry(dir, &dentry->d_name, &fibh, &cfi); in udf_unlink()
869 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_unlink()
878 retval = udf_delete_entry(dir, fi, &fibh, &cfi); in udf_unlink()
1049 struct fileIdentDesc cfi, *fi; in udf_link() local
1052 fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err); in udf_link()
1056 cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize); in udf_link()
1057 cfi.icb.extLocation = cpu_to_lelb(UDF_I(inode)->i_location); in udf_link()
1059 *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse = in udf_link()
1062 udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL); in udf_link()
1230 struct fileIdentDesc cfi; in udf_get_parent() local
1233 if (!udf_find_entry(d_inode(child), &dotdot, &fibh, &cfi)) in udf_get_parent()
1240 tloc = lelb_to_cpu(cfi.icb.extLocation); in udf_get_parent()