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