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
|
Change log for duff
===================
Maintained since version 0.3.1.
2012-01-28 Camilla Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <elmindreda@elmindreda.org>
* duff.1: Added missing -type f to example (credits to Stephan Hegel).
2012-01-19 Camilla Berglund <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 Berglund <elmindreda@elmindreda.org>
* duff.1: Clarified language regarding -t and %d.
* duff.1: Made the output of examples human-readable.
2012-01-16 Camilla Berglund <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 Berglund <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 Berglund <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 Berglund <elmindreda@elmindreda.org>
* duff.c (usage): Annotated strings for i18n.
* duff.c (main): Made digest function name comparison case-insensitive.
2009-09-21 Camilla Berglund <elmindreda@elmindreda.org>
* duff.h: Added enum typedefs.
2009-09-20 Camilla Berglund <elmindreda@elmindreda.org>
* duff.c (version, usage, bugs): Changed to output to stdout.
2009-09-19 Camilla Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <elmindreda@elmindreda.org>
* duffdriver.c (stat_file): Added parenthesis to remove warning.
2006-01-09 Camilla Berglund <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 Berglund <elmindreda@elmindreda.org>
* join-duplicates.sh: Added file (credits to Ross Newell).
2006-01-07 Camilla Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <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 Berglund <elmindreda@elmindreda.org>
* duff.c (usage): Fixed typo in -t option (credits to Patrik Jarnefelt).
|