OSDN Git Service
Szabolcs Szakacsits [Sun, 9 Oct 2011 08:29:41 +0000 (11:29 +0300)]
Release 2011.10.9-RC
Jean-Pierre André [Fri, 7 Oct 2011 09:52:21 +0000 (11:52 +0200)]
Inserted the inode number when naming unnamed undeleted files
When undeleting a file whose name cannot be recovered, this patch
defines a name to which the inode number is appended to facilitate
a bulk recovery (recovering the unwanted deletion of a subtree).
Jean-Pierre André [Fri, 7 Oct 2011 09:45:47 +0000 (11:45 +0200)]
Added to ntfsundelete an attempt to recover the name of a deleted file
When a file is deleted, ntfs-3g deletes the name from the MFT record,
so the name is not available when the file has to be undeleted.
This patch tries to recover the name when it has not been overwritten.
This is mostly possible when data is non-resident and not fragmented.
Jean-Pierre André [Fri, 7 Oct 2011 09:42:08 +0000 (11:42 +0200)]
Developped creating a metadata image in ntfsclone
With this patch a metadata image can be created without creating
an intermediate file. Use both option -m and -s.
Jean-Pierre André [Fri, 7 Oct 2011 09:33:22 +0000 (11:33 +0200)]
Developped fixing of a self-located MFT data bug in ntfsfix
Under some rare and obscure circumstances probably unrelated to ntfs-3g,
a part of the runlist of MFT describes its own location, therefore
it cannot be loaded. This patch relocates the MFT extent to inode 15
to fix this. Note : chkdsk cannot fix it and destroys all the files.
Jean-Pierre André [Fri, 7 Oct 2011 09:26:58 +0000 (11:26 +0200)]
Developped expanding an NTFS volume downwards in ntfsresize
When the lower bound of an ntfs partition is moved down this patch
recreated new metadata in the expanded space without copying the
actual data. The existing code for moving the upper bound of the
partition has been kept unchanged.
Jean-Pierre André [Fri, 7 Oct 2011 09:16:23 +0000 (11:16 +0200)]
Defined option delay_mtime to delay updates of mtime+ctime
This patch avoid updating the time stamps whenever a file is modified,
by delaying the time stamps updating until the file is closed.
This is mostly useful when the ntfs file system hosts another loop-monted
file system to avoid frequent updates of the time stamps in the outer
file system.
Jean-Pierre André [Fri, 30 Sep 2011 07:06:42 +0000 (09:06 +0200)]
Cosmetic : fixed an error message (hggdh2)
Jean-Pierre André [Wed, 28 Sep 2011 14:41:12 +0000 (16:41 +0200)]
cosmetic : fixed improper wordings (hggdh2)
Jean-Pierre André [Mon, 26 Sep 2011 13:03:38 +0000 (15:03 +0200)]
Fixed a bug when undeleting a sparse file
An old typo leading to a badly recovered file and sometimes to a segfault
Jean-Pierre André [Fri, 23 Sep 2011 09:28:42 +0000 (11:28 +0200)]
Avoided logging meaningless fixup errors in ntfsclone and ntfsresize
Logging of fixup errors for uninitialized inodes cause unnecessary
worries and suspicion of malfunctions in ntfs-3g. This patch silences
these loggings in ntfsclone and ntfsresize which have to analyze all
inodes, including the uninitialized ones.
Jean-Pierre André [Tue, 1 Mar 2011 11:04:43 +0000 (12:04 +0100)]
Enabled getting the sector size from an ioctl on FreeBSD and MacOSX (Erik Larsson)
The sector size is needed for formatting a volume unless forced through
an option or using the traditional sector size.
Jean-Pierre André [Wed, 14 Sep 2011 06:32:28 +0000 (08:32 +0200)]
Fixed the size limits for the volume label set by mkntfs
Erik Larsson [Tue, 13 Sep 2011 07:51:55 +0000 (09:51 +0200)]
Replaced some usages of ntfs_mbstoucs_libntfscompat with ntfs_mbstoucs.
Some calls to ntfs_mbstoucs_libntfscompat were unnecessary as they only used
functionality that can be provided by ntfs_mbstoucs.
Erik Larsson [Tue, 13 Sep 2011 07:43:30 +0000 (09:43 +0200)]
Cleaned up and moved label changing functionality into libntfs-3g.
The label changing code in ntfslabel was cleaned up and modified to use the more
advanced functionality of libntfs-3g instead of using older custom code to
resize and create resident attributes.
The core label changing functionality was also moved into the library so it can
be reused by other programs.
Jean-Pierre André [Mon, 12 Sep 2011 16:41:25 +0000 (18:41 +0200)]
Fixed the setting of attributes by secaudit
The setting of attributes was done in the "standard information",
it must also be propagated to the indexes in parent directories.
Erik Larsson [Mon, 12 Sep 2011 07:07:00 +0000 (09:07 +0200)]
Permit $VOLUME_NAME to be 0-sized, even when $AttrDef says otherwise.
When clearing a volume name in Windows, $VOLUME_NAME is set to size 0, even if
the standard $AttrDef says that the minimum size is 2.
So the definition in $AttrDef doesn't reflect actual Windows behaviour in this
particular case, and to clear volume names ourselves the way Windows does it,
we must must add a special rule to permit us to truncate the $VOLUME_NAME
attribute to 0 even when $AttrDef specifies a higher value as minimum size.
Jean-Pierre André [Thu, 8 Sep 2011 07:52:51 +0000 (09:52 +0200)]
Fixed the truncation of dos file names
Truncate dos file names to 12 ntfschars instead of 12 utf-8 bytes
Jean-Pierre André [Tue, 30 Aug 2011 14:02:32 +0000 (16:02 +0200)]
Fixed the FullyMapped flag when making an attribute resident
When an attribute is truncated and made resident, the NAttrFullyMapped
flags has to be cleared, otherwise the attribute cannot be properly
mapped when the attribute is later made non-resident again.
Jean-Pierre André [Tue, 30 Aug 2011 13:56:36 +0000 (15:56 +0200)]
Avoid endless recursion when MFT extents are described in themselves
When getting extents of MFT, we must be sure they are in the MFT part which
has already been mapped, otherwise we fall into an endless recursion.
Situations have been met where extents locations are described in themselves,
as a consequence of a bug, probably unrelated to ntfs-3g.
This is a severe error which chkdsk cannot fix.
Jean-Pierre André [Thu, 4 Aug 2011 13:49:36 +0000 (15:49 +0200)]
cosmetic : Removed a pointless store in ntfs_attr_make_resident() (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:36 +0000 (15:49 +0200)]
cosmetic : Removed a redundant store in utils_is_metadata() (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:36 +0000 (15:49 +0200)]
cosmetic : Removed two dead stores in remove_object_id_index() (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:36 +0000 (15:49 +0200)]
cosmetic : Removed a pointless variable initialization in upgrade_secur_desc() (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:36 +0000 (15:49 +0200)]
fix : Fixed ntfs_rl_extend() returning garbage in error case (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
minor : Fixed ntfs_fuse_read() returning garbage in error case (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
minor : Fixed ntfs_upcase_build_default() returning garbage in error case (Fabian Keil)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
revert : Reverted to old behavior for errored reply in ntfsresize
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
documentation : Improved the description of the -f option in the manual for ntfsresize
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
cosmetic : Removed an unneeded function in fuse_lowlevel.c (and a gcc 4.6 warning)
Jean-Pierre André [Thu, 4 Aug 2011 13:49:35 +0000 (15:49 +0200)]
cosmetic : Removed more unneeded variables warned by gcc 4.6
Erik Larsson [Wed, 3 Aug 2011 13:49:40 +0000 (15:49 +0200)]
Fix: Forgot to update state bits after last change.
Erik Larsson [Wed, 3 Aug 2011 09:02:33 +0000 (11:02 +0200)]
Bugfix: ntfs_mft_load didn't fill in the size fields in the $MFT inode.
Erik Larsson [Wed, 6 Jul 2011 10:41:19 +0000 (12:41 +0200)]
ntfsprogs/Makefile.am: Fix for conflicting usage of EXTRA_PROGRAMS.
After the '--enable-extras' patch, EXTRA_PROGRAMS and bin_PROGRAMS were both defined when ENABLE_EXTRAS was enabled.
This created a conflict, where at least automake 1.10 attempted to emit targets for the binaries twice, resulting in failure when running 'autogen.sh'.
Conflict was resolved by defining the names of the binaries in a non-reserved variable EXTRA_PROGRAM_NAMES, which is then included either in EXTRA_PROGRAMS or bin_PROGRAMS but never in both.
Erik Larsson [Wed, 6 Jul 2011 07:48:45 +0000 (09:48 +0200)]
Added a new configure option '--disable-ntfs-3g'.
The binaries 'ntfs-3g', 'lowntfs-3g', 'ntfs-3g.probe' 'ntfs-3g.usermap' and 'ntfs-3g.secaudit' will not be built when this option is passed to 'configure'.
When specifying both '--disable-ntfsprogs' and '--disable-ntfs-3g', only libntfs-3g will be built (no executable binaries).
Jean-Pierre André [Wed, 6 Jul 2011 15:46:31 +0000 (17:46 +0200)]
Fixed compiling ntfsfix.c for a Sparc
Jean-Pierre André [Tue, 5 Jul 2011 10:17:31 +0000 (12:17 +0200)]
Implemented a new option to clear the list of bad sectors
Jean-Pierre André [Tue, 5 Jul 2011 10:17:30 +0000 (12:17 +0200)]
Improved compression (faster)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:30 +0000 (12:17 +0200)]
Provided support for big writes
Jean-Pierre André [Tue, 5 Jul 2011 10:17:30 +0000 (12:17 +0200)]
Implemented expanding runlists in ntfsresize (Fedora 689275)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:30 +0000 (12:17 +0200)]
Optionally closed volume and cleaned memory when leaving ntfsresize (kept disabled)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:30 +0000 (12:17 +0200)]
Fixed dead http links in ntfsprogs manuals (Daniel Baumann)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Accepted the backup bootsector not be to accounted for when cloning
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Silenced apparent out-of-range subscripts warned by gcc 4.6
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Removed unneeded variables as warned by gcc 4.6
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Fixed use of uninitialized variable in ntfsfix
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Fixed relatime as a default mount option (had become atime)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:29 +0000 (12:17 +0200)]
Fixed a too restrictive consistency check in attrib.c
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed the description of inherit option in the manual
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed accessing an unmounted volume in ntfsck
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed casting data to printf format in ntfsck, ntfsmove and ntfswipe
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed checking file system type in ntfsck
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed a bug causing SEGV in ntfsck (but nothing done anyway)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Fixed warning for possible use of uninitialized variable in ntfsfix
Jean-Pierre André [Tue, 5 Jul 2011 10:17:28 +0000 (12:17 +0200)]
Cleared attribute flags controlling recursive writes
Jean-Pierre André [Tue, 5 Jul 2011 10:17:12 +0000 (12:17 +0200)]
Fixed device path canonicalization for use by devmapper (basilinya)
For some reason, when the monted device is "/dev/mapper/*", a record
in the form "/dev/dm-*" ends up in /etc/mtab and the device cannot be
unmounted.
The reason is unclear, the /dev/mapper name is not a symlink, and the
function doing the name change is not known. No detailed feedback from
the users having met the issue.
The patch changes the name back to the /dev/mapper name after realpath()
is called, and, if there is an actual change, both the name passed to
ntfs-3g and the one passed to fuse and mount are logged in the hope
of getting a clue about what is happening.
But ntfs-3g is probably not the right place for a fix.
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Fixed setting DOS names when defined with lower-case chars
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Silenced warning for ignoring the result of fgets in ntfsresize
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Defined an option --enable-extras for extra ntfsprogs tools (from Fedora)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Fixed compilation on OpenIndiana (Apostolos Syropoulos)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Fixed options parsing on OSes with no extended attributes
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Fixed the included files into ntfsck.c (from Fedora)
Jean-Pierre André [Tue, 5 Jul 2011 10:17:11 +0000 (12:17 +0200)]
Got the target libs to build libntfs-3g and libfuse-lite if selected
Szabolcs Szakacsits [Sun, 10 Apr 2011 18:02:34 +0000 (21:02 +0300)]
Release 2011.4.12
Szabolcs Szakacsits [Sun, 10 Apr 2011 17:54:09 +0000 (20:54 +0300)]
Merge branch 'edge' of ssh://szaka@ntfs-3g.git.sourceforge.net/gitroot/ntfs-3g/ntfs-3g_ntfsprogs into edge
Szabolcs Szakacsits [Sun, 10 Apr 2011 17:52:22 +0000 (20:52 +0300)]
Release 2011.4.10
Jean-Pierre André [Fri, 8 Apr 2011 16:19:17 +0000 (18:19 +0200)]
Translated the junctions to lower case when ignore_case is set
When ignore_case is set, the file names are returned lower-case in
readdir() in order to make file name completions possible. This patch
does the same for junction points to avoid directory locks when used
with non-matching names.
Jean-Pierre André [Fri, 8 Apr 2011 16:15:43 +0000 (18:15 +0200)]
Fixed a false detection of bad memory release in secaudit
Jean-Pierre André [Fri, 8 Apr 2011 16:13:25 +0000 (18:13 +0200)]
Described a few configure options in the README file
Szabolcs Szakacsits [Sun, 27 Mar 2011 23:38:41 +0000 (02:38 +0300)]
Release 2011.3.28-RC
Szaka [Sun, 27 Mar 2011 12:31:13 +0000 (15:31 +0300)]
Release 2011.3.26
Szaka [Sun, 27 Mar 2011 12:29:48 +0000 (15:29 +0300)]
Update ntfs-3g.org references
Jean-Pierre André [Wed, 23 Mar 2011 09:09:20 +0000 (10:09 +0100)]
Added mention of contributors for porting ntfsprogs to ntfs-3g
Jean-Pierre André [Wed, 23 Mar 2011 08:50:12 +0000 (09:50 +0100)]
Added option --check to ntfsresize (from fedora)
Jean-Pierre André [Wed, 23 Mar 2011 08:48:40 +0000 (09:48 +0100)]
Added option --info-mb-only to ntfsresize (from fedora)
Jean-Pierre André [Wed, 23 Mar 2011 08:46:46 +0000 (09:46 +0100)]
Made ntfsfix able to use a backup boot sector larger than 512 bytes
When the normal boot sector is not usable, ntfsfix tries to use the last
sector as a boot sector replacement. This implies getting the sector size
and reading both full-sized boot sectors.
Jean-Pierre André [Wed, 23 Mar 2011 08:43:13 +0000 (09:43 +0100)]
Set the same timestamp per file in all attributes in mkntfs
mkntfs did not set the same timestamp in inode and index.
Jean-Pierre André [Wed, 23 Mar 2011 08:35:24 +0000 (09:35 +0100)]
Used a stream to produce aligned writes in image creation
When creating a partition image, ntfsclone write an extra byte to
describe each cluster, this causes two unneeded ntfs-3g calls per cluster,
and inefficiency when imaging to ntfs.
Jean-Pierre André [Wed, 23 Mar 2011 08:30:51 +0000 (09:30 +0100)]
Freed a search context in ntfslabel
Avoids a memory leak detection
Jean-Pierre André [Wed, 23 Mar 2011 08:29:27 +0000 (09:29 +0100)]
Silenced warnings for no-return functions in ntfsresize
Jean-Pierre André [Wed, 23 Mar 2011 08:27:33 +0000 (09:27 +0100)]
Strenghtened types in ntfslabel and ntfsfix
Jean-Pierre André [Wed, 23 Mar 2011 08:24:55 +0000 (09:24 +0100)]
Fixed a segfaulting bug in ntfsundelete (from Fedora)
Jean-Pierre André [Wed, 23 Mar 2011 08:22:08 +0000 (09:22 +0100)]
Fixed getting space for making an index non resident
In rare situations there is not enough space in the base inode entry
to make an index non resident. The index has to be moved to an extent
first. This happens when not using permissions and inserting a file
whose name has 60 chars into a directory whose name has 184 chars.
(bug reported by Vito Caputo)
Jean-Pierre André [Wed, 23 Mar 2011 08:20:10 +0000 (09:20 +0100)]
Fixed inconsistent interface to ntfs_initialize_file_security()
The "flags" argument of ntfs_initialize_file_security() is intended to
feed the one to ntfs_mount(). Having the same type for both may avoid
future problems.
Jean-Pierre André [Wed, 23 Mar 2011 08:16:57 +0000 (09:16 +0100)]
Fixed freeing upcase in ntfsfix (avoiding memory leak detection)
Under some error condition, the upcase table was not freed.
Just cosmetic fix to avoid a memory leak detection.
Jean-Pierre André [Wed, 23 Mar 2011 08:14:55 +0000 (09:14 +0100)]
Fixed allocated size for resident unnamed data in mkntfs
The recorded allocated size depends on unnamed data being non resident,
which depends on MFT record size, hence on sector size.
The allocated size was wrong for $AttrDef when sector size is 4K bytes
(chkdsk silently fixes it).
Jean-Pierre André [Wed, 23 Mar 2011 08:10:10 +0000 (09:10 +0100)]
Fixed type of argument (same value)
A boolean argument had been replaced by a tri-state one, but the change
was forgotten in one instance. No visible effect, the value is the same.
Jean-Pierre André [Wed, 23 Mar 2011 08:06:27 +0000 (09:06 +0100)]
Fixed allocated size to MFT in mkntfs
mkntfs stored a different value for allocated size in inode and index.
Jean-Pierre André [Wed, 23 Mar 2011 08:02:15 +0000 (09:02 +0100)]
Removed duplicated code
A patch had been applied twice, duplication caused to no visible effects.
Jean-Pierre André [Wed, 23 Mar 2011 07:59:49 +0000 (08:59 +0100)]
Synced the created image before remounting in ntfsclone
Better sync before remounting, but probably not an error
Erik Larsson [Fri, 4 Mar 2011 16:31:22 +0000 (17:31 +0100)]
Enabled ntfsprogs by default.
Jean-Pierre André [Tue, 1 Mar 2011 11:14:53 +0000 (12:14 +0100)]
Fixed cluster mapping ahead of mapped runlist
A corner case was wrong and could cause aborted writes with error
"Run lists overlap. Cannot merge" when the clusters required by the
write are described in different MFT extents.
This can only happen in very fragmented files when the cluster size
is smaller than 4096 bytes. It does not cause any metadata corruption.
Jean-Pierre André [Thu, 17 Feb 2011 15:11:26 +0000 (16:11 +0100)]
Fixed copying the backup boot sector on a partial cluster
A recent patch added copying the backup boot sector when cloning,
saving or restoring a partition, but when the total number of sectors is
not a multiple of the number of sectors per cluster, the last cluster
containing the backup boot sector is shorter than usual.
When this happens, the present patch avoids overflowing from partition
when accessing the last cluster.
Jean-Pierre André [Wed, 16 Feb 2011 11:22:30 +0000 (12:22 +0100)]
Fixed dealing with holes when expanding an attribute
Jean-Pierre André [Wed, 16 Feb 2011 11:20:46 +0000 (12:20 +0100)]
Fixed the location of the backup boot sector
Jean-Pierre André [Wed, 16 Feb 2011 11:18:56 +0000 (12:18 +0100)]
Copied the alternate boot sector when cloning
Jean-Pierre André [Tue, 8 Feb 2011 12:52:13 +0000 (13:52 +0100)]
Silenced warning for function with no return
Jean-Pierre André [Tue, 8 Feb 2011 12:52:13 +0000 (13:52 +0100)]
Added tries to fix file systems with incorrect size
Jean-Pierre André [Tue, 8 Feb 2011 12:52:12 +0000 (13:52 +0100)]
Defined option acl to request the use of Posix ACLs
Jean-Pierre André [Tue, 8 Feb 2011 12:52:12 +0000 (13:52 +0100)]
Moved global options parsing to ntfs-3g_common.c