Merge from vendor branch LIBARCHIVE:
[dragonfly.git] / contrib / file-4 / ChangeLog
1 2007-05-24 10:00 Christos Zoulas <christos@zoulas.com>
2
3         * Fix another integer overflow (Colin Percival)
4
5 2007-03-26 13:58 Christos Zoulas <christos@zoulas.com>
6
7         * make sure that all of struct magic_set is initialized appropriately
8           (Brett)
9
10 2007-03-25 17:44 Christos Zoulas <christos@zoulas.com>
11
12         * reset left bytes in the buffer (Dmitry V. Levin)
13
14         * compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS
15           (Peter Avalos)
16
17 2007-03-15 10:51 Christos Zoulas <christos@zoulas.com>
18
19         * fix fortran and nroff reversed tests (Dmitry V. Levin)
20         
21         * fix exclude option (Dmitry V. Levin)
22
23 2007-02-08 17:30 Christos Zoulas <christos@zoulas.com>
24
25         * fix integer underflow in file_printf which can lead to
26           to exploitable heap overflow (Jean-Sebastien Guay-Lero)
27
28 2007-02-05 11:35 Christos Zoulas <christos@zoulas.com>
29
30         * make socket/pipe reading more robust
31
32 2007-01-25 16:01 Christos Zoulas <christos@zoulas.com>
33
34         * Centralize all the tests in file_buffer.
35
36         * Add exclude flag.
37
38 2007-01-18 05:29 Anon Ymous <do@not.spam.me>
39         
40         * Move the "type" detection code from parse() into its own table
41           driven routine.  This avoids maintaining multiple lists in
42           file.h.
43
44         * Add an optional conditional field (ust before the type field).
45           This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is
46           likely to go away.
47         
48 2007-01-16 23:24 Anon Ymous <do@not.spam.me>
49
50         * Fix an initialization bug in check_mem().
51
52 2007-01-16 14:58 Anon Ymous <do@not.spam.me>
53
54         * Add a "default" type to print a message if nothing previously
55           matched at that level or since the last default at that
56           level.  This is useful for setting up switch-like statements.
57           It can also be used to do if/else constructions without a
58           redundant second test.
59
60         * Fix the "x" special case test so that one can test for that
61           string with "=x".
62
63         * Allow "search" to search the entire buffer if the "/N"
64           search count is missing.
65
66         * Make "regex" work!  It now starts its search at the
67           specified offset and takes an (optional) "/N" line count to
68           specify the search range; otherwise it searches to the end
69           of the file.  The match is now grabbed correctly for format
70           strings and the offset set to the end of the match.
71
72         * Add a "/s" flag to "regex" and "search" to set the offset to
73           the start of the match.  By default the offset is set to the
74           end of the match, as it is with other tests.  This is mostly
75           useful for "regex".
76
77         * Make "search", "string" and "pstring" use the same
78           file_strncmp() routine so that they support the same flags;
79           "bestring16" and "lestring16" call the same routine, but
80           with flags = 0.  Also add a "/C" flag (in analogy to "/c")
81           to ignore the case on uppercase (lowercase) characters in
82           the test string.
83
84         * Strict adherence to C style string escapes.  A warnings are
85           printed when compiling.  Note: previously "\a" was
86           incorrectly translated to 'a' instead of an <alert> (i.e.,
87           BELL, typically 0x07).
88
89         * Make this compile with "-Wall -Wextra" and all the warning
90           flags used with WARNS=4 in the NetBSD source.  Also make it
91           pass lint.
92
93         * Many "cleanups" and hopefully not too many new bugs!
94
95 2007-01-16 14:56 Anon Ymous <do@not.spam.me>
96
97         * make several more files compile with gcc warnings
98           on and also make them pass lint.
99
100 2007-01-16 14:54 Anon Ymous <do@not.spam.me>
101
102         * fix a puts()/putc() usage goof in file.c
103
104         * make file.c compile with gcc warnings and pass lint
105
106 2006-12-11 16:49 Christos Zoulas <christos@zoulas.com>
107
108         * fix byteswapping issue
109
110         * report the number of bytes we tried to
111           allocate when allocation fails
112
113         * add a few missed cases in the strength routine
114
115 2006-12-08 16:32 Christos Zoulas <christos@zoulas.com>
116
117         * store and print the line number of the magic
118           entry for debugging.         
119
120         * if the magic entry did not print anything,
121           don't treat it as a match
122
123         * change the magic strength algorithm to take
124           into account the relationship op.
125
126         * fix a bug in search where we could accidentally
127           return a match.
128
129         * propagate the error return from match to
130           file_softmagic.
131
132 2006-11-25 13:35 Christos Zoulas <christos@zoulas.com>
133         
134         * Don't store the current offset in the magic
135           struct, because it needs to be restored and
136           it was not done properly all the time. Bug
137           found by: Arkadiusz Miskiewicz
138
139         * Fix problem in the '\0' separator; and don't
140           print it as an additional separator; print
141           it as the only separator.
142
143 2006-11-17 10:51 Christos Zoulas <christos@zoulas.com>
144
145         * Added a -0 option to print a '\0' separator
146           Etienne Buira <etienne.buira@free.fr>
147
148 2006-10-31 15:14 Christos Zoulas <christos@zoulas.com>
149
150         * Check offset before copying (Mike Frysinger)
151
152         * merge duplicated code
153
154         * add quad date support
155
156         * make sure that we nul terminate desc (Ryoji Kanai)
157
158         * don't process elf notes multiple times
159
160         * allow -z to report empty compressed files
161
162         * use calloc to initialize the ascii buffers (Jos van den Oever)
163
164 2006-06-08 11:11 Christos Zoulas <christos@zoulas.com>
165
166         * QNX fixes (Mike Gorchak)
167
168         * Add quad support.
169
170         * FIFO checks (Dr. Werner Fink)
171
172         * Linux ELF fixes (Dr. Werner Fink)
173
174         * Magic format checks (Dr. Werner Fink)
175
176         * Magic format function improvent (Karl Chen)
177
178 2006-05-03 11:11 Christos Zoulas <christos@zoulas.com>
179
180         * Pick up some elf changes and some constant fixes from SUSE
181
182         * Identify gnu tar vs. posix tar
183
184         * When keep going, don't print spurious newlines (Radek Vokál)
185
186 2006-04-01 12:02 Christos Zoulas <christos@zoulas.com>
187
188         * Use calloc instead of malloc (Mike Frysinger)
189
190         * Fix configure script to detect wctypes.h (Mike Frysinger)
191
192 2006-03-02 16:06 Christos Zoulas <christos@zoulas.com>
193
194         * Print empty if the file is (Mike Frysinger)
195
196         * Don't try to read past the end of the buffer (Mike Frysinger)
197
198         * Sort magic entries by strength [experimental]
199
200 2005-11-29 13:26 Christos Zoulas <christos@zoulas.com>
201
202         * Use iswprint() to convert the output string.
203             (Bastien Nocera)
204
205 2005-10-31 8:54 Christos Zoulas <christos@zoulas.com>
206
207         * Fix regression where the core info was not completely processed
208             (Radek Vokál)
209
210 2005-10-20 11:15 Christos Zoulas <christos@zoulas.com>
211
212         * Middle Endian magic (Diomidis Spinellis)
213
214 2005-10-17 11:15 Christos Zoulas <christos@zoulas.com>
215
216         * Open with O_BINARY for CYGWIN (Corinna Vinschen)
217
218         * Don't close stdin (Arkadiusz Miskiewicz)
219
220         * Look for note sections in non executables.
221
222 2005-09-20 13:33 Christos Zoulas <christos@zoulas.com>
223         
224         * Don't print SVR4 Style in core files multiple times
225             (Radek Vokál)
226
227 2005-08-27 04:09 Christos Zoulas <christos@zoulas.com>
228
229         * Cygwin changes Corinna Vinschen
230
231 2005-08-18 09:53 Christos Zoulas <christos@zoulas.com>
232
233         * Remove erroreous mention of /etc/magic in the file man page
234           This is gentoo bug 101639. (Mike Frysinger) 
235
236         * Cross-compile support and detection (Mike Frysinger) 
237
238 2005-08-12 10:17 Christos Zoulas <christos@zoulas.com>
239
240         * Add -h flag and dereference symlinks if POSIXLY_CORRECT
241           is set.
242
243 2005-07-29 13:57 Christos Zoulas <christos@zoulas.com>
244
245         * Avoid search and regex buffer overflows (Kelledin)
246
247 2005-07-12 11:48 Christos Zoulas <christos@zoulas.com>
248
249         * Provide stub implementations for {v,}nsprintf() for older
250           OS's that don't have them.
251         * Change mbstate_t autoconf detection macro from AC_MBSTATE_T
252           to AC_TYPE_MBSTATE_T.
253
254 2005-06-25 11:48 Christos Zoulas <christos@zoulas.com>
255
256         * Dynamically allocate the string buffers and make the
257           default read size 256K.
258
259 2005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de>
260
261         * Dragonfly ELF note support
262
263 2005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it>
264
265         * Avoid NULL pointer dereference in time conversion.
266
267 2005-03-06 00:00  Joerg Walter <jwalt@mail.garni.ch>
268         
269         * Add indirect magic offset support, and search mode.
270
271 2005-01-12 00:00  Stepan Kasal  <kasal@ucw.cz>
272
273         * src/ascmagic.c (file_ascmagic): Fix three bugs about text files:
274           If a CRLF text file happens to have CR at offset HOWMANY - 1
275           (currently 0xffff), it should not be counted as CR line
276           terminator.
277           If a line has length exactly MAXLINELEN, it should not yet be
278           treated as a ``very long line'', as MAXLINELEN is ``longest sane
279           line length''.
280           With CRLF, the line length was not computed correctly, and even
281           lines of length MAXLINELEN - 1 were treated as ``very long''.
282
283 2004-12-07 14:15  Christos Zoulas  <christos@zoulas.com>
284
285         * bzip2 needs a lot of input buffer space on some files
286           before it can begin uncompressing. This makes file -z
287           fail on some bz2 files. Fix it by giving it a copy of
288           the file descriptor to read as much as it wants if we
289           have access to it. <christos@zoulas.com>
290
291 2004-11-24 12:39  Christos Zoulas  <christos@zoulas.com>
292
293         * Stack smash fix, and ELF more conservative reading.
294           Jakub Bogusz <qboosh@pld-linux.org>
295
296 2004-11-20 18:50  Christos Zoulas  <christos@zoulas.com>
297
298         * New FreeBSD version parsing code:
299           Jon Noack <noackjr@alumni.rice.edu>
300
301         * Hackish support for ucs16 strings <christos@zoulas.com>
302
303 2004-11-13 03:07  Christos Zoulas  <christos@zoulas.com>
304
305         * print the file name and line number in syntax errors.
306
307 2004 10-12 10:50  Christos Zoulas  <christos@zoulas.com>
308
309         * Fix stack overwriting on 0 length strings: Tim Waugh
310             <twaugh@redhat.com> Ned Ludd <solar@gentoo.org>
311
312 2004-09-27 11:30  Christos Zoulas  <christos@zoulas.com>
313
314         * Remove 3rd and 4th copyright clause; approved by Ian Darwin.
315
316         * Fix small memory leaks; caught by: Tamas Sarlos 
317             <stamas@csillag.ilab.sztaki.hu>
318
319 2004-07-24 16:33  Christos Zoulas  <christos@zoulas.com>
320
321         * magic.mime update Danny Milosavljevic <danny.milo@gmx.net> 
322
323         * FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com>
324
325         * utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com>
326
327         * errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org>
328
329 2004-04-12 10:55  Christos Zoulas  <christos@zoulas.com>
330
331         * make sure that magic formats match magic types during compilation
332
333         * fix broken sgi magic file
334
335 2004-04-06 20:36  Christos Zoulas  <christos@zoulas.com>
336
337         * detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com>
338
339         * magic fixes
340
341 2004-03-22 15:25  Christos Zoulas  <christos@zoulas.com>
342
343         * Lots of mime fixes
344           (Joerg Ostertag) <ostertag@rechengilde.de>
345
346         * FreeBSD ELF version handling
347           (Edwin Groothuis) <edwin@mavetju.org>
348
349         * correct cleanup in all cases; don't just close the file.
350           (Christos Zoulas) <christos@zoulas.com>
351
352         * add gettext message catalogue support
353           (Michael Piefel) <piefel@debian.org>
354
355         * better printout for unreadable files
356           (Michael Piefel) <piefel@debian.org>
357
358         * compensate for missing MAXPATHLEN
359           (Michael Piefel) <piefel@debian.org>
360
361         * add wide character string length computation
362           (Michael Piefel) <piefel@debian.org>
363
364         * Avoid infinite loops caused by bad elf alignments
365           or name and description note sizes. Reported by
366           (Mikael Magnusson) <mmikael@comhem.se>
367
368 2004-03-09 13:55  Christos Zoulas  <christos@zoulas.com>
369
370         * Fix possible memory leak on error and add missing regfree
371           (Dmitry V. Levin) <ldv@altlinux.org>
372
373 2003-12-23 12:12  Christos Zoulas  <christos@zoulas.com>
374
375         * fix -k flag (Maciej W. Rozycki)
376
377 2003-11-18 14:10  Christos Zoulas  <christos@zoulas.com>
378
379         * Try to give us much info as possible on corrupt elf files.
380           (Willy Tarreau) <willy@w.ods.org>
381         * Updated python bindings (Brett Funderburg)
382            <brettf@deepfile.com>
383
384 2003-11-11 15:03  Christos Zoulas  <christos@zoulas.com>
385
386         * Include file.h first, because it includes config.h
387           breaks largefile test macros otherwise.
388           (Paul Eggert <eggert@CS.UCLA.EDU> via
389            Lars Hecking <lhecking@nmrc.ie>)
390
391 2003-10-14 21:39  Christos Zoulas  <christos@zoulas.com>
392
393         * Python bindings (Brett Funderburg) <brettf@deepfile.com>
394         * Don't lookup past the end of the buffer
395           (Chad Hanson) <chanson@tcs-sec.com>
396         * Add MAGIC_ERROR and api on magic_errno()
397
398 2003-10-08 12:40  Christos Zoulas  <christos@zoulas.com>
399
400         * handle error conditions from compile as fatal
401           (Antti Kantee) <pooka@netbsd.org>
402         * handle magic filename parsing sanely
403         * more magic fixes.
404         * fix a memory leak (Illes Marton) <illes.marton@balabit.hu>
405         * describe magic file handling
406           (Bryan Henderson) <bryanh@giraffe-data.com>
407
408 2003-09-12 15:09  Christos Zoulas  <christos@zoulas.com>
409
410         * update magic files.
411         * remove largefile support from file.h; it breaks things on most OS's
412
413 2003-08-10 10:25  Christos Zoulas  <christos@zoulas.com>
414
415         * fix unmapping'ing of mmaped files.
416
417 2003-07-10 12:03  Christos Zoulas  <christos@zoulas.com>
418
419         * don't exit with -1 on error; always exit 1 (Marty Leisner)
420         * restore utimes code.
421
422 2003-06-10 17:03  Christos Zoulas  <christos@zoulas.com>
423
424         * make sure we don't access uninitialized memory.
425         * pass lint
426         * #ifdef __cplusplus in magic.h
427
428 2003-05-25 19:23  Christos Zoulas  <christos@zoulas.com>
429
430         * rename cvs magic file to revision to deal with
431           case insensitive filesystems.
432
433 2003-05-23 17:03  Christos Zoulas  <christos@zoulas.com>
434
435         * documentation fixes from Michael Piefel <piefel@debian.org>
436         * magic fixes (various)
437         * revert basename magic in .mgc name determination
438         * buffer protection in uncompress,
439           signness issues,
440           close files
441           Maciej W. Rozycki <macro@ds2.pg.gda.pl
442
443 2003-04-21 20:12  Christos Zoulas  <christos@zoulas.com>
444
445         * fix zsh magic
446
447 2003-04-04 16:59  Christos Zoulas  <christos@zoulas.com>
448
449         * fix operand sort order in string.
450
451 2003-04-02 17:30  Christos Zoulas  <christos@zoulas.com>
452
453         * cleanup namespace in magic.h
454
455 2003-04-02 13:50  Christos Zoulas  <christos@zoulas.com>
456
457         * Magic additions (Alex Ott)
458         * Fix bug that broke VPATH compilation (Peter Breitenlohner)
459
460 2003-03-28 16:03  Christos Zoulas  <christos@zoulas.com>
461
462         * remove packed attribute from magic struct.
463         * make the magic struct properly aligned.
464         * bump version number of compiled files to 2.
465
466 2003-03-27 13:10  Christos Zoulas  <christos@zoulas.com>
467
468         * separate tar detection and run it before softmagic.
469         * fix reversed symlink test.
470         * fix version printing.
471         * make separator a string instead of a char.
472         * update manual page and sort options.
473
474 2003-03-26 11:00  Christos Zoulas  <christos@zoulas.com>
475
476         * Pass lint
477         * make NULL in magic_file mean stdin
478         * Fix "-" argument to file to pass NULL to magic_file
479         * avoid pointer casts by using memcpy
480         * rename magic_buf -> magic_buffer
481         * keep only the first error
482         * manual page: new sentence, new line
483         * fix typo in api function (magic_buf -> magic_buffer)