xref: /freebsd/contrib/file/ChangeLog (revision eb69d1f144a6fcc765d1b9d44a5ae8082353e70b)
12017-09-02  11:53  Christos Zoulas <christos@zoulas.com>
2
3	* release 5.32
4
52017-08-28  16:37  Christos Zoulas <christos@zoulas.com>
6
7	* Always reset state in {file,buffer}_apprentice (Krzysztof Wilczynski)
8
92017-08-27  03:55  Christos Zoulas <christos@zoulas.com>
10
11	* Fix always true condition (Thomas Jarosch)
12
132017-05-24  17:30  Christos Zoulas <christos@zoulas.com>
14
15	* pickier parsing of numeric values in magic files.
16
172017-05-23  17:55  Christos Zoulas <christos@zoulas.com>
18
19	* PR/615 add magic_getflags()
20
212017-05-23  13:55  Christos Zoulas <christos@zoulas.com>
22
23	* release 5.31
24
252017-03-17  20:32  Christos Zoulas <christos@zoulas.com>
26
27	* remove trailing spaces from magic files
28	* refactor is_tar
29	* better bounds checks for cdf
30
312017-02-10  12:24  Christos Zoulas <christos@zoulas.com>
32
33	* release 5.30
34
352017-02-07  23:27  Christos Zoulas <christos@zoulas.com>
36
37	* If we exceeded the offset in a search return no match
38	  (Christoph Biedl)
39	* Be more lenient on corrupt CDF files (Christoph Biedl)
40
412017-02-04  16:46  Christos Zoulas <christos@zoulas.com>
42
43	* pacify ubsan sign extension (oss-fuzz/524)
44
452017-02-01  12:42  Christos Zoulas <christos@zoulas.com>
46
47	* off by one in cdf parsing (PR/593)
48	* report debugging sections in elf (PR/591)
49
502016-11-06  10:52  Christos Zoulas <christos@zoulas.com>
51
52	* Allow @@@ in extensions
53	* Add missing overflow check in der magic (Jonas Wagner)
54
552016-10-25  10:40  Christos Zoulas <christos@zoulas.com>
56
57	* release 5.29
58
592016-10-24  11:20  Christos Zoulas <christos@zoulas.com>
60
61	* der getlength overflow (Jonas Wagner)
62	* multiple magic file load failure (Christoph Biedl)
63
642016-10-17  11:26  Christos Zoulas <christos@zoulas.com>
65
66	* CDF parsing improvements (Guy Helmer)
67
682016-07-20   7:26  Christos Zoulas <christos@zoulas.com>
69
70	* Add support for signed indirect offsets
71
722016-07-18   7:41  Christos Zoulas <christos@zoulas.com>
73
74	* cat /dev/null | file - should print empty (Christoph Biedl)
75
762016-07-05  15:20  Christos Zoulas <christos@zoulas.com>
77
78	* Bump string size from 64 to 96.
79
802016-06-13  20:20  Christos Zoulas <christos@zoulas.com>
81
82	* PR/556: Fix separators on annotations.
83
842016-06-13  19:40  Christos Zoulas <christos@zoulas.com>
85
86	* release 5.28
87	* fix leak on allocation failure
88
892016-06-01   1:20  Christos Zoulas <christos@zoulas.com>
90
91	* PR/555: Avoid overflow for offset > nbytes
92	* PR/550: Segv on DER parsing:
93	    - use the correct variable for length
94	    - set offset to 0 on failure.
95
962016-05-13  12:00  Christos Zoulas <christos@zoulas.com>
97
98	* release 5.27
99
1002016-04-18   9:35  Christos Zoulas <christos@zoulas.com>
101
102	* Errors comparing DER entries or computing offsets
103	  are just indications of malformed non-DER files.
104	  Don't print them.
105	* Offset comparison was off-by-one.
106	* Fix compression code (Werner Fink)
107	* Put new bytes constant in the right file (not the generated one)
108
1092016-04-16  18:34  Christos Zoulas <christos@zoulas.com>
110
111	* release 5.26
112
1132016-03-31  13:50  Christos Zoulas <christos@zoulas.com>
114
115	* make the number of bytes read from files configurable.
116
1172016-03-21  13:40  Christos Zoulas <christos@zoulas.com>
118
119	* Add bounds checks for DER code (discovered by Thomas Jarosch)
120	* Change indirect recursion limit to indirect use count and
121	  bump from 15 to 50 to prevent abuse.
122
1232016-03-13  20:39  Christos Zoulas <christos@zoulas.com>
124
125	* Add -00 which prints filename\0description\0
126
1272016-03-01  13:28  Christos Zoulas <christos@zoulas.com>
128
129	* Fix ID3 indirect parsing
130
1312016-01-19  10:18  Christos Zoulas <christos@zoulas.com>
132
133	* add DER parsing capability
134
1352015-11-13  10:35  Christos Zoulas <christos@zoulas.com>
136
137	* provide dprintf(3) for the OS's that don't have it.
138
1392015-11-11  16:25  Christos Zoulas <christos@zoulas.com>
140
141	* redo the compression code report decompression errors
142
1432015-11-10  23:25  Christos Zoulas <christos@zoulas.com>
144
145	* REG_STARTEND code is not working as expected, delete it.
146
1472015-11-09  16:05  Christos Zoulas <christos@zoulas.com>
148
149	* Add zlib support if we have it.
150
1512015-11-05  11:22  Christos Zoulas <christos@zoulas.com>
152
153	* PR/492: compression forking was broken with magic_buffer.
154
1552015-09-16   9:50  Christos Zoulas <christos@zoulas.com>
156
157	* release 5.25
158
1592015-09-11  13:25  Christos Zoulas <christos@zoulas.com>
160
161	* add a limit to the length of regex searches
162
1632015-09-08   9:50  Christos Zoulas <christos@zoulas.com>
164
165	* fix problems with --parameter (Christoph Biedl)
166
1672015-07-11  10:35  Christos Zoulas <christos@zoulas.com>
168
169	* Windows fixes PR/466 (Jason Hood)
170
1712015-07-09  10:35  Christos Zoulas <christos@zoulas.com>
172
173	* release 5.24
174
1752015-06-11   8:52  Christos Zoulas <christos@zoulas.com>
176
177	* redo long option encoding to fix off-by-one in 5.23
178
1792015-06-10  13:50  Christos Zoulas <christos@zoulas.com>
180
181	* release 5.23
182
1832015-06-09  16:10  Christos Zoulas <christos@zoulas.com>
184
185	* Fix issue with regex range for magic with offset
186	* Always return true from mget with USE (success to mget not match
187	  indication). Fixes mime evaluation after USE magic
188	* PR/459: Don't insert magic entries to the list if there are parsing
189	  errors for them.
190
1912015-06-03  16:00  Christos Zoulas <christos@zoulas.com>
192
193	* PR/455: Add utf-7 encoding
194
1952015-06-03  14:30  Christos Zoulas <christos@zoulas.com>
196
197	* PR/455: Implement -Z, look inside, but don't report on compression
198	* PR/454: Fix allocation error on bad magic.
199
2002015-05-29  10:30  Christos Zoulas <christos@zoulas.com>
201
202	* handle MAGIC_CONTINUE everywhere, not just in softmagic
203
2042015-05-21  14:30  Christos Zoulas <christos@zoulas.com>
205
206	* don't print descriptions for NAME types when mime.
207
2082015-04-09  15:59  Christos Zoulas <christos@zoulas.com>
209
210	* Add --extension to list the known extensions for this file type
211	  Idea by Andrew J Roazen
212
2132015-02-14  12:23  Christos Zoulas <christos@zoulas.com>
214
215	* Bump file search buffer size to 1M.
216
2172015-01-09  14:35  Christos Zoulas <christos@zoulas.com>
218
219	* Fix multiple issues with date formats reported by Christoph Biedl:
220		- T_LOCAL meaning was reversed
221		- Arithmetic did not work
222	  Also stop adjusting daylight savings for gmt printing.
223
2242015-01-05  13:00  Christos Zoulas <christos@zoulas.com>
225
226	* PR/411: Fix memory corruption from corrupt cdf file.
227
2282015-01-02  15:15  Christos Zoulas <christos@zoulas.com>
229
230	* release 5.22
231
2322015-01-01  12:01  Christos Zoulas <christos@zoulas.com>
233
234	* add indirect relative for TIFF/Exif
235
2362014-12-16  18:10  Christos Zoulas <christos@zoulas.com>
237
238	* restructure elf note printing to avoid repeated messages
239	* add note limit, suggested by Alexander Cherepanov
240
2412014-12-16  16:53  Christos Zoulas <christos@zoulas.com>
242
243	* Bail out on partial pread()'s (Alexander Cherepanov)
244	* Fix incorrect bounds check in file_printable (Alexander Cherepanov)
245
2462014-12-11  20:01  Christos Zoulas <christos@zoulas.com>
247
248	* PR/405: ignore SIGPIPE from uncompress programs
249	* change printable -> file_printable and use it in
250	  more places for safety
251	* in ELF, instead of "(uses dynamic libraries)" when PT_INTERP
252	  is present print the interpreter name.
253
2542014-12-10  20:01  Christos Zoulas <christos@zoulas.com>
255
256	* release 5.21
257
2582014-11-27  18:40  Christos Zoulas <christos@zoulas.com>
259
260	* Allow setting more parameters from the command line.
261	* Split name/use and indirect magic recursion limits.
262
2632014-11-27  11:12  Christos Zoulas <christos@zoulas.com>
264
265	* Adjust ELF parameters and the default recursion
266	  level.
267	* Allow setting the recursion level dynamically.
268
2692014-11-24   8:55  Christos Zoulas <christos@zoulas.com>
270
271	* The following fixes resulted from Thomas Jarosch's fuzzing
272	  tests that revealed severe performance issues on pathological
273	  input:
274	    - limit number of elf program and sections processing
275	    - abort elf note processing quickly
276	    - reduce the number of recursion levels from 20 to 10
277	    - preserve error messages in indirect magic handling
278
279	This is tracked as CVE-2014-8116 and CVE-2014-8117
280
2812014-11-12  10:30  Christos Zoulas <christos@zoulas.com>
282
283	* fix bogus free in the user buffer case.
284
2852014-11-11  12:35  Christos Zoulas <christos@zoulas.com>
286
287	* fix out of bounds read for pascal strings
288	* fix memory leak (not freeing the head of each mlist)
289
2902014-11-07  10:25  Christos Zoulas <christos@zoulas.com>
291
292	* When printing strings from a file, convert them to printable
293	  on a byte by byte basis, so that we don't get issues with
294	  locale's trying to interpret random byte streams as UTF-8 and
295	  having printf error out with EILSEQ.
296
2972014-10-17  11:48  Christos Zoulas <christos@zoulas.com>
298
299	* fix bounds in note reading (Francisco Alonso / Red Hat)
300
3012014-10-11  15:02  Christos Zoulas <christos@zoulas.com>
302
303	* fix autoconf glue for setlocale and locale_t; some OS's
304	  have locale_t in xlocale.h
305
3062014-10-10  15:01  Christos Zoulas <christos@zoulas.com>
307
308	* release 5.20
309
3102014-08-17  10:01  Christos Zoulas <christos@zoulas.com>
311
312	* recognize encrypted CDF documents
313
3142014-08-04   9:18  Christos Zoulas <christos@zoulas.com>
315
316	* add magic_load_buffers from Brooks Davis
317
3182014-07-24  16:40  Christos Zoulas <christos@zoulas.com>
319
320	* add thumbs.db support
321
3222014-06-12  12:28  Christos Zoulas <christos@zoulas.com>
323
324	* release 5.19
325
3262014-06-09   9:04  Christos Zoulas <christos@zoulas.com>
327
328	* Misc buffer overruns and missing buffer size tests in cdf parsing
329	  (Francisco Alonso, Jan Kaluza)
330
3312014-06-02  14:50  Christos Zoulas <christos@zoulas.com>
332
333	* Enforce limit of 8K on regex searches that have no limits
334	* Allow the l modifier for regex to mean line count. Default
335	  to byte count. If line count is specified, assume a max
336	  of 80 characters per line to limit the byte count.
337	* Don't allow conversions to be used for dates, allowing
338	  the mask field to be used as an offset.
339
3402014-05-30  12:51  Christos Zoulas <christos@zoulas.com>
341
342	* Make the range operator limit the length of the
343	  regex search.
344
3452014-05-14  19:23  Christos Zoulas <christos@zoulas.com>
346
347	* PR/347: Windows fixes
348	* PR/352: Hangul word processor recognition
349	* PR/354: Encoding irregularities in text files
350
3512014-05-06  6:12  Christos Zoulas <christos@zoulas.com>
352
353	* Fix uninitialized title in CDF files (Jan Kaluza)
354
3552014-05-04  14:55  Christos Zoulas <christos@zoulas.com>
356
357	* PR/351: Fix compilation of empty files
358
3592014-04-30  17:39  Christos Zoulas <christos@zoulas.com>
360
361	* Fix integer formats: We don't specify 'l' or
362	  'h' and 'hh' specifiers anymore, only 'll' for
363	  quads and nothing for the rest. This is so that
364	  magic writing is simpler.
365
3662014-04-01  15:25  Christos Zoulas <christos@zoulas.com>
367
368	* PR/341: Jan Kaluza, fix memory leak
369	* PR/342: Jan Kaluza, fix out of bounds read
370
3712014-03-28  15:25  Christos Zoulas <christos@zoulas.com>
372
373	* Fix issue with long formats not matching fmtcheck
374
3752014-03-26  11:25  Christos Zoulas <christos@zoulas.com>
376
377	* release 5.18
378
3792014-03-15  17:45  Christos Zoulas <christos@zoulas.com>
380
381	* add fmtcheck(3) for those who don't have it
382
3832014-03-14  15:12  Christos Zoulas <christos@zoulas.com>
384
385	* prevent mime entries from being attached to magic
386	  entries with no descriptions
387
388	* adjust magic strength for regex type
389
390	* remove superfluous ascmagic with encoding test
391
3922014-03-06  12:01  Christos Zoulas <christos@zoulas.com>
393
394	* fix regression fix echo -ne "\012\013\014" | file -i -
395	  which printed "binary" instead of "application/octet-stream"
396
397	* add size_t overflow check for magic file size
398
3992014-02-27  16:01  Christos Zoulas <christos@zoulas.com>
400
401	* experimental support for matching with CFD CLSID
402
4032014-02-18  13:04  Kimmo Suominen (kimmo@suominen.com)
404
405	* Cache old LC_CTYPE locale before setting it to "C", so
406	  we can use it to restore LC_CTYPE instead of asking
407	  setlocale() to scan the environment variables.
408
4092014-02-12  18:21  Christos Zoulas <christos@zoulas.com>
410
411	* Count recursion levels through indirect magic
412
4132014-02-11  10:40  Christos Zoulas <christos@zoulas.com>
414
415	* Prevent infinite recursion on files with indirect offsets of 0
416
4172014-01-30  21:00  Christos Zoulas <christos@zoulas.com>
418
419	* Add -E flag that makes file print filesystem errors to stderr
420	  and exit.
421
4222014-01-08  17:20  Christos Zoulas <christos@zoulas.com>
423
424	* mime printing could print results from multiple magic entries
425	  if there were multiple matches.
426	* in some cases overflow was not detected when computing offsets
427	  in softmagic.
428
4292013-12-05  12:00  Christos Zoulas <christos@zoulas.com>
430
431	* use strcasestr() to for cdf strings
432	* reset to the "C" locale while doing regex operations, or case
433	  insensitive comparisons; this is provisional
434
4352013-11-19  20:10  Christos Zoulas <christos@zoulas.com>
436
437	* always leave magic file loaded, don't unload for magic_check, etc.
438	* fix default encoding to binary instead of unknown which broke recently
439	* handle empty and one byte files, less specially so that
440	  --mime-encoding does not break completely.
441		`
4422013-11-06  14:40  Christos Zoulas <christos@zoulas.com>
443
444	* fix erroneous non-zero exit code from non-existent file and message
445
4462013-10-29  14:25  Christos Zoulas <christos@zoulas.com>
447
448	* add CDF MSI file detection (Guy Helmer)
449
4502013-09-03  11:56  Christos Zoulas <christos@zoulas.com>
451
452	* Don't mix errors and regular output if there was an error
453	* in magic_descriptor() don't close the file and try to restore
454	  its position
455
4562013-05-30  17:25  Christos Zoulas <christos@zoulas.com>
457
458	* Don't treat magic as an error if offset was past EOF (Christoph Biedl)
459
4602013-05-28  17:25  Christos Zoulas <christos@zoulas.com>
461
462	* Fix spacing issues in softmagic and elf (Jan Kaluza)
463
4642013-05-02  18:00  Christos Zoulas <christos@zoulas.com>
465
466	* Fix segmentation fault with multiple magic_load commands.
467
4682013-04-22  11:20  Christos Zoulas <christos@zoulas.com>
469
470	* The way "default" was implemented was not very useful
471	  because the "if something was printed at that level"
472	  was not easily controlled by the user, and the format
473	  was bound to a string which is too restrictive. Add
474	  a "clear" for that level keyword and make "default"
475	  void. This way one can do:
476
477		>>13	clear	x
478		>>13	lelong	1	foo
479		>>13	lelong	2	bar
480		>>13	default	x
481		>>>13	lelong	x	unknown %x
482
4832013-03-25  13:20  Christos Zoulas <christos@zoulas.com>
484
485	* disallow strength setting in "name" entries
486
4872013-03-06  21:24  Christos Zoulas <christos@zoulas.com>
488
489	* fix recursive magic separator printing
490
4912013-02-26  19:28  Christos Zoulas <christos@zoulas.com>
492
493	* limit recursion level for mget
494	* fix pread() related breakage in cdf
495	* handle offsets properly in recursive "use"
496
4972013-02-18  10:39  Christos Zoulas <christos@zoulas.com>
498
499	* add elf reading of debug info to determine if file is stripped
500	  (Jan Kaluza)
501	* use pread()
502
5032013-01-25  18:05  Christos Zoulas <christos@zoulas.com>
504
505	* change mime description size from 64 to 80 to accommodate OOXML.
506
5072013-01-11  14:50  Christos Zoulas <christos@zoulas.com>
508
509	* Warn about inconsistent continuation levels.
510	* Change fsmagic to add a space after it prints.
511
5122013-01-10  21:00  Christos Zoulas <christos@zoulas.com>
513
514	* Make getline public so that file can link against it.
515	  Perhaps it is better to rename it, or hide it differently.
516	  Fixes builds on platforms that do not provide it.
517
5182013-01-07  16:30  Christos Zoulas <christos@zoulas.com>
519
520	* Add SuS d{,1,2,4,8}, u{,1,2,4,8} and document
521	  what long, int, short, etc is (Guy Harris)
522
5232013-01-06  11:20  Christos Zoulas <christos@zoulas.com>
524
525	* add magic_version function and constant
526	* Redo memory allocation and de-allocation.
527	  (prevents double frees on non mmap platforms)
528	* Fix bug with name/use having to do with passing
529	  found state from the parent to the child and back.
530
5312012-12-19   8:47  Christos Zoulas <christos@zoulas.com>
532
533	* Only print elf capabilities for archs we know (Jan Kaluza)
534
5352012-10-30  19:14  Christos Zoulas <christos@zoulas.com>
536
537	* Add "name" and "use" file types in order to look
538	  inside mach-o files.
539
5402012-09-06  10:40  Christos Zoulas <christos@zoulas.com>
541
542	* make --version exit 0 (Matthew Schultz)
543	* add string/T (Jan Kaluza)
544
5452012-08-09  2:15  Christos Zoulas <christos@zoulas.com>
546
547	* add z and t modifiers for our own vasprintf
548	* search for $HOME/.magic.mgc if it is there first
549	* fix reads from a pipe, and preserve errno
550
5512012-05-15  13:12  Christos Zoulas <christos@zoulas.com>
552
553	* use ctime_r, asctime_r
554
5552012-04-06  17:18  Christos Zoulas <christos@zoulas.com>
556
557	* Fixes for indirect offsets to handle apple disk formats
558
5592012-04-03  18:26  Christos Zoulas <christos@zoulas.com>
560
561	* Add windows date field types
562	* More info for windows shortcuts (incomplete)
563
5642012-02-20  17:33  Christos Zoulas <christos@zoulas.com>
565
566	* Fix CDF parsing issues found by CERT's fuzzing tool (Will Dormann)
567
5682011-12-15  12:17  Chris Metcalf <cmetcalf@tilera.com>
569
570	* Support Tilera architectures (tile64, tilepro, tilegx).
571
5722011-12-16  16:33  Reuben Thomas <rrt@sc3d.org>
573
574	* Add magic for /usr/bin/env Perl scripts
575	* Weaken generic script magic to avoid clashing with
576	language-specific magic.
577
5782011-12-08  13:37  Reuben Thomas <rrt@sc3d.org>
579
580	* Simplify if (p) free(p) to free(p).
581
5822011-12-08  13:07  Reuben Thomas <rrt@sc3d.org>
583
584	* Remove hardwired token finding (names.h), turning it into soft
585	magic. Patterns are either anchored regexs or search/8192. English
586	language detection and PL/1 detection have been removed as they
587	were too fragile. -e tokens is still accepted for backwards
588	compatibility.
589	* Move 3ds patterns (which are commented out anyway) into autodesk
590	(they were, oddly, in c-lang).
591
5922011-12-06  00:16  Reuben Thomas <rrt@sc3d.org>
593
594	* Tweak strength of generic hash-bang detectors to be less than
595	specific ones.
596	* Make an inconsistent description of Python scripts consistent.
597
5982011-12-05  23:58  Reuben Thomas <rrt@sc3d.org>
599
600	* Fix minor error in file(1).
601
6022011-11-05  00:00  Reuben Thomas <rrt@sc3d.org>
603
604	* Fix issue #150 (I hope).
605
6062011-09-22  12:57  Christos Zoulas <christos@zoulas.com>
607
608	* Python3 binding fixes from Kelly Anderson
609
6102011-09-20  11:32  Christos Zoulas <christos@zoulas.com>
611
612	* If a string type magic entry is marked as text or binary
613	  only match text files against text entries and binary
614	  files against binary entries.
615
6162011-09-01  12:12  Christos Zoulas <christos@zoulas.com>
617
618	* Don't wait for any subprocess, just the one we forked.
619
6202011-08-26  16:40  Christos Zoulas <christos@zoulas.com>
621
622	* If the application name is not set in a cdf file, try to see
623	  if it has a directory with the application name on it.
624
6252011-08-17  14:32  Christos Zoulas <christos@zoulas.com>
626
627	* Fix ELF lseek(2) madness. Inspired by PR/134 by Jan Kaluza
628
6292011-08-14  09:03  Christos Zoulas <christos@zoulas.com>
630
631	* Don't use variable string formats.
632
6332011-07-12  12:32  Reuben Thomas <rrt@sc3d.org>
634
635	* Fix detection of Zip files (Mantis #128).
636	* Make some minor improvements to file(1).
637	* Rename MIME types for filesystem objects for consistency with
638	  xdg-utils. Typically this means that application/x-foo becomes
639	  inode/foo, but some names also change slightly, e.g.
640	  application/x-character-device becomes inode/chardevice.
641
6422011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
643
644	* fix mingw compilation (Abradoks)
645
6462011-05-10  20:57  Christos Zoulas <christos@zoulas.com>
647
648	* remove patchlevel.h
649	* Fix read past allocated memory caused by double-incrementing
650	  a pointer in a loop (reported by Roberto Maar)
651
6522011-03-30  15:45  Christos Zoulas <christos@zoulas.com>
653
654	* Fix cdf string buffer setting (Sven Anders)
655
6562011-03-20  16:35  Christos Zoulas <christos@zoulas.com>
657
658	* Eliminate MAXPATHLEN and use dynamic allocation for
659	  path and file buffers.
660
6612011-03-15  18:15  Christos Zoulas <christos@zoulas.com>
662
663	* binary tests on magic entries with masks could spuriously
664	  get converted to ascii.
665
6662011-03-12  18:06  Reuben Thomas <rrt@sc3d.org>
667
668	* Improve file.man (remove BUGS, present email addresses consistently).
669
6702011-03-07  19:38  Christos Zoulas <christos@zoulas.com>
671
672	* add lrzip support (from Ville Skytta)
673
6742011-02-10  16:36  Christos Zoulas <christos@zoulas.com>
675
676	* fix CDF bounds checking (Guy Helmer)
677
6782011-02-10  12:03  Christos Zoulas <christos@zoulas.com>
679
680	* add cdf_ctime() that prints a meaningful error when time cannot
681	  be converted.
682
6832011-02-02  20:40  Christos Zoulas <christos@zoulas.com>
684
685	* help and version output to stdout.
686
687	* When matching softmagic for ascii files, don't just print
688	  the softmagic classification, keep going and print the
689	  text classification too. This fixes broken troff files when
690	  we moved them from keyword recognition to softmagic
691	  (they stopped printing "with CRLF" etc.)
692	  Reported by Doug McIlroy.
693
6942011-01-16  19:31  Reuben Thomas <rrt@sc3d.org>
695
696	* Fix two potential buffer overruns in apprentice_list.
697
6982011-01-14  22:33  Reuben Thomas <rrt@sc3d.org>
699
700	* New Python binding in pure Python.
701	* Update libmagic(3).
702
7032011-01-06  21:40  Reuben Thomas <rrt@sc3d.org>
704
705	* Fix Python bindings (including recent Python 3 compatibility
706	  update).
707
7082011-01-04  18:43  Reuben Thomas <rrt@sc3d.org>
709
710	* magic/Makefile.am: make it easier to recover from magic build failures.
711	* Fix pstring length specifier parsing to avoid generating invalid
712	  magic files.
713	* Add pstring length "J" (for "JPEG") to specify that the length
714	  include itself.
715	* Fix JPEG comment parsing at last using pstring/HJ!
716	* Ignore section 5 man pages in doc/.cvsignore.
717
7182010-12-22  13:12  Christos Zoulas <christos@zoulas.com>
719
720	* Add pstring/BHhLl to specify the type of the length of pascal
721	  strings.
722
7232010-11-26  18:39  Reuben Thomas <rrt@sc3d.org>
724
725	* Fix "-e soft": it was ignored when softmagic was called
726	  during asciimagic.
727	* Improve comments and use "unsigned char" in tar.h/is_tar.c.
728
7292010-11-05  17:26  Reuben Thomas <rrt@sc3d.org>
730
731	* Make bug reporting addresses more visible.
732
7332010-11-01  18:35  Reuben Thomas <rrt@sc3d.org>
734
735	* Add tcl magic from Gustaf Neumann
736
7372010-10-24  10:42  Christos Zoulas <christos@zoulas.com>
738
739	* Fix the whitespace comparing code (Christopher Chittleborough)
740
7412010-10-06  21:05  Christos Zoulas <christos@zoulas.com>
742
743	* allow string/t to work (Jan Kaluza)
744
7452010-09-20  22:11  Reuben Thomas <rrt@sc3d.org>
746
747	* Apply some patches from Ubuntu and Fedora.
748
7492010-09-20  21:16  Reuben Thomas <rrt@sc3d.org>
750
751	* Apply all patches from Debian package 5.04-6 which have not
752	  already been applied and are not Debian-specific.
753
7542010-09-20  15:24  Reuben Thomas <rrt@sc3d.org>
755
756	* Minor security fix to softmagic.c (don't use untrusted
757	  string as printf format).
758
7592010-07-21  12:20  Christos Zoulas <christos@zoulas.com>
760
761	* MINGW32 portability from LRN
762
763	* Don't warn about escaping magic regex chars when we are in a regex.
764
7652010-07-19  10:55  Christos Zoulas <christos@zoulas.com>
766
767	* Only try to print prpsinfo for core files. (Jan Kaluza)
768
7692010-04-22  12:55  Christos Zoulas <christos@zoulas.com>
770
771	* Try more elf offsets for Debian core files.  (Arnaud Giersch)
772
7732010-02-20  15:18  Reuben Thomas <rrt@sc3d.org>
774
775	* Clarify which sort of CDF we mean.
776
7772010-02-14  22:58  Reuben Thomas <rrt@sc3d.org>
778
779	* Re-jig Zip file type magic so that unsupported special
780	  Zip types (those with "mimetype" at offset 30) can be
781	  recognized.
782
7832010-02-02  21:50  Reuben Thomas <rrt@sc3d.org>
784
785	* Add support for OCF (EPUB) files (application/epub+zip)
786
7872010-01-28  18:25  Christos Zoulas <christos@zoulas.com>
788
789	* Fix core-dump from unbound loop:
790	  https://bugzilla.redhat.com/show_bug.cgi?id=533245
791
7922010-01-22  15:45  Christos Zoulas <christos@zoulas.com>
793
794	* print proper mime for crystal reports file
795
796	* print the last summary information of a cdf document, not the
797	  first so that nested documents print the right info
798
7992010-01-16  18:42  Charles Longeau <chl@tuxfamily.org>
800
801	* bring back some fixes from OpenBSD:
802		- make gcc2 builds file
803		- fix typos in a magic file comment
804
8052009-11-17  18:35  Christos Zoulas <christos@zoulas.com>
806
807	* ctime/asctime can return NULL on some OS's although
808	  they should not (Toshit Antani)
809
8102009-09-14  13:49  Christos Zoulas <christos@zoulas.com>
811
812	* Centralize magic path handling routines and remove the
813	  special-casing from file.c so that the python module for
814	  example comes up with the same magic path (Fixes ~/.magic
815	  handling) (from Gab)
816
8172009-09-11  23:38  Reuben Thomas <rrt@sc3d.org>
818
819	* When magic argument is a directory, read the files in
820	  strcmp-sorted order (fixes Debian bug #488562 and our own FIXME).
821
8222009-09-11  13:11  Reuben Thomas <rrt@sc3d.org>
823
824	* Combine overlapping epoc and psion magic files into one (epoc).
825
826	* Add some more EPOC MIME types.
827
8282009-08-19  15:55  Christos Zoulas <christos@zoulas.com>
829
830	* Fix 3 bugs (From Ian Darwin):
831	    - file_showstr could move one past the end of the array
832	    - parse_apple did not nul terminate the string in the overflow case
833	    - parse_mime truncated the wrong string in the overflow case
834
8352009-08-12  12:28  Robert Byrnes  <byrnes@wildpumpkin.net>
836
837	* Include Localstuff when compiling magic.
838
8392009-07-15  10:05  Christos Zoulas <christos@zoulas.com>
840
841	* Fix logic for including mygetopts.h
842
843	* Make cdf.c compile again with debugging
844
845	* Add the necessary field handling for crystal reports files to work
846
8472009-06-23 01:34  Reuben Thomas <rrt@sc3d.org>
848
849	* Stop "(if" identifying Lisp files, that's plain dumb!
850
8512009-06-09 22:13  Reuben Thomas <rrt@sc3d.org>
852
853	* Add a couple of missing MP3 MIME types.
854
8552009-05-27 23:00  Reuben Thomas <rrt@sc3d.org>
856
857	* Add full range of hash-bang tests for Python and Ruby.
858
859	* Add MIME types for Python and Ruby scripts.
860
8612009-05-13  10:44  Christos Zoulas <christos@zoulas.com>
862
863	* off by one in parsing hw capabilities in elf
864	  (Cheng Renquan)
865
8662009-05-08  13:40  Christos Zoulas <christos@zoulas.com>
867
868	* lint fixes and more from NetBSD
869
8702009-05-06  10:25  Christos Zoulas <christos@zoulas.com>
871
872	* Avoid null dereference in cdf code (Drew Yao)
873
874	* More cdf bounds checks and overflow checks
875
8762009-05-01  18:37  Christos Zoulas <christos@zoulas.com>
877
878	* Buffer overflow fixes from Drew Yao
879
8802009-04-30  17:10  Christos Zoulas <christos@zoulas.com>
881
882	* Fix more cdf lossage. All the documents I have
883	  right now print the correct information.
884
8852009-03-27  18:43  Christos Zoulas <christos@zoulas.com>
886
887	* don't print \012- separators in the same magic entry
888	  if it consists of multiple magic printing lines.
889
8902009-03-23  10:20  Christos Zoulas <christos@zoulas.com>
891
892	* Avoid file descriptor leak in compress code from
893	  (Daniel Novotny)
894
8952009-03-18  16:50  Christos Zoulas <christos@zoulas.com>
896
897	* Allow escaping of relation characters, so that we can say \^[A-Z]
898	  and the ^ is not eaten as a relation char.
899
900	* Fix troff and fortran to their previous glory using
901	  regex. This was broken since their removel from ascmagic.
902
9032009-03-10  16:50  Christos Zoulas <christos@zoulas.com>
904
905	* don't use strlen in strndup() (Toby Peterson)
906
9072009-03-10  7:45  Christos Zoulas <christos@zoulas.com>
908
909	* avoid c99 syntax.
910
9112009-02-23 15:45  Christos Zoulas <christos@zoulas.com>
912
913	* make the cdf code use the buffer first if available,
914	  and then the fd code.
915
9162009-02-13 13:45  Christos Zoulas <christos@zoulas.com>
917
918	* look for struct option to determine if getopt.h is usable for IRIX.
919
920	* sanitize cdf document strings
921
9222009-02-04 13:25  Christos Zoulas <christos@zoulas.com>
923
924	* fix OS/2 warnings.
925
9262008-12-12 15:50  Christos Zoulas <christos@zoulas.com>
927
928	* fix initial offset calculation for non 4K sector files
929
930	* add loop limits to avoid DoS attacks by constructing
931	  looping sector references.
932
9332008-12-03 13:05  Christos Zoulas <christos@zoulas.com>
934
935	* fix memory botches on cdf file parsing.
936
937	* exit with non-zero value for any error, not just for the last
938	  file processed.
939
9402008-11-09 20:42  Charles Longeau <chl@tuxfamily.org>
941
942	* Replace all str{cpy,cat} functions with strl{cpy,cat}
943	* Ensure that strl{cpy,cat} are included in libmagic,
944	  as needed.
945
9462008-11-06 18:18  Christos Zoulas <christos@zoulas.com>
947
948	* Handle ID3 format files.
949
9502008-11-06 23:00  Reuben Thomas <rrt@sc3d.org>
951
952	* Fix --mime, --mime-type and --mime-encoding under new scheme.
953
954	* Rename "ascii" to "text" and add "encoding" test.
955
956	* Return a precise ("utf-16le" or "utf-16be") MIME charset for
957	  UTF-16.
958
959	* Fix error in comment caused by automatic indentation adding
960	  words!
961
9622008-11-06 10:35  Christos Zoulas <christos@astron.com>
963
964	* use memchr instead of strchr because the string
965	  might not be NUL terminated (Scott MacVicar)
966
9672008-11-03 07:31  Reuben Thomas <rrt@sc3d.org>
968
969	* Fix a printf with a non-literal format string.
970
971	* Fix formatting and punctuation of help for "--apple".
972
9732008-10-30 11:00  Reuben Thomas <rrt@sc3d.org>
974
975	* Correct words counts in comments of struct magic.
976
977	* Fix handle_annotation to allow both Apple and MIME types to be
978	  printed, and to return correct code if MIME type is
979	  printed (1, not 0) or if there's an error (-1 not 1).
980
981	* Fix output of charset for MIME type (precede with semi-colon;
982	  fixes Debian bug #501460).
983
984	* Fix potential attacks via conversion specifications in magic
985	  strings.
986
987	* Add a FIXME for Debian bug #488562 (magic files should be
988	  read in a defined order, by sorting the names).
989
9902008-10-18 16:45  Christos Zoulas <christos@astron.com>
991
992	* Added APPLE file creator/type
993
9942008-10-12 10:20  Christos Zoulas <christos@astron.com>
995
996	* Added CDF parsing
997
9982008-10-09 16:40  Christos Zoulas <christos@astron.com>
999
1000	* filesystem and msdos patches (Joerg Jenderek)
1001
10022008-10-09 13:20  Christos Zoulas <christos@astron.com>
1003
1004	* correct --exclude documentation issues: remove troff and fortran
1005	  and rename "token" to "tokens". (Randy McMurchy)
1006
10072008-10-01 10:30  Christos Zoulas <christos@astron.com>
1008
1009	* Read ~/.magic in addition to the default magic file not instead
1010	  of, as documented in the man page.
1011
10122008-09-10 21:30  Reuben Thomas  <rrt@sc3d.org>
1013
1014	* Comment out graphviz patterns, as they match too many files.
1015
10162008-08-30 12:54  Christos Zoulas <christos@astron.com>
1017
1018	* Don't eat trailing \n in magic enties.
1019
1020	* Cast defines to allow compilation using a c++ compiler.
1021
10222008-08-25 23:56  Reuben Thomas  <rrt@sc3d.org>
1023
1024	* Add text/x-lua MIME type for Lua scripts.
1025
1026	* Escape { in regex in graphviz patterns.
1027
10282008-07-26 00:59  Reuben Thomas  <rrt@sc3d.org>
1029
1030	* Add MIME types for special files.
1031
1032	* Use access to give more accurate information for files that
1033	  can't be opened.
1034
1035	* Add a TODO list.
1036
10372008-07-02 11:15  Christos Zoulas  <christos@astron.com>
1038
1039	* add !:strength op to adjust magic strength (experimental)
1040
10412008-06-16 21:41  Reuben Thomas  <rrt@sc3d.org>
1042
1043	* Fix automake error in configure.ac.
1044
1045	* Add MIME type for Psion Sketch files.
1046
10472008-06-05 08:59  Christos Zoulas  <christos@astron.com>
1048
1049	* Don't print warnings about bad namesize in stripped
1050	  binaries with PT_NOTE is still there, and the actual
1051	  note is gone (Jakub Jelinek)
1052
10532008-05-28 15:12  Robert Byrnes  <byrnes@wildpumpkin.net>
1054
1055	* magic/Magdir/elf:
1056	  Note invalid byte order for little-endian SPARC32PLUS.
1057	  Add SPARC V9 vendor extensions and memory model.
1058
1059	* src/elfclass.h:
1060	  Pass target machine to doshn (for Solaris hardware capabilities).
1061
1062	* src/readelf.c (doshn):
1063	  Add support for Solaris hardware/software capabilities.
1064
1065	* src/readelf.h:
1066	  Ditto.
1067
1068	* src/vasprintf.c (dispatch):
1069	  Add support for ll modifier.
1070
10712008-05-16 10:25  Christos Zoulas  <christos@astron.com>
1072
1073	* Fix compiler warnings.
1074
1075	* remove stray printf, and fix a vprintf bug. (Martin Dorey)
1076
10772008-05-06 00:13  Robert Byrnes  <byrnes@wildpumpkin.net>
1078
1079	* src/Makefile.am:
1080	  Ensure that getopt_long and [v]asprintf are included in libmagic,
1081	  as needed.
1082
1083	  Remove unnecessary EXTRA_DIST.
1084
1085	* src/Makefile.in:
1086	  Rerun automake.
1087
1088	* src/vasprintf.c (dispatch):
1089	  Fix variable precision bug: be sure to step past '*'.
1090
1091	* src/vasprintf.c (core):
1092	  Remove unreachable code.
1093
1094	* src/apprentice.c (set_test_type):
1095	  Add cast to avoid compiler warning.
1096
10972008-04-22 23:45  Christos Zoulas  <christos@astron.com>
1098
1099	* Add magic submission guidelines (Abel Cheung)
1100
1101	* split msdos and windows magic (Abel Cheung)
1102
11032008-04-04 11:00  Christos Zoulas  <christos@astron.com>
1104
1105	* >= <= is not supported, so fix the magic and warn about it.
1106	  reported by: Thien-Thi Nguyen <ttn@gnuvola.org>
1107
11082008-03-27 16:16  Robert Byrnes  <byrnes@wildpumpkin.net>
1109
1110	* src/readelf.c (donote):
1111	  ELF core file command name/line bug fixes and enhancements:
1112
1113	  Try larger offsets first to avoid false matches
1114	  from earlier data that happen to look like strings;
1115	  this primarily affected SunOS 5.x 32-bit Intel core files.
1116
1117	  Add support for command line (instead of just short name)
1118	  for SunOS 5.x.
1119
1120	  Add information about NT_PSINFO for SunOS 5.x.
1121
1122	  Only trim whitespace from end of command line.
1123
11242007-02-11 01:36 Reuben Thomas <rrt@sc3d.org>
1125
1126	* Change strength of ! from MULT to 0, as it matches almost
1127		  anything (Reuben Thomas)
1128
1129	* Debian fixes (Reuben Thomas)
1130
11312007-02-11 00:17 Reuben Thomas <rrt@sc3d.org>
1132
1133	* Clarify UTF-8 BOM message (Reuben Thomas)
1134
1135	* Add HTML comment to token list in names.h
1136
11372007-02-04 15:50 Christos Zoulas <christos@astron.com>
1138
1139	* Debian fixes (Reuben Thomas)
1140
11412007-02-04 11:31 Christos Zoulas <christos@astron.com>
1142
1143	* !:mime annotations in magic files (Reuben Thomas)
1144
11452007-01-29 15:35 Christos Zoulas <christos@astron.com>
1146
1147	* zero out utime/utimes structs (Gavin Atkinson)
1148
11492007-01-26 13:45 Christos Zoulas <christos@astron.com>
1150
1151	* reduce writable data from Diego "Flameeyes" Petten
1152
11532007-12-28 15:06 Christos Zoulas <christos@astron.com>
1154
1155	* strtof detection
1156
1157	* remove bogus regex magic that could cause a DoS
1158
1159	* better mismatch version message
1160
11612007-12-27 11:35 Christos Zoulas <christos@astron.com>
1162
1163	* bring back some fixes from OpenBSD
1164
1165	* treat ELF dynamic objects as executables
1166
1167	* fix gcc warnings
1168
11692007-12-01 19:55 Christos Zoulas <christos@astron.com>
1170
1171	* make sure we have zlib.h and libz to compile the builtin
1172	  decompress code
1173
11742007-10-28 20:48 Christos Zoulas <christos@astron.com>
1175
1176 	* float and double magic support (Behan Webster)
1177
11782007-10-28 20:48 Christos Zoulas <christos@astron.com>
1179
1180	* Convert fortran to a soft test (Reuben Thomas)
1181
11822007-10-23  5:25 Christos Zoulas <christos@astron.com>
1183
1184	* Add --with-filename, and --no-filename (Reuben Thomas)
1185
11862007-10-23  3:59 Christos Zoulas <christos@astron.com>
1187
1188	* Rest of the mime split (Reuben Thomas)
1189
1190	* Make usage message generated from the flags so that
1191	  they stay consistent (Reuben Thomas)
1192
11932007-10-20  3:06 Christos Zoulas <christos@astron.com>
1194
1195	* typo in comment, missing ifdef QUICK, remove unneeded code
1196		(Charles Longeau)
1197
11982007-10-17  3:33 Christos Zoulas <christos@astron.com>
1199
1200	* Fix problem printing -\012 in some entries
1201
1202	* Separate magic type and encoding flags (Reuben Thomas)
1203
12042007-10-09  3:55 Christos Zoulas <christos@astron.com>
1205
1206	* configure fix for int64 and strndup (Reuben Thomas)
1207
12082007-09-26  4:45 Christos Zoulas <christos@astron.com>
1209
1210	* Add magic_descriptor() function.
1211
1212	* Fix regression in elf reading code where the core name was
1213	  not being printed.
1214
1215	* Don't convert NUL's to spaces in {l,b}estring16 (Daniel Dawson)
1216
12172007-08-19  6:30 Christos Zoulas <christos@astron.com>
1218
1219	* Make mime format consistent so that it can
1220	  be easily parsed:
1221	      mimetype [charset=character-set] [encoding=encoding-mime-type]
1222
1223	  Remove spurious extra text from some MIME type printouts
1224	  (mostly in is_tar).
1225
1226	  Fix one case where -i produced nothing at all (for a 1-byte file,
1227	  which is now classed as application/octet-stream).
1228
1229	  Remove 7/8bit classifications, since they were arbitrary
1230	  and not based on the file data.
1231
1232	  This work was done by Reuben Thomas
1233
12342007-05-24 10:00 Christos Zoulas <christos@astron.com>
1235
1236	* Fix another integer overflow (Colin Percival)
1237
12382007-03-26 13:58 Christos Zoulas <christos@astron.com>
1239
1240	* make sure that all of struct magic_set is initialized appropriately
1241	  (Brett)
1242
12432007-03-25 17:44 Christos Zoulas <christos@astron.com>
1244
1245	* reset left bytes in the buffer (Dmitry V. Levin)
1246
1247	* compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS
1248	  (Peter Avalos)
1249
12502007-03-15 10:51 Christos Zoulas <christos@astron.com>
1251
1252	* fix fortran and nroff reversed tests (Dmitry V. Levin)
1253
1254	* fix exclude option (Dmitry V. Levin)
1255
12562007-02-08 17:30 Christos Zoulas <christos@astron.com>
1257
1258	* fix integer underflow in file_printf which can lead to
1259	  to exploitable heap overflow (Jean-Sebastien Guay-Lero)
1260
12612007-02-05 11:35 Christos Zoulas <christos@astron.com>
1262
1263	* make socket/pipe reading more robust
1264
12652007-01-25 16:01 Christos Zoulas <christos@astron.com>
1266
1267	* Centralize all the tests in file_buffer.
1268
1269	* Add exclude flag.
1270
12712007-01-18 05:29 Anon Ymous <do@not.spam.me>
1272
1273	* Move the "type" detection code from parse() into its own table
1274	  driven routine.  This avoids maintaining multiple lists in
1275	  file.h.
1276
1277	* Add an optional conditional field (ust before the type field).
1278	  This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is
1279	  likely to go away.
1280
12812007-01-16 23:24 Anon Ymous <do@not.spam.me>
1282
1283	* Fix an initialization bug in check_mem().
1284
12852007-01-16 14:58 Anon Ymous <do@not.spam.me>
1286
1287	* Add a "default" type to print a message if nothing previously
1288	  matched at that level or since the last default at that
1289	  level.  This is useful for setting up switch-like statements.
1290	  It can also be used to do if/else constructions without a
1291	  redundant second test.
1292
1293	* Fix the "x" special case test so that one can test for that
1294	  string with "=x".
1295
1296	* Allow "search" to search the entire buffer if the "/N"
1297	  search count is missing.
1298
1299	* Make "regex" work!  It now starts its search at the
1300	  specified offset and takes an (optional) "/N" line count to
1301	  specify the search range; otherwise it searches to the end
1302	  of the file.  The match is now grabbed correctly for format
1303	  strings and the offset set to the end of the match.
1304
1305	* Add a "/s" flag to "regex" and "search" to set the offset to
1306	  the start of the match.  By default the offset is set to the
1307	  end of the match, as it is with other tests.  This is mostly
1308	  useful for "regex".
1309
1310	* Make "search", "string" and "pstring" use the same
1311	  file_strncmp() routine so that they support the same flags;
1312	  "bestring16" and "lestring16" call the same routine, but
1313	  with flags = 0.  Also add a "/C" flag (in analogy to "/c")
1314	  to ignore the case on uppercase (lowercase) characters in
1315	  the test string.
1316
1317	* Strict adherence to C style string escapes.  A warnings are
1318	  printed when compiling.  Note: previously "\a" was
1319	  incorrectly translated to 'a' instead of an <alert> (i.e.,
1320	  BELL, typically 0x07).
1321
1322	* Make this compile with "-Wall -Wextra" and all the warning
1323	  flags used with WARNS=4 in the NetBSD source.  Also make it
1324	  pass lint.
1325
1326	* Many "cleanups" and hopefully not too many new bugs!
1327
13282007-01-16 14:56 Anon Ymous <do@not.spam.me>
1329
1330	* make several more files compile with gcc warnings
1331	  on and also make them pass lint.
1332
13332007-01-16 14:54 Anon Ymous <do@not.spam.me>
1334
1335	* fix a puts()/putc() usage goof in file.c
1336
1337	* make file.c compile with gcc warnings and pass lint
1338
13392006-12-11 16:49 Christos Zoulas <christos@astron.com>
1340
1341	* fix byteswapping issue
1342
1343	* report the number of bytes we tried to
1344	  allocate when allocation fails
1345
1346	* add a few missed cases in the strength routine
1347
13482006-12-08 16:32 Christos Zoulas <christos@astron.com>
1349
1350	* store and print the line number of the magic
1351	  entry for debugging.
1352
1353	* if the magic entry did not print anything,
1354	  don't treat it as a match
1355
1356	* change the magic strength algorithm to take
1357	  into account the relationship op.
1358
1359	* fix a bug in search where we could accidentally
1360	  return a match.
1361
1362	* propagate the error return from match to
1363	  file_softmagic.
1364
13652006-11-25 13:35 Christos Zoulas <christos@astron.com>
1366
1367	* Don't store the current offset in the magic
1368	  struct, because it needs to be restored and
1369	  it was not done properly all the time. Bug
1370	  found by: Arkadiusz Miskiewicz
1371
1372	* Fix problem in the '\0' separator; and don't
1373	  print it as an additional separator; print
1374	  it as the only separator.
1375
13762006-11-17 10:51 Christos Zoulas <christos@astron.com>
1377
1378	* Added a -0 option to print a '\0' separator
1379	  Etienne Buira <etienne.buira@free.fr>
1380
13812006-10-31 15:14 Christos Zoulas <christos@astron.com>
1382
1383	* Check offset before copying (Mike Frysinger)
1384
1385	* merge duplicated code
1386
1387	* add quad date support
1388
1389	* make sure that we nul terminate desc (Ryoji Kanai)
1390
1391	* don't process elf notes multiple times
1392
1393	* allow -z to report empty compressed files
1394
1395	* use calloc to initialize the ascii buffers (Jos van den Oever)
1396
13972006-06-08 11:11 Christos Zoulas <christos@astron.com>
1398
1399	* QNX fixes (Mike Gorchak)
1400
1401	* Add quad support.
1402
1403	* FIFO checks (Dr. Werner Fink)
1404
1405	* Linux ELF fixes (Dr. Werner Fink)
1406
1407	* Magic format checks (Dr. Werner Fink)
1408
1409	* Magic format function improvent (Karl Chen)
1410
14112006-05-03 11:11 Christos Zoulas <christos@astron.com>
1412
1413	* Pick up some elf changes and some constant fixes from SUSE
1414
1415	* Identify gnu tar vs. posix tar
1416
1417	* When keep going, don't print spurious newlines (Radek Vokal)
1418
14192006-04-01 12:02 Christos Zoulas <christos@astron.com>
1420
1421	* Use calloc instead of malloc (Mike Frysinger)
1422
1423	* Fix configure script to detect wctypes.h (Mike Frysinger)
1424
14252006-03-02 16:06 Christos Zoulas <christos@astron.com>
1426
1427	* Print empty if the file is (Mike Frysinger)
1428
1429	* Don't try to read past the end of the buffer (Mike Frysinger)
1430
1431	* Sort magic entries by strength [experimental]
1432
14332005-11-29 13:26 Christos Zoulas <christos@astron.com>
1434
1435	* Use iswprint() to convert the output string.
1436	    (Bastien Nocera)
1437
14382005-10-31 8:54 Christos Zoulas <christos@astron.com>
1439
1440	* Fix regression where the core info was not completely processed
1441	    (Radek Vokal)
1442
14432005-10-20 11:15 Christos Zoulas <christos@astron.com>
1444
1445	* Middle Endian magic (Diomidis Spinellis)
1446
14472005-10-17 11:15 Christos Zoulas <christos@astron.com>
1448
1449	* Open with O_BINARY for CYGWIN (Corinna Vinschen)
1450
1451	* Don't close stdin (Arkadiusz Miskiewicz)
1452
1453	* Look for note sections in non executables.
1454
14552005-09-20 13:33 Christos Zoulas <christos@astron.com>
1456
1457	* Don't print SVR4 Style in core files multiple times
1458	    (Radek Vokal)
1459
14602005-08-27 04:09 Christos Zoulas <christos@astron.com>
1461
1462	* Cygwin changes Corinna Vinschen
1463
14642005-08-18 09:53 Christos Zoulas <christos@astron.com>
1465
1466	* Remove erroreous mention of /etc/magic in the file man page
1467	  This is gentoo bug 101639. (Mike Frysinger)
1468
1469	* Cross-compile support and detection (Mike Frysinger)
1470
14712005-08-12 10:17 Christos Zoulas <christos@astron.com>
1472
1473	* Add -h flag and dereference symlinks if POSIXLY_CORRECT
1474	  is set.
1475
14762005-07-29 13:57 Christos Zoulas <christos@astron.com>
1477
1478	* Avoid search and regex buffer overflows (Kelledin)
1479
14802005-07-12 11:48 Christos Zoulas <christos@astron.com>
1481
1482	* Provide stub implementations for {v,}nsprintf() for older
1483	  OS's that don't have them.
1484	* Change mbstate_t autoconf detection macro from AC_MBSTATE_T
1485	  to AC_TYPE_MBSTATE_T.
1486
14872005-06-25 11:48 Christos Zoulas <christos@astron.com>
1488
1489	* Dynamically allocate the string buffers and make the
1490	  default read size 256K.
1491
14922005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de>
1493
1494	* Dragonfly ELF note support
1495
14962005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it>
1497
1498	* Avoid NULL pointer dereference in time conversion.
1499
15002005-03-06 00:00  Joerg Walter <jwalt@mail.garni.ch>
1501
1502	* Add indirect magic offset support, and search mode.
1503
15042005-01-12 00:00  Stepan Kasal  <kasal@ucw.cz>
1505
1506	* src/ascmagic.c (file_ascmagic): Fix three bugs about text files:
1507	  If a CRLF text file happens to have CR at offset HOWMANY - 1
1508	  (currently 0xffff), it should not be counted as CR line
1509	  terminator.
1510	  If a line has length exactly MAXLINELEN, it should not yet be
1511	  treated as a ``very long line'', as MAXLINELEN is ``longest sane
1512	  line length''.
1513	  With CRLF, the line length was not computed correctly, and even
1514	  lines of length MAXLINELEN - 1 were treated as ``very long''.
1515
15162004-12-07 14:15  Christos Zoulas  <christos@astron.com>
1517
1518	* bzip2 needs a lot of input buffer space on some files
1519	  before it can begin uncompressing. This makes file -z
1520	  fail on some bz2 files. Fix it by giving it a copy of
1521	  the file descriptor to read as much as it wants if we
1522	  have access to it. <christos@astron.com>
1523
15242004-11-24 12:39  Christos Zoulas  <christos@astron.com>
1525
1526	* Stack smash fix, and ELF more conservative reading.
1527	  Jakub Bogusz <qboosh@pld-linux.org>
1528
15292004-11-20 18:50  Christos Zoulas  <christos@astron.com>
1530
1531	* New FreeBSD version parsing code:
1532	  Jon Noack <noackjr@alumni.rice.edu>
1533
1534	* Hackish support for ucs16 strings <christos@astron.com>
1535
15362004-11-13 03:07  Christos Zoulas  <christos@astron.com>
1537
1538	* print the file name and line number in syntax errors.
1539
15402004 10-12 10:50  Christos Zoulas  <christos@astron.com>
1541
1542	* Fix stack overwriting on 0 length strings: Tim Waugh
1543	    <twaugh@redhat.com> Ned Ludd <solar@gentoo.org>
1544
15452004-09-27 11:30  Christos Zoulas  <christos@astron.com>
1546
1547	* Remove 3rd and 4th copyright clause; approved by Ian Darwin.
1548
1549	* Fix small memory leaks; caught by: Tamas Sarlos
1550	    <stamas@csillag.ilab.sztaki.hu>
1551
15522004-07-24 16:33  Christos Zoulas  <christos@astron.com>
1553
1554	* magic.mime update Danny Milosavljevic <danny.milo@gmx.net>
1555
1556	* FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com>
1557
1558	* utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com>
1559
1560  	* errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org>
1561
15622004-04-12 10:55  Christos Zoulas  <christos@astron.com>
1563
1564	* make sure that magic formats match magic types during compilation
1565
1566	* fix broken sgi magic file
1567
15682004-04-06 20:36  Christos Zoulas  <christos@astron.com>
1569
1570	* detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com>
1571
1572	* magic fixes
1573
15742004-03-22 15:25  Christos Zoulas  <christos@astron.com>
1575
1576	* Lots of mime fixes
1577	  (Joerg Ostertag) <ostertag@rechengilde.de>
1578
1579	* FreeBSD ELF version handling
1580	  (Edwin Groothuis) <edwin@mavetju.org>
1581
1582	* correct cleanup in all cases; don't just close the file.
1583	  (Christos Zoulas) <christos@astron.com>
1584
1585	* add gettext message catalogue support
1586	  (Michael Piefel) <piefel@debian.org>
1587
1588	* better printout for unreadable files
1589	  (Michael Piefel) <piefel@debian.org>
1590
1591	* compensate for missing MAXPATHLEN
1592	  (Michael Piefel) <piefel@debian.org>
1593
1594	* add wide character string length computation
1595	  (Michael Piefel) <piefel@debian.org>
1596
1597	* Avoid infinite loops caused by bad elf alignments
1598	  or name and description note sizes. Reported by
1599	  (Mikael Magnusson) <mmikael@comhem.se>
1600
16012004-03-09 13:55  Christos Zoulas  <christos@astron.com>
1602
1603	* Fix possible memory leak on error and add missing regfree
1604	  (Dmitry V. Levin) <ldv@altlinux.org>
1605
16062003-12-23 12:12  Christos Zoulas  <christos@astron.com>
1607
1608	* fix -k flag (Maciej W. Rozycki)
1609
16102003-11-18 14:10  Christos Zoulas  <christos@astron.com>
1611
1612	* Try to give us much info as possible on corrupt elf files.
1613	  (Willy Tarreau) <willy@w.ods.org>
1614	* Updated python bindings (Brett Funderburg)
1615	   <brettf@deepfile.com>
1616
16172003-11-11 15:03  Christos Zoulas  <christos@astron.com>
1618
1619	* Include file.h first, because it includes config.h
1620	  breaks largefile test macros otherwise.
1621	  (Paul Eggert <eggert@CS.UCLA.EDU> via
1622	   Lars Hecking <lhecking@nmrc.ie>)
1623
16242003-10-14 21:39  Christos Zoulas  <christos@astron.com>
1625
1626	* Python bindings (Brett Funderburg) <brettf@deepfile.com>
1627	* Don't lookup past the end of the buffer
1628	  (Chad Hanson) <chanson@tcs-sec.com>
1629	* Add MAGIC_ERROR and api on magic_errno()
1630
16312003-10-08 12:40  Christos Zoulas  <christos@astron.com>
1632
1633	* handle error conditions from compile as fatal
1634	  (Antti Kantee) <pooka@netbsd.org>
1635	* handle magic filename parsing sanely
1636	* more magic fixes.
1637	* fix a memory leak (Illes Marton) <illes.marton@balabit.hu>
1638	* describe magic file handling
1639	  (Bryan Henderson) <bryanh@giraffe-data.com>
1640
16412003-09-12 15:09  Christos Zoulas  <christos@astron.com>
1642
1643	* update magic files.
1644	* remove largefile support from file.h; it breaks things on most OS's
1645
16462003-08-10 10:25  Christos Zoulas  <christos@astron.com>
1647
1648	* fix unmapping'ing of mmaped files.
1649
16502003-07-10 12:03  Christos Zoulas  <christos@astron.com>
1651
1652	* don't exit with -1 on error; always exit 1 (Marty Leisner)
1653	* restore utimes code.
1654
16552003-06-10 17:03  Christos Zoulas  <christos@astron.com>
1656
1657	* make sure we don't access uninitialized memory.
1658	* pass lint
1659	* #ifdef __cplusplus in magic.h
1660
16612003-05-25 19:23  Christos Zoulas  <christos@astron.com>
1662
1663	* rename cvs magic file to revision to deal with
1664	  case insensitive filesystems.
1665
16662003-05-23 17:03  Christos Zoulas  <christos@astron.com>
1667
1668	* documentation fixes from Michael Piefel <piefel@debian.org>
1669	* magic fixes (various)
1670	* revert basename magic in .mgc name determination
1671	* buffer protection in uncompress,
1672	  signness issues,
1673	  close files
1674	  Maciej W. Rozycki <macro@ds2.pg.gda.pl
1675
16762003-04-21 20:12  Christos Zoulas  <christos@astron.com>
1677
1678	* fix zsh magic
1679
16802003-04-04 16:59  Christos Zoulas  <christos@astron.com>
1681
1682	* fix operand sort order in string.
1683
16842003-04-02 17:30  Christos Zoulas  <christos@astron.com>
1685
1686	* cleanup namespace in magic.h
1687
16882003-04-02 13:50  Christos Zoulas  <christos@astron.com>
1689
1690	* Magic additions (Alex Ott)
1691	* Fix bug that broke VPATH compilation (Peter Breitenlohner)
1692
16932003-03-28 16:03  Christos Zoulas  <christos@astron.com>
1694
1695	* remove packed attribute from magic struct.
1696	* make the magic struct properly aligned.
1697	* bump version number of compiled files to 2.
1698
16992003-03-27 13:10  Christos Zoulas  <christos@astron.com>
1700
1701	* separate tar detection and run it before softmagic.
1702	* fix reversed symlink test.
1703	* fix version printing.
1704	* make separator a string instead of a char.
1705	* update manual page and sort options.
1706
17072003-03-26 11:00  Christos Zoulas  <christos@astron.com>
1708
1709	* Pass lint
1710	* make NULL in magic_file mean stdin
1711	* Fix "-" argument to file to pass NULL to magic_file
1712	* avoid pointer casts by using memcpy
1713	* rename magic_buf -> magic_buffer
1714	* keep only the first error
1715	* manual page: new sentence, new line
1716	* fix typo in api function (magic_buf -> magic_buffer)
1717