File: ChangeLog

package info (click to toggle)
libfsntfs 20160418-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 13,456 kB
  • ctags: 5,958
  • sloc: ansic: 199,642; sh: 12,713; makefile: 1,401; python: 708; sed: 134
file content (618 lines) | stat: -rw-r--r-- 12,994 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
TODO
* USN change journal
  - add support for values in $Max
* resident data
  - handle valid data size
* compressed data
  - handle decompression errors e.g.
    compression tuple offset value out of bounds.
  - have means to map sparse ranges outside compressed blocks
  - handle valid data size
* make get by path/name functions case insensitive
  - determine if NTFS really is case insensitive and make appropriate changes
  - maybe have a flag or different functions to control case in compare
* create fsntfsexport tool to export file entry data
* handle pre 3.1 attribute names?
* check file entry life times
* set file entry name, if get by index and number of filenames is 1

* volume cache directory entries trees ?
* cached indexes?
* handle cached out MFT entries
  - copy directory entries in file entry
  - copy directory index in file entry
* data runs block
  - add a check to see if data run sizes add up
  - handle compressed blocks
* volume
  - complete libfsntfs_volume_has_bitlocker_drvie_encryption
  - complete libfsntfs_volume_has_volume_shadow_snapshots
* file entry
  - add API get file name by attribute index functions?
  - add API get parent file_reference name by attribute index functions?
  - add API function for owner
  - add API function for security identifier
  - only retrieve file name from the directory entry?
    or make clear in function documentation that first
    non-short filename is the fallback?
  - add support to retrieve name of the root entry if directory entry is missing
* pyfsntfs
  - add attribute type enum
* pyfsntfs file entry
  - expose more MFT entry values through API and pyfsntfs
  - add is empty function
  - add has_reparse_point function
  - add has_symbolic_link function
  - add is_corrupt function?
  - how to handle file-like object functions for non-data file entry
* pyfsntfs file entry/data stream
  - add extents iterator?
* libfsntfs/pyfsntfs attribute
  - expose raw attribute data?
* libfsntfs/pyfsntfs file entry
  - expose default data stream
  - add support for short file name
  - fallback to short file name if no long
* libfsntfs_mft_entry_read_element_data set MFT only flag using element flags
* libfsntfs_attribute_read_from_mft handle attribute size out of bounds
* mft metadata file parsing mark file entry as in complete if data is stored
  outside the $MFT
* change MFT entry flags value checks to named definitions
* attribute data parsing
  - add SSIZE_MAX check for attribute->data_size before (size_t) cast
* move directory entry btree into index ?
* merge i30_index and alternate_index_array

* cached approach of reading attributes ?

* add support for other values of sectors_per_cluster_block, seen 8, 128
* add support for other values of index_entry_size, seen 1, 244
* complete libcdata integration
* fix issue on win2k image
  - stack overflow infinite loop
  - determine MFT entry index based on offset
    do not rely on value in structure

* MFT entry create get data segment function for internal usage

* how to handle named index roots e.g. $ObjId:$O, $Quota:$O
* fix issue with bounded MFT entry cache
* support MFT entry 0 consisting of multiple $DATA attributes
  - add segment support to ntfs attribute data reference

* file_entry: clone directory entry ?
* what about ADS support ?
  - todo read from ads
* change libfsntfs_attribute_reference_append_attribute into insert and sort
  attribute ranges

* add function to retrieve MFT entry by index
* check if check_signature function uses the right offset
* refactor: libfsnt_array_append_entry in index ?

* move get mft entry to file entry initialize ?
  - clone mft entry in file entry initialize (for now the mft entry cache
  contains a slot for every entry)

* move volume header from io handle to separate object ?

* $MFT scan
  - mark ignored attribute list
  - mark ignored data stream
  - mark ignored index
  - handle corrupt MFT entries (e.g. missing FILE signature) (+/-)
  - allow to read data runs but do not allow to read data
* $UsnJrnl:$J parsing
  - move UsnJrnl parsing into library ?
  - add support for $UsnJrnl:$J file parsing

* API
  - expose logged utility stream attribute

Format:
* index
  - group equivalent index data values
* boot block
  - remove value restriction add sanity check
* add support for attributes:
  - logged utillity stream (LOGGED_UTILITY_STREAM) (partial)
* pre NTFS 3.0 attribute types
  - volume version
* filenames
  - ignoring short filenames for now?
* ntfs3g indicates volume is hibernated, could this be stored in the volume flags?
* Windows 10 different compression?

Tools:
* fsntfsinfo
  - print ADS
  - move UsnJrnl to separate tool?
  - fix remnant data in buffer and remove work around
  - sanitize control characters in filenames
  - add detection of BDE and VSS
  - add support for $LogFile
  - print $DATA attribute size

Error tolerance:
* Support partial images/file systems

Tests:
* file with resident data
* file with non-resident data
* file with sparse data
* file with compressed data
* file with valid data size < data size
* file with ADS
* directory with ADS

Performance:
* compact attribute union data/file reference (use type to distinguish between them)

Debug:
* print volume information flags description

Deployment
* write man pages

20160418
* Worked on security descriptor support

20160417
* Worked on security descriptor support

20160412
* Worked on security descriptor support

20160411
* Worked on security descriptor support

20160109
* fixes for rpmbuild

20160108
* worked on Python 3 support
* 2016 update

20151225
* applied updates

20151205
* worked on Python bindings

20151130
* worked on USN change journal

20151106
* worked on USN change journal

20151105
* renamed update journal to USN change journal

20151104
* worked on update (or change) journal

20151008
* worked on update (or change) journal

20151005
* worked on update (or change) journal

20150906
* worked on Python bindings

20150902
* update libfusn

20150831
* worked on Python bindings
* removed is_mft_attribute_list_element

20150829
* worked on format support
* fix for handling resident attribute name alignment padding
* changes for msvscpp build

20150827
* worked on security descriptors support
* fixed index value handling for $SII index

20150826
* worked on security descriptors support

20150825
* fixes for handling extents

20150823
* worked on format support

20150820
* worked on format support
* fixes for $MFT scan

20150819
* worked on format support

20150817
* worked on compression support
* worked on caseless compare
  - determine if NTFS really is case insensitive

20150815
* worked on format support
* bug fix handling alternate data streams

20150813
* worked on compression support

20150811
* worked on library

20150810
* worked on compression support

20150729
* worked on setup.py

20150726
* worked on tests

20150724
* worked on check signature

20150717
* worked on library

20150716
* bug fixes

20150712
* worked on library

20150525
* worked on NTFS version 1.2 and 3.0 support

20150522
* worked on compression support
  - handling mixed compressed attribute chains

20150521
* worked on NTFS version 1.2 support

20150520
* improvements for $MFT scan
* improvements for compression support

20150516
* worked on compression support
* fix for sparse data run support

20150515
* worked on compression support

20150514
* worked on compression support

20150504
* code clean up

20150502
* worked on Python bindings
* worked on tests

20150430
* worked on Python bindings

20150429
* worked on Python bindings

20150426
* worked on Python bindings

20150425
* worked on Python bindings

20150424
* worked on Python bindings

20150423
* worked on Python bindings
* worked on fsntfsinfo

20150422
* worked on fsntfsinfo

20150420
* worked on format support

20150419
* worked on format support
* worked on Python bindings

20150406
* worked on Python bindings

20150318
* worked on $UsnJrnl ignore sparse data run support

20150317
* worked on format support
* worked on $UsnJrnl ignore sparse data run support

20150315
* worked on format support
* added support for MTF entry 0 with attribute list
* bug fix in libfsntfs_attribute_append_to_chain

20150125
* worked on format support

20150106
* 2015 update

20141226
* updated dpkg files

20141225
* worked on Python 3 support

20141130
* code clean up

20141124
* worked on $UsnJrnl support
* added API functions to retrieve:
  - file entry allocation status
  - $FILE_NAME attribute name string
  - $FILE_NAME attribute parent file reference

20141116
* small fixes

20141028
* changes for deployment
* bug fix in Python bindings

20141022
* changes for deployment

20141011
* updated dependencies
* changes for project site move

20141004
* removed README.macosx

20140810
* worked on exposing the attributes

20140809
* worked on data streams support
* worked on exposing the attributes

20140808
* worked on data streams support

20140803
* bug fix in Python bindings

20140628
* Worked on format support

20140530
* Worked on Python bindings

20140529
* updated dependencies
* Worked on Python bindings

20140417
* small changes

20140318
* worked on non-resident attribute list support

20140207
* worked on libfdata refactor

20140206
* worked on libfdata refactor

20140205
* worked on libfdata refactor

20140204
* worked on libfdata refactor

20140203
* worked on libfdata refactor

20140119
* worked on libfdata refactor

20140118
* 2014 update
* updated dependencies
* worked on libfdata refactor

20131109
* updated dependencies

20130915
* code clean up

20130914
* updated dependencies
* added libcthreads build support

20130224
* updated dependencies
* 2013 update

20120929
* updated dependencies

20120821
* improve NTFS version 3.0 support

20120820
* applied update
* improved reading MFT attribute lists and data MFT entries

20120526
* worked on MFT read and seek data functions

20120520
* 2012 update
* updated dependencies
* added libfusn
* fsntfsinfo:
  - added info handle

20111125
* code clean up
* added support for empty volume name

20111124
* removed libvshadow
* updated configure.ac and m4 scripts
* added include/codepage.h
* updated common, array type
* updated libcstring, libsystem, libuna, libfdata, libfdatetime, libfguid,
  libfwnt
* added libfcache
* code clean up

20110510
* update libvshadow

20110509
* dist fixes

20110508
* updated configure.ac
* updated libcstring, libsystem, libuna, libbfio, libfdata, libfguid

20110309
* small changes

20110308
* small changes

20110306
* worked on support for MFT consisting of multiple data runs

20110305
* updated configure, common, array type, libcstring, liberror, libnotify,
  libsystem, libuna, libbfio, libfdata, libfdatetime, libfguid, libfwnt
* 2011 update

20101216
* updated Makefile

20101214
* updated configure/Makefile

20101209
* added missing MFT entry flags debug output
* code clean up
* added initial gettext support
* updated common, libfdatetime

20101203
* updated common, array type, liberror, libnotify, libsystem, libuna, libbfio,
  libfdata

20101129
* worked on txf data

20101128
* worked on txf data

20101127
* updated libfdatetime
* moved abort to IO handle
* worked on txf data

20101126
* worked on support for multiple index allocation attributes

20101125
* worked on support for multiple index allocation attributes
* updated libuna, libbfio, libfdata

20101124
* updated configure, libcstring, liberror, libbfio
* worked on support for an attribute list

20101113
* textual changes

20101112
* renamed library to libfsntfs

20101110
* worked on winsxs support

20101109
* worked on logged utility stream
* updated include/error.h
* updated libfdata, liberror, libbfio, libnotify, libsystem
* added support for directory index that only consists of index root attribute
* fixed bug in fsntinfo
* added support for directory index that has root and empty allocation index
  attributes

20100912
* worked on reading attribute list
* updated libbfio

20100911
* improved handling data runs

20100910
* worked on reading directory entries

20100909
* worked on reading directory entries

20100908
* worked on file entry functions
* worked on reading directory entries
* added debug print of file name attribute namespace description

20100907
* worked on reading directory entries

20100906
* worked on reading indexes

20100905
* worked on reading indexes
* worked on data runs

20100904
* worked on attributes
* worked on reading indexes
* worked on fixup values

20100903
* worked on mft attribute
* updated libbfio, libfdata
* worked on file entry API functions
* added libfguid for $OBJECT_ID attribute
* worked on attributes

20100828
* worked on reading a MFT entry and attributes

20100827
* worked on reading a MFT entry and attributes
* added debug print of file attribute flag description
* added debug print of mft attribute type description

20100826
* worked on reading a MFT entry and attributes

20100825
* initial version