OSDN Git Service

android-x86/external-exfat.git
8 years agoAdd cluster number endianness conversion when writing it to FAT.
relan [Fri, 21 May 2010 16:36:45 +0000 (16:36 +0000)]
Add cluster number endianness conversion when writing it to FAT.

8 years agoAdd missing endianness conversion for cluster number.
relan [Sun, 16 May 2010 09:02:27 +0000 (09:02 +0000)]
Add missing endianness conversion for cluster number.

8 years agoUse b2o() in exfat_c2o() for consistency.
relan [Sun, 16 May 2010 08:54:06 +0000 (08:54 +0000)]
Use b2o() in exfat_c2o() for consistency.

8 years agoCreate symlink mount.exfat -> mount.exfat-fuse on install.
relan [Sat, 24 Apr 2010 07:26:53 +0000 (07:26 +0000)]
Create symlink mount.exfat -> mount.exfat-fuse on install.

This is required for udev.

8 years agoCheck FAT count on mount.
relan [Sat, 24 Apr 2010 07:13:05 +0000 (07:13 +0000)]
Check FAT count on mount.

8 years agoCheck FS version on mount.
relan [Sat, 24 Apr 2010 07:08:37 +0000 (07:08 +0000)]
Check FS version on mount.

8 years agoFix integer overflow in block number calculation code.
relan [Tue, 20 Apr 2010 19:05:18 +0000 (19:05 +0000)]
Fix integer overflow in block number calculation code.

8 years agoAdd fsname option (required for automounting).
relan [Tue, 13 Apr 2010 17:48:06 +0000 (17:48 +0000)]
Add fsname option (required for automounting).

8 years agoImplement dynamic allocation of mount options string.
relan [Tue, 13 Apr 2010 17:39:41 +0000 (17:39 +0000)]
Implement dynamic allocation of mount options string.

Also enable allow_other and blkdev options by default.

8 years agoUpdate superblock format definition.
relan [Sun, 11 Apr 2010 07:34:39 +0000 (07:34 +0000)]
Update superblock format definition.

8 years agoBump version to 0.9.0.
relan [Mon, 22 Feb 2010 08:47:39 +0000 (08:47 +0000)]
Bump version to 0.9.0.

8 years agoImplement dynamic calculation of free clusters count.
relan [Mon, 15 Feb 2010 19:22:23 +0000 (19:22 +0000)]
Implement dynamic calculation of free clusters count.

Now df utility behaves properly.

8 years agoFix truncate().
relan [Sat, 13 Feb 2010 09:53:01 +0000 (09:53 +0000)]
Fix truncate().

Rollback clusters allocation when FS runs out of space.

8 years agoFix truncate(): it always returned 0 instead of actual result.
relan [Sat, 13 Feb 2010 08:57:16 +0000 (08:57 +0000)]
Fix truncate(): it always returned 0 instead of actual result.

8 years agoPass actual return code from lookup_name() instead of -ENOENT.
relan [Wed, 10 Feb 2010 18:16:39 +0000 (18:16 +0000)]
Pass actual return code from lookup_name() instead of -ENOENT.

8 years agoFix rename(): replace target if it exists.
relan [Sun, 7 Feb 2010 07:26:10 +0000 (07:26 +0000)]
Fix rename(): replace target if it exists.

8 years agoFix fsck: now it can handle paths or any length.
relan [Sat, 30 Jan 2010 10:23:03 +0000 (10:23 +0000)]
Fix fsck: now it can handle paths or any length.

8 years agoAdd cluster size check on mount.
relan [Sun, 24 Jan 2010 10:36:40 +0000 (10:36 +0000)]
Add cluster size check on mount.

It must not be greater than 32 MB.

8 years agoDo not write EOD when growing directory.
relan [Sun, 24 Jan 2010 10:23:08 +0000 (10:23 +0000)]
Do not write EOD when growing directory.

No need to do it because freshly allocated space is erased on truncate.

8 years agoErase allocated space when growing a file.
relan [Sun, 24 Jan 2010 10:21:06 +0000 (10:21 +0000)]
Erase allocated space when growing a file.

8 years agoRename entries structures for consistency.
relan [Thu, 14 Jan 2010 19:48:42 +0000 (19:48 +0000)]
Rename entries structures for consistency.

8 years agoCheck file name for characters that are not allowed.
relan [Thu, 14 Jan 2010 19:38:50 +0000 (19:38 +0000)]
Check file name for characters that are not allowed.

8 years agoFix Mac OS X support.
relan [Thu, 14 Jan 2010 19:15:09 +0000 (19:15 +0000)]
Fix Mac OS X support.

8 years agoMove endianness stuff into a separate header.
relan [Tue, 12 Jan 2010 20:08:03 +0000 (20:08 +0000)]
Move endianness stuff into a separate header.

8 years agoAdd file with GPLv3 text.
relan [Sun, 10 Jan 2010 20:01:04 +0000 (20:01 +0000)]
Add file with GPLv3 text.

8 years agoChange source files headings to meet FSF recommendations.
relan [Sun, 10 Jan 2010 19:53:49 +0000 (19:53 +0000)]
Change source files headings to meet FSF recommendations.

8 years agoAdd patchlevel constant.
relan [Sun, 10 Jan 2010 08:40:11 +0000 (08:40 +0000)]
Add patchlevel constant.

8 years agoReturn non-zero code from fsck if errors were found.
relan [Sun, 10 Jan 2010 08:34:44 +0000 (08:34 +0000)]
Return non-zero code from fsck if errors were found.

8 years agoImplement rename in FUSE driver.
relan [Sun, 10 Jan 2010 08:19:18 +0000 (08:19 +0000)]
Implement rename in FUSE driver.

8 years agoImplement rename in libexfat.
relan [Sun, 10 Jan 2010 08:18:49 +0000 (08:18 +0000)]
Implement rename in libexfat.

8 years agoMove nodes tree manipulation code into separate functions.
relan [Fri, 8 Jan 2010 09:23:42 +0000 (09:23 +0000)]
Move nodes tree manipulation code into separate functions.

8 years agoBig-endian machines support.
relan [Fri, 8 Jan 2010 09:18:07 +0000 (09:18 +0000)]
Big-endian machines support.

8 years agoAdd noatime mount option.
relan [Fri, 8 Jan 2010 09:08:41 +0000 (09:08 +0000)]
Add noatime mount option.

8 years agoCheck that FS is mounted in read-write mode on node flush.
relan [Fri, 8 Jan 2010 09:06:55 +0000 (09:06 +0000)]
Check that FS is mounted in read-write mode on node flush.

8 years agoClean up mtime updating.
relan [Fri, 8 Jan 2010 09:05:22 +0000 (09:05 +0000)]
Clean up mtime updating.

Call exfat_update_mtime() instead of updating node mtime and setting
dirty bit manually all over the code.

8 years agoAdd function that updates node mtime.
relan [Fri, 8 Jan 2010 09:02:55 +0000 (09:02 +0000)]
Add function that updates node mtime.

8 years agoUpdate atime on read.
relan [Fri, 8 Jan 2010 09:01:24 +0000 (09:01 +0000)]
Update atime on read.

8 years agoAdd function that updates node atime.
relan [Fri, 8 Jan 2010 08:56:44 +0000 (08:56 +0000)]
Add function that updates node atime.

8 years agoAdd additional check of cluster index on freeing.
relan [Fri, 8 Jan 2010 08:55:40 +0000 (08:55 +0000)]
Add additional check of cluster index on freeing.

8 years agoUpdate parent directory mtime when file is removed.
relan [Fri, 8 Jan 2010 08:54:32 +0000 (08:54 +0000)]
Update parent directory mtime when file is removed.

8 years agoOpen special file in RO mode if FS was mounted with the ro option.
relan [Fri, 8 Jan 2010 08:53:20 +0000 (08:53 +0000)]
Open special file in RO mode if FS was mounted with the ro option.

8 years agoImplement uid and gid mount options.
relan [Fri, 8 Jan 2010 08:50:08 +0000 (08:50 +0000)]
Implement uid and gid mount options.

8 years agoFix options string parsing.
relan [Tue, 22 Dec 2009 21:53:00 +0000 (21:53 +0000)]
Fix options string parsing.

8 years agoFix format strings warnings.
relan [Tue, 22 Dec 2009 21:49:56 +0000 (21:49 +0000)]
Fix format strings warnings.

8 years agoImplement utimens (file time stamps updating).
relan [Mon, 21 Dec 2009 20:20:47 +0000 (20:20 +0000)]
Implement utimens (file time stamps updating).

8 years agoUpdate mtime of parent directory when file is created.
relan [Mon, 21 Dec 2009 19:56:19 +0000 (19:56 +0000)]
Update mtime of parent directory when file is created.

8 years agoUpdate mtime on file truncation.
relan [Mon, 21 Dec 2009 18:53:33 +0000 (18:53 +0000)]
Update mtime on file truncation.

8 years agoSet st_blocks field in struct stat.
relan [Sun, 20 Dec 2009 16:44:47 +0000 (16:44 +0000)]
Set st_blocks field in struct stat.

Now du utility behaves properly.

8 years agoFix format string.
relan [Sun, 20 Dec 2009 16:17:57 +0000 (16:17 +0000)]
Fix format string.

8 years agoFix format strings warnings.
relan [Sun, 20 Dec 2009 16:14:10 +0000 (16:14 +0000)]
Fix format strings warnings.

8 years agoAdd attributes for printf-style functions.
relan [Sun, 20 Dec 2009 16:05:30 +0000 (16:05 +0000)]
Add attributes for printf-style functions.

8 years agoImplement umask, dmask and fmask mount options.
relan [Sun, 20 Dec 2009 15:44:42 +0000 (15:44 +0000)]
Implement umask, dmask and fmask mount options.

8 years agoPass struct exfat to exfat_stat().
relan [Sun, 20 Dec 2009 15:31:29 +0000 (15:31 +0000)]
Pass struct exfat to exfat_stat().

8 years agoPass mount options to exfat_mount().
relan [Sun, 20 Dec 2009 15:27:17 +0000 (15:27 +0000)]
Pass mount options to exfat_mount().

8 years agoMake all FUSE operations static.
relan [Sun, 20 Dec 2009 10:22:25 +0000 (10:22 +0000)]
Make all FUSE operations static.

8 years agoUnify alignment of * in functions prototypes.
relan [Sun, 20 Dec 2009 10:19:20 +0000 (10:19 +0000)]
Unify alignment of * in functions prototypes.

8 years agoImplement mknod and mkdir in FUSE driver.
relan [Sun, 20 Dec 2009 10:10:10 +0000 (10:10 +0000)]
Implement mknod and mkdir in FUSE driver.

8 years agoImplement mknod and mkdir in libexfat.
relan [Sun, 20 Dec 2009 10:09:29 +0000 (10:09 +0000)]
Implement mknod and mkdir in libexfat.

8 years agoAdd file name hash calculation function.
relan [Sun, 20 Dec 2009 09:54:17 +0000 (09:54 +0000)]
Add file name hash calculation function.

8 years agoFix file flag updating on node flush.
relan [Sat, 19 Dec 2009 12:52:03 +0000 (12:52 +0000)]
Fix file flag updating on node flush.

Empty files must be marked as fragmented.

8 years agoFix error message in fsck.
relan [Sat, 19 Dec 2009 11:59:13 +0000 (11:59 +0000)]
Fix error message in fsck.

8 years agoCheck exfat_truncate() return value in exfat_write().
relan [Sat, 19 Dec 2009 11:24:53 +0000 (11:24 +0000)]
Check exfat_truncate() return value in exfat_write().

8 years agoAdd file size fields check.
relan [Tue, 15 Dec 2009 22:14:44 +0000 (22:14 +0000)]
Add file size fields check.

Also add comment about what those fields probably mean.

8 years agoFix file size updating on node flush.
relan [Tue, 15 Dec 2009 22:11:13 +0000 (22:11 +0000)]
Fix file size updating on node flush.

It must be saved into two fields.

8 years agoFix FS structure definition.
relan [Tue, 15 Dec 2009 22:10:23 +0000 (22:10 +0000)]
Fix FS structure definition.

There are two fields that contain file size.

8 years agoMove new node allocation and initialization into functions.
relan [Sun, 13 Dec 2009 10:48:54 +0000 (10:48 +0000)]
Move new node allocation and initialization into functions.

8 years agoAllocate buffer immediately in opendir() function.
relan [Sun, 13 Dec 2009 10:37:32 +0000 (10:37 +0000)]
Allocate buffer immediately in opendir() function.

This will allow to avoid code duplication in future.

8 years agoSplit checksum calculation into a separate function.
relan [Sun, 13 Dec 2009 10:23:42 +0000 (10:23 +0000)]
Split checksum calculation into a separate function.

8 years agoMove DIV_ROUND_UP macro to header to be used by other units.
relan [Sun, 13 Dec 2009 10:19:52 +0000 (10:19 +0000)]
Move DIV_ROUND_UP macro to header to be used by other units.

8 years agoDaemonize on mount.
relan [Sun, 29 Nov 2009 09:40:20 +0000 (09:40 +0000)]
Daemonize on mount.

8 years agoFix memory leak.
relan [Sat, 28 Nov 2009 18:48:21 +0000 (18:48 +0000)]
Fix memory leak.

Free root node structure on unmount.

8 years agoImplement unlink and rmdir in the FUSE driver.
relan [Sat, 28 Nov 2009 18:08:24 +0000 (18:08 +0000)]
Implement unlink and rmdir in the FUSE driver.

8 years agoImplement unlink and rmdir in libexfat.
relan [Sat, 28 Nov 2009 18:07:02 +0000 (18:07 +0000)]
Implement unlink and rmdir in libexfat.

8 years agoAdd function that calculates UTF-16 string length.
relan [Sat, 28 Nov 2009 17:47:15 +0000 (17:47 +0000)]
Add function that calculates UTF-16 string length.

It will be used in future.

8 years agoFix node flush.
relan [Sat, 28 Nov 2009 17:40:45 +0000 (17:40 +0000)]
Fix node flush.

Consider contiguous flag of the directory when moving to the next
subentry.

8 years agoAdd pointer to parent for each node.
relan [Sat, 28 Nov 2009 17:22:40 +0000 (17:22 +0000)]
Add pointer to parent for each node.

8 years agoRename nextent() function to fetch_next_entry().
relan [Sat, 28 Nov 2009 17:13:07 +0000 (17:13 +0000)]
Rename nextent() function to fetch_next_entry().

8 years agoAdd install target to SConscript.
relan [Fri, 27 Nov 2009 17:53:27 +0000 (17:53 +0000)]
Add install target to SConscript.

8 years agoRepresent directory entry address as cluster + offset.
relan [Tue, 24 Nov 2009 20:22:24 +0000 (20:22 +0000)]
Represent directory entry address as cluster + offset.

The offset is within this particular cluster.

8 years agoFix directory contents reading.
relan [Tue, 17 Nov 2009 19:56:37 +0000 (19:56 +0000)]
Fix directory contents reading.

It failed if directory occupied more than 1 cluster and an entry in it
was aligned on at cluster boundary.

8 years agoAdd FUSE debug option (-d).
relan [Sun, 15 Nov 2009 16:26:54 +0000 (16:26 +0000)]
Add FUSE debug option (-d).

8 years agoUpdate mtime on each write.
relan [Sun, 15 Nov 2009 16:19:42 +0000 (16:19 +0000)]
Update mtime on each write.

8 years agoRemove non-existent functions declarations.
relan [Sat, 14 Nov 2009 19:57:20 +0000 (19:57 +0000)]
Remove non-existent functions declarations.

8 years agoFlush clusters bitmap on file close.
relan [Sat, 14 Nov 2009 19:53:44 +0000 (19:53 +0000)]
Flush clusters bitmap on file close.

It's more optimal than flushing on each cluster allocation and
deallocation.

8 years agoFlush node on close instead of flushing on each node modification.
relan [Sat, 14 Nov 2009 19:22:12 +0000 (19:22 +0000)]
Flush node on close instead of flushing on each node modification.

8 years agoPass struct exfat to exfat_put_node() function.
relan [Sat, 14 Nov 2009 18:56:40 +0000 (18:56 +0000)]
Pass struct exfat to exfat_put_node() function.

It will be used in future.

8 years agoAdd node clusters check in fsck.
relan [Wed, 11 Nov 2009 18:14:09 +0000 (18:14 +0000)]
Add node clusters check in fsck.

8 years agoAdd directory size verification on node creation.
relan [Mon, 9 Nov 2009 19:16:32 +0000 (19:16 +0000)]
Add directory size verification on node creation.

8 years agoRemember recently used cluster of each node.
relan [Mon, 9 Nov 2009 18:58:50 +0000 (18:58 +0000)]
Remember recently used cluster of each node.

This improves sequential read and write speed.

8 years agoImprove clusters allocation algorithm.
relan [Sat, 7 Nov 2009 09:54:36 +0000 (09:54 +0000)]
Improve clusters allocation algorithm.

Now it attempts to allocate cluster right after the previous one to keep
a file contiguous.

8 years agoImprove find_bit_and_set() function.
relan [Sat, 7 Nov 2009 09:39:19 +0000 (09:39 +0000)]
Improve find_bit_and_set() function.

Now it scans a range of bits.

8 years agoFix clusters bitmap handling: it starts from cluster 2, not 0.
relan [Fri, 6 Nov 2009 19:36:26 +0000 (19:36 +0000)]
Fix clusters bitmap handling: it starts from cluster 2, not 0.

8 years agoErase struct exfat on mount.
relan [Thu, 5 Nov 2009 20:19:03 +0000 (20:19 +0000)]
Erase struct exfat on mount.

This avoids uninitialized data use in case of errors.

8 years agoImplement existing files writing in FUSE driver.
relan [Sat, 31 Oct 2009 18:21:29 +0000 (18:21 +0000)]
Implement existing files writing in FUSE driver.

8 years agoImplement existing files writing in libexfat.
relan [Sat, 31 Oct 2009 18:20:49 +0000 (18:20 +0000)]
Implement existing files writing in libexfat.

8 years agoImplement checksum verification on node creation.
relan [Sat, 31 Oct 2009 08:44:47 +0000 (08:44 +0000)]
Implement checksum verification on node creation.

8 years agoAdd checksum calculation functions.
relan [Sat, 31 Oct 2009 08:36:23 +0000 (08:36 +0000)]
Add checksum calculation functions.

8 years agoMove MIN macro to header to be used by other units.
relan [Fri, 30 Oct 2009 20:27:58 +0000 (20:27 +0000)]
Move MIN macro to header to be used by other units.

8 years agoShow in fsck only percentage of used space.
relan [Thu, 29 Oct 2009 20:11:08 +0000 (20:11 +0000)]
Show in fsck only percentage of used space.

Absolute used and free space values cannot be calculated accurately.

8 years agoPass node to exfat_next_cluster() and exfat_advance_cluster().
relan [Mon, 26 Oct 2009 19:51:10 +0000 (19:51 +0000)]
Pass node to exfat_next_cluster() and exfat_advance_cluster().