Commit Graph

39 Commits

Author SHA1 Message Date
Jean-Pierre André
094f9b3f2d Fixed a minor endianness ajustment bug
The endianness ajustment was the wrong one though it did the correct thing.
2021-01-26 10:06:18 +01:00
Jean-Pierre André
cd68a084fc Recovered space when an index root is shortened
In rare situations, removing an entry from an index root while
rebalancing the index tree, its space was not recovered from the index
root, causing chkdsk to complain. Truncate the index root when this
happens.
2020-08-14 11:57:02 +02:00
Jean-Pierre André
ea9b8a487c Fixed memory leak when failing to lookup an index
When an index could not be used, the search context was not freed
2017-02-11 10:29:39 +01:00
Erik Larsson
9893ea9ee6 Merge endianness fixes.
Conflicts:
	libntfs-3g/attrib.c
2016-01-28 09:22:42 +01:00
Erik Larsson
9cf04fd2cd Fix incorrect usage of native/little-endian types, signed types, etc.
This is harmless with regard to code generation but if we turn on strict
type checking these type mismatches will result in errors.
2015-12-21 23:55:31 +01:00
Erik Larsson
dfa4a6647f Fix code to use const_cpu_to_X/const_X_to_cpu macros for constants.
This enables the compiler to optimize this code in cases where compiler
support for endianness swapping is not present.
2015-12-21 23:21:00 +01:00
Jean-Pierre André
1aa9882810 Silenced a compiler warning (cosmetic)
An argument to ntfs_index_remove() is now unused
2015-11-12 15:39:20 +01:00
Jean-Pierre André
f7bc5249bc Alleviated constraints relative to reparse points
Some constraints put on reparse points of unknown type (e.g. they cannot
be deleted) are not acceptable to archivers. This patch removes some
constraints.
2015-11-09 16:22:16 +01:00
Jean-Pierre André
37bd6661d4 Fixed getting space for making an index non resident
Under some rare condition there is no space in an MFT entry to make
an index non-resident, and the index root has to be moved to an extent.
This fix cares for the situation when the attribute list was inserted
beforehand.
2015-11-09 16:09:52 +01:00
Jean-Pierre André
b76883dc84 major : Fixed computation of index block size (Anton Altaparmakov)
When the cluster size is bigger than the index block size, the index
block size unit is 512 (not the sector size) instead of the cluster size.
The partitions formatted by mkntfs and used by ntfs-3g were not
interoperable with Windows when the cluster size is bigger than 4K
and the sector size is not 512.
2011-11-04 11:01:11 +01:00
Jean-Pierre André
058f850eb3 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)
2011-03-23 09:22:08 +01:00
jpandre
7bea2202d7 Made direct calls to collation functions 2009-12-16 10:20:57 +00:00
jpandre
af4f6a406a fix format breaking new lines in error messages 2009-11-05 11:43:36 +00:00
jpandre
b78d895575 Added indexing of reparse data into $Extend/$Reparse 2009-11-03 14:35:53 +00:00
jpandre
2a1d75a3da Adapted to ntfs-3g.2009.3.8 2009-03-27 09:10:00 +00:00
jpandre
ee37dcab6d Interpreted symbolic links created by Vista as symbolic links 2008-11-26 15:57:20 +00:00
jpandre
499e106341 Adapted to ntfs-3g.1.2812 2008-08-16 15:17:47 +00:00
jpandre
7c05f13884 Adapted to ntfs-3g-1.2531 2008-05-30 07:40:22 +00:00
jpandre
a38b79897d Adapted to ntfs-3g.1.2216 2008-02-18 15:15:13 +00:00
jpandre
2ff8218406 Adapted to ntfs-3g-1.2121-RC 2008-01-23 08:16:23 +00:00
jpandre
a892467a88 Fixed bad release of index root 2007-12-04 07:51:30 +00:00
jpandre
a8dc8655d0 Adjusted to v 1.1030 2007-10-29 16:28:33 +00:00
jpandre
d93d9562ee Fixed a special case in getting next index entry 2007-10-15 14:59:30 +00:00
jpandre
91a4873a23 Implemented a function giving next entry in an index
Removed temporary interfaces for the same aim
2007-10-12 12:54:49 +00:00
jpandre
a8a33f0bc3 Reverted back relay for free() and consequences on const ptrs 2007-10-09 13:33:11 +00:00
jpandre
8a210f7776 Cleaned code
- added a few const to arguments where needed
- casted to long long arguments fprintf'ed with %lld
2007-10-09 07:37:07 +00:00
jpandre
e84a56b165 Made two more functions public for temporary use in security.c 2007-10-06 14:39:08 +00:00
jpandre
99b4aba970 *** empty log message *** 2007-09-27 13:29:52 +00:00
szaka
0cee6bc4bb remove redundant ntfs_attr_get_search_ctx() error logging 2007-07-13 20:05:48 +00:00
szaka
c214b9c11c No need to check for ENOSPC because ntfs_log_perror() does it now 2007-07-08 20:45:14 +00:00
szaka
3f66b95f14 fix very rare, recoverable directory corruption 2007-07-08 18:41:27 +00:00
szaka
78348655bd ntfs_ir_truncate(): log all errors 2007-07-07 23:11:19 +00:00
szaka
59af03cfb8 ntfs_index_add_filename(): don't lose errno 2007-07-07 23:10:28 +00:00
szaka
d5642d5cd6 ntfs_ib_write(): don't log ENOSPC error (full disk) 2007-06-28 07:17:44 +00:00
szaka
f96c61be9f ntfs_ie_add(): cleanup 2007-05-29 20:41:55 +00:00
szaka
75c60e5486 fix 64-bit warnings (Yuval) 2007-01-09 21:22:58 +00:00
szaka
342e2d7af6 big-endian fixes (zhanglinbao, yuval, szaka) 2006-11-06 23:17:08 +00:00
szaka
7be2eeb930 ntfs_ie_dup_novcn(): fix null pointer dereference if malloc failed (Yuval) 2006-11-06 22:26:11 +00:00
szaka
ba63b7daca initial CVS import 2006-10-30 22:32:48 +00:00