Commit Graph

554 Commits (3d46df6b4a5ec157bfe644b217d780eb9870bbda)

Author SHA1 Message Date
cha0smaster fb433d4ad3 Fix unistr.c::ntfs_mbstoucs on systems with utf8 locale. 2005-07-28 21:20:23 +00:00
cha0smaster 0de66be9c0 ntfscp.c: fix bug intoduced by Anton in changeset 1.21
ntfsinfo: more info on index dumping
dir.c, layout.h: minor fixes
2005-07-25 22:05:27 +00:00
cha0smaster e48bd91bbf * Fix bug in index.c (see Changelog).
* Minor fixes to attr{ib,list}.c.
2005-07-23 00:50:31 +00:00
antona 93194b37a0 Add a function to ntfsprogs/decrypt.c that expands an on-disk desx key from 128
bits to the needed 192 bits so it can be used for {en,de}cryption.
Note I couldn't face using the completely insane libgcrypt api so I used
openssl's libcrypto instead...  Anyone feel free to swap once we have it
working.
2005-07-21 12:12:37 +00:00
cha0smaster b39a2a401f - Move ntfs2utc and utc2ntfs from utils.[ch] to timeconv.h.
- Add [acm]time fields to struct ntfs_inode and set them during ntfs_inode_open.  Update ntfsmount to use them.
- Bump version, update autoscripts.
2005-07-20 19:06:28 +00:00
antona 0dac29a487 Update for 1.11.1 release. 2005-07-20 08:14:52 +00:00
cha0smaster 7b9cac2912 Update ChangeLog and auto scripts. 2005-07-19 21:36:07 +00:00
cha0smaster fc2382b742 libntfs/volume.c: fix ntfs_check_if_mounted to cope with dirrerent names of same file.
ntfsprogs/ntfsmount.c: don't put relative path to /etc/mtab.
2005-07-18 02:09:43 +00:00
antona 4ed406e68e Add new utility (make extra) - ntfsdecrypt. (Yuval) 2005-07-16 06:53:40 +00:00
cha0smaster 0b75b12544 ntfsmount:
* use mount function from utils.[ch]
* remove fsname option (need to support if volume already mounted)
* add force option to support mount from utils
* update manual page
* fix tiny memleak
2005-07-15 15:53:22 +00:00
szaka 9f50872ec2 Spelling typos, Debian bug #300073 2005-07-12 16:18:10 +00:00
antona 47b52b54e3 Update changelog, fox more mkntfs bugs (thanks Timur!) and update build system
to SuSE 9.3 again.
2005-07-10 21:42:39 +00:00
cha0smaster 48af715f60 * Add check to auto scripts for FUSE to be >= 2.3.0.
* Move ntfsmount back to standard programs set.
2005-07-10 12:38:46 +00:00
antona b942e2c03a Move ntfsmount to extra programs as it doesn't even approximate being
compilable!  (At least on my machine which has fuse 2.2.1.)
And I need a working snapshot for Timur.
2005-07-09 21:32:17 +00:00
flatcap 7a142ef54c got bored. don't read the diffs. 2005-07-06 22:47:01 +00:00
cha0smaster cb13f36956 Fix typos, patch from debian version of nftsprogs 1.9.4-2. 2005-07-05 16:34:15 +00:00
cha0smaster 3727a729c2 - Add new utility - ntfsmount. It's a FUSE module that rely on libntfs. So,
you need FUSE to compile it, xattr is also highly recommended. This module
support file overwrite changing it size and can list/read/write/add/remove
named data streams via xattr interface.
- Update auto{make,conf} stuff respectively.
2005-07-03 00:18:37 +00:00
cha0smaster 3adc040305 Add change protype of ntfs_attr_pwrite: make @b const. 2005-07-02 19:16:18 +00:00
cha0smaster 9deb743974 Optimize a bit previous ntfs_inode_close fix. 2005-07-02 17:48:59 +00:00
cha0smaster b8e1188102 Fix memory managament error in ntfs_inode_close. ntfs_extent_inode_open
allocates buffer for up to 4 extent inodes, to prevent many reallocates.
But ntfs_inode_close always reallocate buffer to store exactly @nr_extents
inodes. Bug will arise in following scenario:
1) ntfs_extent_inode_open (1 extent, allocate buffer for 4)
2) ntfs_extent_inode_open (2 extents, use already allocated buffer)
3) ntfs_inode_close(extent_ni) (1 extent, reallocate buffer for 1 extent)
4) ntfs_extent_inode_open (2 extents, don't reallocate buffer because it should be for 4 elements, but really it's for 1, write to unitialized space, segfault)
2005-07-02 13:58:02 +00:00
cha0smaster fbe45ebac6 Fix valgrind varning about writing unitialized buffer. 2005-07-02 13:47:29 +00:00
szaka 70530ad551 ntfs_inode_close(): ElectricFence is unhappy with realloc(x,0) as free(x)
thus we distinguish these two cases
2005-06-27 20:30:09 +00:00
szaka d8dd64d425 Correct ntfs_inode_sync_file_name comment typos 2005-06-25 13:15:12 +00:00
antona 31a8750c4d Fix compiler warnings in libntfs when compiling under cygwin. 2005-06-21 09:55:15 +00:00
antona ca873f0474 Eeek. Someone did a commit just as I was about to commit so the commit
message was lost!  )-:

Now again...

Monster commit from me due to lack of time.  Sorry about that.

Features:

- Version to 1.10.0
- Update readme, etc ready for release.
- Update build system to suse linux 9.3 versions.
- Fix warnings appearing for me on suse 9.3 with --enable-warnings --enable-debug.
- Set attr_name to NULL in libntfs/attrib.c::__ntfs_attr_init() and fixup all
  callers apropriately.  Thanks to FlatCap/Rich for pointing this out.
- Determine endianness in ./configure and use that in addition to existing
  mechanisms for determining endianness.
2005-06-20 14:31:30 +00:00
flatcap 09936e5c22 typos 2005-06-20 14:23:50 +00:00
flatcap 086fd4cc0c probably a bug in __ntfs_attr_init 2005-06-20 14:23:27 +00:00
flatcap 949043ab36 Tidy whitespace: trailing space; <space><tab> at the beginning of lines
Fix warnings about sign differences
Fix warnings about unused parameters
Tidy a few functions that didn't have { on a new line
2005-06-19 21:09:40 +00:00
antona cc992ab0f6 Add more things to .cvsignore files. 2005-06-19 13:20:40 +00:00
cha0smaster e323ed6a03 Move utils_pathname_to_inode from to library (dir.c), adapt it for library, rename it to ntfs_pathname_to_inode, update all users. 2005-06-12 18:12:55 +00:00
cha0smaster b1dfa2b306 - Fix memleak in ntfs_attr_pwrite
- Update layout.h a bit to be a kernel driver like.
2005-06-12 15:23:25 +00:00
cha0smaster 676d8782e8 - Update attribute definition handling. (Anton, Yura) 2005-06-09 22:09:39 +00:00
flatcap 554b27dd47 ignore built/generated files 2005-06-09 09:05:30 +00:00
cha0smaster 373e47acb5 Fix coding style. 2005-06-08 18:02:29 +00:00
antona dd52588aae Use dynamic buffer in ntfs_device_win32_find_partition().
Based on patch from Yuval.
2005-06-06 14:51:09 +00:00
antona 1aeb91827c Update build for changes to function detection in configure.ac. 2005-06-06 14:31:37 +00:00
antona 62a4484a94 Finally fix the win32 write support problems. 2005-06-06 14:30:38 +00:00
cha0smaster d2ed58e6a2 Anyway, this extra check will not harm anybody, but in case windows support such names it's will be useful. 2005-06-06 04:26:28 +00:00
cha0smaster 410432bc9d - Fix bug in index.c pointed by Anton, many thanks to him.
- Small updates all over the place:
   * NEWS
   * ntfscp manual page
   * ntfsinfo prints parent directory for FILE_NAME attribute
   * year in ntfscp copyright
2005-06-05 23:48:55 +00:00
cha0smaster 4b000b3d13 - Implement FILE_NAME attributes update in index during inode sync and enable code that set/clean sparse bit. Also add new inode state bit FileNameDirty to indicate that FILE_NAME attributes need update. At least after attribute resize we leave absolutely consist volume.
- Bugfixes to collate.c and index.c.
- Minor formating fixed to ntfscp and ntfsinfo.
2005-06-05 14:55:08 +00:00
cha0smaster 048a1857be Fix some bugs and warnings in code that I commited tonight. 2005-06-04 15:20:00 +00:00
cha0smaster 2d8dc1736d - Port collate.[ch] from kernel to library and implement

							
						
2005-06-04 00:57:58 +00:00
antona d530c02e49 Ooops. Forgot to actually use our fnSetFilePointerEx() instead of
SetFilePointerEx() directly...
2005-06-03 10:33:35 +00:00
antona b8a543a27e Do dynamic run-time detection of SetFilePointerEx() instead of defunct
autoconf crap.
Also, fix a really stupid bug in the emulated SetFilePointerEx() which caused
the segfaults.  (It unconditionally wrote to a pointer even when it was NULL.)
2005-06-03 10:27:32 +00:00
szaka fbbefe0c70 - read-write ntfs_mount() returns EPERM if the partition is hibernated 2005-05-10 16:53:48 +00:00
szaka 16ffe6063d - remark that Longhorn uses the same NTFS 3.1 format as XP and W2K3 2005-05-10 16:44:58 +00:00
cantab.net!aia21 307659837c Major rewrite, in particular seek, read, and write related code.
(Logical change 1.698)
2005-04-22 13:52:16 +00:00
cantab.net!aia21 ac13794c54 Update with SUSE 9.3 build tools.
(Logical change 1.696)
2005-04-19 12:00:26 +00:00
elisa-laajakaista.fi!szaka e9159478ea ntfsfix: use getopt, added --help and --version, some output cleanup
(Logical change 1.679)
2005-02-19 19:34:37 +00:00
void!yura 03a03359a1 Fix memleak in ntfs_attr_update_mapping_pairs
(Logical change 1.678)
2005-02-17 18:01:56 +00:00
cantab.net!aia21 9028469456 Fix a nasty runlist merge bug when merging two holes. (Anton)
(Logical change 1.677)
2005-02-17 17:03:50 +00:00
void!yura 51a83b1699 don't check logfile for readonly mounts
(Logical change 1.673)
2005-02-01 18:26:17 +00:00
void!yura 3ca5f1fc5d integrate logfile checking with mount
(Logical change 1.672)
2005-01-30 18:13:25 +00:00
void!yura ed945d174c I realized that my previous chanset fixed one bug, but introduced new one.
This will fix both (I hope) and beautificaty function look a bit.

(Logical change 1.671)
2005-01-28 13:48:19 +00:00
void!yura 03dcb59a6b Fix rare occuring bug in ntfs_attrlist_entry_add. Read updated comment if interesting.
(Logical change 1.670)
2005-01-27 18:35:43 +00:00
void!yura 98ac77e115 ntfs_inode_attach_all_extents: don't try to attach base inode to itself and optimize algorithm a bit.
(Logical change 1.669)
2005-01-27 18:31:08 +00:00
void!yura e89f48810a Fix stupid bug trying to sync standard information for not base inode.
(Logical change 1.667)
2005-01-26 23:37:25 +00:00
void!yura 317f6f4b62 Make ntfs_logfile_reset use ntfs_empty_logfile.
(Logical change 1.666)
2005-01-25 21:41:25 +00:00
void!yura e2ed469c89 Initial revision 2005-01-25 21:41:25 +00:00
void!yura 0def64e981 (Logical change 1.666) 2005-01-25 21:41:25 +00:00
void!yura 39e6fa1339 Add logfile.c to build
(Logical change 1.665)
2005-01-25 19:46:51 +00:00
cantab.net!aia21 9fca23feb2 Fix type casts after Yura's prototype changes.
(Logical change 1.664)
2005-01-19 10:31:46 +00:00
void!yura 668403c146 fix gcc4 warnings in attrib.c
(Logical change 1.663)
2005-01-17 15:04:56 +00:00
void!yura 954c8d121e change prototypes of ntfs_write_significant_bytes and
ntfs_mapping_pairs_build to fix a lot of compiler warnings.

(Logical change 1.660)
2005-01-17 11:58:33 +00:00
void!yura 3dd3b08b07 fix compiler warning about ntfs_inode_sync_standard_information
(Logical change 1.659)
2005-01-17 11:50:36 +00:00
cantab.net!aia21 a05c3cc3e1 Update to more recent build tools.
(Logical change 1.654)
2005-01-13 09:56:56 +00:00
(none)!yura 14db887f8e Rename NTFS_SECTOR_SIZE to NTFS_BLOCK_SIZE to keep in sync with kernel driver.
(Logical change 1.653)
2005-01-11 20:28:28 +00:00
(none)!yura 81fd8478ff Fix potential bug in ntfs_inode_sync_standard_information (potential,
because standard information seems always to be in the base mft record)

(Logical change 1.652)
2004-12-23 11:27:38 +00:00
(none)!yura 59a2803283 Update standard information during inode sync.
(Logical change 1.651)
2004-12-22 18:06:07 +00:00
(none)!yura 48dee17d12 I understood that it's safe to uncomment some pieces of code.
(Logical change 1.650)
2004-12-22 16:42:46 +00:00
(none)!yura 5325a7c608 Set NIno{Compressed,Sparse,Encrypted} during ntfs_inode_open
(Logical change 1.648)
2004-12-22 16:17:07 +00:00
cantab.net!aia21 140a6d2479 Rename/move inode.[hc]::ntfs_inode_{add,rm}_attr() to
attrib.[hc]::ntfs_attr_{add,rm}(), respectively.  (Anton)

(Logical change 1.646)
2004-12-22 14:22:09 +00:00
cantab.net!aia21 db7c9da42f Move NAttr{Sparse,Compressed,Encrypted} to inode struct preserving
the previous interface.  (Yura, with fixes from Anton)

(Logical change 1.645)
2004-12-22 14:04:41 +00:00
cantab.net!aia21 003b867d71 Update build for change to configure.ac.
(Logical change 1.644)
2004-12-17 14:41:57 +00:00
cantab.net!aia21 725e19422c Patch for a better compilation under NT 4 that lacks
SetFilePointerEx and FSCTL_GET_NTFS_VOLUME_DATA.  (Christophe)

(Logical change 1.644)
2004-12-17 14:41:57 +00:00
(none)!yura 173cbd1d54 Implement attribute move out in case attribute is to small to add
compressed_size field to it and we have no free space in the current
mft record.

(Logical change 1.642)
2004-11-21 13:39:13 +00:00
(none)!yura 9c6cce1bf2 Fix bug in ntfs_inode_add_attr.
(Logical change 1.641)
2004-11-21 12:31:51 +00:00
(none)!yura 2afeb1523d Fix format string in ntfs_rl_sparse and ntfs_rl_get_compressed_size.
(Logical change 1.640)
2004-11-21 12:30:53 +00:00
(none)!yura e2ba16e3db Add @extra parameter to ntfs_attr_record_move_away. New attribute record
holder must have free @extra bytes after moving attribute record to it.

(Logical change 1.639)
2004-11-21 11:13:09 +00:00
(none)!yura a6258ef736 Rename layout.h::ATTR_RECORD::{compressed_non_,non_,}resident_attr_end
to more shorter {non_,}resident_end and compressed_end.

(Logical change 1.637)
2004-11-21 10:53:22 +00:00
(none)!yura 793120bfb6 fix ntfs_rl_sparse and ntfs_rl_get_compressed_size name in their comments
(Logical change 1.636)
2004-11-13 20:59:44 +00:00
cantab.net!aia21 cdf56dbe79 Fix bug in ntfs_rl_get_compressed_size() and optimize it a bit.
(Logical change 1.635)
2004-11-13 08:35:46 +00:00
(none)!yura 4ae8b449af Implement code that set/clean sparse bit. But I have to disable it for now
(look to the comment of the ntfs_attr_update_mapping_pairs).

(Logical change 1.634)
2004-11-12 17:32:55 +00:00
(none)!yura 339c87da38 Endians fix in ntfs_attrlist_entry_add.
(Logical change 1.633)
2004-11-12 17:10:56 +00:00
(none)!yura 38be5f3e95 New API's ntfs_runlist_sparse and ntfs_rl_get_compressed_size.
(Logical change 1.632)
2004-11-12 17:09:24 +00:00
(none)!yura 9afb493617 Comments and message fixes in ntfs_attr_update_mapping_pairs.
(Logical change 1.631)
2004-11-10 16:10:10 +00:00
(none)!yura c99889736e fix some paths of attribute instantiating code
(Logical change 1.629)
2004-11-05 21:43:48 +00:00
(none)!yura 1c283737c5 Change prototype of ntfs_cluster_alloc like in kernel driver.
(Logical change 1.628)
2004-11-05 20:02:16 +00:00
(none)!yura 93d9ed05aa - ntfs_attr_pwrite now can instantiate holes
- modify ntfs_non_resident_attr_expand to add sparse runs

(Logical change 1.627)
2004-11-05 19:53:34 +00:00
(none)!yura e7f6573732 Update outdated ENOTSUP return values.
(Logical change 1.626)
2004-11-05 14:31:00 +00:00
(none)!yura 8073aaff7d ntfs_attr_pwrite: write zeros between initializes_size and @pos if needed.
(Logical change 1.625)
2004-11-05 13:54:34 +00:00
(none)!yura 3bfc11a073 Implement writing beyond data_size in ntfs_attr_pwrite.
(Logical change 1.624)
2004-11-05 11:54:43 +00:00
(none)!yura 104b710f20 cleanup to attrib.c
(Logical change 1.623)
2004-11-04 15:52:13 +00:00
(none)!yura 8b1c81fd64 Remove check that prevent attributes in inodes with attribute list become resident from ntfs_attr_make_resident.
Bugfix and cleanups to ntfs_attr_make_resident.

(Logical change 1.622)
2004-11-04 15:39:50 +00:00
(none)!yura a90e99ff95 Fix determine of resident or not should be new attribute in ntfs_inode_add_attr.
(Logical change 1.622)
2004-11-04 15:39:50 +00:00
(none)!yura 415693011c Remove unused function ntfs_rl_merge. (Thanks to Adrian Bunk for spoting it)
(Logical change 1.621)
2004-10-30 12:47:27 +00:00
(none)!yura b47cb7aa81 remove unused code from ntfs_resident_attr_value_resize
(Logical change 1.620)
2004-10-20 17:42:20 +00:00
(none)!yura fb156edd1a fix stupid bug in ntfs_attr_truncate
(Logical change 1.619)
2004-10-18 19:35:46 +00:00
(none)!yura 7df47f7703 add proper rollback to ntfs_inode_add_attrlist
(Logical change 1.618)
2004-10-18 16:34:01 +00:00
(none)!yura 135a0559c8 replace 0 with NULL where applicable
(Logical change 1.616)
2004-10-18 10:00:09 +00:00