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