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