2002/07/08 06:23:22-00:00 !antona Don't use string concatenation with __FUNCTION__ as gcc-3.x don't like it. 2002/07/07 19:44:57-00:00 !antona Change ntfs_read_file_record() not to abort if the inode is not in use. Adapt callers which care to check this themselves. 2002/07/02 23:47:10-00:00 !antona Global replacement of __[su]{8,16,32,64} with [su]{8,16,32,64} and layout.h define it. 2002/06/08 14:12:01-00:00 !antona ntfs_readdir() has arrived. 2002/06/05 20:32:53-00:00 !antona Mft mirror now updated from ntfs_write_mft_record, yey! Fixup ntfstools accordingly. 2002/06/01 00:41:45-00:00 !antona huge update! 2002/04/27 19:49:09-00:00 !antona Update library, new APIs ntfs_attr_find_vcn(), misc fixes and cleanups, make all the utilities compile, fix bugs I noticed in ntfslabel and it now works properly. 2002/04/24 23:47:42-00:00 !antona Hammer out the API for run list merging. Add calls for low level (using raw run lists and ATTR_RECORDs as parameters) run list merging, mappaing pairs decompression, and vcn to lcn conversion as well as high level (using ntfs_attr as parameter) calls for run list mapping and vcn to lcn conversion. 2002/04/22 10:34:31-00:00 !antona Attribute list support (merging done, part 2, some stuff still incomplete). mkntfs ntfs volume creation. See the changelog... 2002/04/20 23:09:42-00:00 !antona Port attribute lookup functions with attribute list support from ntfs tng driver. Port/reimplement extent mft record handling code as well. Rename out all dollar signs from type names and constants. Adapt all callers to new API. Note mkntfs is currently broken due to some needed work. 2002/04/20 01:53:02-00:00 !antona Rename mft code adding ntfs_ prefix. Change all return values to zero on success. Thanks to mattjf for pointing out the inconsistencies. 2002/04/16 12:13:53-00:00 !antona New API function mft.[ch]::read_file_record(). Also some cleanups. 2002/04/15 20:04:27-00:00 !antona Fix all compiler warnings that came up with -Wall. Enabled -Wall for ./configure --enable-debug everywhere. Fix a few bugs in mkntfs that came up in the warnings (just error code paths, nothing major). 2002/04/15 19:02:40-00:00 !antona Really fix the library and mkntfs while at it. 2002/04/15 18:54:07-00:00 !antona Update library for the new API. 2002/04/15 18:39:37-00:00 !antona Cleanup some mistakes. 2002/04/15 17:51:26-00:00 !antona read/write_mft_record(s) are here 2002/04/15 00:42:07-00:00 !antona Big rewrite of disk_io.c. Now should have stable API for low level disk access. Move all mft record related stuff from disk_io.c to mft.c. 2002/04/14 14:08:30-00:00 !antona Cleanup library code. Throw away unused stuff. 2002/04/14 13:34:49-00:00 !antona Throw away all unnecessary crap. 2001/12/15 05:13:08-00:00 !antona Remove atomic ops and add compiler version check. 2001/06/01 02:07:26-00:00 !antona It has been a long time since last commit. At moment have done a lot of work on mkntfs but also at the moment ntfsfix and ntfsdump_logfile and libntfs are broken. Basically only mkntfs works and that is not complete either. 2001/04/11 14:29:12-00:00 !antona Almost fixed compilaton. Remember to declare a struct type with struct NAME { declaration }; rather than the bogus struct { declaration NAME }; then can use typedef NAME othername; on a forward declaration of NAME (struct NAME;) and all is fine... 2001/04/11 11:49:16-00:00 !antona Header file reorganisation so that it compiles. 2001/04/10 23:37:19-00:00 !antona Ok, ntfsd was a mistake for userspace. It increases complexity no end while not giving us much functionality. Lets get it working and then worry about the kernel. - As it was the idea originally anyway, so this is just a return on the right track. (-8 We keep the timer and signal handler but the only thing we do is to set a bool flag (ntfs_need_sync) and we will just check this in appropriate places and if it is true we call ntfs_sync_volumes() which sets it back to false. This means no more locking at all of any description and no need to worry about the signal handler interrupting things in bad ways and/or at bad times in the main code. 2001/04/09 00:05:37-00:00 !antona More or less finished file handling. (Probably some useful functions are still missing but they will be implemented as need arises.) One thing that is stupid at the moment is we don't limit the amount of cached mft_records so if you were to load loads the machine would eventually run out of memory... Can't happen with files as they are limited to 1000, unless you are short of memory. (Hard limit at the moment, set in ntfs_mount(). Maybe ntfsd should be monitoring memory usage and be throwing out unused cache entries and closed_files? That would mean to have locking everywhere, though.) Still missing: - Convert old code to use new stuff. - Add non-resident attributes somewhere. Either into the mft_entry structure or into the ntfs_file structure, but which? At the moment I tend to mft_entry so they can be synced together with the entries by ntfsd. 2001/04/08 01:58:29-00:00 !antona User space conversion of locking complete. I settled for using simple spinlocks and atomic variables and instead of deadlocking/livelocking when using spin_lock(), use spin_trylock() in a while letting go of the cpu between each call and making a maximum of 100 iterations (or we return EDEADLK error code). This is not the most efficient way, especially as can't have multiple readers but it is the simplest way to go about things. Should now have (almost) all required helper functions for dealing with mft entries implemented. Now need the file handling and then convert the whole project to use the new code and then can finally get back to work on attribute searching... 2001/04/05 20:14:45-00:00 !antona Commit of current state of development including locking a la kernel. This doesn't work on user space (semaphores don't work). Just want to have it committed. Will take out locking / modify it where necessary to use pthreads ASAP. 2001/04/03 23:38:34-00:00 !antona Mark mft entry dirty function complete 2001/03/05 03:04:40-00:00 !antona Corresponding changes to the library. 2001/01/25 22:25:43-00:00 !antona More files added to ntfs lib. Fixed some consistency problems. (Logical change 1.5) |
||
---|---|---|
BitKeeper/etc | ||
doc | ||
include | ||
libntfs | ||
ntfstools | ||
AUTHORS | ||
COPYING | ||
CREDITS | ||
ChangeLog | ||
ChangeSet | ||
INSTALL | ||
Makefile.am | ||
Makefile.in | ||
NEWS | ||
README | ||
TODO.include | ||
TODO.libntfs | ||
TODO.ntfstools | ||
acconfig.h | ||
aclocal.m4 | ||
autogen.sh | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.in | ||
install-sh | ||
linux-ntfs.spec.in | ||
ltconfig | ||
ltmain.sh | ||
missing | ||
mkinstalldirs | ||
stamp-h.in |
README
Linux-NTFS ========== The Linux-NTFS project aims to bring full support for the NTFS filesystem to the Linux operating system. Linux-NTFS is copyright (c) 2000-2002 Anton Altaparmakov. All of the contents of the Linux-NTFS project are free software, released under the GNU General Public License and you are welcome to redistribute them under certain conditions. All the libraries and utilities come with ABSOLUTELY NO WARRANTY; for details read the GNU General Public License to be found in the file COPYING in the main Linux-NTFS distribution directory. Linux-NTFS currently consists of the NTFS library (libntfs) and utilities (ntfstools). In the future it will also contain a new NTFS driver for the Linux kernel. The Linux-NTFS project is registered on Sourceforge.net. The home page for Linux-NTFS is http://linux-ntfs.sf.net/ and the project page is: http://sf.net/projects/linux-ntfs/ If you would like to take part in the development of Linux-NTFS, you are invited to subscribe to the development mailing list, linux-ntfs-dev@lists.sourceforge.net. The easiest way to do this is to visit the list page on sourceforge at: http://lists.sourceforge.net/lists/listinfo/linux-ntfs-dev If you would like to be kept up to date about new releases and other Linux-NTFS announcements, subscribe to the linux-ntfs-announce mailing list (very low volume). The easiest way to do this is to visit the list page on sourceforge at: http://lists.sourceforge.net/lists/listinfo/linux-ntfs-announce NTFS library ============ Provides common NTFS access functions to the ntfstools and other foreign open source applications. Note, that the library is still under heavy development and doesn't include the majority of functionality yet. It only is capable of just about supporting the current ntfstools, so I wouldn't recommend using it for your own applications at this stage. NTFS utilities ============== The ntfstools will eventually include utilities for doing all required tasks to NTFS partitions. In general, just run a utility without any command line options to display the version number and usage syntax. The following utilities are so far implemented: NtfsFix - Attempt to fix an NTFS partition that has been damaged by the Linux NTFS driver. Note that you should run it every time after you have used the Linux NTFS driver to write to an NTFS partition to prevent massive data corruption from happening when Windows mounts the partition. IMPORTANT: Run this only *after* unmounting the partition in Linux but *before* rebooting into Windows NT/2000 or you *will* suffer! - You have been warned! See man 8 ntfsfix for details. mkntfs - Format a partition with the NTFS filesystem. See man 8 mkntfs for command line options. ntfslabel - Display/change the label of an NTFS partition. See man 8 ntfslabel for details. ntfsundelete - Recover deleted files from an NTFS volume. See man 8 ntfsundelete for more details.