OSDN Git Service
relan [Fri, 25 Jan 2013 19:07:05 +0000 (19:07 +0000)]
Fix unexpected removal of a directory if it is moved into itself.
Return EINVAL in this situation. It also happens when trying to change
directory name case.
relan [Fri, 25 Jan 2013 17:46:10 +0000 (17:46 +0000)]
Fix "Operation not permitted" error on reading an empty file.
FUSE read/write ops should return a number of bytes actually read/written
or -errno on error.
relan [Sat, 19 Jan 2013 13:45:41 +0000 (13:45 +0000)]
Bump version to 1.0.0 and update changelog.
relan [Sat, 19 Jan 2013 13:11:28 +0000 (13:11 +0000)]
Update copyright years.
relan [Mon, 14 Jan 2013 18:54:42 +0000 (18:54 +0000)]
Fix allocation of a cluster beyond valid clusters range.
relan [Fri, 11 Jan 2013 07:31:16 +0000 (07:31 +0000)]
Avoid using PATH_MAX constant.
relan [Fri, 11 Jan 2013 06:42:18 +0000 (06:42 +0000)]
OS X: disable permission checks made by FUSE.
relan [Thu, 10 Jan 2013 17:09:43 +0000 (17:09 +0000)]
Remove duplicate code in reset_cache().
Now it uses tree_detach() to remove children from the list and the whole
tree is consistent at any iteration.
relan [Thu, 10 Jan 2013 17:00:27 +0000 (17:00 +0000)]
Move tree_attach() and tree_detach() upper.
Now they can be used by reset_cache().
relan [Wed, 9 Jan 2013 17:50:14 +0000 (17:50 +0000)]
Fix extra decrement of reference counter of hanging nodes.
relan [Wed, 9 Jan 2013 17:29:32 +0000 (17:29 +0000)]
Fix cleaning of libexfat broken in r312.
relan [Wed, 9 Jan 2013 16:58:00 +0000 (16:58 +0000)]
Get PATH and SYSROOT variables from the environment.
relan [Wed, 9 Jan 2013 16:54:08 +0000 (16:54 +0000)]
Respect AR and RANLIB environment variables in SConscript.
Signed-off-by: <vapier@gmail.com>
relan [Sat, 29 Dec 2012 08:01:07 +0000 (08:01 +0000)]
Seek to the beginning of the device after detecting its size.
dumpexfat relies on this.
relan [Sat, 29 Dec 2012 07:55:29 +0000 (07:55 +0000)]
Print device name in the error message.
relan [Wed, 26 Dec 2012 07:26:48 +0000 (07:26 +0000)]
Fix indentation.
relan [Wed, 26 Dec 2012 07:14:07 +0000 (07:14 +0000)]
Improve trace macros.
relan [Tue, 25 Dec 2012 17:50:04 +0000 (17:50 +0000)]
Enable big_writes.
This improves write speed (larger block size means less switches between
kernel- and user-space).
relan [Tue, 25 Dec 2012 16:58:23 +0000 (16:58 +0000)]
Fix fuse_exfat_read() and fuse_exfat_write() return values.
FUSE read and write ops should return either buffer size on success or EOF
on error.
relan [Tue, 25 Dec 2012 16:55:13 +0000 (16:55 +0000)]
Fix exfat_generic_pwrite().
It should return -1 on error, not -errno.
relan [Wed, 19 Dec 2012 06:30:24 +0000 (06:30 +0000)]
Replace fixed PATH to the value from the environment.
This makes scons find build tools in non-standard directories specified
in the PATH variable.
relan [Wed, 19 Dec 2012 06:19:14 +0000 (06:19 +0000)]
Check compiler presense in SConscript.
relan [Tue, 18 Dec 2012 18:42:39 +0000 (18:42 +0000)]
Check size of off_t type in SConscript.
relan [Tue, 18 Dec 2012 18:17:01 +0000 (18:17 +0000)]
Do not configure when cleaning.
relan [Tue, 18 Dec 2012 18:06:17 +0000 (18:06 +0000)]
Remove symlinks on cleaning the install alias.
relan [Sat, 15 Dec 2012 08:51:09 +0000 (08:51 +0000)]
Fix crash in exfat_rename().
Crash happened when renaming a file within a single directory and a new
name differs only in case.
relan [Sat, 15 Dec 2012 08:45:00 +0000 (08:45 +0000)]
OS X: fix raw device size detection.
Each disk has two names: /dev/diskN (block device) and /dev/rdiskN (raw
device).
relan [Wed, 12 Dec 2012 19:16:42 +0000 (19:16 +0000)]
Use bool type.
relan [Wed, 12 Dec 2012 19:14:36 +0000 (19:14 +0000)]
OS X: correctly detect device size.
relan [Tue, 11 Dec 2012 16:46:55 +0000 (16:46 +0000)]
Rename exfat_mode() to exfat_get_mode().
relan [Tue, 11 Dec 2012 16:45:27 +0000 (16:45 +0000)]
Remove extra include.
relan [Sat, 8 Dec 2012 12:32:33 +0000 (12:32 +0000)]
Check file size after all name entries are parsed.
Also print file name in case of error.
relan [Sat, 8 Dec 2012 11:53:58 +0000 (11:53 +0000)]
Do not print directory name on size check failure.
Name is not yet available at that moment.
relan [Sat, 8 Dec 2012 11:51:34 +0000 (11:51 +0000)]
Use bool type.
relan [Sat, 8 Dec 2012 11:46:15 +0000 (11:46 +0000)]
OS X: set deployment target to Mac OS X 10.5 Leopard.
relan [Tue, 4 Dec 2012 19:17:52 +0000 (19:17 +0000)]
Do BLKROGET ioctl to make sure the device is not read-only.
After "blockdev --setro" Linux kernel still allows to open the device in
read-write mode but fails writes.
relan [Tue, 4 Dec 2012 18:34:01 +0000 (18:34 +0000)]
Refactor device access mode handling.
relan [Tue, 4 Dec 2012 16:34:03 +0000 (16:34 +0000)]
Improve OS X support.
Use proper macro for inode numbers bitness management.
Switch to 64-bit inode numbers (this requires Mac OS X 10.5 or later).
Switch from unmaintained MacFUSE to OSXFUSE (http://osxfuse.github.com).
relan [Tue, 4 Dec 2012 16:14:38 +0000 (16:14 +0000)]
Add empty chmod() handler.
OS X utilities report error if fchmod() fails. Use an empty handler as a
workaround.
relan [Sun, 25 Nov 2012 12:03:51 +0000 (12:03 +0000)]
Improve invalid clusters handling.
relan [Sat, 24 Nov 2012 09:36:35 +0000 (09:36 +0000)]
Reorganize directories checking.
Check directory before its files, do not check files if directory is
corrupt, check root directory.
relan [Sun, 28 Oct 2012 15:14:25 +0000 (15:14 +0000)]
Improve error handling.
relan [Thu, 9 Aug 2012 17:09:46 +0000 (17:09 +0000)]
Bump version to 0.9.8 and update changelog.
relan [Sat, 9 Jun 2012 18:32:49 +0000 (18:32 +0000)]
Avoid integer truncation.
relan [Sat, 9 Jun 2012 18:28:22 +0000 (18:28 +0000)]
Fix erasing of label buffer.
relan [Sat, 2 Jun 2012 06:14:13 +0000 (06:14 +0000)]
The new mkfs rewritten in more declarative style.
relan [Fri, 18 May 2012 16:05:13 +0000 (16:05 +0000)]
Explicitly require C99 and define _GNU_SOURCE.
This enables all needed functions.
relan [Fri, 18 May 2012 15:52:30 +0000 (15:52 +0000)]
Define FUSE_USE_VERSION only before inclusion of fuse.h.
No need to define it globally.
relan [Fri, 18 May 2012 15:45:38 +0000 (15:45 +0000)]
Fix _FILE_OFFSET_BITS check: it can be not defined at all.
relan [Fri, 18 May 2012 15:42:49 +0000 (15:42 +0000)]
Update copyright years in SConscript.
relan [Thu, 17 May 2012 16:32:08 +0000 (16:32 +0000)]
Respect CPPFLAGS environment variable in SConscript.
Signed-off-by: Sven Hoexter <sven@timegate.de>
relan [Mon, 14 May 2012 17:24:02 +0000 (17:24 +0000)]
Fix handling of characters beyond BMP.
UTF-16 surrogate pairs encode Unicode character minus 0x10000.
Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
relan [Mon, 7 May 2012 07:32:43 +0000 (07:32 +0000)]
Fix file name in heading.
relan [Tue, 1 May 2012 09:46:02 +0000 (09:46 +0000)]
Update copyright years.
relan [Tue, 3 Apr 2012 17:52:49 +0000 (17:52 +0000)]
Echo messages to syslog only if stderr is not attached to terminal.
relan [Mon, 19 Mar 2012 17:27:34 +0000 (17:27 +0000)]
Suggest valid cluster size if user specified too small value.
relan [Mon, 19 Mar 2012 17:12:00 +0000 (17:12 +0000)]
Select suitable cluster size when creating a huge FS.
Relevant for file systems sizes of 128 TB or more.
relan [Sun, 18 Mar 2012 13:24:37 +0000 (13:24 +0000)]
Fail to create FS if specified cluster size is too small.
relan [Sun, 18 Mar 2012 13:05:04 +0000 (13:05 +0000)]
Add constant for the last possible valid cluster number.
relan [Sun, 18 Mar 2012 13:02:49 +0000 (13:02 +0000)]
Fix huge sizes formatting.
relan [Thu, 8 Mar 2012 07:28:21 +0000 (07:28 +0000)]
Bump version to 0.9.7 and update changelog.
relan [Sun, 4 Mar 2012 07:39:49 +0000 (07:39 +0000)]
Fix format warnings produced by clang.
relan [Sun, 4 Mar 2012 07:37:43 +0000 (07:37 +0000)]
Fix error message about device type.
relan [Sun, 4 Mar 2012 07:04:53 +0000 (07:04 +0000)]
Add ublio support for FreeBSD.
relan [Sat, 3 Mar 2012 18:11:09 +0000 (18:11 +0000)]
Use a list of libraries in SConscript.
relan [Sat, 3 Mar 2012 07:39:07 +0000 (07:39 +0000)]
Represent device as an extensible structure.
relan [Sat, 3 Mar 2012 06:53:02 +0000 (06:53 +0000)]
Support building on FreeBSD.
relan [Sat, 3 Mar 2012 06:16:08 +0000 (06:16 +0000)]
Move platform-specific configuration code after common code.
relan [Thu, 1 Mar 2012 17:23:04 +0000 (17:23 +0000)]
Fix use of write() missed in r262.
relan [Thu, 1 Mar 2012 17:01:44 +0000 (17:01 +0000)]
Add exfat_seek() interface (wrapper for lseek()).
relan [Mon, 20 Feb 2012 06:33:08 +0000 (06:33 +0000)]
Fix double close on failure to convert volume label to UTF-16.
relan [Mon, 20 Feb 2012 06:15:49 +0000 (06:15 +0000)]
Use exfat_read() and exfat_write() interfaces.
relan [Mon, 20 Feb 2012 06:14:18 +0000 (06:14 +0000)]
Add exfat_read() and exfat_write() interfaces.
Currently they are just wrappers for read() and write().
relan [Tue, 14 Feb 2012 18:09:51 +0000 (18:09 +0000)]
Use appropriate feature test macro for pread() and pwrite().
relan [Tue, 14 Feb 2012 18:05:59 +0000 (18:05 +0000)]
Add exfat_fsync() function.
It performs fsync against the specified descriptor.
relan [Tue, 14 Feb 2012 17:53:17 +0000 (17:53 +0000)]
Add exfat_close() function.
It closes the device descriptor.
relan [Sun, 12 Feb 2012 07:49:26 +0000 (07:49 +0000)]
Rename read/write functions.
exfat_read_raw() => exfat_pread()
exfat_write_raw() => exfat_pwrite()
exfat_read() => exfat_generic_pread()
exfat_write() => exfat_generic_pwrite()
relan [Sat, 4 Feb 2012 08:07:17 +0000 (08:07 +0000)]
Fix mtime centiseconds field initialization.
relan [Sat, 4 Feb 2012 08:02:08 +0000 (08:02 +0000)]
Use a more portable way to obtain timezone offset.
relan [Thu, 2 Feb 2012 20:36:17 +0000 (20:36 +0000)]
Move time-related stuff into a separate file.
relan [Wed, 1 Feb 2012 17:30:16 +0000 (17:30 +0000)]
Remove _XOPEN_SOURCE define.
It looks to be not required for Linux.
relan [Tue, 31 Jan 2012 16:06:37 +0000 (16:06 +0000)]
Put _XOPEN_SOURCE define before any includes as recommended.
relan [Tue, 31 Jan 2012 16:00:58 +0000 (16:00 +0000)]
Fix minutes field extraction.
relan [Tue, 31 Jan 2012 15:57:52 +0000 (15:57 +0000)]
Increase comments indentation.
relan [Sun, 29 Jan 2012 10:14:45 +0000 (10:14 +0000)]
Remove obsolete FIXME comment.
relan [Sun, 29 Jan 2012 10:11:43 +0000 (10:11 +0000)]
Remove obsolete FIXME comment.
relan [Sun, 29 Jan 2012 08:50:52 +0000 (08:50 +0000)]
Add default compiler flags for clang.
relan [Sun, 29 Jan 2012 08:48:39 +0000 (08:48 +0000)]
Respect CC, CCFLAGS and LDFLAGS variables in SConscript.
relan [Sat, 28 Jan 2012 10:23:27 +0000 (10:23 +0000)]
Remove EOD entry handling.
The end of a directory should be determined by directory size.
relan [Sat, 14 Jan 2012 09:23:59 +0000 (09:23 +0000)]
Bump version to 0.9.6 and update changelog.
relan [Sat, 14 Jan 2012 08:29:33 +0000 (08:29 +0000)]
Erase disk in pages instead of sectors.
This can speed up mkfs on systems that do not cache access to block
devices.
relan [Sun, 8 Jan 2012 07:58:03 +0000 (07:58 +0000)]
More precise rounding for exfat_humanize_bytes().
relan [Mon, 2 Jan 2012 19:36:29 +0000 (19:36 +0000)]
Set ctime to mtime.
Ensure that we don't break programs that rely on ctime (e.g. rsync).
Signed-off-by: Eldad Zack <eldad@fogrefinery.com>
relan [Sun, 4 Dec 2011 10:32:04 +0000 (10:32 +0000)]
Update allocated space percent on unmount.
relan [Sun, 4 Dec 2011 10:20:02 +0000 (10:20 +0000)]
Set "mounted" flag on mount and clear it on unmount.
The user will be warned when the volume was not unmounted cleanly.
relan [Sun, 27 Nov 2011 10:07:11 +0000 (10:07 +0000)]
Retry to mount FS in read-only mode if device is write-protected.
This behavior is enabled by "ro_fallback" option. When an attempt to
mount in RW mode fails and "ro_fallback" option is present, we try to
mount in RO mode. If this succeeds, we set ro_fallback flag so that the
caller could add "ro" option for FUSE.
relan [Sun, 27 Nov 2011 09:49:37 +0000 (09:49 +0000)]
Print desired mode when device opening fails.
relan [Sun, 27 Nov 2011 09:43:53 +0000 (09:43 +0000)]
More concrete error message on memory allocation failure.
relan [Sun, 27 Nov 2011 09:42:41 +0000 (09:42 +0000)]
Parse options and open device before super block allocation.
relan [Sat, 19 Nov 2011 14:09:01 +0000 (14:09 +0000)]
Get rid of realpath() in mkfs.