Commit Graph

313 Commits

Author SHA1 Message Date
cantab.net!aia21
37b43614ab Rename: include/attrib.h -> include/ntfs/attrib.h
}(Logical change 1.280)
2004-02-25 14:21:14 +00:00
cantab.net!aia21
f2c1a93bc8 Rename: include/attrib.h -> include/ntfs/attrib.h
(Logical change 1.280)
2004-02-25 14:21:14 +00:00
cantab.net!aia21
1f65bb86c0 Rename: include/Makefile.am -> include/ntfs/Makefile.am
(Logical change 1.280)
2004-02-25 14:21:14 +00:00
cantab.net!aia21
b1c59d1796 Initial revision 2004-02-25 14:21:14 +00:00
cantab.net!aia21
44d6eb9704 (Logical change 1.280) 2004-02-25 14:21:14 +00:00
cantab.net!aia21
441947337e Include config.h before any other non-ntfs headers.
(Logical change 1.279)
2004-02-20 14:44:16 +00:00
cantab.net!aia21
26fbe3a101 Update for latest libtool/autoconf/automake.
(Logical change 1.273)
2004-01-26 09:53:57 +00:00
cantab.net!aia21
401c8ebf7d apply patch from Szaka:
- all warnings fixed for maintainer mode for ntfsresize and ntfsclone
- added 'const' to ntfs_ucstombs()'s first parameter
- 'fsync' also after metadata-only cloning
- fixed forced metadata-only, dirty ntfs cloning (only one -f needed)

(Logical change 1.264)
2004-01-15 17:07:57 +00:00
cantab.net!aia21
c9076ef627 - Apply patch from Szaka to fix all %L to %ll.
- Fix remaining %L ti %ll (compress.c).
- Run ./autogen.sh on SuSE 9.0.

(Logical change 1.263)
2004-01-15 16:57:10 +00:00
cantab.net!aia21
e13713fd27 Finish attribute decompression code. (Completely untested!)
(Logical change 1.261)
2004-01-13 11:05:18 +00:00
cantab.net!aia21
cd99a42e34 Update
2004/01/08 17:13:00+00:00 cantab.net!aia21
Fill in documentation gaps for ntfs_attr structure.

(Logical change 1.259)
2004-01-09 12:38:56 +00:00
cantab.net!aia21
dff4154577 Update
2004/01/08 17:13:00+00:00 cantab.net!aia21

(Logical change 1.259)
2004-01-09 12:38:56 +00:00
cantab.net!aia21
5aa2088a95 Update
(Logical change 1.259)
2004-01-09 12:38:56 +00:00
cantab.net!aia21
010e735129 Initial revision 2004-01-09 12:38:56 +00:00
cantab.net!aia21
9c78a8bf4f Add compress.h to the build system.
(Logical change 1.259)
2004-01-09 12:38:56 +00:00
cantab.net!aia21
3244f17522 Enable lots of compiler warnings and fix warning from libntfs.
(Logical change 1.257)
2004-01-07 15:03:17 +00:00
cantab.net!aia21
6651abe322 More updates from Christophe Grenier for DJGPP and FreeBSD.
(Logical change 1.253)
2004-01-07 10:22:51 +00:00
cantab.net!aia21
3eaa5c327f Remove duplicate redeclaration from device.h. (Christophe Grenier)
(Logical change 1.252)
2004-01-07 10:02:13 +00:00
cantab.net!aia21
3fea49b48c - Compile fixes for DJGPP. (Chrisophe Grenier, me)
- Add compatibility for building on FreeBSD. (Christophe Grenier)

(Logical change 1.249)
2004-01-06 14:31:21 +00:00
cantab.net!aia21
1226d98038 Add compatibility for building with DJGPP under DOS. (Christophe
Grenier, slightly modified by me)

(Logical change 1.247)
2004-01-06 11:04:29 +00:00
cantab.net!aia21
608669d564 Add ntfs_rl_pread().
(Logical change 1.244)
2003-12-05 18:06:50 +00:00
cantab.net!aia21
19fcf9b688 Add ntfs_attr_map_whole_runlist().
(Logical change 1.243)
2003-12-03 15:38:52 +00:00
cantab.net!aia21
e92992ed63 Cleanup build system with respect to CFLAGS so they are consistent throughout and
the right flags get added for the right things and move all of this in one place in
configure.ac removing everything from the Makefile.am files.

(Logical change 1.239)
2003-11-19 10:31:21 +00:00
flatcap.org!ntfs
05af63dc9b remove the dependency on <asm/byteorder.h> in favour of <endian.h> and <byteswap.h>
(Logical change 1.237)
2003-11-18 21:17:57 +00:00
cantab.net!aia21
d9bf0f8f6e Make building of libntfs-gnomevfs optional. (Jan Kratochvil)
(Logical change 1.231)
2003-11-07 18:25:26 +00:00
cantab.net!aia21
912e86e813 Split off ntfsprogs-gnomevfs in separate rpm and move glib/gnome
dependencies to it.

(Logical change 1.230)
2003-11-07 10:16:00 +00:00
cantab.net!aia21
ef164c7184 Update build. Note noticed by citool before...
(Logical change 1.224)
2003-11-04 13:13:48 +00:00
cantab.net!aia21
541450856b attrdef_len is now signed
(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
51931fd51d Update build.
(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
083dca6a18 Update attr_def min and max size to be s64 not unsigned.
(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
0f24a6c105 Typo...
2003/11/03 17:21:37+00:00 cantab.net!aia21

(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
05bf546cb0 Now file_size is signed.
(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
80b57b880d Initial revision 2003-11-04 13:04:07 +00:00
cantab.net!aia21
3618c4b8f7 Add ntfs gnome vfs header files.
(Logical change 1.223)
2003-11-04 13:04:07 +00:00
cantab.net!aia21
2a4f72d834 (Logical change 1.223) 2003-11-04 13:04:07 +00:00
cantab.net!aia21
86f747e673 Update comments.
(Logical change 1.218)
2003-10-29 14:45:57 +00:00
flatcap.org!ntfs
d0cc759878 Updates from Szaka
(Logical change 1.191)
2003-10-09 07:56:06 +00:00
cantab.net!aia21
14b8a9bab6 disk_io is gone. device_io appears.
(Logical change 1.188)
2003-10-06 11:38:25 +00:00
cantab.net!aia21
786a34f1a2 New export: ntfs_device_default_io_ops
2003/10/06 10:49:55+01:00 cantab.net!aia21
Rename: BitKeeper/deleted/.del-device.h~47409fbdf050222e -> include/device.h

(Logical change 1.188)
2003-10-06 11:38:25 +00:00
cantab.net!aia21
aa247f5101 Make it work on Cygwin.
(Logical change 1.188)
2003-10-06 11:38:25 +00:00
cantab.net!aia21
3d3b853379 Initial revision 2003-10-06 11:38:25 +00:00
cantab.net!aia21
bfd37171ab Delete: include/disk_io.h
}(Logical change 1.188)
2003-10-06 11:38:25 +00:00
cantab.net!aia21
9a0c63f302 (Logical change 1.188) 2003-10-06 11:38:25 +00:00
cantab.net!aia21
bbde93dacf Linux/types.h no longer needed at all.
stdint.h only include if present.

(Logical change 1.166)
2003-07-31 14:12:36 +00:00
cantab.net!aia21
85f9732874 Include stdio.h. Needed by Cygwin.
(Logical change 1.166)
2003-07-31 14:12:36 +00:00
cantab.net!aia21
f78cfd42a1 Export the default opearations so the low level utilities can use them.
(Logical change 1.139)
2003-06-03 11:07:54 +00:00
cantab.net!aia21
fc30058a95 Add stat to ntfs_device_operations.
(Logical change 1.139)
2003-06-03 11:07:54 +00:00
cantab.net!aia21
ed8e3db271 Add ntfs_volume_alloc() for low level utilities.
(Logical change 1.139)
2003-06-03 11:07:54 +00:00
cantab.net!aia21
f0628dd514 Hopefully finished device io abstraction layer in the library.
(Logical change 1.138)
2003-06-02 08:53:04 +00:00
cantab.net!aia21
dac5ebd480 Update.
(Logical change 1.136)
2003-05-26 12:58:41 +00:00
cantab.net!aia21
b928688153 Typo fix.
2003/05/25 21:04:53+01:00 cantab.net!aia21
Add allocation and deallocation of devices.

2003/05/25 20:40:26+01:00 cantab.net!aia21
fix typos.

2003/05/25 15:40:47+01:00 cantab.net!aia21

(Logical change 1.136)
2003-05-26 12:58:41 +00:00
cantab.net!aia21
c161a9b33e Just so it compiles for now until we finish the switch to *dev.
2003/05/25 21:04:53+01:00 cantab.net!aia21
Abstract low level device operations.

(Logical change 1.136)
2003-05-26 12:58:41 +00:00
cantab.net!aia21
9f64f96ee9 Initial revision 2003-05-26 12:58:41 +00:00
cantab.net!aia21
bd71015de1 Add device.h to list of headers.
(Logical change 1.136)
2003-05-26 12:58:41 +00:00
cantab.net!aia21
acc8aa6f05 New function NTFS_BUG() which prints an error message and then causes
a segmentation fault. Only to be used for critical bug catches...

(Logical change 1.111)
2003-01-26 16:47:16 +00:00
cantab.net!aia21
05c32a26e1 small tidyup
(Logical change 1.110)
2003-01-25 17:02:31 +00:00
cantab.net!aia21
0bda9e5cda Add new function ntfs_bitmap_set_run() to complement the existing
ntfs_bitmap_clear_run().

(Logical change 1.109)
2003-01-25 15:26:56 +00:00
cantab.net!aia21
edaa66643a Add a little endian mk_mref
(Logical change 1.107)
2003-01-20 11:08:14 +00:00
flatcap.org!flatcap
b6cfa71e8f whitespace tweak
(Logical change 1.105)
2003-01-19 22:01:18 +00:00
cantab.net!aia21
7bf411786e add compat.h to distribution
(Logical change 1.100)
2003-01-18 15:29:33 +00:00
flatcap.org!flatcap
f387921c31 export find_in_attrdef
(Logical change 1.93)
2003-01-13 20:05:15 +00:00
cantab.net!aia21
a3e3e66651 update from Szaka modified by me:
new API disk_io.[hc]: ntfs_device_size_get() ported from mkntfs.c

(Logical change 1.86)
2003-01-10 17:00:47 +00:00
flatcap.org!flatcap
4e5b613d9c missed two
(Logical change 1.83)
2003-01-09 16:39:56 +00:00
cantab.net!aia21
312e98fd24 New API function: ntfs_attr_can_be_non_resident().
(Logical change 1.78)
2003-01-08 10:48:09 +00:00
cantab.net!aia21
cb8fc1b9e9 (Logical change 1.77) 2003-01-06 22:09:46 +00:00
cantab.net!aia21
be6376f85e New API provided by mft.[hc]:
ntfs_mft_record_alloc(), -- WIP
	ntfs_mft_record_free().

(Logical change 1.74)
2002-12-29 21:37:21 +00:00
cantab.net!aia21
84b007cf9c add export for ntfs_attr_size_bounds_check().
(Logical change 1.73)
2002-12-29 17:54:10 +00:00
cantab.net!aia21
6258afc6dd Add attribute definition table to ntfs volume structure.
(Logical change 1.72)
2002-12-29 12:17:35 +00:00
cantab.net!aia21
91597fe050 Add variables used by the cluster and mft allocators.
(Logical change 1.62)
2002-12-27 17:25:45 +00:00
cantab.net!aia21
eb98ae1dca Change ntfs_rl_truncate() to take address of the runlist
rather than the runlist to allow reallocation of the runlist
buffer.

(Logical change 1.61)
2002-12-27 16:48:52 +00:00
cantab.net!aia21
928eff2891 Move some run list related functions out of attrib.[hc] into runlist.[hc].
(Logical change 1.60)
2002-12-27 16:35:17 +00:00
cantab.net!aia21
5fe5494e4c Fix prototype.
(Logical change 1.59)
2002-12-27 16:18:10 +00:00
cantab.net!aia21
bccfbfbff4 Add export for ntfs_bitmap_clear_run().
(Logical change 1.59)
2002-12-27 16:18:10 +00:00
cantab.net!aia21
833db0bc4b Typo
(Logical change 1.58)
2002-12-26 20:36:52 +00:00
cantab.net!aia21
1dd01bf3c7 New API: ntfs_rl_truncate().
(Logical change 1.58)
2002-12-26 20:36:52 +00:00
cantab.net!aia21
2eddb7228e New bit operations NInoTestAndSetDirty() and NInoTestAndClearDirty().
(Logical change 1.56)
2002-12-26 14:00:31 +00:00
cantab.net!aia21
7781c8f5df Fix test_and_set_bit() as well as test_and_clear_bit().
(Logical change 1.56)
2002-12-26 14:00:31 +00:00
cantab.net!aia21
9fd51dde62 New API functions (mostly still WIP):
attrib.[hc]: ntfs_resident_attr_value_resize(), ntfs_attr_truncate()
   inode.[hc]: ntfs_inode_mark_dirty(), ntfs_inode_sync()
   lcnalloc.[hc]: ntfs_cluster_{alloc,free}()
Renamed ntfs_clusters_{read,write}() to ntfs_cluster_{read,write}().

(Logical change 1.55)
2002-12-26 00:44:57 +00:00
cantab.net!aia21
185a33e214 Sort out compilation.
2002/12/25 19:51:31+00:00 cantab.net!aia21

(Logical change 1.54)
2002-12-25 20:18:29 +00:00
cantab.net!aia21
6d3d453c53 Initial revision 2002-12-25 20:18:29 +00:00
cantab.net!aia21
b7857b472b Add lcnalloc to build process.
(Logical change 1.54)
2002-12-25 20:18:29 +00:00
cantab.net!aia21
0e871e83b2 New API function ntfs_ucsnlen().
(Logical change 1.52)
2002-12-25 19:17:56 +00:00
cantab.net!aia21
69306cc493 new api renames to ntfs_object_action
(Logical change 1.36)
2002-12-10 11:53:41 +00:00
cantab.net!aia21
9e79b61437 start of renames to ntfs_object_action() format
(Logical change 1.34)
2002-12-09 09:42:12 +00:00
cantab.net!aia21
c7bcb144b2 rename run{ ,_,-}list to runlist
(Logical change 1.31)
2002-12-08 20:36:02 +00:00
cantab.net!aia21
2550af241a Auto merged
2002/12/08 20:15:50+00:00 cantab.net!aia21
rename run{ ,_,-}list to runlist

(Logical change 1.31)
2002-12-08 20:36:02 +00:00
flatcap.org!flatcap
a7b325ee46 Initial revision 2002-12-02 01:57:17 +00:00
flatcap.org!flatcap
cb5b25e58b (Logical change 1.28) 2002-12-02 01:57:17 +00:00
flatcap.org!flatcap
d789fd8385 tidy whitespace
(Logical change 1.27)
2002-12-01 18:54:13 +00:00
cantab.net!aia21
89dcef0bf9 Fix compilation with gcc-3.2.
(Logical change 1.8)
2002-10-14 09:57:49 +00:00
!szaka
1935ac9421 Move ntfs_set_volume_flags() from attrib[ch] to volume.[ch]
2002/07/14 12:36:04-00:00 !szaka
Increase NTFS_BUF_SIZE to 8192 (better average performance)

2002/07/12 12:38:54-00:00 !szaka
Rewrote $LogFile reset using new inode API and moved it from ntfsfix to
libntfs as ntfs_reset_logfile(). ntfsresize also resets log file.

2002/07/12 07:10:44-00:00 !szaka
NTFS_V* version macros and ntfs_is_version_supported() added.
Modified ntfsfix and ntfsresize to use them.

2002/07/11 16:20:33-00:00 !flatcap
whitespace and include guards

2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/06 20:47:32-00:00 !antona
The beginning of the directory operations! Introduce dir.[hc] and ntfs_lookup_inode_by_name().

2002/06/02 23:02:20-00:00 !antona
More fixes and updates.

2002/06/01 00:41:45-00:00 !antona
huge update!

2002/04/29 01:53:55-00:00 !antona
Loads of stuff. Improvements, start on attr pread and attr mst_pread. Write to follow. ntfslabel cleanup and extensions. libntfs cleanups, fixes, etc.

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/23 23:27:33-00:00 !antona
Fixup the force option in mkntfs.c. Change the ntfs_check_if_mounted so it works on system not implementing {set,get,end}mntent, too. Also make it more powerful in telling us not only if something is mounted but also if it is the fs root and if it is read-only.

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/14 13:56:45-00:00 !antona
cleanup header files.

2001/12/06 01:14:52-00:00 !antona
Added mount flags to ntfs_mount and adapted utilities to new mount syntax.

2001/06/01 02:07:24-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 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/10 22:20: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 03:02:55-00:00 !antona
Added cvs Id header.

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/07 17:30:10-00:00 !antona
ntfsd should be finished now

2001/04/03 22:41:30-00:00 !antona
We now have files and keep track of them on a per volume basis and same
for inodes (mft_records). At least conceptually anyway.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/03/06 02:10:55-00:00 !antona
Allow variable length upcase table.
Progressing on find_next_attr().

2001/01/30 12:55:21-00:00 !antona
Fixed the compilation issues.

2001/01/25 14:00:43-00:00 !antona
Added volume.c code and fixed some typos and inconsistencies.

2001/01/24 02:13:24-00:00 !antona
Add a bunch of headers (attrib.h is work in progress).

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!szaka
fb6ff5a091 Initial revision 2002-08-22 18:09:47 +00:00
!flatcap
258d79f07a whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/30 17:02:41-00:00 !flatcap
typos

2002/06/08 14:12:01-00:00 !antona
ntfs_readdir() has arrived.

2002/06/05 00:29:18-00:00 !antona
Make ntfs_attr_pread work with resident attributes and start on ntfs_attr_pwrite (incomplete!).

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/16 12:13:52-00:00 !antona
New API function mft.[ch]::read_file_record(). Also some cleanups.

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/12/15 05:13:08-00:00 !antona
Remove atomic ops and add compiler version check.

2001/11/17 02:03:14-00:00 !antona
Update layout.h attribute compression description.

2001/11/09 18:24:32-00:00 !antona
Updates to docs, layout.h and ntfsfix to support Windows XP NTFS

2001/09/03 22:01:08-00:00 !antona
Small clarifications to file attribute flags.

2001/08/27 16:58:07-00:00 !antona
Updates.

2001/07/13 13:55:30-00:00 !antona
Updates to layout.h.

2001/06/14 15:41:41-00:00 !antona
Add comments for Windows XP ntfs changes in mft record header structure.

2001/06/09 00:25:55-00:00 !antona
mkntfs delayed. more reverse engineering required to determine exact method of
index entry collation. first few helper functions are already done and entered
into ntfslib in unistr.c

2001/06/08 19:58:24-00:00 !antona
getting closer to mkntfs alpha.

2001/06/06 22:55:49-00:00 !antona
And some more mkntfs + some updates to layout.h concerning directories and
alignment requirements.

2001/06/04 14:04:30-00:00 !antona
More work on mkntfs dir stuff.

2001/06/04 11:29:45-00:00 !antona
*** empty log message ***

2001/06/03 02:09:08-00:00 !antona
Fix/expand dircetory info in layout.h and add creation of index root attribute
to mkntfs.c.

2001/06/01 19:04:08-00:00 !antona
Updates & fixes.

2001/06/01 02:07:24-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 11:50:24-00:00 !antona
Forgot to cvs add ...

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
92b27033b0 whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/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/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:25-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 17:51:26-00:00 !antona
read/write_mft_record(s) are here

2002/04/15 00:45:28-00:00 !antona
Update headers to reflect changes in libntfs.

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2002/04/14 13:34:50-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:24-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:11-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:54:25-00:00 !antona
Fixed somethings...

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/10 22:20: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:54-00:00 !antona
Minor fix

2001/04/03 23:35:52-00:00 !antona
Few updates.

2001/04/03 22:41:30-00:00 !antona
We now have files and keep track of them on a per volume basis and same
for inodes (mft_records). At least conceptually anyway.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/03/31 15:25:19-00:00 !antona
Added a name comparison function.

2001/03/15 23:13:11-00:00 !antona
And this one...

2001/03/05 03:15:08-00:00 !antona
Forgot a few...

2001/03/05 02:45:35-00:00 !antona
Renamed things, broke everything. Should be stabilized now in the headers.
Still reworking find attribute stuff but at least I have an idea of how I want
to do it now.

2001/03/02 15:03:56-00:00 !antona
Update to latest include files.

2001/01/30 12:55:21-00:00 !antona
Fixed the compilation issues.

2001/01/30 12:29:03-00:00 !antona
And the last move into CVS. The make files. (Note: compilation is untested
and all changes have been done without testing so if it doesn't compile at
the moment don't be too surprised.)

2001/01/28 05:49:57-00:00 !antona
More header development. AttrDef description.

2001/01/27 14:22:02-00:00 !antona
Added a logfile dumper as a new utility.
Almost finished the first ntfsfix release. (Still missingin CVS are attrib.c
for ntfslib and the makefiles to build everything.)
Fixes for nested packed structure/union typedefs as gcc doesn't automatically
nest the __attribute__ ((__packed__)), even though according to the gcc info
page it does. (Thanks to Yuri Per <yuri@acronis.com> for pointing this out.)

2001/01/24 02:13:24-00:00 !antona
Add a bunch of headers (attrib.h is work in progress).

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
481eac5ebf whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/01 00:41:45-00:00 !antona
huge update!

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/14 13:56:45-00:00 !antona
cleanup header files.

2001/12/15 05:13:08-00:00 !antona
Remove atomic ops and add compiler version check.

2001/08/02 01:44:56-00:00 !antona
Add ntfsfix man page and spell fixes. Update to 1.2.1 version and update all text files to go with it and the rpm spec file.

2001/06/01 02:07:24-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/12 22:37:20-00:00 !antona
Add a description and structure for holding attributes in memory. No code to
use it yet but it's a start. The design is geared with the ideas of making
searching for attributes and using/implementing the search context as easy as
possible, integrating the attributes into their mft_entries and maintining a
fast sync volume path.
Comments welcome.

2001/04/11 14:29:11-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:50:24-00:00 !antona
Forgot to cvs add ...

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
a877f59d6f whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/04/29 01:53:55-00:00 !antona
Loads of stuff. Improvements, start on attr pread and attr mst_pread. Write to follow. ntfslabel cleanup and extensions. libntfs cleanups, fixes, etc.

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/19 18:23:56-00:00 !antona
Add foundation of new inode API.

2002/04/18 17:20:05-00:00 !antona
New API function provided by unistr.[ch]: ntfs_mbstoucs()

2002/04/16 20:56:01-00:00 !antona
Add new API unistr.[ch]: ntfs_ucstombs() and make ntfslabel use it

2002/04/16 15:34:32-00:00 !antona
Fix the library...

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/06/09 00:25:55-00:00 !antona
mkntfs delayed. more reverse engineering required to determine exact method of
index entry collation. first few helper functions are already done and entered
into ntfslib in unistr.c

2001/06/01 02:07:24-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 11:49:16-00:00 !antona

Header file reorganisation so that it compiles.

2001/04/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/03/31 15:25:19-00:00 !antona
Added a name comparison function.

2001/03/07 01:17:33-00:00 !antona
Renamed the unicode files and introduced more code. Finished the new
find_first/next_attr() interface functions. Next on my list are functions
supporting attribute lists...

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
8fd22f5f11 whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/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/18 18:15:46-00:00 !antona
Define API for bootsect.[ch]: is_boot_sector_ntfs().

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2002/04/14 13:29:42-00:00 !antona
rename ntfs_rec to mst

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
91b6d82cbc whitespace and include guards
2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

2002/06/02 23:02:20-00:00 !antona
More fixes and updates.

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/18 18:15:46-00:00 !antona
Define API for bootsect.[ch]: is_boot_sector_ntfs().

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/06/01 02:07:24-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 11:49:16-00:00 !antona

Header file reorganisation so that it compiles.

2001/04/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/03/02 15:03:56-00:00 !antona
Update to latest include files.

2001/01/30 12:29:03-00:00 !antona
And the last move into CVS. The make files. (Note: compilation is untested
and all changes have been done without testing so if it doesn't compile at
the moment don't be too surprised.)

2001/01/25 22:25:43-00:00 !antona
More files added to ntfs lib. Fixed some consistency problems.

2001/01/24 20:37:36-00:00 !antona
Added for now last header file for boot sector handling.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
c2cb8c0223 whitespace and include guards
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/06 20:47:29-00:00 !antona
The beginning of the directory operations! Introduce dir.[hc] and ntfs_lookup_inode_by_name().

2002/06/06 15:41:29-00:00 !antona
Add template files for directory handling code.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
c5d4f9c9bc whitespace and include guards
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/04 12:12:42-00:00 !antona
Final POSIXification of disk_io functions. (famous last words)

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/18 18:15:46-00:00 !antona
Define API for bootsect.[ch]: is_boot_sector_ntfs().

2002/04/15 18:39:36-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:45:28-00:00 !antona
Update headers to reflect changes in libntfs.

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/06/01 02:07:24-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:11-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/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/03/26 04:30:27-00:00 !antona
Cleanup and fixes.

2001/01/26 00:34:35-00:00 !antona
Inconsisteny fixes.

2001/01/25 22:25:43-00:00 !antona
More files added to ntfs lib. Fixed some consistency problems.

2001/01/24 20:37:36-00:00 !antona
Added for now last header file for boot sector handling.

2001/01/24 18:44:31-00:00 !antona
Added disk_io.h header file.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
c9180f848e whitespace and include guards
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/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/01/26 03:21:07-00:00 !antona
Preparations for 1.5.1 release.

2002/01/26 02:42:13-00:00 !antona
Compilation fixes for odd architectures. Had forgotten logfile.h. Damn...

2001/06/16 00:06:17-00:00 !antona
dumplog now decodes the first 0x5000 bytes of the logfile given on the command
line as fully as possible with the current knowledge of the logfile structures.

2001/06/15 16:47:46-00:00 !antona
Integrate logfile.c into mkntfs

2001/06/01 02:07:24-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 11:49:16-00:00 !antona

Header file reorganisation so that it compiles.

2001/04/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/03/05 03:15:08-00:00 !antona
Forgot a few...

2001/03/02 15:03:56-00:00 !antona
Update to latest include files.

2001/01/27 14:22:02-00:00 !antona
Added a logfile dumper as a new utility.
Almost finished the first ntfsfix release. (Still missingin CVS are attrib.c
for ntfslib and the makefiles to build everything.)
Fixes for nested packed structure/union typedefs as gcc doesn't automatically
nest the __attribute__ ((__packed__)), even though according to the gcc info
page it does. (Thanks to Yuri Per <yuri@acronis.com> for pointing this out.)

2001/01/24 21:02:37-00:00 !antona
Added ntfsfix program.

2001/01/24 10:30:49-00:00 !antona
The initial log file on disk structures (work in progress).

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
04ca1e570c whitespace and include guards
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/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.

2001/11/09 19:24:23-00:00 !antona
With lots of luck this is going to be 1.2.3.

2001/06/01 02:07:24-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/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/01/24 02:13:24-00:00 !antona
Add a bunch of headers (attrib.h is work in progress).

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
6e16c5a1ad whitespace and include guards
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/04/14 15:26:23-00:00 !antona
Remove find_first_attr and make all users use get_attr_search_ctx + find_attr instead.

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/06/01 02:07:24-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/10 22:20: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/08 03:02:55-00:00 !antona
Added cvs Id header.

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 22:41:30-00:00 !antona
We now have files and keep track of them on a per volume basis and same
for inodes (mft_records). At least conceptually anyway.

2001/01/25 22:25:43-00:00 !antona
More files added to ntfs lib. Fixed some consistency problems.

2001/01/24 15:01:18-00:00 !antona
Added bitmap header.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
fb83c257df whitespace and include guards
2002/06/30 17:01:53-00:00 !flatcap
added list_for_each_safe
removed pos->next (a prefetch), was confusing compiler

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/06/01 02:07:24-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 15:48:20-00:00 !antona
Fixed headers

2001/04/10 23:43:10-00:00 !antona
forgot list.h

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
5308ab00ab whitespace and include guards
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/15 20:04:25-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/14 13:56:45-00:00 !antona
cleanup header files.

2002/04/12 15:24:30-00:00 !antona
Forgot to add the debug header file!

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
c23679552d whitespace and include guards
2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/12/15 05:13:08-00:00 !antona
Remove atomic ops and add compiler version check.

2001/04/08 03:02:55-00:00 !antona
Added cvs Id header.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/03/26 03:42:13-00:00 !antona
Forgot to add the new support.h

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
0bb969090c new function headers and a few function moves
2002/07/11 16:20:33-00:00 !flatcap
whitespace and include guards

2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

2002/07/09 19:17:48-00:00 !flatcap
move the runlist functions from attrib.c to runlist.c

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
4f4c955da7 move the runlist functions from attrib.c to runlist.c
2002/06/06 15:45:06-00:00 !antona
And the headerfile too

2002/04/25 07:50:34-00:00 !antona
grr. MDK8.1 modified loads of stuff. Put it back with RH7.2

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/19 18:23:56-00:00 !antona
Add foundation of new inode API.

2002/04/14 13:58:54-00:00 !antona
Tidyup last cleanups

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2002/04/12 15:23:47-00:00 !antona
Cleanup ntfslabel, write a man page for it, integrate it all in the distribution properly, silence output from ntfs_mount() (conditional on running configure with --enable-debug), update all docs accordingly. Add Rich and Matt to AUTHORS.

2002/01/26 04:32:35-00:00 !antona
RedHat 7.2 - updates

2001/11/17 01:57:53-00:00 !antona
Update build system with new document.

2001/11/09 23:36:17-00:00 !antona
Bug fixes

2001/11/09 19:24:23-00:00 !antona
With lots of luck this is going to be 1.2.3.

2001/07/24 17:41:01-00:00 !antona
Minor updates and restructuring the distribution. See NEWS and ChangeLog for
details.

2001/06/11 04:02:08-00:00 !antona
Linux-NTFS 1.0.0-pre-1 - FEATURE FREEZE
=======================================
mkntfs complete with option parsing and more cool things.
mkntfs man page complete.
info files updated.

TODO Before 1.0.0 final:

- Test mkntfs options & mkntfs itself.
- Test tar ball generation.
- Test rpm generation.

2001/06/01 02:07:24-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 11:49:15-00:00 !antona

Header file reorganisation so that it compiles.

2001/04/07 00:53:37-00:00 !antona
Makefile updates.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/02/03 02:03:35-00:00 !antona
More files.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
cea30149a6 move the runlist functions from attrib.c to runlist.c
2002/06/06 15:45:06-00:00 !antona
And the headerfile too

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/19 18:23:56-00:00 !antona
Add foundation of new inode API.

2002/04/14 13:56:44-00:00 !antona
cleanup header files.

2002/04/12 15:23:47-00:00 !antona
Cleanup ntfslabel, write a man page for it, integrate it all in the distribution properly, silence output from ntfs_mount() (conditional on running configure with --enable-debug), update all docs accordingly. Add Rich and Matt to AUTHORS.

2001/07/24 17:41:01-00:00 !antona
Minor updates and restructuring the distribution. See NEWS and ChangeLog for
details.

2001/06/01 02:07:24-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 11:49:15-00:00 !antona

Header file reorganisation so that it compiles.

2001/04/07 00:53:37-00:00 !antona
Makefile updates.

2001/03/26 03:42:13-00:00 !antona
Forgot to add the new support.h

2001/02/03 02:03:35-00:00 !antona
More files.

2001/02/02 01:28:46-00:00 !antona
make dist fixes using more Makefiles.

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
b30305bf01 AT_NONAME -> AT_UNNAMED
2002/07/14 17:24:58-00:00 !szaka
Remove obsolote/unused set_attribute_value()

2002/07/14 17:21:32-00:00 !szaka
Move ntfs_set_volume_flags() from attrib[ch] to volume.[ch]

2002/07/14 17:16:52-00:00 !szaka
Merge set_ntfs_volume_flags() and code from ntfsfix as a new library
function: ntfs_set_volume_flags(). Note, ntfs_set_volume_flags() is
moving to volume.[ch]

2002/07/11 16:20:32-00:00 !flatcap
whitespace and include guards

2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

2002/07/09 19:17:48-00:00 !flatcap
move the runlist functions from attrib.c to runlist.c

2002/07/08 23:27:15-00:00 !flatcap
added AT_NONAME so we can search for a (un)named attribute or just
iterate through all attributes

2002/07/08 00:09:41-00:00 !antona
Implement attrib.[hc]::ntfs_rl_pwrite(). Fix a dumb bug in ntfs_attr_pwrite().

2002/07/06 20:07:59-00:00 !antona
New API for compressing run lists into mapping pairs arrays and adapt mkntfs to that API. Addition of ntfs_walk_attrs().

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/30 12:52:25-00:00 !antona
Little something or other...

2002/06/05 20:32:53-00:00 !antona
Mft mirror now updated from ntfs_write_mft_record, yey! Fixup ntfstools accordingly.

2002/06/05 00:29:18-00:00 !antona
Make ntfs_attr_pread work with resident attributes and start on ntfs_attr_pwrite (incomplete!).

2002/06/01 00:41:45-00:00 !antona
huge update!

2002/04/29 12:58:34-00:00 !antona
Finish ntfs_attr_pread and ntfs_attr_mst_pread.

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/24 19:02:07-00:00 !antona
Add new API ntfs_attr_{get,put}.

2002/04/23 11:02:59-00:00 !antona
Initial proposal for ntfs attribute ntfs_attr structure typedef.

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/19 21:09:54-00:00 !antona
Finished provisional inode.c::ntfs_{open,close}_inode() functions. Also, started defining API provided by attrib.[ch], so far only done search context related stuff.

2002/04/15 17:51:26-00:00 !antona
read/write_mft_record(s) are here

2002/04/14 13:56:45-00:00 !antona
cleanup header files.

2001/12/15 05:13:08-00:00 !antona
Remove atomic ops and add compiler version check.

2001/06/01 02:07:24-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 11:49:16-00:00 !antona

Header file reorganisation so that it compiles.

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/02 22:28:39-00:00 !antona
Added cvs Id header and removed some outofdate stuff.

2001/04/02 02:04:37-00:00 !antona
Everything compiles again! Yey! (Don't know about working though, haven't tried
it... So be careful...)
The definitely final find_{first_}attr() functions are in place. Currently
still no support for attribute lists.
The two new _RE files contain the C-fied and more or less (more less than more
actually) cleaned up functions from the ntfs driver. Once they are cleaned
up (find_attr() is already completed but I left it in the _RE files for future
reference/educational value) and modified to suit my ideas of how they should
work, which are not quite the same as the driver way, they will make it into
attrib.[ch].
If anyone gives the new code a try, I would be interested in whether it worked
or not... (-;

2001/03/31 15:25:19-00:00 !antona
Added a name comparison function.

2001/03/26 14:50:58-00:00 !antona
Fix a few typos.

2001/03/26 03:35:35-00:00 !antona
New attribute searching API header part complete.
This shouldn't change any more, except for the search context structure,
which might be simplified at some point.

2001/03/22 13:16:32-00:00 !antona
Clarified the reparse point tag flags.

2001/03/15 23:12:45-00:00 !antona
About time to do a new commit...

2001/03/05 03:15:08-00:00 !antona
Forgot a few...

2001/03/05 02:45:35-00:00 !antona
Renamed things, broke everything. Should be stabilized now in the headers.
Still reworking find attribute stuff but at least I have an idea of how I want
to do it now.

2001/03/04 14:28:13-00:00 !antona
Fixes.

2001/03/03 06:52:39-00:00 !antona
Finished entering security related headers.

2001/03/03 00:11:17-00:00 !antona
Mostly finished adding the $Secure information.

2001/03/02 15:03:56-00:00 !antona
Update to latest include files.

2001/02/03 02:03:35-00:00 !antona
More files.

2001/01/30 12:55:21-00:00 !antona
Fixed the compilation issues.

2001/01/30 12:29:03-00:00 !antona
And the last move into CVS. The make files. (Note: compilation is untested
and all changes have been done without testing so if it doesn't compile at
the moment don't be too surprised.)

2001/01/30 00:13:11-00:00 !antona
Added in the current state of attribute handling to libntfs.
Now just missing the make files to make a first public release of ntfsfix!

2001/01/28 05:49:57-00:00 !antona
More header development. AttrDef description.

2001/01/27 14:22:02-00:00 !antona
Added a logfile dumper as a new utility.
Almost finished the first ntfsfix release. (Still missingin CVS are attrib.c
for ntfslib and the makefiles to build everything.)
Fixes for nested packed structure/union typedefs as gcc doesn't automatically
nest the __attribute__ ((__packed__)), even though according to the gcc info
page it does. (Thanks to Yuri Per <yuri@acronis.com> for pointing this out.)

2001/01/26 02:36:10-00:00 !antona
More work on attrib.h.

2001/01/24 02:13:24-00:00 !antona
Add a bunch of headers (attrib.h is work in progress).

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!flatcap
aaf8f8e036 Initial revision 2002-08-22 18:09:47 +00:00
!antona
c6a6056715 and a final revert i forgot
2002/07/11 23:44:13-00:00 !flatcap
new function headers and a few function moves

2002/07/11 16:20:32-00:00 !flatcap
whitespace and include guards

2002/07/11 13:18:11-00:00 !flatcap
start to break up the dependency loops in the header files

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/06 20:47:31-00:00 !antona
The beginning of the directory operations! Introduce dir.[hc] and ntfs_lookup_inode_by_name().

2002/06/01 00:41:45-00:00 !antona
huge update!

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/19 21:21:46-00:00 !antona
Remove compile time warning...

2002/04/19 21:09:55-00:00 !antona
Finished provisional inode.c::ntfs_{open,close}_inode() functions. Also, started defining API provided by attrib.[ch], so far only done search context related stuff.

2002/04/19 18:27:45-00:00 !antona
Bah. Typo fix.

2002/04/19 18:23:56-00:00 !antona
Add foundation of new inode API.

2002/04/15 22:35:07-00:00 !antona
Preliminary ntfs_inode structure. We shall see if that is all we need. (-;

2002/04/14 13:58:54-00:00 !antona
Tidyup last cleanups

(Logical change 1.5)
2002-08-22 18:09:47 +00:00
!antona
3fbf5c3625 Initial revision 2002-08-22 18:09:47 +00:00