Import file-5.09.
[dragonfly.git] / contrib / file / ChangeLog
1 2011-09-01  12:12  Christos Zoulas <christos@zoulas.com>
2
3         * Don't wait for any subprocess, just the one we forked.
4
5 2011-08-26  16:40  Christos Zoulas <christos@zoulas.com>
6
7         * If the application name is not set in a cdf file, try to see
8           if it has a directory with the application name on it.
9
10 2011-08-17  14:32  Christos Zoulas <christos@zoulas.com>
11
12         * Fix ELF lseek(2) madness. Inspired by PR/134 by Jan Kaluza
13
14 2011-08-14  09:03  Christos Zoulas <christos@zoulas.com>
15
16         * Don't use variable string formats.
17
18 2011-07-12  12:32  Reuben Thomas <rrt@sc3d.org>
19
20         * Fix detection of Zip files (Mantis #128).
21         * Make some minor improvements to file(1).
22         * Rename MIME types for filesystem objects for consistency with
23           xdg-utils. Typically this means that application/x-foo becomes
24           inode/foo, but some names also change slightly, e.g.
25           application/x-character-device becomes inode/chardevice.
26
27 2011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
28
29         * fix mingw compilation (Abradoks)
30
31 2011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
32
33         * remove patchlevel.h
34         * Fix read past allocated memory caused by double-incrementing
35           a pointer in a loop (reported by Roberto Maar)
36
37 2011-03-30  15:45  Christos Zoulas <christos@zoulas.com>
38
39         * Fix cdf string buffer setting (Sven Anders)
40
41 2011-03-20  16:35  Christos Zoulas <christos@zoulas.com>
42
43         * Eliminate MAXPATHLEN and use dynamic allocation for
44           path and file buffers.
45
46 2011-03-15  18:15  Christos Zoulas <christos@zoulas.com>
47
48         * binary tests on magic entries with masks could spuriously
49           get converted to ascii.
50
51 2011-03-12  18:06  Reuben Thomas <rrt@sc3d.org>
52
53         * Improve file.man (remove BUGS, present email addresses consistently).
54
55 2011-03-07  19:38  Christos Zoulas <christos@zoulas.com>
56
57         * add lrzip support (from Ville Skytta)
58
59 2011-02-10  16:36  Christos Zoulas <christos@zoulas.com>
60
61         * fix CDF bounds checking (Guy Helmer)
62
63 2011-02-10  12:03  Christos Zoulas <christos@zoulas.com>
64
65         * add cdf_ctime() that prints a meaningful error when time cannot
66           be converted.
67
68 2011-02-02  20:40  Christos Zoulas <christos@zoulas.com>
69
70         * help and version output to stdout.
71
72         * When matching softmagic for ascii files, don't just print
73           the softmagic classification, keep going and print the
74           text classification too. This fixes broken troff files when
75           we moved them from keyword recognition to softmagic
76           (they stopped printing "with CRLF" etc.)
77           Reported by Doug McIlroy.
78
79 2011-01-16  19:31  Reuben Thomas <rrt@sc3d.org>
80
81         * Fix two potential buffer overruns in apprentice_list.
82
83 2011-01-14  22:33  Reuben Thomas <rrt@sc3d.org>
84
85         * New Python binding in pure Python.
86         * Update libmagic(3).
87
88 2011-01-06  21:40  Reuben Thomas <rrt@sc3d.org>
89
90         * Fix Python bindings (including recent Python 3 compatibility
91           update).
92
93 2011-01-04  18:43  Reuben Thomas <rrt@sc3d.org>
94
95         * magic/Makefile.am: make it easier to recover from magic build failures.
96         * Fix pstring length specifier parsing to avoid generating invalid
97           magic files.
98         * Add pstring length "J" (for "JPEG") to specify that the length
99           include itself.
100         * Fix JPEG comment parsing at last using pstring/HJ!
101         * Ignore section 5 man pages in doc/.cvsignore.
102
103 2010-12-22  13:12  Christos Zoulas <christos@zoulas.com>
104
105         * Add pstring/BHhLl to specify the type of the length of pascal
106           strings.
107
108 2010-11-26  18:39  Reuben Thomas <rrt@sc3d.org>
109
110         * Fix "-e soft": it was ignored when softmagic was called
111           during asciimagic.
112         * Improve comments and use "unsigned char" in tar.h/is_tar.c.
113
114 2010-11-05  17:26  Reuben Thomas <rrt@sc3d.org>
115
116         * Make bug reporting addresses more visible.
117
118 2010-11-01  18:35  Reuben Thomas <rrt@sc3d.org>
119
120         * Add tcl magic from Gustaf Neumann
121
122 2010-10-24  10:42  Christos Zoulas <christos@zoulas.com>
123
124         * Fix the whitespace comparing code (Christopher Chittleborough)
125
126 2010-10-06  21:05  Christos Zoulas <christos@zoulas.com>
127
128         * allow string/t to work (Jan Kaluza)
129
130 2010-09-20  22:11  Reuben Thomas <rrt@sc3d.org>
131
132         * Apply some patches from Ubuntu and Fedora.
133
134 2010-09-20  21:16  Reuben Thomas <rrt@sc3d.org>
135
136         * Apply all patches from Debian package 5.04-6 which have not
137           already been applied and are not Debian-specific.
138
139 2010-09-20  15:24  Reuben Thomas <rrt@sc3d.org>
140
141         * Minor security fix to softmagic.c (don't use untrusted
142           string as printf format).
143
144 2010-07-21  12:20  Christos Zoulas <christos@zoulas.com>
145
146         * MINGW32 portability from LRN
147
148         * Don't warn about escaping magic regex chars when we are in a regex.
149
150 2010-07-19  10:55  Christos Zoulas <christos@zoulas.com>
151
152         * Only try to print prpsinfo for core files. (Jan Kaluza)
153
154 2010-04-22  12:55  Christos Zoulas <christos@zoulas.com>
155
156         * Try more elf offsets for Debian core files.  (Arnaud Giersch)
157
158 2010-02-20  15:18  Reuben Thomas <rrt@sc3d.org>
159
160         * Clarify which sort of CDF we mean.
161
162 2010-02-14  22:58  Reuben Thomas <rrt@sc3d.org>
163
164         * Re-jig Zip file type magic so that unsupported special
165           Zip types (those with "mimetype" at offset 30) can be
166           recognized.
167
168 2010-02-02  21:50  Reuben Thomas <rrt@sc3d.org>
169
170         * Add support for OCF (EPUB) files (application/epub+zip)
171
172 2010-01-28  18:25  Christos Zoulas <christos@zoulas.com>
173
174         * Fix core-dump from unbound loop:
175           https://bugzilla.redhat.com/show_bug.cgi?id=533245
176
177 2010-01-22  15:45  Christos Zoulas <christos@zoulas.com>
178
179         * print proper mime for crystal reports file
180
181         * print the last summary information of a cdf document, not the
182           first so that nested documents print the right info
183
184 2010-01-16  18:42  Charles Longeau <chl@tuxfamily.org>
185
186         * bring back some fixes from OpenBSD:
187                 - make gcc2 builds file
188                 - fix typos in a magic file comment
189
190 2009-11-17  18:35  Christos Zoulas <christos@zoulas.com>
191
192         * ctime/asctime can return NULL on some OS's although
193           they should not (Toshit Antani)
194
195 2009-09-14  13:49  Christos Zoulas <christos@zoulas.com>
196
197         * Centralize magic path handling routines and remove the
198           special-casing from file.c so that the python module for
199           example comes up with the same magic path (Fixes ~/.magic
200           handling) (from Gab)
201
202 2009-09-11  23:38  Reuben Thomas <rrt@sc3d.org>
203
204         * When magic argument is a directory, read the files in
205           strcmp-sorted order (fixes Debian bug #488562 and our own FIXME).
206
207 2009-09-11  13:11  Reuben Thomas <rrt@sc3d.org>
208
209         * Combine overlapping epoc and psion magic files into one (epoc).
210
211         * Add some more EPOC MIME types.
212
213 2009-08-19  15:55  Christos Zoulas <christos@zoulas.com>
214
215         * Fix 3 bugs (From Ian Darwin):
216             - file_showstr could move one past the end of the array
217             - parse_apple did not nul terminate the string in the overflow case
218             - parse_mime truncated the wrong string in the overflow case
219
220 2009-08-12  12:28  Robert Byrnes  <byrnes@wildpumpkin.net>
221
222         * Include Localstuff when compiling magic.
223
224 2009-07-15  10:05  Christos Zoulas <christos@zoulas.com>
225
226         * Fix logic for including mygetopts.h
227
228         * Make cdf.c compile again with debugging
229
230         * Add the necessary field handling for crystal reports files to work
231
232 2009-06-23 01:34  Reuben Thomas <rrt@sc3d.org>
233
234         * Stop "(if" identifying Lisp files, that's plain dumb!
235
236 2009-06-09 22:13  Reuben Thomas <rrt@sc3d.org>
237
238         * Add a couple of missing MP3 MIME types.
239
240 2009-05-27 23:00  Reuben Thomas <rrt@sc3d.org>
241
242         * Add full range of hash-bang tests for Python and Ruby.
243
244         * Add MIME types for Python and Ruby scripts.
245
246 2009-05-13  10:44  Christos Zoulas <christos@zoulas.com>
247
248         * off by one in parsing hw capabilities in elf
249           (Cheng Renquan)
250
251 2009-05-08  13:40  Christos Zoulas <christos@zoulas.com>
252         
253         * lint fixes and more from NetBSD
254
255 2009-05-06  10:25  Christos Zoulas <christos@zoulas.com>
256
257         * Avoid null dereference in cdf code (Drew Yao)
258
259         * More cdf bounds checks and overflow checks
260
261 2009-05-01  18:37  Christos Zoulas <christos@zoulas.com>
262
263         * Buffer overflow fixes from Drew Yao
264
265 2009-04-30  17:10  Christos Zoulas <christos@zoulas.com>
266
267         * Fix more cdf lossage. All the documents I have
268           right now print the correct information.
269
270 2009-03-27  18:43  Christos Zoulas <christos@zoulas.com>
271
272         * don't print \012- separators in the same magic entry 
273           if it consists of multiple magic printing lines.
274
275 2009-03-23  10:20  Christos Zoulas <christos@zoulas.com>
276
277         * Avoid file descriptor leak in compress code from
278           (Daniel Novotny)
279
280 2009-03-18  16:50  Christos Zoulas <christos@zoulas.com>
281
282         * Allow escaping of relation characters, so that we can say \^[A-Z]
283           and the ^ is not eaten as a relation char.
284
285         * Fix troff and fortran to their previous glory using
286           regex. This was broken since their removel from ascmagic.
287
288 2009-03-10  16:50  Christos Zoulas <christos@zoulas.com>
289
290         * don't use strlen in strndup() (Toby Peterson)
291
292 2009-03-10  7:45  Christos Zoulas <christos@zoulas.com>
293
294         * avoid c99 syntax.
295
296 2009-02-23 15:45  Christos Zoulas <christos@zoulas.com>
297
298         * make the cdf code use the buffer first if available,
299           and then the fd code.
300
301 2009-02-13 13:45  Christos Zoulas <christos@zoulas.com>
302
303         * look for struct option to determine if getopt.h is usable for IRIX.
304
305         * sanitize cdf document strings
306
307 2009-02-04 13:25  Christos Zoulas <christos@zoulas.com>
308
309         * fix OS/2 warnings.
310
311 2008-12-12 15:50  Christos Zoulas <christos@zoulas.com>
312
313         * fix initial offset calculation for non 4K sector files
314
315         * add loop limits to avoid DoS attacks by constructing
316           looping sector references.
317
318 2008-12-03 13:05  Christos Zoulas <christos@zoulas.com>
319
320         * fix memory botches on cdf file parsing.
321
322         * exit with non-zero value for any error, not just for the last
323           file processed.
324
325 2008-11-09 20:42  Charles Longeau <chl@tuxfamily.org>
326
327         * Replace all str{cpy,cat} functions with strl{cpy,cat}
328         * Ensure that strl{cpy,cat} are included in libmagic,
329           as needed.
330
331 2008-11-06 18:18  Christos Zoulas <christos@zoulas.com>
332
333         * Handle ID3 format files.
334
335 2008-11-06 23:00  Reuben Thomas <rrt@sc3d.org>
336
337         * Fix --mime, --mime-type and --mime-encoding under new scheme.
338
339         * Rename "ascii" to "text" and add "encoding" test.
340
341         * Return a precise ("utf-16le" or "utf-16be") MIME charset for
342           UTF-16.
343
344         * Fix error in comment caused by automatic indentation adding
345           words!
346
347 2008-11-06 10:35  Christos Zoulas <christos@astron.com>
348
349         * use memchr instead of strchr because the string
350           might not be NUL terminated (Scott MacVicar)
351
352 2008-11-03 07:31  Reuben Thomas <rrt@sc3d.org>
353
354         * Fix a printf with a non-literal format string.
355
356         * Fix formatting and punctuation of help for "--apple".
357
358 2008-10-30 11:00  Reuben Thomas <rrt@sc3d.org>
359
360         * Correct words counts in comments of struct magic.
361
362         * Fix handle_annotation to allow both Apple and MIME types to be
363           printed, and to return correct code if MIME type is
364           printed (1, not 0) or if there's an error (-1 not 1).
365
366         * Fix output of charset for MIME type (precede with semi-colon;
367           fixes Debian bug #501460).
368
369         * Fix potential attacks via conversion specifications in magic
370           strings.
371
372         * Add a FIXME for Debian bug #488562 (magic files should be
373           read in a defined order, by sorting the names).
374
375 2008-10-18 16:45  Christos Zoulas <christos@astron.com>
376
377         * Added APPLE file creator/type
378
379 2008-10-12 10:20  Christos Zoulas <christos@astron.com>
380
381         * Added CDF parsing
382
383 2008-10-09 16:40  Christos Zoulas <christos@astron.com>
384
385         * filesystem and msdos patches (Joerg Jenderek)
386
387 2008-10-09 13:20  Christos Zoulas <christos@astron.com>
388
389         * correct --exclude documentation issues: remove troff and fortran
390           and rename "token" to "tokens". (Randy McMurchy)
391
392 2008-10-01 10:30  Christos Zoulas <christos@astron.com>
393
394         * Read ~/.magic in addition to the default magic file not instead
395           of, as documented in the man page.
396
397 2008-09-10 21:30  Reuben Thomas  <rrt@sc3d.org>
398
399         * Comment out graphviz patterns, as they match too many files.
400
401 2008-08-30 12:54  Christos Zoulas <christos@astron.com>
402
403         * Don't eat trailing \n in magic enties.
404
405         * Cast defines to allow compilation using a c++ compiler.
406
407 2008-08-25 23:56  Reuben Thomas  <rrt@sc3d.org>
408
409         * Add text/x-lua MIME type for Lua scripts.
410
411         * Escape { in regex in graphviz patterns.
412
413 2008-07-26 00:59  Reuben Thomas  <rrt@sc3d.org>
414
415         * Add MIME types for special files.
416
417         * Use access to give more accurate information for files that
418           can't be opened.
419
420         * Add a TODO list.
421
422 2008-07-02 11:15  Christos Zoulas  <christos@astron.com>
423
424         * add !:strength op to adjust magic strength (experimental)
425
426 2008-06-16 21:41  Reuben Thomas  <rrt@sc3d.org>
427
428         * Fix automake error in configure.ac.
429
430         * Add MIME type for Psion Sketch files.
431
432 2008-06-05 08:59  Christos Zoulas  <christos@astron.com>
433
434         * Don't print warnings about bad namesize in stripped
435           binaries with PT_NOTE is still there, and the actual
436           note is gone (Jakub Jelinek)
437
438 2008-05-28 15:12  Robert Byrnes  <byrnes@wildpumpkin.net>
439
440         * magic/Magdir/elf:
441           Note invalid byte order for little-endian SPARC32PLUS.
442           Add SPARC V9 vendor extensions and memory model.
443
444         * src/elfclass.h:
445           Pass target machine to doshn (for Solaris hardware capabilities).
446
447         * src/readelf.c (doshn):
448           Add support for Solaris hardware/software capabilities.
449
450         * src/readelf.h:
451           Ditto.
452
453         * src/vasprintf.c (dispatch):
454           Add support for ll modifier.
455
456 2008-05-16 10:25  Christos Zoulas  <christos@astron.com>
457
458         * Fix compiler warnings.
459
460         * remove stray printf, and fix a vprintf bug. (Martin Dorey)
461
462 2008-05-06 00:13  Robert Byrnes  <byrnes@wildpumpkin.net>
463
464         * src/Makefile.am:
465           Ensure that getopt_long and [v]asprintf are included in libmagic,
466           as needed.
467
468           Remove unnecessary EXTRA_DIST.
469
470         * src/Makefile.in:
471           Rerun automake.
472
473         * src/vasprintf.c (dispatch):
474           Fix variable precision bug: be sure to step past '*'.
475
476         * src/vasprintf.c (core):
477           Remove unreachable code.
478
479         * src/apprentice.c (set_test_type):
480           Add cast to avoid compiler warning.
481
482 2008-04-22 23:45  Christos Zoulas  <christos@astron.com>
483
484         * Add magic submission guidelines (Abel Cheung)
485
486         * split msdos and windows magic (Abel Cheung)
487
488 2008-04-04 11:00  Christos Zoulas  <christos@astron.com>
489
490         * >= <= is not supported, so fix the magic and warn about it.
491           reported by: Thien-Thi Nguyen <ttn@gnuvola.org>
492
493 2008-03-27 16:16  Robert Byrnes  <byrnes@wildpumpkin.net>
494
495         * src/readelf.c (donote):
496           ELF core file command name/line bug fixes and enhancements:
497
498           Try larger offsets first to avoid false matches
499           from earlier data that happen to look like strings;
500           this primarily affected SunOS 5.x 32-bit Intel core files.
501
502           Add support for command line (instead of just short name)
503           for SunOS 5.x.
504
505           Add information about NT_PSINFO for SunOS 5.x.
506
507           Only trim whitespace from end of command line.
508
509 2007-02-11 01:36 Reuben Thomas <rrt@sc3d.org>
510
511         * Change strength of ! from MULT to 0, as it matches almost
512                   anything (Reuben Thomas)
513
514         * Debian fixes (Reuben Thomas)
515
516 2007-02-11 00:17 Reuben Thomas <rrt@sc3d.org>
517
518         * Clarify UTF-8 BOM message (Reuben Thomas)
519
520         * Add HTML comment to token list in names.h
521
522 2007-02-04 15:50 Christos Zoulas <christos@astron.com>
523
524         * Debian fixes (Reuben Thomas)
525
526 2007-02-04 11:31 Christos Zoulas <christos@astron.com>
527
528         * !:mime annotations in magic files (Reuben Thomas)
529
530 2007-01-29 15:35 Christos Zoulas <christos@astron.com>
531
532         * zero out utime/utimes structs (Gavin Atkinson)
533
534 2007-01-26 13:45 Christos Zoulas <christos@astron.com>
535
536         * reduce writable data from Diego "Flameeyes" Petten
537
538 2007-12-28 15:06 Christos Zoulas <christos@astron.com>
539
540         * strtof detection
541
542         * remove bogus regex magic that could cause a DoS
543
544         * better mismatch version message
545
546 2007-12-27 11:35 Christos Zoulas <christos@astron.com>
547
548         * bring back some fixes from OpenBSD
549
550         * treat ELF dynamic objects as executables
551
552         * fix gcc warnings
553
554 2007-12-01 19:55 Christos Zoulas <christos@astron.com>
555
556         * make sure we have zlib.h and libz to compile the builtin
557           decompress code
558
559 2007-10-28 20:48 Christos Zoulas <christos@astron.com>
560
561         * float and double magic support (Behan Webster)
562
563 2007-10-28 20:48 Christos Zoulas <christos@astron.com>
564
565         * Convert fortran to a soft test (Reuben Thomas)
566
567 2007-10-23  5:25 Christos Zoulas <christos@astron.com>
568
569         * Add --with-filename, and --no-filename (Reuben Thomas)
570
571 2007-10-23  3:59 Christos Zoulas <christos@astron.com>
572
573         * Rest of the mime split (Reuben Thomas)
574
575         * Make usage message generated from the flags so that
576           they stay consistent (Reuben Thomas)
577
578 2007-10-20  3:06 Christos Zoulas <christos@astron.com>
579
580         * typo in comment, missing ifdef QUICK, remove unneeded code
581                 (Charles Longeau)
582
583 2007-10-17  3:33 Christos Zoulas <christos@astron.com>
584
585         * Fix problem printing -\012 in some entries
586
587         * Separate magic type and encoding flags (Reuben Thomas)
588
589 2007-10-09  3:55 Christos Zoulas <christos@astron.com>
590
591         * configure fix for int64 and strndup (Reuben Thomas)
592
593 2007-09-26  4:45 Christos Zoulas <christos@astron.com>
594
595         * Add magic_descriptor() function.
596
597         * Fix regression in elf reading code where the core name was
598           not being printed.
599
600         * Don't convert NUL's to spaces in {l,b}estring16 (Daniel Dawson)
601
602 2007-08-19  6:30 Christos Zoulas <christos@astron.com>
603
604         * Make mime format consistent so that it can
605           be easily parsed:
606               mimetype [charset=character-set] [encoding=encoding-mime-type]
607
608           Remove spurious extra text from some MIME type printouts
609           (mostly in is_tar).
610
611           Fix one case where -i produced nothing at all (for a 1-byte file,
612           which is now classed as application/octet-stream).
613
614           Remove 7/8bit classifications, since they were arbitrary
615           and not based on the file data.
616
617           This work was done by Reuben Thomas
618
619 2007-05-24 10:00 Christos Zoulas <christos@astron.com>
620
621         * Fix another integer overflow (Colin Percival)
622
623 2007-03-26 13:58 Christos Zoulas <christos@astron.com>
624
625         * make sure that all of struct magic_set is initialized appropriately
626           (Brett)
627
628 2007-03-25 17:44 Christos Zoulas <christos@astron.com>
629
630         * reset left bytes in the buffer (Dmitry V. Levin)
631
632         * compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS
633           (Peter Avalos)
634
635 2007-03-15 10:51 Christos Zoulas <christos@astron.com>
636
637         * fix fortran and nroff reversed tests (Dmitry V. Levin)
638
639         * fix exclude option (Dmitry V. Levin)
640
641 2007-02-08 17:30 Christos Zoulas <christos@astron.com>
642
643         * fix integer underflow in file_printf which can lead to
644           to exploitable heap overflow (Jean-Sebastien Guay-Lero)
645
646 2007-02-05 11:35 Christos Zoulas <christos@astron.com>
647
648         * make socket/pipe reading more robust
649
650 2007-01-25 16:01 Christos Zoulas <christos@astron.com>
651
652         * Centralize all the tests in file_buffer.
653
654         * Add exclude flag.
655
656 2007-01-18 05:29 Anon Ymous <do@not.spam.me>
657
658         * Move the "type" detection code from parse() into its own table
659           driven routine.  This avoids maintaining multiple lists in
660           file.h.
661
662         * Add an optional conditional field (ust before the type field).
663           This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is
664           likely to go away.
665
666 2007-01-16 23:24 Anon Ymous <do@not.spam.me>
667
668         * Fix an initialization bug in check_mem().
669
670 2007-01-16 14:58 Anon Ymous <do@not.spam.me>
671
672         * Add a "default" type to print a message if nothing previously
673           matched at that level or since the last default at that
674           level.  This is useful for setting up switch-like statements.
675           It can also be used to do if/else constructions without a
676           redundant second test.
677
678         * Fix the "x" special case test so that one can test for that
679           string with "=x".
680
681         * Allow "search" to search the entire buffer if the "/N"
682           search count is missing.
683
684         * Make "regex" work!  It now starts its search at the
685           specified offset and takes an (optional) "/N" line count to
686           specify the search range; otherwise it searches to the end
687           of the file.  The match is now grabbed correctly for format
688           strings and the offset set to the end of the match.
689
690         * Add a "/s" flag to "regex" and "search" to set the offset to
691           the start of the match.  By default the offset is set to the
692           end of the match, as it is with other tests.  This is mostly
693           useful for "regex".
694
695         * Make "search", "string" and "pstring" use the same
696           file_strncmp() routine so that they support the same flags;
697           "bestring16" and "lestring16" call the same routine, but
698           with flags = 0.  Also add a "/C" flag (in analogy to "/c")
699           to ignore the case on uppercase (lowercase) characters in
700           the test string.
701
702         * Strict adherence to C style string escapes.  A warnings are
703           printed when compiling.  Note: previously "\a" was
704           incorrectly translated to 'a' instead of an <alert> (i.e.,
705           BELL, typically 0x07).
706
707         * Make this compile with "-Wall -Wextra" and all the warning
708           flags used with WARNS=4 in the NetBSD source.  Also make it
709           pass lint.
710
711         * Many "cleanups" and hopefully not too many new bugs!
712
713 2007-01-16 14:56 Anon Ymous <do@not.spam.me>
714
715         * make several more files compile with gcc warnings
716           on and also make them pass lint.
717
718 2007-01-16 14:54 Anon Ymous <do@not.spam.me>
719
720         * fix a puts()/putc() usage goof in file.c
721
722         * make file.c compile with gcc warnings and pass lint
723
724 2006-12-11 16:49 Christos Zoulas <christos@astron.com>
725
726         * fix byteswapping issue
727
728         * report the number of bytes we tried to
729           allocate when allocation fails
730
731         * add a few missed cases in the strength routine
732
733 2006-12-08 16:32 Christos Zoulas <christos@astron.com>
734
735         * store and print the line number of the magic
736           entry for debugging.
737
738         * if the magic entry did not print anything,
739           don't treat it as a match
740
741         * change the magic strength algorithm to take
742           into account the relationship op.
743
744         * fix a bug in search where we could accidentally
745           return a match.
746
747         * propagate the error return from match to
748           file_softmagic.
749
750 2006-11-25 13:35 Christos Zoulas <christos@astron.com>
751
752         * Don't store the current offset in the magic
753           struct, because it needs to be restored and
754           it was not done properly all the time. Bug
755           found by: Arkadiusz Miskiewicz
756
757         * Fix problem in the '\0' separator; and don't
758           print it as an additional separator; print
759           it as the only separator.
760
761 2006-11-17 10:51 Christos Zoulas <christos@astron.com>
762
763         * Added a -0 option to print a '\0' separator
764           Etienne Buira <etienne.buira@free.fr>
765
766 2006-10-31 15:14 Christos Zoulas <christos@astron.com>
767
768         * Check offset before copying (Mike Frysinger)
769
770         * merge duplicated code
771
772         * add quad date support
773
774         * make sure that we nul terminate desc (Ryoji Kanai)
775
776         * don't process elf notes multiple times
777
778         * allow -z to report empty compressed files
779
780         * use calloc to initialize the ascii buffers (Jos van den Oever)
781
782 2006-06-08 11:11 Christos Zoulas <christos@astron.com>
783
784         * QNX fixes (Mike Gorchak)
785
786         * Add quad support.
787
788         * FIFO checks (Dr. Werner Fink)
789
790         * Linux ELF fixes (Dr. Werner Fink)
791
792         * Magic format checks (Dr. Werner Fink)
793
794         * Magic format function improvent (Karl Chen)
795
796 2006-05-03 11:11 Christos Zoulas <christos@astron.com>
797
798         * Pick up some elf changes and some constant fixes from SUSE
799
800         * Identify gnu tar vs. posix tar
801
802         * When keep going, don't print spurious newlines (Radek Vokál)
803
804 2006-04-01 12:02 Christos Zoulas <christos@astron.com>
805
806         * Use calloc instead of malloc (Mike Frysinger)
807
808         * Fix configure script to detect wctypes.h (Mike Frysinger)
809
810 2006-03-02 16:06 Christos Zoulas <christos@astron.com>
811
812         * Print empty if the file is (Mike Frysinger)
813
814         * Don't try to read past the end of the buffer (Mike Frysinger)
815
816         * Sort magic entries by strength [experimental]
817
818 2005-11-29 13:26 Christos Zoulas <christos@astron.com>
819
820         * Use iswprint() to convert the output string.
821             (Bastien Nocera)
822
823 2005-10-31 8:54 Christos Zoulas <christos@astron.com>
824
825         * Fix regression where the core info was not completely processed
826             (Radek Vokál)
827
828 2005-10-20 11:15 Christos Zoulas <christos@astron.com>
829
830         * Middle Endian magic (Diomidis Spinellis)
831
832 2005-10-17 11:15 Christos Zoulas <christos@astron.com>
833
834         * Open with O_BINARY for CYGWIN (Corinna Vinschen)
835
836         * Don't close stdin (Arkadiusz Miskiewicz)
837
838         * Look for note sections in non executables.
839
840 2005-09-20 13:33 Christos Zoulas <christos@astron.com>
841
842         * Don't print SVR4 Style in core files multiple times
843             (Radek Vokál)
844
845 2005-08-27 04:09 Christos Zoulas <christos@astron.com>
846
847         * Cygwin changes Corinna Vinschen
848
849 2005-08-18 09:53 Christos Zoulas <christos@astron.com>
850
851         * Remove erroreous mention of /etc/magic in the file man page
852           This is gentoo bug 101639. (Mike Frysinger)
853
854         * Cross-compile support and detection (Mike Frysinger)
855
856 2005-08-12 10:17 Christos Zoulas <christos@astron.com>
857
858         * Add -h flag and dereference symlinks if POSIXLY_CORRECT
859           is set.
860
861 2005-07-29 13:57 Christos Zoulas <christos@astron.com>
862
863         * Avoid search and regex buffer overflows (Kelledin)
864
865 2005-07-12 11:48 Christos Zoulas <christos@astron.com>
866
867         * Provide stub implementations for {v,}nsprintf() for older
868           OS's that don't have them.
869         * Change mbstate_t autoconf detection macro from AC_MBSTATE_T
870           to AC_TYPE_MBSTATE_T.
871
872 2005-06-25 11:48 Christos Zoulas <christos@astron.com>
873
874         * Dynamically allocate the string buffers and make the
875           default read size 256K.
876
877 2005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de>
878
879         * Dragonfly ELF note support
880
881 2005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it>
882
883         * Avoid NULL pointer dereference in time conversion.
884
885 2005-03-06 00:00  Joerg Walter <jwalt@mail.garni.ch>
886
887         * Add indirect magic offset support, and search mode.
888
889 2005-01-12 00:00  Stepan Kasal  <kasal@ucw.cz>
890
891         * src/ascmagic.c (file_ascmagic): Fix three bugs about text files:
892           If a CRLF text file happens to have CR at offset HOWMANY - 1
893           (currently 0xffff), it should not be counted as CR line
894           terminator.
895           If a line has length exactly MAXLINELEN, it should not yet be
896           treated as a ``very long line'', as MAXLINELEN is ``longest sane
897           line length''.
898           With CRLF, the line length was not computed correctly, and even
899           lines of length MAXLINELEN - 1 were treated as ``very long''.
900
901 2004-12-07 14:15  Christos Zoulas  <christos@astron.com>
902
903         * bzip2 needs a lot of input buffer space on some files
904           before it can begin uncompressing. This makes file -z
905           fail on some bz2 files. Fix it by giving it a copy of
906           the file descriptor to read as much as it wants if we
907           have access to it. <christos@astron.com>
908
909 2004-11-24 12:39  Christos Zoulas  <christos@astron.com>
910
911         * Stack smash fix, and ELF more conservative reading.
912           Jakub Bogusz <qboosh@pld-linux.org>
913
914 2004-11-20 18:50  Christos Zoulas  <christos@astron.com>
915
916         * New FreeBSD version parsing code:
917           Jon Noack <noackjr@alumni.rice.edu>
918
919         * Hackish support for ucs16 strings <christos@astron.com>
920
921 2004-11-13 03:07  Christos Zoulas  <christos@astron.com>
922
923         * print the file name and line number in syntax errors.
924
925 2004 10-12 10:50  Christos Zoulas  <christos@astron.com>
926
927         * Fix stack overwriting on 0 length strings: Tim Waugh
928             <twaugh@redhat.com> Ned Ludd <solar@gentoo.org>
929
930 2004-09-27 11:30  Christos Zoulas  <christos@astron.com>
931
932         * Remove 3rd and 4th copyright clause; approved by Ian Darwin.
933
934         * Fix small memory leaks; caught by: Tamas Sarlos
935             <stamas@csillag.ilab.sztaki.hu>
936
937 2004-07-24 16:33  Christos Zoulas  <christos@astron.com>
938
939         * magic.mime update Danny Milosavljevic <danny.milo@gmx.net>
940
941         * FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com>
942
943         * utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com>
944
945         * errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org>
946
947 2004-04-12 10:55  Christos Zoulas  <christos@astron.com>
948
949         * make sure that magic formats match magic types during compilation
950
951         * fix broken sgi magic file
952
953 2004-04-06 20:36  Christos Zoulas  <christos@astron.com>
954
955         * detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com>
956
957         * magic fixes
958
959 2004-03-22 15:25  Christos Zoulas  <christos@astron.com>
960
961         * Lots of mime fixes
962           (Joerg Ostertag) <ostertag@rechengilde.de>
963
964         * FreeBSD ELF version handling
965           (Edwin Groothuis) <edwin@mavetju.org>
966
967         * correct cleanup in all cases; don't just close the file.
968           (Christos Zoulas) <christos@astron.com>
969
970         * add gettext message catalogue support
971           (Michael Piefel) <piefel@debian.org>
972
973         * better printout for unreadable files
974           (Michael Piefel) <piefel@debian.org>
975
976         * compensate for missing MAXPATHLEN
977           (Michael Piefel) <piefel@debian.org>
978
979         * add wide character string length computation
980           (Michael Piefel) <piefel@debian.org>
981
982         * Avoid infinite loops caused by bad elf alignments
983           or name and description note sizes. Reported by
984           (Mikael Magnusson) <mmikael@comhem.se>
985
986 2004-03-09 13:55  Christos Zoulas  <christos@astron.com>
987
988         * Fix possible memory leak on error and add missing regfree
989           (Dmitry V. Levin) <ldv@altlinux.org>
990
991 2003-12-23 12:12  Christos Zoulas  <christos@astron.com>
992
993         * fix -k flag (Maciej W. Rozycki)
994
995 2003-11-18 14:10  Christos Zoulas  <christos@astron.com>
996
997         * Try to give us much info as possible on corrupt elf files.
998           (Willy Tarreau) <willy@w.ods.org>
999         * Updated python bindings (Brett Funderburg)
1000            <brettf@deepfile.com>
1001
1002 2003-11-11 15:03  Christos Zoulas  <christos@astron.com>
1003
1004         * Include file.h first, because it includes config.h
1005           breaks largefile test macros otherwise.
1006           (Paul Eggert <eggert@CS.UCLA.EDU> via
1007            Lars Hecking <lhecking@nmrc.ie>)
1008
1009 2003-10-14 21:39  Christos Zoulas  <christos@astron.com>
1010
1011         * Python bindings (Brett Funderburg) <brettf@deepfile.com>
1012         * Don't lookup past the end of the buffer
1013           (Chad Hanson) <chanson@tcs-sec.com>
1014         * Add MAGIC_ERROR and api on magic_errno()
1015
1016 2003-10-08 12:40  Christos Zoulas  <christos@astron.com>
1017
1018         * handle error conditions from compile as fatal
1019           (Antti Kantee) <pooka@netbsd.org>
1020         * handle magic filename parsing sanely
1021         * more magic fixes.
1022         * fix a memory leak (Illes Marton) <illes.marton@balabit.hu>
1023         * describe magic file handling
1024           (Bryan Henderson) <bryanh@giraffe-data.com>
1025
1026 2003-09-12 15:09  Christos Zoulas  <christos@astron.com>
1027
1028         * update magic files.
1029         * remove largefile support from file.h; it breaks things on most OS's
1030
1031 2003-08-10 10:25  Christos Zoulas  <christos@astron.com>
1032
1033         * fix unmapping'ing of mmaped files.
1034
1035 2003-07-10 12:03  Christos Zoulas  <christos@astron.com>
1036
1037         * don't exit with -1 on error; always exit 1 (Marty Leisner)
1038         * restore utimes code.
1039
1040 2003-06-10 17:03  Christos Zoulas  <christos@astron.com>
1041
1042         * make sure we don't access uninitialized memory.
1043         * pass lint
1044         * #ifdef __cplusplus in magic.h
1045
1046 2003-05-25 19:23  Christos Zoulas  <christos@astron.com>
1047
1048         * rename cvs magic file to revision to deal with
1049           case insensitive filesystems.
1050
1051 2003-05-23 17:03  Christos Zoulas  <christos@astron.com>
1052
1053         * documentation fixes from Michael Piefel <piefel@debian.org>
1054         * magic fixes (various)
1055         * revert basename magic in .mgc name determination
1056         * buffer protection in uncompress,
1057           signness issues,
1058           close files
1059           Maciej W. Rozycki <macro@ds2.pg.gda.pl
1060
1061 2003-04-21 20:12  Christos Zoulas  <christos@astron.com>
1062
1063         * fix zsh magic
1064
1065 2003-04-04 16:59  Christos Zoulas  <christos@astron.com>
1066
1067         * fix operand sort order in string.
1068
1069 2003-04-02 17:30  Christos Zoulas  <christos@astron.com>
1070
1071         * cleanup namespace in magic.h
1072
1073 2003-04-02 13:50  Christos Zoulas  <christos@astron.com>
1074
1075         * Magic additions (Alex Ott)
1076         * Fix bug that broke VPATH compilation (Peter Breitenlohner)
1077
1078 2003-03-28 16:03  Christos Zoulas  <christos@astron.com>
1079
1080         * remove packed attribute from magic struct.
1081         * make the magic struct properly aligned.
1082         * bump version number of compiled files to 2.
1083
1084 2003-03-27 13:10  Christos Zoulas  <christos@astron.com>
1085
1086         * separate tar detection and run it before softmagic.
1087         * fix reversed symlink test.
1088         * fix version printing.
1089         * make separator a string instead of a char.
1090         * update manual page and sort options.
1091
1092 2003-03-26 11:00  Christos Zoulas  <christos@astron.com>
1093
1094         * Pass lint
1095         * make NULL in magic_file mean stdin
1096         * Fix "-" argument to file to pass NULL to magic_file
1097         * avoid pointer casts by using memcpy
1098         * rename magic_buf -> magic_buffer
1099         * keep only the first error
1100         * manual page: new sentence, new line
1101         * fix typo in api function (magic_buf -> magic_buffer)