xref: /netbsd-src/external/bsd/file/dist/ChangeLog (revision 413d532bcc3f62d122e56d92e13ac64825a40baf)
12013-11-19  20:10  Christos Zoulas <christos@zoulas.com>
2
3	* always leave magic file loaded, don't unload for magic_check, etc.
4	* fix default encoding to binary instead of unknown which broke recently
5	* handle empty and one byte files, less specially so that
6	  --mime-encoding does not break completely.
7		`
82013-11-06  14:40  Christos Zoulas <christos@zoulas.com>
9
10	* fix erroneous non-zero exit code from non-existant file and message
11
122013-10-29  14:25  Christos Zoulas <christos@zoulas.com>
13
14	* add CDF MSI file detection (Guy Helmer)
15
162013-09-03  11:56  Christos Zoulas <christos@zoulas.com>
17
18	* Don't mix errors and regular output if there was an error
19	* in magic_descriptor() don't close the file and try to restore
20	  its position
21
222013-05-30  17:25  Christos Zoulas <christos@zoulas.com>
23
24	* Don't treat magic as an error if offset was past EOF (Christoph Biedl)
25
262013-05-28  17:25  Christos Zoulas <christos@zoulas.com>
27
28	* Fix spacing issues in softmagic and elf (Jan Kaluza)
29
302013-05-02  18:00  Christos Zoulas <christos@zoulas.com>
31
32	* Fix segmentation fault with multiple magic_load commands.
33
342013-04-22  11:20  Christos Zoulas <christos@zoulas.com>
35
36	* The way "default" was implemented was not very useful
37	  because the "if something was printed at that level"
38	  was not easily controlled by the user, and the format
39	  was bound to a string which is too restrictive. Add
40	  a "clear" for that level keyword and make "default"
41	  void. This way one can do:
42
43		>>13	clear	x
44		>>13	lelong	1	foo
45		>>13	lelong	2	bar
46		>>13	default	x
47		>>>13	lelong	x	unknown %x
48
492013-03-25  13:20  Christos Zoulas <christos@zoulas.com>
50
51	* disallow strength setting in "name" entries
52
532013-03-06  21:24  Christos Zoulas <christos@zoulas.com>
54
55	* fix recursive magic separator printing
56
572013-02-26  19:28  Christos Zoulas <christos@zoulas.com>
58
59	* limit recursion level for mget
60	* fix pread() related breakage in cdf
61	* handle offsets properly in recursive "use"
62
632013-02-18  10:39  Christos Zoulas <christos@zoulas.com>
64
65	* add elf reading of debug info to determine if file is stripped
66	  (Jan Kaluza)
67	* use pread()
68
692013-01-25  18:05  Christos Zoulas <christos@zoulas.com>
70
71	* change mime description size from 64 to 80 to accommodate OOXML.
72
732013-01-11  14:50  Christos Zoulas <christos@zoulas.com>
74
75	* Warn about inconsistent continuation levels.
76	* Change fsmagic to add a space after it prints.
77
782013-01-10  21:00  Christos Zoulas <christos@zoulas.com>
79
80	* Make getline public so that file can link against it.
81	  Perhaps it is better to rename it, or hide it differently.
82	  Fixes builds on platforms that do not provide it.
83
842013-01-07  16:30  Christos Zoulas <christos@zoulas.com>
85
86	* Add SuS d{,1,2,4,8}, u{,1,2,4,8} and document
87	  what long, int, short, etc is (Guy Harris)
88
892013-01-06  11:20  Christos Zoulas <christos@zoulas.com>
90
91	* add magic_version function and constant
92	* Redo memory allocation and de-allocation.
93	  (prevents double frees on non mmap platforms)
94	* Fix bug with name/use having to do with passing
95	  found state from the parent to the child and back.
96
972012-12-19   8:47  Christos Zoulas <christos@zoulas.com>
98
99	* Only print elf capabilities for archs we know (Jan Kaluza)
100
1012012-10-30  19:14  Christos Zoulas <christos@zoulas.com>
102
103	* Add "name" and "use" file types in order to look
104	  inside mach-o files.
105
1062012-09-06  10:40  Christos Zoulas <christos@zoulas.com>
107
108	* make --version exit 0 (Matthew Schultz)
109	* add string/T (Jan Kaluza)
110
1112012-08-09  2:15  Christos Zoulas <christos@zoulas.com>
112
113	* add z and t modifiers for our own vasprintf
114	* search for $HOME/.magic.mgc if it is there first
115	* fix reads from a pipe, and preserve errno
116
1172012-05-15  13:12  Christos Zoulas <christos@zoulas.com>
118
119	* use ctime_r, asctime_r
120
1212012-04-06  17:18  Christos Zoulas <christos@zoulas.com>
122
123	* Fixes for indirect offsets to handle apple disk formats
124
1252012-04-03  18:26  Christos Zoulas <christos@zoulas.com>
126
127	* Add windows date field types
128	* More info for windows shortcuts (incomplete)
129
1302012-02-20  17:33  Christos Zoulas <christos@zoulas.com>
131
132	* Fix CDF parsing issues found by CERT's fuzzing tool (Will Dormann)
133
1342011-12-15  12:17  Chris Metcalf <cmetcalf@tilera.com>
135
136	* Support Tilera architectures (tile64, tilepro, tilegx).
137
1382011-12-16  16:33  Reuben Thomas <rrt@sc3d.org>
139
140	* Add magic for /usr/bin/env Perl scripts
141	* Weaken generic script magic to avoid clashing with
142	language-specific magic.
143
1442011-12-08  13:37  Reuben Thomas <rrt@sc3d.org>
145
146	* Simplify if (p) free(p) to free(p).
147
1482011-12-08  13:07  Reuben Thomas <rrt@sc3d.org>
149
150	* Remove hardwired token finding (names.h), turning it into soft
151	magic. Patterns are either anchored regexs or search/8192. English
152	language detection and PL/1 detection have been removed as they
153	were too fragile. -e tokens is still accepted for backwards
154	compatibility.
155	* Move 3ds patterns (which are commented out anyway) into autodesk
156	(they were, oddly, in c-lang).
157
1582011-12-06  00:16  Reuben Thomas <rrt@sc3d.org>
159
160	* Tweak strength of generic hash-bang detectors to be less than
161	specific ones.
162	* Make an inconsistent description of Python scripts consistent.
163
1642011-12-05  23:58  Reuben Thomas <rrt@sc3d.org>
165
166	* Fix minor error in file(1).
167
1682011-11-05  00:00  Reuben Thomas <rrt@sc3d.org>
169
170	* Fix issue #150 (I hope).
171
1722011-09-22  12:57  Christos Zoulas <christos@zoulas.com>
173
174	* Python3 binding fixes from Kelly Anderson
175
1762011-09-20  11:32  Christos Zoulas <christos@zoulas.com>
177
178	* If a string type magic entry is marked as text or binary
179	  only match text files against text entries and binary
180	  files against binary entries.
181
1822011-09-01  12:12  Christos Zoulas <christos@zoulas.com>
183
184	* Don't wait for any subprocess, just the one we forked.
185
1862011-08-26  16:40  Christos Zoulas <christos@zoulas.com>
187
188	* If the application name is not set in a cdf file, try to see
189	  if it has a directory with the application name on it.
190
1912011-08-17  14:32  Christos Zoulas <christos@zoulas.com>
192
193	* Fix ELF lseek(2) madness. Inspired by PR/134 by Jan Kaluza
194
1952011-08-14  09:03  Christos Zoulas <christos@zoulas.com>
196
197	* Don't use variable string formats.
198
1992011-07-12  12:32  Reuben Thomas <rrt@sc3d.org>
200
201	* Fix detection of Zip files (Mantis #128).
202	* Make some minor improvements to file(1).
203	* Rename MIME types for filesystem objects for consistency with
204	  xdg-utils. Typically this means that application/x-foo becomes
205	  inode/foo, but some names also change slightly, e.g.
206	  application/x-character-device becomes inode/chardevice.
207
2082011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
209
210	* fix mingw compilation (Abradoks)
211
2122011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
213
214	* remove patchlevel.h
215	* Fix read past allocated memory caused by double-incrementing
216	  a pointer in a loop (reported by Roberto Maar)
217
2182011-03-30  15:45  Christos Zoulas <christos@zoulas.com>
219
220	* Fix cdf string buffer setting (Sven Anders)
221
2222011-03-20  16:35  Christos Zoulas <christos@zoulas.com>
223
224	* Eliminate MAXPATHLEN and use dynamic allocation for
225	  path and file buffers.
226
2272011-03-15  18:15  Christos Zoulas <christos@zoulas.com>
228
229	* binary tests on magic entries with masks could spuriously
230	  get converted to ascii.
231
2322011-03-12  18:06  Reuben Thomas <rrt@sc3d.org>
233
234	* Improve file.man (remove BUGS, present email addresses consistently).
235
2362011-03-07  19:38  Christos Zoulas <christos@zoulas.com>
237
238	* add lrzip support (from Ville Skytta)
239
2402011-02-10  16:36  Christos Zoulas <christos@zoulas.com>
241
242	* fix CDF bounds checking (Guy Helmer)
243
2442011-02-10  12:03  Christos Zoulas <christos@zoulas.com>
245
246	* add cdf_ctime() that prints a meaningful error when time cannot
247	  be converted.
248
2492011-02-02  20:40  Christos Zoulas <christos@zoulas.com>
250
251	* help and version output to stdout.
252
253	* When matching softmagic for ascii files, don't just print
254	  the softmagic classification, keep going and print the
255	  text classification too. This fixes broken troff files when
256	  we moved them from keyword recognition to softmagic
257	  (they stopped printing "with CRLF" etc.)
258	  Reported by Doug McIlroy.
259
2602011-01-16  19:31  Reuben Thomas <rrt@sc3d.org>
261
262	* Fix two potential buffer overruns in apprentice_list.
263
2642011-01-14  22:33  Reuben Thomas <rrt@sc3d.org>
265
266	* New Python binding in pure Python.
267	* Update libmagic(3).
268
2692011-01-06  21:40  Reuben Thomas <rrt@sc3d.org>
270
271	* Fix Python bindings (including recent Python 3 compatibility
272	  update).
273
2742011-01-04  18:43  Reuben Thomas <rrt@sc3d.org>
275
276	* magic/Makefile.am: make it easier to recover from magic build failures.
277	* Fix pstring length specifier parsing to avoid generating invalid
278	  magic files.
279	* Add pstring length "J" (for "JPEG") to specify that the length
280	  include itself.
281	* Fix JPEG comment parsing at last using pstring/HJ!
282	* Ignore section 5 man pages in doc/.cvsignore.
283
2842010-12-22  13:12  Christos Zoulas <christos@zoulas.com>
285
286	* Add pstring/BHhLl to specify the type of the length of pascal
287	  strings.
288
2892010-11-26  18:39  Reuben Thomas <rrt@sc3d.org>
290
291	* Fix "-e soft": it was ignored when softmagic was called
292	  during asciimagic.
293	* Improve comments and use "unsigned char" in tar.h/is_tar.c.
294
2952010-11-05  17:26  Reuben Thomas <rrt@sc3d.org>
296
297	* Make bug reporting addresses more visible.
298
2992010-11-01  18:35  Reuben Thomas <rrt@sc3d.org>
300
301	* Add tcl magic from Gustaf Neumann
302
3032010-10-24  10:42  Christos Zoulas <christos@zoulas.com>
304
305	* Fix the whitespace comparing code (Christopher Chittleborough)
306
3072010-10-06  21:05  Christos Zoulas <christos@zoulas.com>
308
309	* allow string/t to work (Jan Kaluza)
310
3112010-09-20  22:11  Reuben Thomas <rrt@sc3d.org>
312
313	* Apply some patches from Ubuntu and Fedora.
314
3152010-09-20  21:16  Reuben Thomas <rrt@sc3d.org>
316
317	* Apply all patches from Debian package 5.04-6 which have not
318	  already been applied and are not Debian-specific.
319
3202010-09-20  15:24  Reuben Thomas <rrt@sc3d.org>
321
322	* Minor security fix to softmagic.c (don't use untrusted
323	  string as printf format).
324
3252010-07-21  12:20  Christos Zoulas <christos@zoulas.com>
326
327	* MINGW32 portability from LRN
328
329	* Don't warn about escaping magic regex chars when we are in a regex.
330
3312010-07-19  10:55  Christos Zoulas <christos@zoulas.com>
332
333	* Only try to print prpsinfo for core files. (Jan Kaluza)
334
3352010-04-22  12:55  Christos Zoulas <christos@zoulas.com>
336
337	* Try more elf offsets for Debian core files.  (Arnaud Giersch)
338
3392010-02-20  15:18  Reuben Thomas <rrt@sc3d.org>
340
341	* Clarify which sort of CDF we mean.
342
3432010-02-14  22:58  Reuben Thomas <rrt@sc3d.org>
344
345	* Re-jig Zip file type magic so that unsupported special
346	  Zip types (those with "mimetype" at offset 30) can be
347	  recognized.
348
3492010-02-02  21:50  Reuben Thomas <rrt@sc3d.org>
350
351	* Add support for OCF (EPUB) files (application/epub+zip)
352
3532010-01-28  18:25  Christos Zoulas <christos@zoulas.com>
354
355	* Fix core-dump from unbound loop:
356	  https://bugzilla.redhat.com/show_bug.cgi?id=533245
357
3582010-01-22  15:45  Christos Zoulas <christos@zoulas.com>
359
360	* print proper mime for crystal reports file
361
362	* print the last summary information of a cdf document, not the
363	  first so that nested documents print the right info
364
3652010-01-16  18:42  Charles Longeau <chl@tuxfamily.org>
366
367	* bring back some fixes from OpenBSD:
368		- make gcc2 builds file
369		- fix typos in a magic file comment
370
3712009-11-17  18:35  Christos Zoulas <christos@zoulas.com>
372
373	* ctime/asctime can return NULL on some OS's although
374	  they should not (Toshit Antani)
375
3762009-09-14  13:49  Christos Zoulas <christos@zoulas.com>
377
378	* Centralize magic path handling routines and remove the
379	  special-casing from file.c so that the python module for
380	  example comes up with the same magic path (Fixes ~/.magic
381	  handling) (from Gab)
382
3832009-09-11  23:38  Reuben Thomas <rrt@sc3d.org>
384
385	* When magic argument is a directory, read the files in
386	  strcmp-sorted order (fixes Debian bug #488562 and our own FIXME).
387
3882009-09-11  13:11  Reuben Thomas <rrt@sc3d.org>
389
390	* Combine overlapping epoc and psion magic files into one (epoc).
391
392	* Add some more EPOC MIME types.
393
3942009-08-19  15:55  Christos Zoulas <christos@zoulas.com>
395
396	* Fix 3 bugs (From Ian Darwin):
397	    - file_showstr could move one past the end of the array
398	    - parse_apple did not nul terminate the string in the overflow case
399	    - parse_mime truncated the wrong string in the overflow case
400
4012009-08-12  12:28  Robert Byrnes  <byrnes@wildpumpkin.net>
402
403	* Include Localstuff when compiling magic.
404
4052009-07-15  10:05  Christos Zoulas <christos@zoulas.com>
406
407	* Fix logic for including mygetopts.h
408
409	* Make cdf.c compile again with debugging
410
411	* Add the necessary field handling for crystal reports files to work
412
4132009-06-23 01:34  Reuben Thomas <rrt@sc3d.org>
414
415	* Stop "(if" identifying Lisp files, that's plain dumb!
416
4172009-06-09 22:13  Reuben Thomas <rrt@sc3d.org>
418
419	* Add a couple of missing MP3 MIME types.
420
4212009-05-27 23:00  Reuben Thomas <rrt@sc3d.org>
422
423	* Add full range of hash-bang tests for Python and Ruby.
424
425	* Add MIME types for Python and Ruby scripts.
426
4272009-05-13  10:44  Christos Zoulas <christos@zoulas.com>
428
429	* off by one in parsing hw capabilities in elf
430	  (Cheng Renquan)
431
4322009-05-08  13:40  Christos Zoulas <christos@zoulas.com>
433
434	* lint fixes and more from NetBSD
435
4362009-05-06  10:25  Christos Zoulas <christos@zoulas.com>
437
438	* Avoid null dereference in cdf code (Drew Yao)
439
440	* More cdf bounds checks and overflow checks
441
4422009-05-01  18:37  Christos Zoulas <christos@zoulas.com>
443
444	* Buffer overflow fixes from Drew Yao
445
4462009-04-30  17:10  Christos Zoulas <christos@zoulas.com>
447
448	* Fix more cdf lossage. All the documents I have
449	  right now print the correct information.
450
4512009-03-27  18:43  Christos Zoulas <christos@zoulas.com>
452
453	* don't print \012- separators in the same magic entry
454	  if it consists of multiple magic printing lines.
455
4562009-03-23  10:20  Christos Zoulas <christos@zoulas.com>
457
458	* Avoid file descriptor leak in compress code from
459	  (Daniel Novotny)
460
4612009-03-18  16:50  Christos Zoulas <christos@zoulas.com>
462
463	* Allow escaping of relation characters, so that we can say \^[A-Z]
464	  and the ^ is not eaten as a relation char.
465
466	* Fix troff and fortran to their previous glory using
467	  regex. This was broken since their removel from ascmagic.
468
4692009-03-10  16:50  Christos Zoulas <christos@zoulas.com>
470
471	* don't use strlen in strndup() (Toby Peterson)
472
4732009-03-10  7:45  Christos Zoulas <christos@zoulas.com>
474
475	* avoid c99 syntax.
476
4772009-02-23 15:45  Christos Zoulas <christos@zoulas.com>
478
479	* make the cdf code use the buffer first if available,
480	  and then the fd code.
481
4822009-02-13 13:45  Christos Zoulas <christos@zoulas.com>
483
484	* look for struct option to determine if getopt.h is usable for IRIX.
485
486	* sanitize cdf document strings
487
4882009-02-04 13:25  Christos Zoulas <christos@zoulas.com>
489
490	* fix OS/2 warnings.
491
4922008-12-12 15:50  Christos Zoulas <christos@zoulas.com>
493
494	* fix initial offset calculation for non 4K sector files
495
496	* add loop limits to avoid DoS attacks by constructing
497	  looping sector references.
498
4992008-12-03 13:05  Christos Zoulas <christos@zoulas.com>
500
501	* fix memory botches on cdf file parsing.
502
503	* exit with non-zero value for any error, not just for the last
504	  file processed.
505
5062008-11-09 20:42  Charles Longeau <chl@tuxfamily.org>
507
508	* Replace all str{cpy,cat} functions with strl{cpy,cat}
509	* Ensure that strl{cpy,cat} are included in libmagic,
510	  as needed.
511
5122008-11-06 18:18  Christos Zoulas <christos@zoulas.com>
513
514	* Handle ID3 format files.
515
5162008-11-06 23:00  Reuben Thomas <rrt@sc3d.org>
517
518	* Fix --mime, --mime-type and --mime-encoding under new scheme.
519
520	* Rename "ascii" to "text" and add "encoding" test.
521
522	* Return a precise ("utf-16le" or "utf-16be") MIME charset for
523	  UTF-16.
524
525	* Fix error in comment caused by automatic indentation adding
526	  words!
527
5282008-11-06 10:35  Christos Zoulas <christos@astron.com>
529
530	* use memchr instead of strchr because the string
531	  might not be NUL terminated (Scott MacVicar)
532
5332008-11-03 07:31  Reuben Thomas <rrt@sc3d.org>
534
535	* Fix a printf with a non-literal format string.
536
537	* Fix formatting and punctuation of help for "--apple".
538
5392008-10-30 11:00  Reuben Thomas <rrt@sc3d.org>
540
541	* Correct words counts in comments of struct magic.
542
543	* Fix handle_annotation to allow both Apple and MIME types to be
544	  printed, and to return correct code if MIME type is
545	  printed (1, not 0) or if there's an error (-1 not 1).
546
547	* Fix output of charset for MIME type (precede with semi-colon;
548	  fixes Debian bug #501460).
549
550	* Fix potential attacks via conversion specifications in magic
551	  strings.
552
553	* Add a FIXME for Debian bug #488562 (magic files should be
554	  read in a defined order, by sorting the names).
555
5562008-10-18 16:45  Christos Zoulas <christos@astron.com>
557
558	* Added APPLE file creator/type
559
5602008-10-12 10:20  Christos Zoulas <christos@astron.com>
561
562	* Added CDF parsing
563
5642008-10-09 16:40  Christos Zoulas <christos@astron.com>
565
566	* filesystem and msdos patches (Joerg Jenderek)
567
5682008-10-09 13:20  Christos Zoulas <christos@astron.com>
569
570	* correct --exclude documentation issues: remove troff and fortran
571	  and rename "token" to "tokens". (Randy McMurchy)
572
5732008-10-01 10:30  Christos Zoulas <christos@astron.com>
574
575	* Read ~/.magic in addition to the default magic file not instead
576	  of, as documented in the man page.
577
5782008-09-10 21:30  Reuben Thomas  <rrt@sc3d.org>
579
580	* Comment out graphviz patterns, as they match too many files.
581
5822008-08-30 12:54  Christos Zoulas <christos@astron.com>
583
584	* Don't eat trailing \n in magic enties.
585
586	* Cast defines to allow compilation using a c++ compiler.
587
5882008-08-25 23:56  Reuben Thomas  <rrt@sc3d.org>
589
590	* Add text/x-lua MIME type for Lua scripts.
591
592	* Escape { in regex in graphviz patterns.
593
5942008-07-26 00:59  Reuben Thomas  <rrt@sc3d.org>
595
596	* Add MIME types for special files.
597
598	* Use access to give more accurate information for files that
599	  can't be opened.
600
601	* Add a TODO list.
602
6032008-07-02 11:15  Christos Zoulas  <christos@astron.com>
604
605	* add !:strength op to adjust magic strength (experimental)
606
6072008-06-16 21:41  Reuben Thomas  <rrt@sc3d.org>
608
609	* Fix automake error in configure.ac.
610
611	* Add MIME type for Psion Sketch files.
612
6132008-06-05 08:59  Christos Zoulas  <christos@astron.com>
614
615	* Don't print warnings about bad namesize in stripped
616	  binaries with PT_NOTE is still there, and the actual
617	  note is gone (Jakub Jelinek)
618
6192008-05-28 15:12  Robert Byrnes  <byrnes@wildpumpkin.net>
620
621	* magic/Magdir/elf:
622	  Note invalid byte order for little-endian SPARC32PLUS.
623	  Add SPARC V9 vendor extensions and memory model.
624
625	* src/elfclass.h:
626	  Pass target machine to doshn (for Solaris hardware capabilities).
627
628	* src/readelf.c (doshn):
629	  Add support for Solaris hardware/software capabilities.
630
631	* src/readelf.h:
632	  Ditto.
633
634	* src/vasprintf.c (dispatch):
635	  Add support for ll modifier.
636
6372008-05-16 10:25  Christos Zoulas  <christos@astron.com>
638
639	* Fix compiler warnings.
640
641	* remove stray printf, and fix a vprintf bug. (Martin Dorey)
642
6432008-05-06 00:13  Robert Byrnes  <byrnes@wildpumpkin.net>
644
645	* src/Makefile.am:
646	  Ensure that getopt_long and [v]asprintf are included in libmagic,
647	  as needed.
648
649	  Remove unnecessary EXTRA_DIST.
650
651	* src/Makefile.in:
652	  Rerun automake.
653
654	* src/vasprintf.c (dispatch):
655	  Fix variable precision bug: be sure to step past '*'.
656
657	* src/vasprintf.c (core):
658	  Remove unreachable code.
659
660	* src/apprentice.c (set_test_type):
661	  Add cast to avoid compiler warning.
662
6632008-04-22 23:45  Christos Zoulas  <christos@astron.com>
664
665	* Add magic submission guidelines (Abel Cheung)
666
667	* split msdos and windows magic (Abel Cheung)
668
6692008-04-04 11:00  Christos Zoulas  <christos@astron.com>
670
671	* >= <= is not supported, so fix the magic and warn about it.
672	  reported by: Thien-Thi Nguyen <ttn@gnuvola.org>
673
6742008-03-27 16:16  Robert Byrnes  <byrnes@wildpumpkin.net>
675
676	* src/readelf.c (donote):
677	  ELF core file command name/line bug fixes and enhancements:
678
679	  Try larger offsets first to avoid false matches
680	  from earlier data that happen to look like strings;
681	  this primarily affected SunOS 5.x 32-bit Intel core files.
682
683	  Add support for command line (instead of just short name)
684	  for SunOS 5.x.
685
686	  Add information about NT_PSINFO for SunOS 5.x.
687
688	  Only trim whitespace from end of command line.
689
6902007-02-11 01:36 Reuben Thomas <rrt@sc3d.org>
691
692	* Change strength of ! from MULT to 0, as it matches almost
693		  anything (Reuben Thomas)
694
695	* Debian fixes (Reuben Thomas)
696
6972007-02-11 00:17 Reuben Thomas <rrt@sc3d.org>
698
699	* Clarify UTF-8 BOM message (Reuben Thomas)
700
701	* Add HTML comment to token list in names.h
702
7032007-02-04 15:50 Christos Zoulas <christos@astron.com>
704
705	* Debian fixes (Reuben Thomas)
706
7072007-02-04 11:31 Christos Zoulas <christos@astron.com>
708
709	* !:mime annotations in magic files (Reuben Thomas)
710
7112007-01-29 15:35 Christos Zoulas <christos@astron.com>
712
713	* zero out utime/utimes structs (Gavin Atkinson)
714
7152007-01-26 13:45 Christos Zoulas <christos@astron.com>
716
717	* reduce writable data from Diego "Flameeyes" Petten
718
7192007-12-28 15:06 Christos Zoulas <christos@astron.com>
720
721	* strtof detection
722
723	* remove bogus regex magic that could cause a DoS
724
725	* better mismatch version message
726
7272007-12-27 11:35 Christos Zoulas <christos@astron.com>
728
729	* bring back some fixes from OpenBSD
730
731	* treat ELF dynamic objects as executables
732
733	* fix gcc warnings
734
7352007-12-01 19:55 Christos Zoulas <christos@astron.com>
736
737	* make sure we have zlib.h and libz to compile the builtin
738	  decompress code
739
7402007-10-28 20:48 Christos Zoulas <christos@astron.com>
741
742 	* float and double magic support (Behan Webster)
743
7442007-10-28 20:48 Christos Zoulas <christos@astron.com>
745
746	* Convert fortran to a soft test (Reuben Thomas)
747
7482007-10-23  5:25 Christos Zoulas <christos@astron.com>
749
750	* Add --with-filename, and --no-filename (Reuben Thomas)
751
7522007-10-23  3:59 Christos Zoulas <christos@astron.com>
753
754	* Rest of the mime split (Reuben Thomas)
755
756	* Make usage message generated from the flags so that
757	  they stay consistent (Reuben Thomas)
758
7592007-10-20  3:06 Christos Zoulas <christos@astron.com>
760
761	* typo in comment, missing ifdef QUICK, remove unneeded code
762		(Charles Longeau)
763
7642007-10-17  3:33 Christos Zoulas <christos@astron.com>
765
766	* Fix problem printing -\012 in some entries
767
768	* Separate magic type and encoding flags (Reuben Thomas)
769
7702007-10-09  3:55 Christos Zoulas <christos@astron.com>
771
772	* configure fix for int64 and strndup (Reuben Thomas)
773
7742007-09-26  4:45 Christos Zoulas <christos@astron.com>
775
776	* Add magic_descriptor() function.
777
778	* Fix regression in elf reading code where the core name was
779	  not being printed.
780
781	* Don't convert NUL's to spaces in {l,b}estring16 (Daniel Dawson)
782
7832007-08-19  6:30 Christos Zoulas <christos@astron.com>
784
785	* Make mime format consistent so that it can
786	  be easily parsed:
787	      mimetype [charset=character-set] [encoding=encoding-mime-type]
788
789	  Remove spurious extra text from some MIME type printouts
790	  (mostly in is_tar).
791
792	  Fix one case where -i produced nothing at all (for a 1-byte file,
793	  which is now classed as application/octet-stream).
794
795	  Remove 7/8bit classifications, since they were arbitrary
796	  and not based on the file data.
797
798	  This work was done by Reuben Thomas
799
8002007-05-24 10:00 Christos Zoulas <christos@astron.com>
801
802	* Fix another integer overflow (Colin Percival)
803
8042007-03-26 13:58 Christos Zoulas <christos@astron.com>
805
806	* make sure that all of struct magic_set is initialized appropriately
807	  (Brett)
808
8092007-03-25 17:44 Christos Zoulas <christos@astron.com>
810
811	* reset left bytes in the buffer (Dmitry V. Levin)
812
813	* compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS
814	  (Peter Avalos)
815
8162007-03-15 10:51 Christos Zoulas <christos@astron.com>
817
818	* fix fortran and nroff reversed tests (Dmitry V. Levin)
819
820	* fix exclude option (Dmitry V. Levin)
821
8222007-02-08 17:30 Christos Zoulas <christos@astron.com>
823
824	* fix integer underflow in file_printf which can lead to
825	  to exploitable heap overflow (Jean-Sebastien Guay-Lero)
826
8272007-02-05 11:35 Christos Zoulas <christos@astron.com>
828
829	* make socket/pipe reading more robust
830
8312007-01-25 16:01 Christos Zoulas <christos@astron.com>
832
833	* Centralize all the tests in file_buffer.
834
835	* Add exclude flag.
836
8372007-01-18 05:29 Anon Ymous <do@not.spam.me>
838
839	* Move the "type" detection code from parse() into its own table
840	  driven routine.  This avoids maintaining multiple lists in
841	  file.h.
842
843	* Add an optional conditional field (ust before the type field).
844	  This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is
845	  likely to go away.
846
8472007-01-16 23:24 Anon Ymous <do@not.spam.me>
848
849	* Fix an initialization bug in check_mem().
850
8512007-01-16 14:58 Anon Ymous <do@not.spam.me>
852
853	* Add a "default" type to print a message if nothing previously
854	  matched at that level or since the last default at that
855	  level.  This is useful for setting up switch-like statements.
856	  It can also be used to do if/else constructions without a
857	  redundant second test.
858
859	* Fix the "x" special case test so that one can test for that
860	  string with "=x".
861
862	* Allow "search" to search the entire buffer if the "/N"
863	  search count is missing.
864
865	* Make "regex" work!  It now starts its search at the
866	  specified offset and takes an (optional) "/N" line count to
867	  specify the search range; otherwise it searches to the end
868	  of the file.  The match is now grabbed correctly for format
869	  strings and the offset set to the end of the match.
870
871	* Add a "/s" flag to "regex" and "search" to set the offset to
872	  the start of the match.  By default the offset is set to the
873	  end of the match, as it is with other tests.  This is mostly
874	  useful for "regex".
875
876	* Make "search", "string" and "pstring" use the same
877	  file_strncmp() routine so that they support the same flags;
878	  "bestring16" and "lestring16" call the same routine, but
879	  with flags = 0.  Also add a "/C" flag (in analogy to "/c")
880	  to ignore the case on uppercase (lowercase) characters in
881	  the test string.
882
883	* Strict adherence to C style string escapes.  A warnings are
884	  printed when compiling.  Note: previously "\a" was
885	  incorrectly translated to 'a' instead of an <alert> (i.e.,
886	  BELL, typically 0x07).
887
888	* Make this compile with "-Wall -Wextra" and all the warning
889	  flags used with WARNS=4 in the NetBSD source.  Also make it
890	  pass lint.
891
892	* Many "cleanups" and hopefully not too many new bugs!
893
8942007-01-16 14:56 Anon Ymous <do@not.spam.me>
895
896	* make several more files compile with gcc warnings
897	  on and also make them pass lint.
898
8992007-01-16 14:54 Anon Ymous <do@not.spam.me>
900
901	* fix a puts()/putc() usage goof in file.c
902
903	* make file.c compile with gcc warnings and pass lint
904
9052006-12-11 16:49 Christos Zoulas <christos@astron.com>
906
907	* fix byteswapping issue
908
909	* report the number of bytes we tried to
910	  allocate when allocation fails
911
912	* add a few missed cases in the strength routine
913
9142006-12-08 16:32 Christos Zoulas <christos@astron.com>
915
916	* store and print the line number of the magic
917	  entry for debugging.
918
919	* if the magic entry did not print anything,
920	  don't treat it as a match
921
922	* change the magic strength algorithm to take
923	  into account the relationship op.
924
925	* fix a bug in search where we could accidentally
926	  return a match.
927
928	* propagate the error return from match to
929	  file_softmagic.
930
9312006-11-25 13:35 Christos Zoulas <christos@astron.com>
932
933	* Don't store the current offset in the magic
934	  struct, because it needs to be restored and
935	  it was not done properly all the time. Bug
936	  found by: Arkadiusz Miskiewicz
937
938	* Fix problem in the '\0' separator; and don't
939	  print it as an additional separator; print
940	  it as the only separator.
941
9422006-11-17 10:51 Christos Zoulas <christos@astron.com>
943
944	* Added a -0 option to print a '\0' separator
945	  Etienne Buira <etienne.buira@free.fr>
946
9472006-10-31 15:14 Christos Zoulas <christos@astron.com>
948
949	* Check offset before copying (Mike Frysinger)
950
951	* merge duplicated code
952
953	* add quad date support
954
955	* make sure that we nul terminate desc (Ryoji Kanai)
956
957	* don't process elf notes multiple times
958
959	* allow -z to report empty compressed files
960
961	* use calloc to initialize the ascii buffers (Jos van den Oever)
962
9632006-06-08 11:11 Christos Zoulas <christos@astron.com>
964
965	* QNX fixes (Mike Gorchak)
966
967	* Add quad support.
968
969	* FIFO checks (Dr. Werner Fink)
970
971	* Linux ELF fixes (Dr. Werner Fink)
972
973	* Magic format checks (Dr. Werner Fink)
974
975	* Magic format function improvent (Karl Chen)
976
9772006-05-03 11:11 Christos Zoulas <christos@astron.com>
978
979	* Pick up some elf changes and some constant fixes from SUSE
980
981	* Identify gnu tar vs. posix tar
982
983	* When keep going, don't print spurious newlines (Radek Vok�l)
984
9852006-04-01 12:02 Christos Zoulas <christos@astron.com>
986
987	* Use calloc instead of malloc (Mike Frysinger)
988
989	* Fix configure script to detect wctypes.h (Mike Frysinger)
990
9912006-03-02 16:06 Christos Zoulas <christos@astron.com>
992
993	* Print empty if the file is (Mike Frysinger)
994
995	* Don't try to read past the end of the buffer (Mike Frysinger)
996
997	* Sort magic entries by strength [experimental]
998
9992005-11-29 13:26 Christos Zoulas <christos@astron.com>
1000
1001	* Use iswprint() to convert the output string.
1002	    (Bastien Nocera)
1003
10042005-10-31 8:54 Christos Zoulas <christos@astron.com>
1005
1006	* Fix regression where the core info was not completely processed
1007	    (Radek Vok�l)
1008
10092005-10-20 11:15 Christos Zoulas <christos@astron.com>
1010
1011	* Middle Endian magic (Diomidis Spinellis)
1012
10132005-10-17 11:15 Christos Zoulas <christos@astron.com>
1014
1015	* Open with O_BINARY for CYGWIN (Corinna Vinschen)
1016
1017	* Don't close stdin (Arkadiusz Miskiewicz)
1018
1019	* Look for note sections in non executables.
1020
10212005-09-20 13:33 Christos Zoulas <christos@astron.com>
1022
1023	* Don't print SVR4 Style in core files multiple times
1024	    (Radek Vok�l)
1025
10262005-08-27 04:09 Christos Zoulas <christos@astron.com>
1027
1028	* Cygwin changes Corinna Vinschen
1029
10302005-08-18 09:53 Christos Zoulas <christos@astron.com>
1031
1032	* Remove erroreous mention of /etc/magic in the file man page
1033	  This is gentoo bug 101639. (Mike Frysinger)
1034
1035	* Cross-compile support and detection (Mike Frysinger)
1036
10372005-08-12 10:17 Christos Zoulas <christos@astron.com>
1038
1039	* Add -h flag and dereference symlinks if POSIXLY_CORRECT
1040	  is set.
1041
10422005-07-29 13:57 Christos Zoulas <christos@astron.com>
1043
1044	* Avoid search and regex buffer overflows (Kelledin)
1045
10462005-07-12 11:48 Christos Zoulas <christos@astron.com>
1047
1048	* Provide stub implementations for {v,}nsprintf() for older
1049	  OS's that don't have them.
1050	* Change mbstate_t autoconf detection macro from AC_MBSTATE_T
1051	  to AC_TYPE_MBSTATE_T.
1052
10532005-06-25 11:48 Christos Zoulas <christos@astron.com>
1054
1055	* Dynamically allocate the string buffers and make the
1056	  default read size 256K.
1057
10582005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de>
1059
1060	* Dragonfly ELF note support
1061
10622005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it>
1063
1064	* Avoid NULL pointer dereference in time conversion.
1065
10662005-03-06 00:00  Joerg Walter <jwalt@mail.garni.ch>
1067
1068	* Add indirect magic offset support, and search mode.
1069
10702005-01-12 00:00  Stepan Kasal  <kasal@ucw.cz>
1071
1072	* src/ascmagic.c (file_ascmagic): Fix three bugs about text files:
1073	  If a CRLF text file happens to have CR at offset HOWMANY - 1
1074	  (currently 0xffff), it should not be counted as CR line
1075	  terminator.
1076	  If a line has length exactly MAXLINELEN, it should not yet be
1077	  treated as a ``very long line'', as MAXLINELEN is ``longest sane
1078	  line length''.
1079	  With CRLF, the line length was not computed correctly, and even
1080	  lines of length MAXLINELEN - 1 were treated as ``very long''.
1081
10822004-12-07 14:15  Christos Zoulas  <christos@astron.com>
1083
1084	* bzip2 needs a lot of input buffer space on some files
1085	  before it can begin uncompressing. This makes file -z
1086	  fail on some bz2 files. Fix it by giving it a copy of
1087	  the file descriptor to read as much as it wants if we
1088	  have access to it. <christos@astron.com>
1089
10902004-11-24 12:39  Christos Zoulas  <christos@astron.com>
1091
1092	* Stack smash fix, and ELF more conservative reading.
1093	  Jakub Bogusz <qboosh@pld-linux.org>
1094
10952004-11-20 18:50  Christos Zoulas  <christos@astron.com>
1096
1097	* New FreeBSD version parsing code:
1098	  Jon Noack <noackjr@alumni.rice.edu>
1099
1100	* Hackish support for ucs16 strings <christos@astron.com>
1101
11022004-11-13 03:07  Christos Zoulas  <christos@astron.com>
1103
1104	* print the file name and line number in syntax errors.
1105
11062004 10-12 10:50  Christos Zoulas  <christos@astron.com>
1107
1108	* Fix stack overwriting on 0 length strings: Tim Waugh
1109	    <twaugh@redhat.com> Ned Ludd <solar@gentoo.org>
1110
11112004-09-27 11:30  Christos Zoulas  <christos@astron.com>
1112
1113	* Remove 3rd and 4th copyright clause; approved by Ian Darwin.
1114
1115	* Fix small memory leaks; caught by: Tamas Sarlos
1116	    <stamas@csillag.ilab.sztaki.hu>
1117
11182004-07-24 16:33  Christos Zoulas  <christos@astron.com>
1119
1120	* magic.mime update Danny Milosavljevic <danny.milo@gmx.net>
1121
1122	* FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com>
1123
1124	* utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com>
1125
1126  	* errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org>
1127
11282004-04-12 10:55  Christos Zoulas  <christos@astron.com>
1129
1130	* make sure that magic formats match magic types during compilation
1131
1132	* fix broken sgi magic file
1133
11342004-04-06 20:36  Christos Zoulas  <christos@astron.com>
1135
1136	* detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com>
1137
1138	* magic fixes
1139
11402004-03-22 15:25  Christos Zoulas  <christos@astron.com>
1141
1142	* Lots of mime fixes
1143	  (Joerg Ostertag) <ostertag@rechengilde.de>
1144
1145	* FreeBSD ELF version handling
1146	  (Edwin Groothuis) <edwin@mavetju.org>
1147
1148	* correct cleanup in all cases; don't just close the file.
1149	  (Christos Zoulas) <christos@astron.com>
1150
1151	* add gettext message catalogue support
1152	  (Michael Piefel) <piefel@debian.org>
1153
1154	* better printout for unreadable files
1155	  (Michael Piefel) <piefel@debian.org>
1156
1157	* compensate for missing MAXPATHLEN
1158	  (Michael Piefel) <piefel@debian.org>
1159
1160	* add wide character string length computation
1161	  (Michael Piefel) <piefel@debian.org>
1162
1163	* Avoid infinite loops caused by bad elf alignments
1164	  or name and description note sizes. Reported by
1165	  (Mikael Magnusson) <mmikael@comhem.se>
1166
11672004-03-09 13:55  Christos Zoulas  <christos@astron.com>
1168
1169	* Fix possible memory leak on error and add missing regfree
1170	  (Dmitry V. Levin) <ldv@altlinux.org>
1171
11722003-12-23 12:12  Christos Zoulas  <christos@astron.com>
1173
1174	* fix -k flag (Maciej W. Rozycki)
1175
11762003-11-18 14:10  Christos Zoulas  <christos@astron.com>
1177
1178	* Try to give us much info as possible on corrupt elf files.
1179	  (Willy Tarreau) <willy@w.ods.org>
1180	* Updated python bindings (Brett Funderburg)
1181	   <brettf@deepfile.com>
1182
11832003-11-11 15:03  Christos Zoulas  <christos@astron.com>
1184
1185	* Include file.h first, because it includes config.h
1186	  breaks largefile test macros otherwise.
1187	  (Paul Eggert <eggert@CS.UCLA.EDU> via
1188	   Lars Hecking <lhecking@nmrc.ie>)
1189
11902003-10-14 21:39  Christos Zoulas  <christos@astron.com>
1191
1192	* Python bindings (Brett Funderburg) <brettf@deepfile.com>
1193	* Don't lookup past the end of the buffer
1194	  (Chad Hanson) <chanson@tcs-sec.com>
1195	* Add MAGIC_ERROR and api on magic_errno()
1196
11972003-10-08 12:40  Christos Zoulas  <christos@astron.com>
1198
1199	* handle error conditions from compile as fatal
1200	  (Antti Kantee) <pooka@netbsd.org>
1201	* handle magic filename parsing sanely
1202	* more magic fixes.
1203	* fix a memory leak (Illes Marton) <illes.marton@balabit.hu>
1204	* describe magic file handling
1205	  (Bryan Henderson) <bryanh@giraffe-data.com>
1206
12072003-09-12 15:09  Christos Zoulas  <christos@astron.com>
1208
1209	* update magic files.
1210	* remove largefile support from file.h; it breaks things on most OS's
1211
12122003-08-10 10:25  Christos Zoulas  <christos@astron.com>
1213
1214	* fix unmapping'ing of mmaped files.
1215
12162003-07-10 12:03  Christos Zoulas  <christos@astron.com>
1217
1218	* don't exit with -1 on error; always exit 1 (Marty Leisner)
1219	* restore utimes code.
1220
12212003-06-10 17:03  Christos Zoulas  <christos@astron.com>
1222
1223	* make sure we don't access uninitialized memory.
1224	* pass lint
1225	* #ifdef __cplusplus in magic.h
1226
12272003-05-25 19:23  Christos Zoulas  <christos@astron.com>
1228
1229	* rename cvs magic file to revision to deal with
1230	  case insensitive filesystems.
1231
12322003-05-23 17:03  Christos Zoulas  <christos@astron.com>
1233
1234	* documentation fixes from Michael Piefel <piefel@debian.org>
1235	* magic fixes (various)
1236	* revert basename magic in .mgc name determination
1237	* buffer protection in uncompress,
1238	  signness issues,
1239	  close files
1240	  Maciej W. Rozycki <macro@ds2.pg.gda.pl
1241
12422003-04-21 20:12  Christos Zoulas  <christos@astron.com>
1243
1244	* fix zsh magic
1245
12462003-04-04 16:59  Christos Zoulas  <christos@astron.com>
1247
1248	* fix operand sort order in string.
1249
12502003-04-02 17:30  Christos Zoulas  <christos@astron.com>
1251
1252	* cleanup namespace in magic.h
1253
12542003-04-02 13:50  Christos Zoulas  <christos@astron.com>
1255
1256	* Magic additions (Alex Ott)
1257	* Fix bug that broke VPATH compilation (Peter Breitenlohner)
1258
12592003-03-28 16:03  Christos Zoulas  <christos@astron.com>
1260
1261	* remove packed attribute from magic struct.
1262	* make the magic struct properly aligned.
1263	* bump version number of compiled files to 2.
1264
12652003-03-27 13:10  Christos Zoulas  <christos@astron.com>
1266
1267	* separate tar detection and run it before softmagic.
1268	* fix reversed symlink test.
1269	* fix version printing.
1270	* make separator a string instead of a char.
1271	* update manual page and sort options.
1272
12732003-03-26 11:00  Christos Zoulas  <christos@astron.com>
1274
1275	* Pass lint
1276	* make NULL in magic_file mean stdin
1277	* Fix "-" argument to file to pass NULL to magic_file
1278	* avoid pointer casts by using memcpy
1279	* rename magic_buf -> magic_buffer
1280	* keep only the first error
1281	* manual page: new sentence, new line
1282	* fix typo in api function (magic_buf -> magic_buffer)
1283