-
Notifications
You must be signed in to change notification settings - Fork 12
/
ChangeLog
417 lines (277 loc) · 15.9 KB
/
ChangeLog
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
Change log for duff
===================
Maintained since version 0.3.1.
2017-05-23 Camilla Löwy <elmindreda@elmindreda.org>
* configure.ac Makefile.am: Removed duplicate file entries.
2015-08-13 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c duff.h duffdriver.c dufffile.c duffstring.c duffstring.h duffutil.c:
Changed indent width.
* duffdriver.c (process_path): Decreased nesting depth.
2013-09-13 Camilla Löwy <elmindreda@elmindreda.org>
* duffutil.c (set_digest_function): Changed to accept a string.
* duff.h duff.c duffutil.c: Made all digest function selection logic local to
util module.
2013-07-23 Camilla Löwy <elmindreda@elmindreda.org>
* dufffile.c (compare_files): Cleaned up devnode comparison logic.
2013-07-21 Camilla Löwy <elmindreda@elmindreda.org>
* dufffile.c duffutil.c: Removed superfluous casts of malloc and realloc.
2012-09-21 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (follow_links_mode): Corrected type (credits to Michael
Tautschnig).
2012-09-07 Camilla Löwy <elmindreda@elmindreda.org>
* join-duplicates.sh: Removed redundant use of touch(1).
2012-03-30 Camilla Löwy <elmindreda@elmindreda.org>
* configure.ac: Enabled ISO Standard C.
* duff.h duffdriver.c: Corrected order of types and typedefs.
2012-02-19 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (process_directory): Made asprintf error exit.
* duffstring.c (vasprintf): Simplified allocation.
* duffstring.c (vasprintf): Made internal buffer overflow an error.
* join-duplicates.sh: Added missing IFS clearing.
2012-02-15 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h duffutil.c (init_digest): Renamed from digest_init.
* duff.h duffutil.c (update_digest): Renamed from digest_update.
* duff.h duffutil.c (finish_digest): Renamed from digest_finish.
* duff.1: Updated language on the different modes.
* duff.1: Updated examples.
* join-duplicates.sh: Fixed a few duff invocation bugs.
2012-02-13 Camilla Löwy <elmindreda@elmindreda.org>
* duff.1: Added documentation for -u flag.
* duff.h (DUPLICATE): Renamed from REPORTED.
* duffdriver.c (process_uniques): Added function.
* duffdriver.c (process_args): Added logic for -u flag.
* duff.c (main, usage): Added -u flag for listing unique instead of duplicate
files.
2012-02-12 Camilla Löwy <elmindreda@elmindreda.org>
* duffutil.c duff.h (PATH_SIZE_STEP): Added constant macro.
* duff.1: Added documentation for -D flag.
* dufffile.c (compare_files): Added logic for -D flag.
* duff.c (main, usage): Added -D flag for limiting clusters to a single device.
* duff.1: Various clarifications.
2012-01-28 Camilla Löwy <elmindreda@elmindreda.org>
* dufffile.c (compare_files): Removed superflous physical_flag test.
* duff.h dufffile.c (init_file_list): Renamed from file_list_init.
* duff.h dufffile.c (alloc_file): Renamed from file_list_alloc.
* duff.h dufffile.c (file_list_empty): Renamed from empty_file_list.
* duff.h dufffile.c (free_entry_list): Renamed from file_list_free.
* duffdriver.c dufffile.c duffutil.c: Put non-static functions on top.
* duffdriver.c (process_clusters): Initialized cluster index.
* duffdriver.c (report_cluster): Made use of get_field_terminator.
* duffutil.c (read_path): Made use of get_field_terminator.
* duffutil.c (get_field_terminator): Added function.
* duffutil.c (read_path): Removed limit on path length, updated signature.
2012-01-27 Camilla Löwy <elmindreda@elmindreda.org>
* dufffile.c (compare_entry_contents): Made warnings take -q into account.
* dufffile.c (get_file_sample): Tagged file INVALID on read error.
* dufffile.c (compare_file_digests): Replaced for-loop with memcmp.
* dufffile.c (get_file_sample, get_file_digest): Replaced pointer checks with
status checks.
* duff.h (Status): Added SAMPLED and HASHED values.
* duffdriver.c (process_clusters): Added test for whether base item has entered
INVALID state.
* dufffile.c (get_file_sample, get_file_digest): Removed duplicate check for
INVALID state.
2012-01-25 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h (Status): Removed unused DUPLICATE status.
* duffdriver.c (process_file): Removed read permission check on files (credits
to Kamal Mostafa).
2012-01-24 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h (HASH_BITS): Increased to 10.
* duffdriver.c (print_terminator): Added function.
* duff.h duffdriver.c dufffile.c (file_list_*): Renamed from entry_list_*.
* duff.h duffdriver.c dufffile.c (free_file): Renamed from free_entry.
* duff.h duffdriver.c dufffile.c (init_file): Renamed from fill_entry.
* duff.h duffdriver.c dufffile.c duffutil.c (FileList): Renamed from EntryList.
* duff.h duffdriver.c dufffile.c duffutil.c (File): Renamed from Entry.
* dufffile.c: Renamed from duffentry.c.
* duffdriver.c (has_recorded_directory): Renamed from has_recursed_directory.
* duffdriver.c (DirList): Added array of Dir structs.
* duffdriver.c (Dir): Renamed from Directory and removed list link.
* duff.h duffdriver.c: Moved Directory to duffdriver.
* duffdriver.c (process_directory): Renamed from recurse_directory.
* duff.h (EntryList): Renamed from List.
* duffentry.c (get_entry_sample, get_entry_digest, compare_entry_contents):
Improved error reporting.
* duff.h duffentry.c: Added BUFFER_SIZE macro for size of read buffers.
* duff.1: Improved grammar for -z flag.
* duff.1: Clarified language for -e flag.
* duff.1: Fixed statement claiming digests are calculated in thorough mode.
2012-01-23 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (process_args, process_clusters): Moved freeing of entries to
directly after each bucket has been processed.
* duffdriver.c (process_clusters): Renamed from report_clusters.
* duffdriver.c: Moved from single to BUCKET_COUNT entry lists, indexed by size.
* duffdriver.c (process_args): Added function.
* duffdriver.c (process_path, report_clusters): Made private to duffdriver.
* duff.c duffdriver.c: Moved argument processing to duffdriver.
* duffentry.c (fill_entry): Renamed function from make_entry.
* duffdriver.c (free_entry_list): Removed function.
* duffdriver.c: Replaced doubly linked lists with List.
* duffutil.c (entry_list_init, entry_list_alloc, entry_list_empty,
entry_list_free): Added entry list functions.
* duffutil.c (link_entry, unlink_entry): Removed functions.
* duff.h (List): Added linear entry list struct and typedef.
* duff.h (Entry): Removed list links.
* duff.c (main): Saved header digest use before processing entries.
* duff.c (header_uses_digest): Added global flag.
* duffentry.c (report_cluster): Ensured that first cluster entry has digest.
* duffentry.c (compare_entries): Added more early-out cases.
* duffentry.c (get_entry_digest): Stopped reading empty files.
* duffentry.c (generate_entry_digest): Added function.
* duffentry.c (get_entry_digest): Hash sample if it contains entire file.
* duffutil.c (error, warning): Prefixed program name to output.
* duffutil.c (set_digest_function): Added function.
* duffutil.c (digest_init): Added function.
* duffutil.c (digest_update): Added function.
* duffutil.c (digest_finish): Added function.
* duff.c duffutil.c duffentry.c: Moved all calls to sha to duffutil.
* duff.c duffutil.c duffentry.c: Made digest_function private to duffutil.
* duff.1 duff.c: Changed default sampling limit to zero.
2012-01-22 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c duff.h duffentry.c: Changed sampling to read (up to) the first
SAMPLE_SIZE bytes (credits to Kamal Mostafa).
* duff.c: Clarified help for -H and -L flags.
* duff.c: Added list of supported digest functions to help for -d flag.
2012-01-20 Camilla Löwy <elmindreda@elmindreda.org>
* duff.1: Added missing -type f to example (credits to Stephan Hegel).
2012-01-19 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h: Tagged functions error and warning with GCC attributes.
* duff.1: Clarified default sampling limit.
* duffdriver.c: Renamed cluster index variable to index.
2012-01-18 Camilla Löwy <elmindreda@elmindreda.org>
* duff.1: Clarified language regarding -t and %d.
* duff.1: Made the output of examples human-readable.
2012-01-16 Camilla Löwy <elmindreda@elmindreda.org>
* duff.1: Added new cluster header to description of -f flag.
* duff.c (main): Added error if thorough mode output uses digest (credits to
Kamal Mostafa and Mika Kuoppala).
* duff.c (main): Added non-digest default cluster header for thorough mode.
* duffutil.c duff.h: Added function cluster_header_uses_digest.
2011-04-11 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (main): Made cluster header translatable.
* duffutil.c (error): Changed exit status to EXIT_FAILURE.
* duffdriver.c (process_path): Split file processing into process_file function.
* duffdriver.c (process_file): Reverted to old behaviour of skipping block devices.
2011-04-10 gettextize <bug-gnu-gettext@gnu.org>
* Makefile.am (SUBDIRS): Add po.
(ACLOCAL_AMFLAGS): New variable.
(EXTRA_DIST): Add config.rpath, m4/ChangeLog.
* configure.ac (AC_OUTPUT): Add po/Makefile.in.
2011-04-10 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c duff.h duffdriver.c duffentry.c: Changed gettext macro to _.
* gettext.h: Added file to lib directory.
* duff.c (usage): Improved grammar in help text.
* duff.c duff.h duffdriver.c duffentry.c: Enabled use of gettext.
* duff.c duff.h duffdriver.c duffentry.c duffutil.c
duffstring.c: Moved to use autoconf large file support detection.
2010-08-15 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (usage): Annotated strings for i18n.
* duff.c (main): Made digest function name comparison case-insensitive.
2009-09-21 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h: Added enum typedefs.
2009-09-20 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (version, usage, bugs): Changed to output to stdout.
2009-09-19 Camilla Löwy <elmindreda@elmindreda.org>
* bootstrap.sh: Added instruction to run configure.
* duffentry.c (get_entry_digest): Removed broken optimization.
* duff.1: Added note on file modification.
* duff.h: Added struct typedefs.
2009-08-09 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (recurse_directory): Added error handling for asprintf.
* duffentry.c (get_entry_samples): Added error handling for fread.
* duffutil.c (error, warning): Added error handling for asprintf.
* duff.c (usage): Clarified wording of help text.
2009-01-16 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (read_path, kill_trailing_slashes): Moved functions into duffutil.c.
* duff.h: Added declarations for read_path and kill_trailing_slashes.
* duff.c (version): Annotated strings for i18n.
2009-01-05 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (main): Moved option default values into source file.
* duff.c (main) (usage): Renamed -c flag to -d.
2009-01-04 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c duffdriver.c duffentry.c duffstring.c duffutil.c: Annotated strings for i18n.
* duff.c (main): Added call to setlocale(3).
2009-01-03 Camilla Löwy <elmindreda@elmindreda.org>
* sha256.c: Added file.
* sha256.h: Added file.
* sha384.c: Added file.
* sha384.h: Added file.
* sha512.c: Added file.
* sha512.h: Added file.
* duffutil.c (print_message_digest): Added function.
* duffutil.c (print_cluster_header): Added call to print_message_digest.
* duffentry.c (get_entry_digest): Added support for digest function selection.
* duffentry.c (get_entry_digest_sha1) (get_entry_digest_sha256)
(get_entry_digest_sha384) (get_entry_digest_sha512): Added function.
* duff.c (main) (usage): Added -c option for selecting digest function.
* duff.h: Added digest function enumeration.
* duff.c duffdriver.c duffentry.c duffstring.c duffutil.c: Made off_t 64-bit on glibc.
2006-10-07 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (main): Always kill trailing slashes (and in a nicer way).
* duff.c (kill_trailing_slashes): Added function.
* duff.c (main) (read_path): Don't kill newlines for -0 option.
2006-09-29 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (main) (usage): Added -0 option (credits to Clemens Lucas Fries).
* duff.c (read_path): Added function.
* duffdriver.c (report_clusters): Added -0 option (credits to Clemens Lucas Fries).
* duffutil.c (print_cluster_header): Removed newline termination.
2006-01-11 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (stat_file): Added parenthesis to remove warning.
2006-01-09 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h (copy_entry): Removed unused function.
* duffentry.c (copy_entry): Removed unused function.
* duffdriver.c (process_path): Only check access for non-empty files.
* duffentry.c (get_entry_samples)
(get_entry_checksum): Only open and read from non-empty files.
* join-duplicates.sh: Removed logging, added some error checking and mktemp.
2006-01-08 Camilla Löwy <elmindreda@elmindreda.org>
* join-duplicates.sh: Added file (credits to Ross Newell).
2006-01-07 Camilla Löwy <elmindreda@elmindreda.org>
* duffentry.c (get_entry_samples): Fixed seek bug (credits to Alexander Bostrom).
* duffdriver.c (stat_file): Removed collection of symlinks to files.
* duff.h: Added enum for symlink dereferencing modes.
* duffdriver.c (stat_file): Implemented symlink dereferencing modes.
* duffdriver.c (process_path, recurse_directory)
(stat_file): Added recursion depth tracking.
* duff.c (main, usage): Added -H option for following only symlinks listed as arguments.
* duff.c (main): Reordered options for better clarity.
* duff.c (main): Improved warnings for -l option.
2006-01-04 Camilla Löwy <elmindreda@elmindreda.org>
* duffentry.c (compare_entries): Removed code for -z option.
* duffdriver.c (stat_file): Do not collect empty files when using -z option.
* duffdriver.c (report_clusters): Fixed unlink bug.
* duffdriver.c (report_clusters): All entries are now freed by the cluster search phase.
2006-01-03 Camilla Löwy <elmindreda@elmindreda.org>
* duff.h: Added inode and device fields to struct Entry (credits to Ross Newell).
* duffdriver.c (process_path): Implemented physical mode (credits to Ross Newell).
* duff.c (main, usage): Added -p option for physical mode.
* duff.h: Added backlink to struct Entry.
* duffentry.c (unlink_entry, link_entry): Added functions.
* duffentry.c (make_entry): Added storing of device and inode fields.
* duffdriver.c: Moved to using doubly-linked entries.
2005-12-14 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (stat_file): Eliminated duplicate stat call for -L option.
* duffdriver.c (stat_file): Added inital sketch for symlink-aware -e option.
2005-12-01 Camilla Löwy <elmindreda@elmindreda.org>
* duffutil.c (print_cluster_header): Fixed bug when printing off_t values on Mac OS X.
* duffdriver.c: Added includes for building on Solaris.
* duff.c: Added includes for building on Solaris.
2005-11-28 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (has_recursed_directory)
(record_directory): Added primitive directory loop detection.
* duffutil.c: Added hash function for device/inode pair.
* duff.h: Added struct Directory for recording of recursed directories.
* duffdriver.c: Added several additional TODO items.
2005-11-27 Camilla Löwy <elmindreda@elmindreda.org>
* duffdriver.c (report_clusters): Added freeing of entries.
* duffentry.c (compare_entries): Added code for -z option.
* duff.c (main): Added file name reading from stdin.
2005-11-26 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (main, usage): Added -z option for ignoring empty files.
* duff.c: Moved primary driver logic into duffdriver.c.
* duffdriver.c: Created new file for primary driver logic.
2005-11-24 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c: Added missing 't' to the getopt string (credits to Richard Levitte).
* duffentry.c (compare_entries): Fixed bug in ordering of phases.
2005-11-23 Camilla Löwy <elmindreda@elmindreda.org>
* duff.c (usage): Fixed typo in -t option (credits to Patrik Jarnefelt).