12014-03-26 11:25 Christos Zoulas <christos@zoulas.com> 2 3 * release 5.18 4 52014-03-15 17:45 Christos Zoulas <christos@zoulas.com> 6 7 * add fmtcheck(3) for those who don't have it 8 92014-03-14 15:12 Christos Zoulas <christos@zoulas.com> 10 11 * prevent mime entries from being attached to magic 12 entries with no descriptions 13 14 * adjust magic strength for regex type 15 16 * remove superfluous ascmagic with encoding test 17 182014-03-06 12:01 Christos Zoulas <christos@zoulas.com> 19 20 * fix regression fix echo -ne "\012\013\014" | file -i - 21 which printed "binary" instead of "application/octet-stream" 22 23 * add size_t overflow check for magic file size 24 252014-02-27 16:01 Christos Zoulas <christos@zoulas.com> 26 27 * experimental support for matching with CFD CLSID 28 292014-02-18 13:04 Kimmo Suominen (kimmo@suominen.com) 30 31 * Cache old LC_CTYPE locale before setting it to "C", so 32 we can use it to restore LC_CTYPE instead of asking 33 setlocale() to scan the environment variables. 34 352014-02-12 18:21 Christos Zoulas <christos@zoulas.com> 36 37 * Count recursion levels through indirect magic 38 392014-02-11 10:40 Christos Zoulas <christos@zoulas.com> 40 41 * Prevent infinite recursion on files with indirect offsets of 0 42 432014-01-30 21:00 Christos Zoulas <christos@zoulas.com> 44 45 * Add -E flag that makes file print filesystem errors to stderr 46 and exit. 47 482014-01-08 17:20 Christos Zoulas <christos@zoulas.com> 49 50 * mime printing could print results from multiple magic entries 51 if there were multiple matches. 52 * in some cases overflow was not detected when computing offsets 53 in softmagic. 54 552013-12-05 12:00 Christos Zoulas <christos@zoulas.com> 56 57 * use strcasestr() to for cdf strings 58 * reset to the "C" locale while doing regex operations, or case 59 insensitive comparisons; this is provisional 60 612013-11-19 20:10 Christos Zoulas <christos@zoulas.com> 62 63 * always leave magic file loaded, don't unload for magic_check, etc. 64 * fix default encoding to binary instead of unknown which broke recently 65 * handle empty and one byte files, less specially so that 66 --mime-encoding does not break completely. 67 ` 682013-11-06 14:40 Christos Zoulas <christos@zoulas.com> 69 70 * fix erroneous non-zero exit code from non-existant file and message 71 722013-10-29 14:25 Christos Zoulas <christos@zoulas.com> 73 74 * add CDF MSI file detection (Guy Helmer) 75 762013-09-03 11:56 Christos Zoulas <christos@zoulas.com> 77 78 * Don't mix errors and regular output if there was an error 79 * in magic_descriptor() don't close the file and try to restore 80 its position 81 822013-05-30 17:25 Christos Zoulas <christos@zoulas.com> 83 84 * Don't treat magic as an error if offset was past EOF (Christoph Biedl) 85 862013-05-28 17:25 Christos Zoulas <christos@zoulas.com> 87 88 * Fix spacing issues in softmagic and elf (Jan Kaluza) 89 902013-05-02 18:00 Christos Zoulas <christos@zoulas.com> 91 92 * Fix segmentation fault with multiple magic_load commands. 93 942013-04-22 11:20 Christos Zoulas <christos@zoulas.com> 95 96 * The way "default" was implemented was not very useful 97 because the "if something was printed at that level" 98 was not easily controlled by the user, and the format 99 was bound to a string which is too restrictive. Add 100 a "clear" for that level keyword and make "default" 101 void. This way one can do: 102 103 >>13 clear x 104 >>13 lelong 1 foo 105 >>13 lelong 2 bar 106 >>13 default x 107 >>>13 lelong x unknown %x 108 1092013-03-25 13:20 Christos Zoulas <christos@zoulas.com> 110 111 * disallow strength setting in "name" entries 112 1132013-03-06 21:24 Christos Zoulas <christos@zoulas.com> 114 115 * fix recursive magic separator printing 116 1172013-02-26 19:28 Christos Zoulas <christos@zoulas.com> 118 119 * limit recursion level for mget 120 * fix pread() related breakage in cdf 121 * handle offsets properly in recursive "use" 122 1232013-02-18 10:39 Christos Zoulas <christos@zoulas.com> 124 125 * add elf reading of debug info to determine if file is stripped 126 (Jan Kaluza) 127 * use pread() 128 1292013-01-25 18:05 Christos Zoulas <christos@zoulas.com> 130 131 * change mime description size from 64 to 80 to accommodate OOXML. 132 1332013-01-11 14:50 Christos Zoulas <christos@zoulas.com> 134 135 * Warn about inconsistent continuation levels. 136 * Change fsmagic to add a space after it prints. 137 1382013-01-10 21:00 Christos Zoulas <christos@zoulas.com> 139 140 * Make getline public so that file can link against it. 141 Perhaps it is better to rename it, or hide it differently. 142 Fixes builds on platforms that do not provide it. 143 1442013-01-07 16:30 Christos Zoulas <christos@zoulas.com> 145 146 * Add SuS d{,1,2,4,8}, u{,1,2,4,8} and document 147 what long, int, short, etc is (Guy Harris) 148 1492013-01-06 11:20 Christos Zoulas <christos@zoulas.com> 150 151 * add magic_version function and constant 152 * Redo memory allocation and de-allocation. 153 (prevents double frees on non mmap platforms) 154 * Fix bug with name/use having to do with passing 155 found state from the parent to the child and back. 156 1572012-12-19 8:47 Christos Zoulas <christos@zoulas.com> 158 159 * Only print elf capabilities for archs we know (Jan Kaluza) 160 1612012-10-30 19:14 Christos Zoulas <christos@zoulas.com> 162 163 * Add "name" and "use" file types in order to look 164 inside mach-o files. 165 1662012-09-06 10:40 Christos Zoulas <christos@zoulas.com> 167 168 * make --version exit 0 (Matthew Schultz) 169 * add string/T (Jan Kaluza) 170 1712012-08-09 2:15 Christos Zoulas <christos@zoulas.com> 172 173 * add z and t modifiers for our own vasprintf 174 * search for $HOME/.magic.mgc if it is there first 175 * fix reads from a pipe, and preserve errno 176 1772012-05-15 13:12 Christos Zoulas <christos@zoulas.com> 178 179 * use ctime_r, asctime_r 180 1812012-04-06 17:18 Christos Zoulas <christos@zoulas.com> 182 183 * Fixes for indirect offsets to handle apple disk formats 184 1852012-04-03 18:26 Christos Zoulas <christos@zoulas.com> 186 187 * Add windows date field types 188 * More info for windows shortcuts (incomplete) 189 1902012-02-20 17:33 Christos Zoulas <christos@zoulas.com> 191 192 * Fix CDF parsing issues found by CERT's fuzzing tool (Will Dormann) 193 1942011-12-15 12:17 Chris Metcalf <cmetcalf@tilera.com> 195 196 * Support Tilera architectures (tile64, tilepro, tilegx). 197 1982011-12-16 16:33 Reuben Thomas <rrt@sc3d.org> 199 200 * Add magic for /usr/bin/env Perl scripts 201 * Weaken generic script magic to avoid clashing with 202 language-specific magic. 203 2042011-12-08 13:37 Reuben Thomas <rrt@sc3d.org> 205 206 * Simplify if (p) free(p) to free(p). 207 2082011-12-08 13:07 Reuben Thomas <rrt@sc3d.org> 209 210 * Remove hardwired token finding (names.h), turning it into soft 211 magic. Patterns are either anchored regexs or search/8192. English 212 language detection and PL/1 detection have been removed as they 213 were too fragile. -e tokens is still accepted for backwards 214 compatibility. 215 * Move 3ds patterns (which are commented out anyway) into autodesk 216 (they were, oddly, in c-lang). 217 2182011-12-06 00:16 Reuben Thomas <rrt@sc3d.org> 219 220 * Tweak strength of generic hash-bang detectors to be less than 221 specific ones. 222 * Make an inconsistent description of Python scripts consistent. 223 2242011-12-05 23:58 Reuben Thomas <rrt@sc3d.org> 225 226 * Fix minor error in file(1). 227 2282011-11-05 00:00 Reuben Thomas <rrt@sc3d.org> 229 230 * Fix issue #150 (I hope). 231 2322011-09-22 12:57 Christos Zoulas <christos@zoulas.com> 233 234 * Python3 binding fixes from Kelly Anderson 235 2362011-09-20 11:32 Christos Zoulas <christos@zoulas.com> 237 238 * If a string type magic entry is marked as text or binary 239 only match text files against text entries and binary 240 files against binary entries. 241 2422011-09-01 12:12 Christos Zoulas <christos@zoulas.com> 243 244 * Don't wait for any subprocess, just the one we forked. 245 2462011-08-26 16:40 Christos Zoulas <christos@zoulas.com> 247 248 * If the application name is not set in a cdf file, try to see 249 if it has a directory with the application name on it. 250 2512011-08-17 14:32 Christos Zoulas <christos@zoulas.com> 252 253 * Fix ELF lseek(2) madness. Inspired by PR/134 by Jan Kaluza 254 2552011-08-14 09:03 Christos Zoulas <christos@zoulas.com> 256 257 * Don't use variable string formats. 258 2592011-07-12 12:32 Reuben Thomas <rrt@sc3d.org> 260 261 * Fix detection of Zip files (Mantis #128). 262 * Make some minor improvements to file(1). 263 * Rename MIME types for filesystem objects for consistency with 264 xdg-utils. Typically this means that application/x-foo becomes 265 inode/foo, but some names also change slightly, e.g. 266 application/x-character-device becomes inode/chardevice. 267 2682011-05-10 20:57 Christos Zoulas <christos@zoulas.com> 269 270 * fix mingw compilation (Abradoks) 271 2722011-05-10 20:57 Christos Zoulas <christos@zoulas.com> 273 274 * remove patchlevel.h 275 * Fix read past allocated memory caused by double-incrementing 276 a pointer in a loop (reported by Roberto Maar) 277 2782011-03-30 15:45 Christos Zoulas <christos@zoulas.com> 279 280 * Fix cdf string buffer setting (Sven Anders) 281 2822011-03-20 16:35 Christos Zoulas <christos@zoulas.com> 283 284 * Eliminate MAXPATHLEN and use dynamic allocation for 285 path and file buffers. 286 2872011-03-15 18:15 Christos Zoulas <christos@zoulas.com> 288 289 * binary tests on magic entries with masks could spuriously 290 get converted to ascii. 291 2922011-03-12 18:06 Reuben Thomas <rrt@sc3d.org> 293 294 * Improve file.man (remove BUGS, present email addresses consistently). 295 2962011-03-07 19:38 Christos Zoulas <christos@zoulas.com> 297 298 * add lrzip support (from Ville Skytta) 299 3002011-02-10 16:36 Christos Zoulas <christos@zoulas.com> 301 302 * fix CDF bounds checking (Guy Helmer) 303 3042011-02-10 12:03 Christos Zoulas <christos@zoulas.com> 305 306 * add cdf_ctime() that prints a meaningful error when time cannot 307 be converted. 308 3092011-02-02 20:40 Christos Zoulas <christos@zoulas.com> 310 311 * help and version output to stdout. 312 313 * When matching softmagic for ascii files, don't just print 314 the softmagic classification, keep going and print the 315 text classification too. This fixes broken troff files when 316 we moved them from keyword recognition to softmagic 317 (they stopped printing "with CRLF" etc.) 318 Reported by Doug McIlroy. 319 3202011-01-16 19:31 Reuben Thomas <rrt@sc3d.org> 321 322 * Fix two potential buffer overruns in apprentice_list. 323 3242011-01-14 22:33 Reuben Thomas <rrt@sc3d.org> 325 326 * New Python binding in pure Python. 327 * Update libmagic(3). 328 3292011-01-06 21:40 Reuben Thomas <rrt@sc3d.org> 330 331 * Fix Python bindings (including recent Python 3 compatibility 332 update). 333 3342011-01-04 18:43 Reuben Thomas <rrt@sc3d.org> 335 336 * magic/Makefile.am: make it easier to recover from magic build failures. 337 * Fix pstring length specifier parsing to avoid generating invalid 338 magic files. 339 * Add pstring length "J" (for "JPEG") to specify that the length 340 include itself. 341 * Fix JPEG comment parsing at last using pstring/HJ! 342 * Ignore section 5 man pages in doc/.cvsignore. 343 3442010-12-22 13:12 Christos Zoulas <christos@zoulas.com> 345 346 * Add pstring/BHhLl to specify the type of the length of pascal 347 strings. 348 3492010-11-26 18:39 Reuben Thomas <rrt@sc3d.org> 350 351 * Fix "-e soft": it was ignored when softmagic was called 352 during asciimagic. 353 * Improve comments and use "unsigned char" in tar.h/is_tar.c. 354 3552010-11-05 17:26 Reuben Thomas <rrt@sc3d.org> 356 357 * Make bug reporting addresses more visible. 358 3592010-11-01 18:35 Reuben Thomas <rrt@sc3d.org> 360 361 * Add tcl magic from Gustaf Neumann 362 3632010-10-24 10:42 Christos Zoulas <christos@zoulas.com> 364 365 * Fix the whitespace comparing code (Christopher Chittleborough) 366 3672010-10-06 21:05 Christos Zoulas <christos@zoulas.com> 368 369 * allow string/t to work (Jan Kaluza) 370 3712010-09-20 22:11 Reuben Thomas <rrt@sc3d.org> 372 373 * Apply some patches from Ubuntu and Fedora. 374 3752010-09-20 21:16 Reuben Thomas <rrt@sc3d.org> 376 377 * Apply all patches from Debian package 5.04-6 which have not 378 already been applied and are not Debian-specific. 379 3802010-09-20 15:24 Reuben Thomas <rrt@sc3d.org> 381 382 * Minor security fix to softmagic.c (don't use untrusted 383 string as printf format). 384 3852010-07-21 12:20 Christos Zoulas <christos@zoulas.com> 386 387 * MINGW32 portability from LRN 388 389 * Don't warn about escaping magic regex chars when we are in a regex. 390 3912010-07-19 10:55 Christos Zoulas <christos@zoulas.com> 392 393 * Only try to print prpsinfo for core files. (Jan Kaluza) 394 3952010-04-22 12:55 Christos Zoulas <christos@zoulas.com> 396 397 * Try more elf offsets for Debian core files. (Arnaud Giersch) 398 3992010-02-20 15:18 Reuben Thomas <rrt@sc3d.org> 400 401 * Clarify which sort of CDF we mean. 402 4032010-02-14 22:58 Reuben Thomas <rrt@sc3d.org> 404 405 * Re-jig Zip file type magic so that unsupported special 406 Zip types (those with "mimetype" at offset 30) can be 407 recognized. 408 4092010-02-02 21:50 Reuben Thomas <rrt@sc3d.org> 410 411 * Add support for OCF (EPUB) files (application/epub+zip) 412 4132010-01-28 18:25 Christos Zoulas <christos@zoulas.com> 414 415 * Fix core-dump from unbound loop: 416 https://bugzilla.redhat.com/show_bug.cgi?id=533245 417 4182010-01-22 15:45 Christos Zoulas <christos@zoulas.com> 419 420 * print proper mime for crystal reports file 421 422 * print the last summary information of a cdf document, not the 423 first so that nested documents print the right info 424 4252010-01-16 18:42 Charles Longeau <chl@tuxfamily.org> 426 427 * bring back some fixes from OpenBSD: 428 - make gcc2 builds file 429 - fix typos in a magic file comment 430 4312009-11-17 18:35 Christos Zoulas <christos@zoulas.com> 432 433 * ctime/asctime can return NULL on some OS's although 434 they should not (Toshit Antani) 435 4362009-09-14 13:49 Christos Zoulas <christos@zoulas.com> 437 438 * Centralize magic path handling routines and remove the 439 special-casing from file.c so that the python module for 440 example comes up with the same magic path (Fixes ~/.magic 441 handling) (from Gab) 442 4432009-09-11 23:38 Reuben Thomas <rrt@sc3d.org> 444 445 * When magic argument is a directory, read the files in 446 strcmp-sorted order (fixes Debian bug #488562 and our own FIXME). 447 4482009-09-11 13:11 Reuben Thomas <rrt@sc3d.org> 449 450 * Combine overlapping epoc and psion magic files into one (epoc). 451 452 * Add some more EPOC MIME types. 453 4542009-08-19 15:55 Christos Zoulas <christos@zoulas.com> 455 456 * Fix 3 bugs (From Ian Darwin): 457 - file_showstr could move one past the end of the array 458 - parse_apple did not nul terminate the string in the overflow case 459 - parse_mime truncated the wrong string in the overflow case 460 4612009-08-12 12:28 Robert Byrnes <byrnes@wildpumpkin.net> 462 463 * Include Localstuff when compiling magic. 464 4652009-07-15 10:05 Christos Zoulas <christos@zoulas.com> 466 467 * Fix logic for including mygetopts.h 468 469 * Make cdf.c compile again with debugging 470 471 * Add the necessary field handling for crystal reports files to work 472 4732009-06-23 01:34 Reuben Thomas <rrt@sc3d.org> 474 475 * Stop "(if" identifying Lisp files, that's plain dumb! 476 4772009-06-09 22:13 Reuben Thomas <rrt@sc3d.org> 478 479 * Add a couple of missing MP3 MIME types. 480 4812009-05-27 23:00 Reuben Thomas <rrt@sc3d.org> 482 483 * Add full range of hash-bang tests for Python and Ruby. 484 485 * Add MIME types for Python and Ruby scripts. 486 4872009-05-13 10:44 Christos Zoulas <christos@zoulas.com> 488 489 * off by one in parsing hw capabilities in elf 490 (Cheng Renquan) 491 4922009-05-08 13:40 Christos Zoulas <christos@zoulas.com> 493 494 * lint fixes and more from NetBSD 495 4962009-05-06 10:25 Christos Zoulas <christos@zoulas.com> 497 498 * Avoid null dereference in cdf code (Drew Yao) 499 500 * More cdf bounds checks and overflow checks 501 5022009-05-01 18:37 Christos Zoulas <christos@zoulas.com> 503 504 * Buffer overflow fixes from Drew Yao 505 5062009-04-30 17:10 Christos Zoulas <christos@zoulas.com> 507 508 * Fix more cdf lossage. All the documents I have 509 right now print the correct information. 510 5112009-03-27 18:43 Christos Zoulas <christos@zoulas.com> 512 513 * don't print \012- separators in the same magic entry 514 if it consists of multiple magic printing lines. 515 5162009-03-23 10:20 Christos Zoulas <christos@zoulas.com> 517 518 * Avoid file descriptor leak in compress code from 519 (Daniel Novotny) 520 5212009-03-18 16:50 Christos Zoulas <christos@zoulas.com> 522 523 * Allow escaping of relation characters, so that we can say \^[A-Z] 524 and the ^ is not eaten as a relation char. 525 526 * Fix troff and fortran to their previous glory using 527 regex. This was broken since their removel from ascmagic. 528 5292009-03-10 16:50 Christos Zoulas <christos@zoulas.com> 530 531 * don't use strlen in strndup() (Toby Peterson) 532 5332009-03-10 7:45 Christos Zoulas <christos@zoulas.com> 534 535 * avoid c99 syntax. 536 5372009-02-23 15:45 Christos Zoulas <christos@zoulas.com> 538 539 * make the cdf code use the buffer first if available, 540 and then the fd code. 541 5422009-02-13 13:45 Christos Zoulas <christos@zoulas.com> 543 544 * look for struct option to determine if getopt.h is usable for IRIX. 545 546 * sanitize cdf document strings 547 5482009-02-04 13:25 Christos Zoulas <christos@zoulas.com> 549 550 * fix OS/2 warnings. 551 5522008-12-12 15:50 Christos Zoulas <christos@zoulas.com> 553 554 * fix initial offset calculation for non 4K sector files 555 556 * add loop limits to avoid DoS attacks by constructing 557 looping sector references. 558 5592008-12-03 13:05 Christos Zoulas <christos@zoulas.com> 560 561 * fix memory botches on cdf file parsing. 562 563 * exit with non-zero value for any error, not just for the last 564 file processed. 565 5662008-11-09 20:42 Charles Longeau <chl@tuxfamily.org> 567 568 * Replace all str{cpy,cat} functions with strl{cpy,cat} 569 * Ensure that strl{cpy,cat} are included in libmagic, 570 as needed. 571 5722008-11-06 18:18 Christos Zoulas <christos@zoulas.com> 573 574 * Handle ID3 format files. 575 5762008-11-06 23:00 Reuben Thomas <rrt@sc3d.org> 577 578 * Fix --mime, --mime-type and --mime-encoding under new scheme. 579 580 * Rename "ascii" to "text" and add "encoding" test. 581 582 * Return a precise ("utf-16le" or "utf-16be") MIME charset for 583 UTF-16. 584 585 * Fix error in comment caused by automatic indentation adding 586 words! 587 5882008-11-06 10:35 Christos Zoulas <christos@astron.com> 589 590 * use memchr instead of strchr because the string 591 might not be NUL terminated (Scott MacVicar) 592 5932008-11-03 07:31 Reuben Thomas <rrt@sc3d.org> 594 595 * Fix a printf with a non-literal format string. 596 597 * Fix formatting and punctuation of help for "--apple". 598 5992008-10-30 11:00 Reuben Thomas <rrt@sc3d.org> 600 601 * Correct words counts in comments of struct magic. 602 603 * Fix handle_annotation to allow both Apple and MIME types to be 604 printed, and to return correct code if MIME type is 605 printed (1, not 0) or if there's an error (-1 not 1). 606 607 * Fix output of charset for MIME type (precede with semi-colon; 608 fixes Debian bug #501460). 609 610 * Fix potential attacks via conversion specifications in magic 611 strings. 612 613 * Add a FIXME for Debian bug #488562 (magic files should be 614 read in a defined order, by sorting the names). 615 6162008-10-18 16:45 Christos Zoulas <christos@astron.com> 617 618 * Added APPLE file creator/type 619 6202008-10-12 10:20 Christos Zoulas <christos@astron.com> 621 622 * Added CDF parsing 623 6242008-10-09 16:40 Christos Zoulas <christos@astron.com> 625 626 * filesystem and msdos patches (Joerg Jenderek) 627 6282008-10-09 13:20 Christos Zoulas <christos@astron.com> 629 630 * correct --exclude documentation issues: remove troff and fortran 631 and rename "token" to "tokens". (Randy McMurchy) 632 6332008-10-01 10:30 Christos Zoulas <christos@astron.com> 634 635 * Read ~/.magic in addition to the default magic file not instead 636 of, as documented in the man page. 637 6382008-09-10 21:30 Reuben Thomas <rrt@sc3d.org> 639 640 * Comment out graphviz patterns, as they match too many files. 641 6422008-08-30 12:54 Christos Zoulas <christos@astron.com> 643 644 * Don't eat trailing \n in magic enties. 645 646 * Cast defines to allow compilation using a c++ compiler. 647 6482008-08-25 23:56 Reuben Thomas <rrt@sc3d.org> 649 650 * Add text/x-lua MIME type for Lua scripts. 651 652 * Escape { in regex in graphviz patterns. 653 6542008-07-26 00:59 Reuben Thomas <rrt@sc3d.org> 655 656 * Add MIME types for special files. 657 658 * Use access to give more accurate information for files that 659 can't be opened. 660 661 * Add a TODO list. 662 6632008-07-02 11:15 Christos Zoulas <christos@astron.com> 664 665 * add !:strength op to adjust magic strength (experimental) 666 6672008-06-16 21:41 Reuben Thomas <rrt@sc3d.org> 668 669 * Fix automake error in configure.ac. 670 671 * Add MIME type for Psion Sketch files. 672 6732008-06-05 08:59 Christos Zoulas <christos@astron.com> 674 675 * Don't print warnings about bad namesize in stripped 676 binaries with PT_NOTE is still there, and the actual 677 note is gone (Jakub Jelinek) 678 6792008-05-28 15:12 Robert Byrnes <byrnes@wildpumpkin.net> 680 681 * magic/Magdir/elf: 682 Note invalid byte order for little-endian SPARC32PLUS. 683 Add SPARC V9 vendor extensions and memory model. 684 685 * src/elfclass.h: 686 Pass target machine to doshn (for Solaris hardware capabilities). 687 688 * src/readelf.c (doshn): 689 Add support for Solaris hardware/software capabilities. 690 691 * src/readelf.h: 692 Ditto. 693 694 * src/vasprintf.c (dispatch): 695 Add support for ll modifier. 696 6972008-05-16 10:25 Christos Zoulas <christos@astron.com> 698 699 * Fix compiler warnings. 700 701 * remove stray printf, and fix a vprintf bug. (Martin Dorey) 702 7032008-05-06 00:13 Robert Byrnes <byrnes@wildpumpkin.net> 704 705 * src/Makefile.am: 706 Ensure that getopt_long and [v]asprintf are included in libmagic, 707 as needed. 708 709 Remove unnecessary EXTRA_DIST. 710 711 * src/Makefile.in: 712 Rerun automake. 713 714 * src/vasprintf.c (dispatch): 715 Fix variable precision bug: be sure to step past '*'. 716 717 * src/vasprintf.c (core): 718 Remove unreachable code. 719 720 * src/apprentice.c (set_test_type): 721 Add cast to avoid compiler warning. 722 7232008-04-22 23:45 Christos Zoulas <christos@astron.com> 724 725 * Add magic submission guidelines (Abel Cheung) 726 727 * split msdos and windows magic (Abel Cheung) 728 7292008-04-04 11:00 Christos Zoulas <christos@astron.com> 730 731 * >= <= is not supported, so fix the magic and warn about it. 732 reported by: Thien-Thi Nguyen <ttn@gnuvola.org> 733 7342008-03-27 16:16 Robert Byrnes <byrnes@wildpumpkin.net> 735 736 * src/readelf.c (donote): 737 ELF core file command name/line bug fixes and enhancements: 738 739 Try larger offsets first to avoid false matches 740 from earlier data that happen to look like strings; 741 this primarily affected SunOS 5.x 32-bit Intel core files. 742 743 Add support for command line (instead of just short name) 744 for SunOS 5.x. 745 746 Add information about NT_PSINFO for SunOS 5.x. 747 748 Only trim whitespace from end of command line. 749 7502007-02-11 01:36 Reuben Thomas <rrt@sc3d.org> 751 752 * Change strength of ! from MULT to 0, as it matches almost 753 anything (Reuben Thomas) 754 755 * Debian fixes (Reuben Thomas) 756 7572007-02-11 00:17 Reuben Thomas <rrt@sc3d.org> 758 759 * Clarify UTF-8 BOM message (Reuben Thomas) 760 761 * Add HTML comment to token list in names.h 762 7632007-02-04 15:50 Christos Zoulas <christos@astron.com> 764 765 * Debian fixes (Reuben Thomas) 766 7672007-02-04 11:31 Christos Zoulas <christos@astron.com> 768 769 * !:mime annotations in magic files (Reuben Thomas) 770 7712007-01-29 15:35 Christos Zoulas <christos@astron.com> 772 773 * zero out utime/utimes structs (Gavin Atkinson) 774 7752007-01-26 13:45 Christos Zoulas <christos@astron.com> 776 777 * reduce writable data from Diego "Flameeyes" Petten 778 7792007-12-28 15:06 Christos Zoulas <christos@astron.com> 780 781 * strtof detection 782 783 * remove bogus regex magic that could cause a DoS 784 785 * better mismatch version message 786 7872007-12-27 11:35 Christos Zoulas <christos@astron.com> 788 789 * bring back some fixes from OpenBSD 790 791 * treat ELF dynamic objects as executables 792 793 * fix gcc warnings 794 7952007-12-01 19:55 Christos Zoulas <christos@astron.com> 796 797 * make sure we have zlib.h and libz to compile the builtin 798 decompress code 799 8002007-10-28 20:48 Christos Zoulas <christos@astron.com> 801 802 * float and double magic support (Behan Webster) 803 8042007-10-28 20:48 Christos Zoulas <christos@astron.com> 805 806 * Convert fortran to a soft test (Reuben Thomas) 807 8082007-10-23 5:25 Christos Zoulas <christos@astron.com> 809 810 * Add --with-filename, and --no-filename (Reuben Thomas) 811 8122007-10-23 3:59 Christos Zoulas <christos@astron.com> 813 814 * Rest of the mime split (Reuben Thomas) 815 816 * Make usage message generated from the flags so that 817 they stay consistent (Reuben Thomas) 818 8192007-10-20 3:06 Christos Zoulas <christos@astron.com> 820 821 * typo in comment, missing ifdef QUICK, remove unneeded code 822 (Charles Longeau) 823 8242007-10-17 3:33 Christos Zoulas <christos@astron.com> 825 826 * Fix problem printing -\012 in some entries 827 828 * Separate magic type and encoding flags (Reuben Thomas) 829 8302007-10-09 3:55 Christos Zoulas <christos@astron.com> 831 832 * configure fix for int64 and strndup (Reuben Thomas) 833 8342007-09-26 4:45 Christos Zoulas <christos@astron.com> 835 836 * Add magic_descriptor() function. 837 838 * Fix regression in elf reading code where the core name was 839 not being printed. 840 841 * Don't convert NUL's to spaces in {l,b}estring16 (Daniel Dawson) 842 8432007-08-19 6:30 Christos Zoulas <christos@astron.com> 844 845 * Make mime format consistent so that it can 846 be easily parsed: 847 mimetype [charset=character-set] [encoding=encoding-mime-type] 848 849 Remove spurious extra text from some MIME type printouts 850 (mostly in is_tar). 851 852 Fix one case where -i produced nothing at all (for a 1-byte file, 853 which is now classed as application/octet-stream). 854 855 Remove 7/8bit classifications, since they were arbitrary 856 and not based on the file data. 857 858 This work was done by Reuben Thomas 859 8602007-05-24 10:00 Christos Zoulas <christos@astron.com> 861 862 * Fix another integer overflow (Colin Percival) 863 8642007-03-26 13:58 Christos Zoulas <christos@astron.com> 865 866 * make sure that all of struct magic_set is initialized appropriately 867 (Brett) 868 8692007-03-25 17:44 Christos Zoulas <christos@astron.com> 870 871 * reset left bytes in the buffer (Dmitry V. Levin) 872 873 * compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS 874 (Peter Avalos) 875 8762007-03-15 10:51 Christos Zoulas <christos@astron.com> 877 878 * fix fortran and nroff reversed tests (Dmitry V. Levin) 879 880 * fix exclude option (Dmitry V. Levin) 881 8822007-02-08 17:30 Christos Zoulas <christos@astron.com> 883 884 * fix integer underflow in file_printf which can lead to 885 to exploitable heap overflow (Jean-Sebastien Guay-Lero) 886 8872007-02-05 11:35 Christos Zoulas <christos@astron.com> 888 889 * make socket/pipe reading more robust 890 8912007-01-25 16:01 Christos Zoulas <christos@astron.com> 892 893 * Centralize all the tests in file_buffer. 894 895 * Add exclude flag. 896 8972007-01-18 05:29 Anon Ymous <do@not.spam.me> 898 899 * Move the "type" detection code from parse() into its own table 900 driven routine. This avoids maintaining multiple lists in 901 file.h. 902 903 * Add an optional conditional field (ust before the type field). 904 This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is 905 likely to go away. 906 9072007-01-16 23:24 Anon Ymous <do@not.spam.me> 908 909 * Fix an initialization bug in check_mem(). 910 9112007-01-16 14:58 Anon Ymous <do@not.spam.me> 912 913 * Add a "default" type to print a message if nothing previously 914 matched at that level or since the last default at that 915 level. This is useful for setting up switch-like statements. 916 It can also be used to do if/else constructions without a 917 redundant second test. 918 919 * Fix the "x" special case test so that one can test for that 920 string with "=x". 921 922 * Allow "search" to search the entire buffer if the "/N" 923 search count is missing. 924 925 * Make "regex" work! It now starts its search at the 926 specified offset and takes an (optional) "/N" line count to 927 specify the search range; otherwise it searches to the end 928 of the file. The match is now grabbed correctly for format 929 strings and the offset set to the end of the match. 930 931 * Add a "/s" flag to "regex" and "search" to set the offset to 932 the start of the match. By default the offset is set to the 933 end of the match, as it is with other tests. This is mostly 934 useful for "regex". 935 936 * Make "search", "string" and "pstring" use the same 937 file_strncmp() routine so that they support the same flags; 938 "bestring16" and "lestring16" call the same routine, but 939 with flags = 0. Also add a "/C" flag (in analogy to "/c") 940 to ignore the case on uppercase (lowercase) characters in 941 the test string. 942 943 * Strict adherence to C style string escapes. A warnings are 944 printed when compiling. Note: previously "\a" was 945 incorrectly translated to 'a' instead of an <alert> (i.e., 946 BELL, typically 0x07). 947 948 * Make this compile with "-Wall -Wextra" and all the warning 949 flags used with WARNS=4 in the NetBSD source. Also make it 950 pass lint. 951 952 * Many "cleanups" and hopefully not too many new bugs! 953 9542007-01-16 14:56 Anon Ymous <do@not.spam.me> 955 956 * make several more files compile with gcc warnings 957 on and also make them pass lint. 958 9592007-01-16 14:54 Anon Ymous <do@not.spam.me> 960 961 * fix a puts()/putc() usage goof in file.c 962 963 * make file.c compile with gcc warnings and pass lint 964 9652006-12-11 16:49 Christos Zoulas <christos@astron.com> 966 967 * fix byteswapping issue 968 969 * report the number of bytes we tried to 970 allocate when allocation fails 971 972 * add a few missed cases in the strength routine 973 9742006-12-08 16:32 Christos Zoulas <christos@astron.com> 975 976 * store and print the line number of the magic 977 entry for debugging. 978 979 * if the magic entry did not print anything, 980 don't treat it as a match 981 982 * change the magic strength algorithm to take 983 into account the relationship op. 984 985 * fix a bug in search where we could accidentally 986 return a match. 987 988 * propagate the error return from match to 989 file_softmagic. 990 9912006-11-25 13:35 Christos Zoulas <christos@astron.com> 992 993 * Don't store the current offset in the magic 994 struct, because it needs to be restored and 995 it was not done properly all the time. Bug 996 found by: Arkadiusz Miskiewicz 997 998 * Fix problem in the '\0' separator; and don't 999 print it as an additional separator; print 1000 it as the only separator. 1001 10022006-11-17 10:51 Christos Zoulas <christos@astron.com> 1003 1004 * Added a -0 option to print a '\0' separator 1005 Etienne Buira <etienne.buira@free.fr> 1006 10072006-10-31 15:14 Christos Zoulas <christos@astron.com> 1008 1009 * Check offset before copying (Mike Frysinger) 1010 1011 * merge duplicated code 1012 1013 * add quad date support 1014 1015 * make sure that we nul terminate desc (Ryoji Kanai) 1016 1017 * don't process elf notes multiple times 1018 1019 * allow -z to report empty compressed files 1020 1021 * use calloc to initialize the ascii buffers (Jos van den Oever) 1022 10232006-06-08 11:11 Christos Zoulas <christos@astron.com> 1024 1025 * QNX fixes (Mike Gorchak) 1026 1027 * Add quad support. 1028 1029 * FIFO checks (Dr. Werner Fink) 1030 1031 * Linux ELF fixes (Dr. Werner Fink) 1032 1033 * Magic format checks (Dr. Werner Fink) 1034 1035 * Magic format function improvent (Karl Chen) 1036 10372006-05-03 11:11 Christos Zoulas <christos@astron.com> 1038 1039 * Pick up some elf changes and some constant fixes from SUSE 1040 1041 * Identify gnu tar vs. posix tar 1042 1043 * When keep going, don't print spurious newlines (Radek Vok�l) 1044 10452006-04-01 12:02 Christos Zoulas <christos@astron.com> 1046 1047 * Use calloc instead of malloc (Mike Frysinger) 1048 1049 * Fix configure script to detect wctypes.h (Mike Frysinger) 1050 10512006-03-02 16:06 Christos Zoulas <christos@astron.com> 1052 1053 * Print empty if the file is (Mike Frysinger) 1054 1055 * Don't try to read past the end of the buffer (Mike Frysinger) 1056 1057 * Sort magic entries by strength [experimental] 1058 10592005-11-29 13:26 Christos Zoulas <christos@astron.com> 1060 1061 * Use iswprint() to convert the output string. 1062 (Bastien Nocera) 1063 10642005-10-31 8:54 Christos Zoulas <christos@astron.com> 1065 1066 * Fix regression where the core info was not completely processed 1067 (Radek Vok�l) 1068 10692005-10-20 11:15 Christos Zoulas <christos@astron.com> 1070 1071 * Middle Endian magic (Diomidis Spinellis) 1072 10732005-10-17 11:15 Christos Zoulas <christos@astron.com> 1074 1075 * Open with O_BINARY for CYGWIN (Corinna Vinschen) 1076 1077 * Don't close stdin (Arkadiusz Miskiewicz) 1078 1079 * Look for note sections in non executables. 1080 10812005-09-20 13:33 Christos Zoulas <christos@astron.com> 1082 1083 * Don't print SVR4 Style in core files multiple times 1084 (Radek Vok�l) 1085 10862005-08-27 04:09 Christos Zoulas <christos@astron.com> 1087 1088 * Cygwin changes Corinna Vinschen 1089 10902005-08-18 09:53 Christos Zoulas <christos@astron.com> 1091 1092 * Remove erroreous mention of /etc/magic in the file man page 1093 This is gentoo bug 101639. (Mike Frysinger) 1094 1095 * Cross-compile support and detection (Mike Frysinger) 1096 10972005-08-12 10:17 Christos Zoulas <christos@astron.com> 1098 1099 * Add -h flag and dereference symlinks if POSIXLY_CORRECT 1100 is set. 1101 11022005-07-29 13:57 Christos Zoulas <christos@astron.com> 1103 1104 * Avoid search and regex buffer overflows (Kelledin) 1105 11062005-07-12 11:48 Christos Zoulas <christos@astron.com> 1107 1108 * Provide stub implementations for {v,}nsprintf() for older 1109 OS's that don't have them. 1110 * Change mbstate_t autoconf detection macro from AC_MBSTATE_T 1111 to AC_TYPE_MBSTATE_T. 1112 11132005-06-25 11:48 Christos Zoulas <christos@astron.com> 1114 1115 * Dynamically allocate the string buffers and make the 1116 default read size 256K. 1117 11182005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de> 1119 1120 * Dragonfly ELF note support 1121 11222005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it> 1123 1124 * Avoid NULL pointer dereference in time conversion. 1125 11262005-03-06 00:00 Joerg Walter <jwalt@mail.garni.ch> 1127 1128 * Add indirect magic offset support, and search mode. 1129 11302005-01-12 00:00 Stepan Kasal <kasal@ucw.cz> 1131 1132 * src/ascmagic.c (file_ascmagic): Fix three bugs about text files: 1133 If a CRLF text file happens to have CR at offset HOWMANY - 1 1134 (currently 0xffff), it should not be counted as CR line 1135 terminator. 1136 If a line has length exactly MAXLINELEN, it should not yet be 1137 treated as a ``very long line'', as MAXLINELEN is ``longest sane 1138 line length''. 1139 With CRLF, the line length was not computed correctly, and even 1140 lines of length MAXLINELEN - 1 were treated as ``very long''. 1141 11422004-12-07 14:15 Christos Zoulas <christos@astron.com> 1143 1144 * bzip2 needs a lot of input buffer space on some files 1145 before it can begin uncompressing. This makes file -z 1146 fail on some bz2 files. Fix it by giving it a copy of 1147 the file descriptor to read as much as it wants if we 1148 have access to it. <christos@astron.com> 1149 11502004-11-24 12:39 Christos Zoulas <christos@astron.com> 1151 1152 * Stack smash fix, and ELF more conservative reading. 1153 Jakub Bogusz <qboosh@pld-linux.org> 1154 11552004-11-20 18:50 Christos Zoulas <christos@astron.com> 1156 1157 * New FreeBSD version parsing code: 1158 Jon Noack <noackjr@alumni.rice.edu> 1159 1160 * Hackish support for ucs16 strings <christos@astron.com> 1161 11622004-11-13 03:07 Christos Zoulas <christos@astron.com> 1163 1164 * print the file name and line number in syntax errors. 1165 11662004 10-12 10:50 Christos Zoulas <christos@astron.com> 1167 1168 * Fix stack overwriting on 0 length strings: Tim Waugh 1169 <twaugh@redhat.com> Ned Ludd <solar@gentoo.org> 1170 11712004-09-27 11:30 Christos Zoulas <christos@astron.com> 1172 1173 * Remove 3rd and 4th copyright clause; approved by Ian Darwin. 1174 1175 * Fix small memory leaks; caught by: Tamas Sarlos 1176 <stamas@csillag.ilab.sztaki.hu> 1177 11782004-07-24 16:33 Christos Zoulas <christos@astron.com> 1179 1180 * magic.mime update Danny Milosavljevic <danny.milo@gmx.net> 1181 1182 * FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com> 1183 1184 * utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com> 1185 1186 * errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org> 1187 11882004-04-12 10:55 Christos Zoulas <christos@astron.com> 1189 1190 * make sure that magic formats match magic types during compilation 1191 1192 * fix broken sgi magic file 1193 11942004-04-06 20:36 Christos Zoulas <christos@astron.com> 1195 1196 * detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com> 1197 1198 * magic fixes 1199 12002004-03-22 15:25 Christos Zoulas <christos@astron.com> 1201 1202 * Lots of mime fixes 1203 (Joerg Ostertag) <ostertag@rechengilde.de> 1204 1205 * FreeBSD ELF version handling 1206 (Edwin Groothuis) <edwin@mavetju.org> 1207 1208 * correct cleanup in all cases; don't just close the file. 1209 (Christos Zoulas) <christos@astron.com> 1210 1211 * add gettext message catalogue support 1212 (Michael Piefel) <piefel@debian.org> 1213 1214 * better printout for unreadable files 1215 (Michael Piefel) <piefel@debian.org> 1216 1217 * compensate for missing MAXPATHLEN 1218 (Michael Piefel) <piefel@debian.org> 1219 1220 * add wide character string length computation 1221 (Michael Piefel) <piefel@debian.org> 1222 1223 * Avoid infinite loops caused by bad elf alignments 1224 or name and description note sizes. Reported by 1225 (Mikael Magnusson) <mmikael@comhem.se> 1226 12272004-03-09 13:55 Christos Zoulas <christos@astron.com> 1228 1229 * Fix possible memory leak on error and add missing regfree 1230 (Dmitry V. Levin) <ldv@altlinux.org> 1231 12322003-12-23 12:12 Christos Zoulas <christos@astron.com> 1233 1234 * fix -k flag (Maciej W. Rozycki) 1235 12362003-11-18 14:10 Christos Zoulas <christos@astron.com> 1237 1238 * Try to give us much info as possible on corrupt elf files. 1239 (Willy Tarreau) <willy@w.ods.org> 1240 * Updated python bindings (Brett Funderburg) 1241 <brettf@deepfile.com> 1242 12432003-11-11 15:03 Christos Zoulas <christos@astron.com> 1244 1245 * Include file.h first, because it includes config.h 1246 breaks largefile test macros otherwise. 1247 (Paul Eggert <eggert@CS.UCLA.EDU> via 1248 Lars Hecking <lhecking@nmrc.ie>) 1249 12502003-10-14 21:39 Christos Zoulas <christos@astron.com> 1251 1252 * Python bindings (Brett Funderburg) <brettf@deepfile.com> 1253 * Don't lookup past the end of the buffer 1254 (Chad Hanson) <chanson@tcs-sec.com> 1255 * Add MAGIC_ERROR and api on magic_errno() 1256 12572003-10-08 12:40 Christos Zoulas <christos@astron.com> 1258 1259 * handle error conditions from compile as fatal 1260 (Antti Kantee) <pooka@netbsd.org> 1261 * handle magic filename parsing sanely 1262 * more magic fixes. 1263 * fix a memory leak (Illes Marton) <illes.marton@balabit.hu> 1264 * describe magic file handling 1265 (Bryan Henderson) <bryanh@giraffe-data.com> 1266 12672003-09-12 15:09 Christos Zoulas <christos@astron.com> 1268 1269 * update magic files. 1270 * remove largefile support from file.h; it breaks things on most OS's 1271 12722003-08-10 10:25 Christos Zoulas <christos@astron.com> 1273 1274 * fix unmapping'ing of mmaped files. 1275 12762003-07-10 12:03 Christos Zoulas <christos@astron.com> 1277 1278 * don't exit with -1 on error; always exit 1 (Marty Leisner) 1279 * restore utimes code. 1280 12812003-06-10 17:03 Christos Zoulas <christos@astron.com> 1282 1283 * make sure we don't access uninitialized memory. 1284 * pass lint 1285 * #ifdef __cplusplus in magic.h 1286 12872003-05-25 19:23 Christos Zoulas <christos@astron.com> 1288 1289 * rename cvs magic file to revision to deal with 1290 case insensitive filesystems. 1291 12922003-05-23 17:03 Christos Zoulas <christos@astron.com> 1293 1294 * documentation fixes from Michael Piefel <piefel@debian.org> 1295 * magic fixes (various) 1296 * revert basename magic in .mgc name determination 1297 * buffer protection in uncompress, 1298 signness issues, 1299 close files 1300 Maciej W. Rozycki <macro@ds2.pg.gda.pl 1301 13022003-04-21 20:12 Christos Zoulas <christos@astron.com> 1303 1304 * fix zsh magic 1305 13062003-04-04 16:59 Christos Zoulas <christos@astron.com> 1307 1308 * fix operand sort order in string. 1309 13102003-04-02 17:30 Christos Zoulas <christos@astron.com> 1311 1312 * cleanup namespace in magic.h 1313 13142003-04-02 13:50 Christos Zoulas <christos@astron.com> 1315 1316 * Magic additions (Alex Ott) 1317 * Fix bug that broke VPATH compilation (Peter Breitenlohner) 1318 13192003-03-28 16:03 Christos Zoulas <christos@astron.com> 1320 1321 * remove packed attribute from magic struct. 1322 * make the magic struct properly aligned. 1323 * bump version number of compiled files to 2. 1324 13252003-03-27 13:10 Christos Zoulas <christos@astron.com> 1326 1327 * separate tar detection and run it before softmagic. 1328 * fix reversed symlink test. 1329 * fix version printing. 1330 * make separator a string instead of a char. 1331 * update manual page and sort options. 1332 13332003-03-26 11:00 Christos Zoulas <christos@astron.com> 1334 1335 * Pass lint 1336 * make NULL in magic_file mean stdin 1337 * Fix "-" argument to file to pass NULL to magic_file 1338 * avoid pointer casts by using memcpy 1339 * rename magic_buf -> magic_buffer 1340 * keep only the first error 1341 * manual page: new sentence, new line 1342 * fix typo in api function (magic_buf -> magic_buffer) 1343