Commit Graph

728 Commits (f73d77d56845f85ea4a2a309d2efffb72d78afa7)

Author SHA1 Message Date
aia21 f73d77d568 - Implement ntfs_pread() and ntfs_pwrite() in terms of device
operations pread() and pwrite() respectively and fall back to using
  seek() + read()/write() if no pread()/pwrite() device operation is
  supplied or the OS does not support the pread()/pwrite() system call.
  Adapt unix_io pread()/pwrite() device operations to use pread()/
  pwrite() system call and adapt win32_io device operations to not
  supply pread()/pwrite().  (Csaba Henk, Anton)
2006-12-09 14:01:12 +00:00
yura c475778b47 Turn ntfs_pathname_to_inode() into ntfs_pathname_to_inode_num() which
returns ntfs inode number instead of opened inode itself.
Reimplement ntfs_pathname_to_inode() as wrapper to new API.
2006-12-06 18:50:13 +00:00
aia21 5302d23f7b - Empty the journal at mount time. (Anton)
- Set the volume dirty bit at mount time (if it is not set already and
  clear it again at umount time but only if it was not set to start
  with.  (Anton)
2006-11-28 10:09:56 +00:00
yura f738f39bdf oops, introduced stupiedness during one of recent cleanups 2006-11-25 21:35:39 +00:00
yura f12f4aefb7 ntfs_log_error("Failed.\n") is evil. TODO: Implement ntfs_log_errortrace 2006-11-25 21:10:35 +00:00
yura 8df298aec2 Introduce MNT_NTFS_NOT_EXCLUSIVE mount option that tells libntfs do
not open volume exclusively. Useful if libntfs user cares about this
himself, eg. FUSE with blkdev option.
2006-11-25 17:37:37 +00:00
yura 668780d84d bot more verbose debug 2006-11-25 14:28:47 +00:00
yura 18c8f75c7b make ntfs_attr_rm to always close attribute (both on success and failure) 2006-11-22 18:28:13 +00:00
yura c14589175f apply latest fixes from ntfs-3g to enddianess
now everything should work on BE machines!
2006-11-20 17:44:36 +00:00
yura 0da86b6723 port from ntfs-3g fixes to error cases in index code 2006-11-20 17:30:13 +00:00
yura a604622314 Windows cares only about first 4 records in $MFTMirr and ignores
everything beyond them. Update libntfs behaviour to be like in
windows. Leave @mftmirr_size for case if will want to change something in the
future.
2006-11-20 16:21:57 +00:00
yura ef66794423 cleanups 2006-11-20 15:59:14 +00:00
yura f7fe727b09 80 chars lines long fixes 2006-11-19 20:19:18 +00:00
yura b33658bc61 cleanups 2006-11-17 22:51:29 +00:00
yura 7d1016fe97 Treat filenames in POSIX namespace as case insensitive in case of case insensitive mounts. 2006-11-15 23:15:17 +00:00
yura cb27c9f616 * Rename MS_{RDONLY,NOATIME} to NTFS_MNT_{RDONLY,NOATIME}.

							
						
2006-11-12 22:46:50 +00:00
yura 28f24fbc2c revert factoring out ntfs_attr_fill_hole(), agree that it should be refactored,
but passing all args as pointers and changing them there (especially
update_from that changes only inside new function, but rollback depends on it
in pwrite)
2006-11-10 16:07:45 +00:00
yura f2e1ff96d2 Spent really a lot of time applying various "optimizations" from ntfs-3g and
finally figured out that ntfs-3g is faster than ntfsmount only because of
3 reasons:
1) turned on noatime option by default
2) ntfs-3g builds without debug output by default
3) the only real optimization: almost always add resident attributes.
However by accident patch in ntfs-3g for 3) breaks several code paths (why
I am not surprised?), thus I rewrote whole ntfs_attr_add() logic.
2006-11-09 21:19:11 +00:00
aia21 025f07a269 Make a little nicer. 2006-11-07 10:37:25 +00:00
yura d556675a29 Fix typo and build with disabled error handling 2006-11-06 17:11:02 +00:00
uvman 76fc32ed87 Fix a memleak. (Szaka) 2006-11-01 22:37:31 +00:00
uvman be6b5ce977 Factor ntfs_attr_fill_hole() out of ntfs_attr_pwrite(). (Szaka) 2006-11-01 20:20:18 +00:00
uvman 1598a68d67 Fix compilation on environments that one can not assign to "va_list args" (e.g. Debian Alpha). Do so by removing the unused log_reason code. Originally, Szaka asked FlatCap for it but never used it. I've asked Szaka if he is going to use it but he did not reply. I got an implicit answer in the form of ntfs-3g commit. Therefore, commit an updated version of the patch I've sent the Debian package maintainer. 2006-11-01 14:05:09 +00:00
uvman 7d585a0327 Change callers of malloc() to ntfs_malloc() (Szaka). Fix compilition (Yuval). 2006-11-01 13:30:40 +00:00
uvman 483522ec1f Introduce misc.c - Proud home of functions with no other home, starting with ntfs_[mc]alloc. (Szaka) 2006-11-01 12:31:11 +00:00
uvman f6d6db57db Fix wrong error logic that would lead to segfault when malloc fails. 2006-10-30 19:40:56 +00:00
uvman 3e3196133c Avoid a memory leak on the error code path. 2006-10-30 13:43:09 +00:00
uvman 22108e36a1 More big-endiness fixes. (zhanglinbao, Yuval) 2006-10-30 13:29:45 +00:00
uvman 036e748cb9 I was assuming memmove() would copy byte by byte if it detects a smaller than word gap. Anton pointed out that it doesn't, glibc sources confirm, the C99 standard claims otherwise. Revert the compress.c patch as implementation is more important than specification. 2006-10-29 08:59:21 +00:00
uvman 561cb42743 Move ntfs_index_entry_mark_dirty() from index.h to index.c. (Szaka) 2006-10-29 00:55:45 +00:00
uvman fe1405393f Change ntfs_collate()'s signature to size_t's. Move ntfs_is_collation_rule_supported to the .c file and rewrite it to be shorter. 2006-10-29 00:01:17 +00:00
uvman 87d87073c7 The periodic 'int is not neccessarily 32bit' fixes. 2006-10-28 23:45:22 +00:00
uvman 5c4b9c1056 C99 declarations before code fixes. 2006-10-28 23:40:11 +00:00
uvman f51136ac9d Forgot to advance the dest buffer (shame on me) 2006-10-28 23:35:56 +00:00
uvman c59a3aedbd memmove() already deals with overlap, is optimized, is ANSI C and only takes one line to call. 2006-10-28 23:15:44 +00:00
uvman 8fd26af3fb Fix memleak. Remove dead code. 2006-10-28 23:08:24 +00:00
uvman 08db1a719b Aid basic static code checkers to see that ctx can not be null in this code path. 2006-10-28 23:06:49 +00:00
yura ab3519cbcd Always instantiate holes 2006-10-27 14:18:02 +00:00
yura b1583bdce6 Fix several memleaks 2006-10-27 14:15:32 +00:00
uvman ff55ecb513 Whitespace cleanup 2006-10-27 12:24:29 +00:00
aia21 880529ee5a Revert part of 1.71: Gratuituous API/ABI change. 2006-10-27 09:05:56 +00:00
uvman bd1837335b trace output updates. (Szaka, Yuval) 2006-10-26 20:45:28 +00:00
uvman ca2fb9a467 Remove inline keywords from static non-one-liners of '.c' files. 2006-10-26 19:10:05 +00:00
uvman fc7553ad2b [Inconstant,Damaged] metadata -> Inconsistent metadata 2006-10-25 18:57:15 +00:00
uvman c55aea3ad4 Use le32 conversion macros for u32 variables of INDEX_HEADER. (zhanglinbao2000, Yuval) 2006-10-25 16:49:00 +00:00
uvman 480fdb14d5 One more errno save/restore. 2006-10-22 01:11:48 +00:00
uvman 7b6f7e98d4 Remove saving and restoring errno around logging calls as these will not change errno anyway. Remove save/restore only if the saved value will not be used. 2006-10-22 00:23:29 +00:00
aia21 49559ce57c fix a silly bug. 2006-10-20 19:53:50 +00:00
uvman cc12bccc05 Allow reusing ntfs_device after close. 2006-10-18 14:44:23 +00:00
aia21 0c86fccdc9 Fix GUID to string conversion to follow documentation (details: it is not
little endian at all, it is a binary sequence)...

See remarks section at:

http://windowssdk.msdn.microsoft.com/en-us/library/96ff78dc.aspx
2006-10-10 10:29:11 +00:00