Fixed a constant string concatenation
[ntfs-3g.git] / TODO.ntfsprogs
blob3a60421f459263a9929297f9c83015777bb84645
1 Please keep in alphabetical order so utilities are easier to find.
3 Thanks,
4         Anton
7 **********
8 * mkntfs *
9 **********
11 - Correct support for creating volumes with larger sector sizes (mft record
12   size, cluster size, and index block size must be >= sector size), so for 1k,
13   2k, and 4k sectors, we need to set the default mft record, cluster, and index
14   block size to be at least the sector size.
15 - Correct the odd last partition sector not being accessible under 2.4 kernels
16   by setting the device block size to the sector size (default is 1k on 2.4
17   kernels and they can't cope with partial sectors).
18 - Got a report that creating a floppy with mkntfs failed.  Difference between
19   this floppy and the floppy created by the special tool found on the net was
20   said to be that the bitmap is 256kib on the special floppy while mkntfs will
21   make it much smaller.  Need to verify this and experiment with the bitmap
22   size to make it work.  Note, reporter was using win2k.
25 *************
26 * ntfsclone *
27 *************
29 - get rid of the unneeded lseek()'s during reads/writes (probably it 
30   doesn't improve performance much, or any at all)
31 - catch if source and dest are the same
32 - disable consistency check for --metadata (e.g. if the check is crashing)
33 - option: --inode 
34 - option: --data
35 - metadata cloning: skip more non-needed inodes
36 - manual: document LFS issues (smbfs' lfs option, nfs)
37 - manual: mention optimized seeks
38 - manual: optimal backup if disks have bad sectors
39 - manual: ntfsclone guarantees the restored image works only
40   if one restores to the exactly same partition. For example,
41   one can not copy system partition to a different partition:
42   minimum "hidden sectors" field and BOOT.INI need modifications.
43   We could do these adjustments optionally.
44 - check if kernel block size = GCD(page size, device size) makes
45   effect on performance (Al Viro says no)
46 - check whether the O_WRONLY -> O_RDWR change made effect on performance
49 ***********
50 * ntfscmp *
51 ***********
53 - compare mft record headers
54 - exit status is 0 if inputs are the same, 1 if different, other if trouble
55 - optionally ignore less interesting fields (e.g. attribute instance)
56 - new option: --metadata mode
57 - unnamed resident attributes with same type are ignored
58 - code cleanup, remove many cross-util duplicates
59 - handle deleted records
60 - performance: special handling for sparse files
63 **********
64 * ntfscp *
65 **********
67 - add ability to copy multiple files at once.
70 ***********
71 * ntfsfix *
72 ***********
74 - Cleanup to use ntfs_attr_* API for editing $MFTMirr, $Volume, and $LogFile.
75   This has the immediate benefit of enabling attribute list support and making
76   the code simpler.
77 - On ntfs 3.0+ volumes need to disable the usn journal if it is active.  This
78   means deleting file $UsnJrnl from /$Extend directory.
79 - On ntfs 3.0+ volumes need to mark the quota out of date? - Probably, but
80   it shouldn't cause any corruption not doing so for the moment so this is
81   not a showstopper bug for the first release. (AIA)
84 *************
85 * ntfslabel *
86 *************
88 - Support ioctls for kernel driver and ntfsmount for reading/changing the label.
91 *************
92 * ntfsmount *
93 *************
97 **************
98 * ntfsresize *
99 **************
101 High priority
102   - move ntfs consistency check to libntfs (for ntfsck, ntfsclone, etc)
103   - use different exit codes (e.g. corrupt volume detected, unsupported case, 
104     bad sectors, etc) 
106 Medium priority 
107   - cope with the rare, unsupported cases, see man ntfsresize 'KNOWN ISSUES'
108   - save $Bitmap if it was modified and an error occures (e.g. bad sector).
109   - handle signals (^C, etc)
111 Low priority
112   - fully support disks with bad sectors (attrlist attr, unknown bad sectors)
113   - move volume start
116 ****************
117 * ntfsundelete *
118 ****************
120 - undelete by name rather than inode number
121 - support for compressed files
122 - support for internationalisation
123 - recover by type?
124 - mass undelete (using wildcards)
125 - display parent directory
126 - name "<none>" to MFTn