12026-02-26 11:32 Christos Zoulas <christos@zoulas.com> 2 3 * release 5.47 4 52026-02-04 09:54 Christos Zoulas <christos@zoulas.com> 6 * Better multi-compound document identification by following the 7 order of the directories entries. (Thomas Ledoux) 8 92026-01-19 14:00 Christos Zoulas <christos@zoulas.com> 10 * if stat fails, don't attempt to restore times (Steven Grubb) 11 122025-05-28 15:20 Christos Zoulas <christos@zoulas.com> 13 14 PR/622: Odd_Bloke: Handle negative offsets in file_buffer(), 15 when fd is not available. 16 172025-05-28 12:50 Christos Zoulas <christos@zoulas.com> 18 19 * PR/655: jsummers: Obey str_flags in strings like we do for search 20 and regex 21 * PR/659: Pitzl: Apply MAGIC_CONTINUE to annotations; i.e. print 22 only the first, unless -k is specified. 23 242024-12-19 14:44 Christos Zoulas <christos@zoulas.com> 25 26 * PR/592: allow + in format strings 27 * PR/592: signed operations should be done in signed context 28 292024-12-05 13:50 Christos Zoulas <christos@zoulas.com> 30 31 * PR/578: jsummers: Don't crash on cygwin when tm_mon == -1 32 * PR/579: net147: Fix stack overrun. 33 342024-11-27 14:44 Christos Zoulas <christos@zoulas.com> 35 36 * release 5.46 37 * Add OFFPOSITIVE 38 392024-11-25 13:56 Christos Zoulas <christos@zoulas.com> 40 41 * avoid leaking symbols in libmagic 42 432024-11-10 13:56 Christos Zoulas <christos@zoulas.com> 44 45 * PR/562: jsummers: Search/regex offsets are absolute to the 46 beginning of the file, so adjust them by subtracting the 47 offset that the "use" starts so that we don't double-count it. 48 49 502024-11-09 19:30 Christos Zoulas <christos@zoulas.com> 51 * PR/543: matshch: bump nbuf so we can get the flags into the buffer. 52 53 542024-11-02 14:34 Christos Zoulas <christos@zoulas.com> 55 56 * Add Android elf notes (enh) 57 582023-12-29 12:55 Christos Zoulas <christos@zoulas.com> 59 60 * Add limit for number of magic warnings allowed 61 622023-07-29 12:55 Christos Zoulas <christos@zoulas.com> 63 64 * check regex bounds (found by clusterfuzz) 65 662023-07-27 15:45 Christos Zoulas <christos@zoulas.com> 67 68 * release 5.45 69 702023-07-17 11:53 Christos Zoulas <christos@zoulas.com> 71 72 * PR/465: psrok1: Avoid muslc asctime_r crash 73 742023-05-21 13:05 Christos Zoulas <christos@zoulas.com> 75 76 * add SIMH tape format support 77 782023-02-09 12:50 Christos Zoulas <christos@zoulas.com> 79 80 * bump the max size of the elf section notes to be read to 128K 81 and make it configurable 82 832023-01-08 1:08 Christos Zoulas <christos@zoulas.com> 84 85 * PR/415: Fix decompression with program returning empty 86 872022-12-26 1:47 Christos Zoulas <christos@zoulas.com> 88 89 * PR/408: fix -p with seccomp 90 * PR/412: fix MinGW compilation 91 922022-12-26 12:26 Christos Zoulas <christos@zoulas.com> 93 94 * release 5.44 95 962022-12-14 9:24 Christos Zoulas <christos@zoulas.com> 97 98 * Handle nan's so that we don't get internal floating point exceptions 99 when they are enabled (Vincent Mihalkovic) 100 1012022-10-23 10:21 Christos Zoulas <christos@zoulas.com> 102 103 * PR/397: Restore the ability to process files from stdin immediately. 104 1052022-09-20 17:12 Christos Zoulas <christos@zoulas.com> 106 107 * fixed various clustefuzz issues 108 1092022-09-19 15:54 Christos Zoulas <christos@zoulas.com> 110 111 * Fix error detection for decompression code (Vincent Mihalkovic) 112 1132022-09-15 13:50 Christos Zoulas <christos@zoulas.com> 114 115 * Add MAGIC_NO_COMPRESS_FORK and use it to produce a more 116 meaningful error message if we are sandboxing. 117 1182022-09-15 10:45 Christos Zoulas <christos@zoulas.com> 119 120 * Add built-in lzip decompression support (Michal Gorny) 121 1222022-09-14 10:35 Christos Zoulas <christos@zoulas.com> 123 124 * Add built-in zstd decompression support (Martin Rodriguez Reboredo) 125 1262022-09-13 14:55 Christos Zoulas <christos@zoulas.com> 127 128 * release 5.43 129 1302022-09-10 9:17 Christos Zoulas <christos@zoulas.com> 131 132 * Add octal indirect magic (Michal Gorny) 133 1342022-08-17 11:43 Christos Zoulas <christos@zoulas.com> 135 136 * PR/374: avoid infinite loop in non-wide code (piru) 137 * PR/373: Obey MAGIC_CONTINUE with multiple magic files (vismarli) 138 1392022-07-26 11:10 Christos Zoulas <christos@zoulas.com> 140 141 * Fix bug with large flist (Florian Weimer) 142 1432022-07-07 13:21 Christos Zoulas <christos@zoulas.com> 144 145 * PR/364: Detect non-nul-terminated core filenames from QEMU 146 (mam-ableton) 147 1482022-07-04 15:45 Christos Zoulas <christos@zoulas.com> 149 150 * PR/359: Add support for http://ndjson.org/ (darose) 151 * PR/362: Fix wide printing (ro-ee) 152 * PR/358: Fix width for -f - (jpalus) 153 * PR/356: Fix JSON constant parsing (davewhite) 154 1552022-06-10 9:40 Christos Zoulas <christos@zoulas.com> 156 157 * release 5.42 158 1592022-05-31 14:50 Christos Zoulas <christos@zoulas.com> 160 161 * PR/348: add missing cases to prevent file from aborting on 162 random magic files. 163 1642022-05-27 21:05 Christos Zoulas <christos@zoulas.com> 165 166 * PR/351: octalify filenames when not raw before printing. 167 1682022-04-18 17:51 Christos Zoulas <christos@zoulas.com> 169 170 * fix regex cacheing bug (Dirk Mueller) 171 * merge file_regcomp and file_regerror() to simplify the code 172 and reduce memory requirements for storing regexes (Dirk Mueller) 173 1742022-03-19 12:56 Christos Zoulas <christos@zoulas.com> 175 176 * cache regex (Dirk Mueller) 177 * detect filesystem full by flushing output (Dirk Mueller) 178 1792021-11-19 12:36 Christos Zoulas <christos@zoulas.com> 180 181 * implement running decompressor programs using 182 posix_spawnp(2) instead of vfork(2) 183 1842021-10-24 11:51 Christos Zoulas <christos@zoulas.com> 185 186 * Add support for msdos dates and times 187 1882021-10-20 9:55 Christos Zoulas <christos@zoulas.com> 189 190 * use the system byte swapping functions if available (Werner Fink) 191 1922021-10-18 11:57 Christos Zoulas <christos@zoulas.com> 193 194 * release 5.41 195 1962021-09-23 03:51 Christos Zoulas <christos@zoulas.com> 197 198 * Avinash Sonawane: Fix tzname detection 199 2002021-09-03 09:17 Christos Zoulas <christos@zoulas.com> 201 202 * Fix relationship tests with "search" magic, don't short circuit 203 logic 204 2052021-07-13 01:06 Christos Zoulas <christos@zoulas.com> 206 207 * Fix memory leak in compile mode 208 2092021-07-01 03:51 Christos Zoulas <christos@zoulas.com> 210 211 * PR/272: kiefermat: Only set returnval = 1 when we printed something 212 (in all cases print or !print). This simplifies the logic and fixes 213 the issue in the PR with -k and --mime-type there was no continuation 214 printed before the default case. 215 2162021-06-30 13:07 Christos Zoulas <christos@zoulas.com> 217 218 * PR/270: Don't translate unprintable characters in %s magic formats 219 when -r 220 * PR/269: Avoid undefined behavior with clang (adding offset to NULL) 221 2222021-05-09 18:38 Christos Zoulas <christos@zoulas.com> 223 224 * Add a new flag (f) that requires that the match is a full word, 225 not a partial word match. 226 * Add varint types (unused) 227 2282021-04-19 17:17 Christos Zoulas <christos@zoulas.com> 229 230 * PR/256: mutableVoid: If the file is less than 3 bytes, use the file 231 length to determine type 232 * PR/259: aleksandr.v.novichkov: mime printing through indirect magic 233 is not taken into account, use match directly so that it does. 234 2352021-04-04 17:02 Christos Zoulas <christos@zoulas.com> 236 237 * count the total bytes found not the total byte positions 238 in order to determine encoding (Anatol Belski) 239 2402021-03-30 20:21 Christos Zoulas <christos@zoulas.com> 241 242 * release 5.40 243 2442021-02-05 16:31 Christos Zoulas <christos@zoulas.com> 245 246 * PR/234: Add limit to the number of bytes to scan for encoding 247 * PR/230: Fix /T (trim flag) for regex 248 2492021-02-01 12:31 Christos Zoulas <christos@zoulas.com> 250 * PR/77: Trim trailing separator. 251 2522020-12-17 15:44 Christos Zoulas <christos@zoulas.com> 253 254 * PR/211: Convert system read errors from corrupt ELF 255 files into human readable error messages 256 2572020-12-08 16:24 Christos Zoulas <christos@zoulas.com> 258 259 * fix multithreaded decompression file descriptor issue 260 by using close-on-exec (Denys Vlasenko) 261 2622020-06-27 11:58 Christos Zoulas <christos@zoulas.com> 263 264 * Exclude surrogate pairs from utf-8 detection (Michael Liu) 265 2662020-06-25 12:53 Christos Zoulas <christos@zoulas.com> 267 268 * Include # to the list of ignored format chars (Werner Fink) 269 2702020-06-14 20:02 Christos Zoulas <christos@zoulas.com> 271 272 * release 5.39 273 2742020-06-07 20:00 Christos Zoulas <christos@zoulas.com> 275 276 * Remove unused subtype_mime (Steve Grubb) 277 * Remove unused check in okstat (Steve Grubb) 278 * Fix mime-type in elf binaries by making sure $x is set 279 * Fix indirect negative offsets broken by OFFNEGATIVE 280 * Fix GUID equality check 281 * PR/165: Handle empty array and strings in JSON 282 * PR/162: Add --exclude-quiet 283 2842020-06-06 15:33 Christos Zoulas <christos@zoulas.com> 285 286 * Fix memory leak in ascmagic (Steve Grubb) 287 2882020-06-04 00:21 Christos Zoulas <christos@zoulas.com> 289 290 * Fix string comparison length with ignore whitespace 291 2922020-05-31 00:11 Christos Zoulas <christos@zoulas.com> 293 294 * Fix mingwin 64 compilation 295 2962020-05-30 23:56 Christos Zoulas <christos@zoulas.com> 297 298 * PR/159: whitelist getpid needed for file_pipe2file() 299 3002020-05-09 18:57 Christos Zoulas <christos@zoulas.com> 301 302 * Indicate negative offsets with a flag OFFNEGATIVE 303 so that -0 works. 304 * Introduce "offset" magic type that can be used to 305 detect the file size, and bail on short files. 306 * document DER better in the magic man page. 307 3082020-03-11 21:53 Christos Zoulas <christos@zoulas.com> 309 310 * fix memory leaks (SonarQube) 311 3122020-03-08 21:33 Christos Zoulas <christos@zoulas.com> 313 314 * fix memory leaks (SonarQube) 315 * rewrite confusing loops (SonarQube) 316 * fix bogus test (SonarQube) 317 * pass a sized buffer to file_fmttime() (SonarQube) 318 319 * fix memory leaks (SonarQube) 320 3212020-02-20 15:50 Christos Zoulas <christos@zoulas.com> 322 323 * Don't allow * in printf formats, or the code itself (Christoph Biedl) 324 * Introduce a printf output size checker to avoid DoS attacks 325 3262020-02-17 17:22 Christos Zoulas <christos@zoulas.com> 327 328 * Avoid memory leak on error (oss-fuzz) 329 * Check length of string on DER before derefercing and add new types 330 * Add missing DER string (oss-fuzz) 331 3322020-02-16 20:45 Christos Zoulas <christos@zoulas.com> 333 334 * Add missing DER types, and debugging 335 3362020-02-13 13:10 Christos Zoulas <christos@zoulas.com> 337 338 * PR/140: Avoid abort with hand-crafted magic file (gockelhahn) 339 * PR/139 Avoid DoS in printf with hand-crafted magic file (gockelhahn) 340 * PR/138: Avoid crash with hand-crafted magic file (gockelhahn) 341 3422020-02-12 17:30 Christos Zoulas <christos@zoulas.com> 343 344 * PR/136: Fix static build by adding a libmagic.pc (Fabrice Fontaine) 345 3462019-12-24 14:16 Christos Zoulas <christos@zoulas.com> 347 348 * add guid support 349 3502019-12-16 21:11 Christos Zoulas <christos@zoulas.com> 351 352 * release 5.38 353 3542019-12-15 22:13 Christos Zoulas <christos@zoulas.com> 355 Document changes since the previous release: 356 - Always accept -S (no sandbox) even if we don't support sandboxing 357 - More syscalls elided for sandboxing 358 - For ELF dynamic means having an interpreter not just PT_DYNAMIC 359 - Check for large ELF session header offset 360 - When saving and restoring a locale, keep the locale name in our 361 own storage. 362 - Add a flag to disable CSV file detection. 363 - Don't pass NULL/0 to memset to appease sanitizers. 364 - Avoid spurious prints when looks for extensions or apple strings 365 in fsmagic. 366 - Add builtin decompressors for xz and and bzip. 367 - Add a limit for the number of CDF elements. 368 - More checks for overflow in CDF. 369 3702019-05-14 22:26 Christos Zoulas <christos@zoulas.com> 371 372 * release 5.37 373 3742019-05-09 22:27 Christos Zoulas <christos@zoulas.com> 375 376 * Make sure that continuation separators are printed 377 with -k within softmagic 378 3792019-05-06 22:27 Christos Zoulas <christos@zoulas.com> 380 381 * Change SIGPIPE saving and restoring during compression to use 382 sigaction(2) instead of signal(3) and cache it. (Denys Vlasenko) 383 * Cache stat(2) calls more to reduce number of calls (Denys Vlasenko) 384 3852019-05-06 17:25 Christos Zoulas <christos@zoulas.com> 386 387 * PR/77: Handle --mime-type and -k correctly. 388 3892019-05-03 15:26 Christos Zoulas <christos@zoulas.com> 390 391 * Switch decompression code to use vfork() because 392 tools like rpmdiff and rpmbuild call libmagic 393 with large process footprints (Denys Vlasenko) 394 3952019-04-07 14:05 Christos Zoulas <christos@zoulas.com> 396 397 * PR/75: --enable-zlib, did not work. 398 3992019-02-27 11:54 Christos Zoulas <christos@zoulas.com> 400 401 * Improve regex efficiency (Michael Schroeder) by: 402 1. Prefixing regex searches with regular search 403 for keywords where possible 404 2. Using memmem(3) where available 405 4062019-02-20 10:16 Christos Zoulas <christos@zoulas.com> 407 408 * release 5.36 409 4102019-02-19 15:30 Christos Zoulas <christos@zoulas.com> 411 412 * Fix cast to use cast macros 413 * Add UCS-32 builtin detection (PR/61) reported by tmc 414 4152019-02-18 18:24 Christos Zoulas <christos@zoulas.com> 416 417 * Fix stack read (PR/62) and write (PR/64) stack overflows 418 reported by spinpx 419 4202018-10-18 19:32 Christos Zoulas <christos@zoulas.com> 421 422 * release 5.35 423 4242018-09-10 20:38 Christos Zoulas <christos@zoulas.com> 425 426 * Add FreeBSD ELF core file support (John Baldwin) 427 4282018-08-20 18:40 Christos Zoulas <christos@zoulas.com> 429 430 * PR/30: Allow all parameter values to be set (don't treat 0 specially) 431 * handle default annotations on the softmagic match instead at the 432 end. 433 4342018-07-25 10:17 Christos Zoulas <christos@zoulas.com> 435 436 * PR/23: Recognize JSON files 437 4382018-07-25 10:17 Christos Zoulas <christos@zoulas.com> 439 440 * PR/18: file --mime-encoding should not print mime-type 441 4422018-07-25 8:50 Christos Zoulas <christos@zoulas.com> 443 444 * release 5.34 445 4462018-06-22 16:38 Christos Zoulas <christos@zoulas.com> 447 448 * Add Quad indirect offsets 449 4502018-05-24 14:10 Christos Zoulas <christos@zoulas.com> 451 452 * Enable parsing of ELF dynamic sections to handle PIE better 453 4542018-04-15 14:52 Christos Zoulas <christos@zoulas.com> 455 456 * release 5.33 457 4582018-02-24 14:50 Christos Zoulas <christos@zoulas.com> 459 460 * extend the support for ${x?:} expansions for magic descriptions 461 4622018-02-21 16:25 Christos Zoulas <christos@zoulas.com> 463 464 * add support for ${x?:} in mime types to handle 465 pie binaries. 466 4672017-11-03 9:23 Christos Zoulas <christos@zoulas.com> 468 469 * add support for negative offsets (offsets from the end of file) 470 4712017-09-26 8:22 Christos Zoulas <christos@zoulas.com> 472 473 * close the file on error when writing magic (Steve Grubb) 474 4752017-09-24 12:02 Christos Zoulas <christos@zoulas.com> 476 477 * seccomp support (Paul Moore) 478 4792017-09-02 11:53 Christos Zoulas <christos@zoulas.com> 480 481 * release 5.32 482 4832017-08-28 16:37 Christos Zoulas <christos@zoulas.com> 484 485 * Always reset state in {file,buffer}_apprentice (Krzysztof Wilczynski) 486 4872017-08-27 03:55 Christos Zoulas <christos@zoulas.com> 488 489 * Fix always true condition (Thomas Jarosch) 490 4912017-05-24 17:30 Christos Zoulas <christos@zoulas.com> 492 493 * pickier parsing of numeric values in magic files. 494 4952017-05-23 17:55 Christos Zoulas <christos@zoulas.com> 496 497 * PR/615 add magic_getflags() 498 4992017-05-23 13:55 Christos Zoulas <christos@zoulas.com> 500 501 * release 5.31 502 5032017-03-17 20:32 Christos Zoulas <christos@zoulas.com> 504 505 * remove trailing spaces from magic files 506 * refactor is_tar 507 * better bounds checks for cdf 508 5092017-02-10 12:24 Christos Zoulas <christos@zoulas.com> 510 511 * release 5.30 512 5132017-02-07 23:27 Christos Zoulas <christos@zoulas.com> 514 515 * If we exceeded the offset in a search return no match 516 (Christoph Biedl) 517 * Be more lenient on corrupt CDF files (Christoph Biedl) 518 5192017-02-04 16:46 Christos Zoulas <christos@zoulas.com> 520 521 * pacify ubsan sign extension (oss-fuzz/524) 522 5232017-02-01 12:42 Christos Zoulas <christos@zoulas.com> 524 525 * off by one in cdf parsing (PR/593) 526 * report debugging sections in elf (PR/591) 527 5282016-11-06 10:52 Christos Zoulas <christos@zoulas.com> 529 530 * Allow @@@ in extensions 531 * Add missing overflow check in der magic (Jonas Wagner) 532 5332016-10-25 10:40 Christos Zoulas <christos@zoulas.com> 534 535 * release 5.29 536 5372016-10-24 11:20 Christos Zoulas <christos@zoulas.com> 538 539 * der getlength overflow (Jonas Wagner) 540 * multiple magic file load failure (Christoph Biedl) 541 5422016-10-17 11:26 Christos Zoulas <christos@zoulas.com> 543 544 * CDF parsing improvements (Guy Helmer) 545 5462016-07-20 7:26 Christos Zoulas <christos@zoulas.com> 547 548 * Add support for signed indirect offsets 549 5502016-07-18 7:41 Christos Zoulas <christos@zoulas.com> 551 552 * cat /dev/null | file - should print empty (Christoph Biedl) 553 5542016-07-05 15:20 Christos Zoulas <christos@zoulas.com> 555 556 * Bump string size from 64 to 96. 557 5582016-06-13 20:20 Christos Zoulas <christos@zoulas.com> 559 560 * PR/556: Fix separators on annotations. 561 5622016-06-13 19:40 Christos Zoulas <christos@zoulas.com> 563 564 * release 5.28 565 * fix leak on allocation failure 566 5672016-06-01 1:20 Christos Zoulas <christos@zoulas.com> 568 569 * PR/555: Avoid overflow for offset > nbytes 570 * PR/550: Segv on DER parsing: 571 - use the correct variable for length 572 - set offset to 0 on failure. 573 5742016-05-13 12:00 Christos Zoulas <christos@zoulas.com> 575 576 * release 5.27 577 5782016-04-18 9:35 Christos Zoulas <christos@zoulas.com> 579 580 * Errors comparing DER entries or computing offsets 581 are just indications of malformed non-DER files. 582 Don't print them. 583 * Offset comparison was off-by-one. 584 * Fix compression code (Werner Fink) 585 * Put new bytes constant in the right file (not the generated one) 586 5872016-04-16 18:34 Christos Zoulas <christos@zoulas.com> 588 589 * release 5.26 590 5912016-03-31 13:50 Christos Zoulas <christos@zoulas.com> 592 593 * make the number of bytes read from files configurable. 594 5952016-03-21 13:40 Christos Zoulas <christos@zoulas.com> 596 597 * Add bounds checks for DER code (discovered by Thomas Jarosch) 598 * Change indirect recursion limit to indirect use count and 599 bump from 15 to 50 to prevent abuse. 600 6012016-03-13 20:39 Christos Zoulas <christos@zoulas.com> 602 603 * Add -00 which prints filename\0description\0 604 6052016-03-01 13:28 Christos Zoulas <christos@zoulas.com> 606 607 * Fix ID3 indirect parsing 608 6092016-01-19 10:18 Christos Zoulas <christos@zoulas.com> 610 611 * add DER parsing capability 612 6132015-11-13 10:35 Christos Zoulas <christos@zoulas.com> 614 615 * provide dprintf(3) for the OS's that don't have it. 616 6172015-11-11 16:25 Christos Zoulas <christos@zoulas.com> 618 619 * redo the compression code report decompression errors 620 6212015-11-10 23:25 Christos Zoulas <christos@zoulas.com> 622 623 * REG_STARTEND code is not working as expected, delete it. 624 6252015-11-09 16:05 Christos Zoulas <christos@zoulas.com> 626 627 * Add zlib support if we have it. 628 6292015-11-05 11:22 Christos Zoulas <christos@zoulas.com> 630 631 * PR/492: compression forking was broken with magic_buffer. 632 6332015-09-16 9:50 Christos Zoulas <christos@zoulas.com> 634 635 * release 5.25 636 6372015-09-11 13:25 Christos Zoulas <christos@zoulas.com> 638 639 * add a limit to the length of regex searches 640 6412015-09-08 9:50 Christos Zoulas <christos@zoulas.com> 642 643 * fix problems with --parameter (Christoph Biedl) 644 6452015-07-11 10:35 Christos Zoulas <christos@zoulas.com> 646 647 * Windows fixes PR/466 (Jason Hood) 648 6492015-07-09 10:35 Christos Zoulas <christos@zoulas.com> 650 651 * release 5.24 652 6532015-06-11 8:52 Christos Zoulas <christos@zoulas.com> 654 655 * redo long option encoding to fix off-by-one in 5.23 656 6572015-06-10 13:50 Christos Zoulas <christos@zoulas.com> 658 659 * release 5.23 660 6612015-06-09 16:10 Christos Zoulas <christos@zoulas.com> 662 663 * Fix issue with regex range for magic with offset 664 * Always return true from mget with USE (success to mget not match 665 indication). Fixes mime evaluation after USE magic 666 * PR/459: Don't insert magic entries to the list if there are parsing 667 errors for them. 668 6692015-06-03 16:00 Christos Zoulas <christos@zoulas.com> 670 671 * PR/455: Add utf-7 encoding 672 6732015-06-03 14:30 Christos Zoulas <christos@zoulas.com> 674 675 * PR/455: Implement -Z, look inside, but don't report on compression 676 * PR/454: Fix allocation error on bad magic. 677 6782015-05-29 10:30 Christos Zoulas <christos@zoulas.com> 679 680 * handle MAGIC_CONTINUE everywhere, not just in softmagic 681 6822015-05-21 14:30 Christos Zoulas <christos@zoulas.com> 683 684 * don't print descriptions for NAME types when mime. 685 6862015-04-09 15:59 Christos Zoulas <christos@zoulas.com> 687 688 * Add --extension to list the known extensions for this file type 689 Idea by Andrew J Roazen 690 6912015-02-14 12:23 Christos Zoulas <christos@zoulas.com> 692 693 * Bump file search buffer size to 1M. 694 6952015-01-09 14:35 Christos Zoulas <christos@zoulas.com> 696 697 * Fix multiple issues with date formats reported by Christoph Biedl: 698 - T_LOCAL meaning was reversed 699 - Arithmetic did not work 700 Also stop adjusting daylight savings for gmt printing. 701 7022015-01-05 13:00 Christos Zoulas <christos@zoulas.com> 703 704 * PR/411: Fix memory corruption from corrupt cdf file. 705 7062015-01-02 15:15 Christos Zoulas <christos@zoulas.com> 707 708 * release 5.22 709 7102015-01-01 12:01 Christos Zoulas <christos@zoulas.com> 711 712 * add indirect relative for TIFF/Exif 713 7142014-12-16 18:10 Christos Zoulas <christos@zoulas.com> 715 716 * restructure elf note printing to avoid repeated messages 717 * add note limit, suggested by Alexander Cherepanov 718 7192014-12-16 16:53 Christos Zoulas <christos@zoulas.com> 720 721 * Bail out on partial pread()'s (Alexander Cherepanov) 722 * Fix incorrect bounds check in file_printable (Alexander Cherepanov) 723 7242014-12-11 20:01 Christos Zoulas <christos@zoulas.com> 725 726 * PR/405: ignore SIGPIPE from uncompress programs 727 * change printable -> file_printable and use it in 728 more places for safety 729 * in ELF, instead of "(uses dynamic libraries)" when PT_INTERP 730 is present print the interpreter name. 731 7322014-12-10 20:01 Christos Zoulas <christos@zoulas.com> 733 734 * release 5.21 735 7362014-11-27 18:40 Christos Zoulas <christos@zoulas.com> 737 738 * Allow setting more parameters from the command line. 739 * Split name/use and indirect magic recursion limits. 740 7412014-11-27 11:12 Christos Zoulas <christos@zoulas.com> 742 743 * Adjust ELF parameters and the default recursion 744 level. 745 * Allow setting the recursion level dynamically. 746 7472014-11-24 8:55 Christos Zoulas <christos@zoulas.com> 748 749 * The following fixes resulted from Thomas Jarosch's fuzzing 750 tests that revealed severe performance issues on pathological 751 input: 752 - limit number of elf program and sections processing 753 - abort elf note processing quickly 754 - reduce the number of recursion levels from 20 to 10 755 - preserve error messages in indirect magic handling 756 757 This is tracked as CVE-2014-8116 and CVE-2014-8117 758 7592014-11-12 10:30 Christos Zoulas <christos@zoulas.com> 760 761 * fix bogus free in the user buffer case. 762 7632014-11-11 12:35 Christos Zoulas <christos@zoulas.com> 764 765 * fix out of bounds read for pascal strings 766 * fix memory leak (not freeing the head of each mlist) 767 7682014-11-07 10:25 Christos Zoulas <christos@zoulas.com> 769 770 * When printing strings from a file, convert them to printable 771 on a byte by byte basis, so that we don't get issues with 772 locale's trying to interpret random byte streams as UTF-8 and 773 having printf error out with EILSEQ. 774 7752014-10-17 11:48 Christos Zoulas <christos@zoulas.com> 776 777 * fix bounds in note reading (Francisco Alonso / Red Hat) 778 7792014-10-11 15:02 Christos Zoulas <christos@zoulas.com> 780 781 * fix autoconf glue for setlocale and locale_t; some OS's 782 have locale_t in xlocale.h 783 7842014-10-10 15:01 Christos Zoulas <christos@zoulas.com> 785 786 * release 5.20 787 7882014-08-17 10:01 Christos Zoulas <christos@zoulas.com> 789 790 * recognize encrypted CDF documents 791 7922014-08-04 9:18 Christos Zoulas <christos@zoulas.com> 793 794 * add magic_load_buffers from Brooks Davis 795 7962014-07-24 16:40 Christos Zoulas <christos@zoulas.com> 797 798 * add thumbs.db support 799 8002014-06-12 12:28 Christos Zoulas <christos@zoulas.com> 801 802 * release 5.19 803 8042014-06-09 9:04 Christos Zoulas <christos@zoulas.com> 805 806 * Misc buffer overruns and missing buffer size tests in cdf parsing 807 (Francisco Alonso, Jan Kaluza) 808 8092014-06-02 14:50 Christos Zoulas <christos@zoulas.com> 810 811 * Enforce limit of 8K on regex searches that have no limits 812 * Allow the l modifier for regex to mean line count. Default 813 to byte count. If line count is specified, assume a max 814 of 80 characters per line to limit the byte count. 815 * Don't allow conversions to be used for dates, allowing 816 the mask field to be used as an offset. 817 8182014-05-30 12:51 Christos Zoulas <christos@zoulas.com> 819 820 * Make the range operator limit the length of the 821 regex search. 822 8232014-05-14 19:23 Christos Zoulas <christos@zoulas.com> 824 825 * PR/347: Windows fixes 826 * PR/352: Hangul word processor recognition 827 * PR/354: Encoding irregularities in text files 828 8292014-05-06 6:12 Christos Zoulas <christos@zoulas.com> 830 831 * Fix uninitialized title in CDF files (Jan Kaluza) 832 8332014-05-04 14:55 Christos Zoulas <christos@zoulas.com> 834 835 * PR/351: Fix compilation of empty files 836 8372014-04-30 17:39 Christos Zoulas <christos@zoulas.com> 838 839 * Fix integer formats: We don't specify 'l' or 840 'h' and 'hh' specifiers anymore, only 'll' for 841 quads and nothing for the rest. This is so that 842 magic writing is simpler. 843 8442014-04-01 15:25 Christos Zoulas <christos@zoulas.com> 845 846 * PR/341: Jan Kaluza, fix memory leak 847 * PR/342: Jan Kaluza, fix out of bounds read 848 8492014-03-28 15:25 Christos Zoulas <christos@zoulas.com> 850 851 * Fix issue with long formats not matching fmtcheck 852 8532014-03-26 11:25 Christos Zoulas <christos@zoulas.com> 854 855 * release 5.18 856 8572014-03-15 17:45 Christos Zoulas <christos@zoulas.com> 858 859 * add fmtcheck(3) for those who don't have it 860 8612014-03-14 15:12 Christos Zoulas <christos@zoulas.com> 862 863 * prevent mime entries from being attached to magic 864 entries with no descriptions 865 866 * adjust magic strength for regex type 867 868 * remove superfluous ascmagic with encoding test 869 8702014-03-06 12:01 Christos Zoulas <christos@zoulas.com> 871 872 * fix regression fix echo -ne "\012\013\014" | file -i - 873 which printed "binary" instead of "application/octet-stream" 874 875 * add size_t overflow check for magic file size 876 8772014-02-27 16:01 Christos Zoulas <christos@zoulas.com> 878 879 * experimental support for matching with CFD CLSID 880 8812014-02-18 13:04 Kimmo Suominen (kimmo@suominen.com) 882 883 * Cache old LC_CTYPE locale before setting it to "C", so 884 we can use it to restore LC_CTYPE instead of asking 885 setlocale() to scan the environment variables. 886 8872014-02-12 18:21 Christos Zoulas <christos@zoulas.com> 888 889 * Count recursion levels through indirect magic 890 8912014-02-11 10:40 Christos Zoulas <christos@zoulas.com> 892 893 * Prevent infinite recursion on files with indirect offsets of 0 894 8952014-01-30 21:00 Christos Zoulas <christos@zoulas.com> 896 897 * Add -E flag that makes file print filesystem errors to stderr 898 and exit. 899 9002014-01-08 17:20 Christos Zoulas <christos@zoulas.com> 901 902 * mime printing could print results from multiple magic entries 903 if there were multiple matches. 904 * in some cases overflow was not detected when computing offsets 905 in softmagic. 906 9072013-12-05 12:00 Christos Zoulas <christos@zoulas.com> 908 909 * use strcasestr() to for cdf strings 910 * reset to the "C" locale while doing regex operations, or case 911 insensitive comparisons; this is provisional 912 9132013-11-19 20:10 Christos Zoulas <christos@zoulas.com> 914 915 * always leave magic file loaded, don't unload for magic_check, etc. 916 * fix default encoding to binary instead of unknown which broke recently 917 * handle empty and one byte files, less specially so that 918 --mime-encoding does not break completely. 919 ` 9202013-11-06 14:40 Christos Zoulas <christos@zoulas.com> 921 922 * fix erroneous non-zero exit code from non-existent file and message 923 9242013-10-29 14:25 Christos Zoulas <christos@zoulas.com> 925 926 * add CDF MSI file detection (Guy Helmer) 927 9282013-09-03 11:56 Christos Zoulas <christos@zoulas.com> 929 930 * Don't mix errors and regular output if there was an error 931 * in magic_descriptor() don't close the file and try to restore 932 its position 933 9342013-05-30 17:25 Christos Zoulas <christos@zoulas.com> 935 936 * Don't treat magic as an error if offset was past EOF (Christoph Biedl) 937 9382013-05-28 17:25 Christos Zoulas <christos@zoulas.com> 939 940 * Fix spacing issues in softmagic and elf (Jan Kaluza) 941 9422013-05-02 18:00 Christos Zoulas <christos@zoulas.com> 943 944 * Fix segmentation fault with multiple magic_load commands. 945 9462013-04-22 11:20 Christos Zoulas <christos@zoulas.com> 947 948 * The way "default" was implemented was not very useful 949 because the "if something was printed at that level" 950 was not easily controlled by the user, and the format 951 was bound to a string which is too restrictive. Add 952 a "clear" for that level keyword and make "default" 953 void. This way one can do: 954 955 >>13 clear x 956 >>13 lelong 1 foo 957 >>13 lelong 2 bar 958 >>13 default x 959 >>>13 lelong x unknown %x 960 9612013-03-25 13:20 Christos Zoulas <christos@zoulas.com> 962 963 * disallow strength setting in "name" entries 964 9652013-03-06 21:24 Christos Zoulas <christos@zoulas.com> 966 967 * fix recursive magic separator printing 968 9692013-02-26 19:28 Christos Zoulas <christos@zoulas.com> 970 971 * limit recursion level for mget 972 * fix pread() related breakage in cdf 973 * handle offsets properly in recursive "use" 974 9752013-02-18 10:39 Christos Zoulas <christos@zoulas.com> 976 977 * add elf reading of debug info to determine if file is stripped 978 (Jan Kaluza) 979 * use pread() 980 9812013-01-25 18:05 Christos Zoulas <christos@zoulas.com> 982 983 * change mime description size from 64 to 80 to accommodate OOXML. 984 9852013-01-11 14:50 Christos Zoulas <christos@zoulas.com> 986 987 * Warn about inconsistent continuation levels. 988 * Change fsmagic to add a space after it prints. 989 9902013-01-10 21:00 Christos Zoulas <christos@zoulas.com> 991 992 * Make getline public so that file can link against it. 993 Perhaps it is better to rename it, or hide it differently. 994 Fixes builds on platforms that do not provide it. 995 9962013-01-07 16:30 Christos Zoulas <christos@zoulas.com> 997 998 * Add SuS d{,1,2,4,8}, u{,1,2,4,8} and document 999 what long, int, short, etc is (Guy Harris) 1000 10012013-01-06 11:20 Christos Zoulas <christos@zoulas.com> 1002 1003 * add magic_version function and constant 1004 * Redo memory allocation and de-allocation. 1005 (prevents double frees on non mmap platforms) 1006 * Fix bug with name/use having to do with passing 1007 found state from the parent to the child and back. 1008 10092012-12-19 8:47 Christos Zoulas <christos@zoulas.com> 1010 1011 * Only print elf capabilities for archs we know (Jan Kaluza) 1012 10132012-10-30 19:14 Christos Zoulas <christos@zoulas.com> 1014 1015 * Add "name" and "use" file types in order to look 1016 inside mach-o files. 1017 10182012-09-06 10:40 Christos Zoulas <christos@zoulas.com> 1019 1020 * make --version exit 0 (Matthew Schultz) 1021 * add string/T (Jan Kaluza) 1022 10232012-08-09 2:15 Christos Zoulas <christos@zoulas.com> 1024 1025 * add z and t modifiers for our own vasprintf 1026 * search for $HOME/.magic.mgc if it is there first 1027 * fix reads from a pipe, and preserve errno 1028 10292012-05-15 13:12 Christos Zoulas <christos@zoulas.com> 1030 1031 * use ctime_r, asctime_r 1032 10332012-04-06 17:18 Christos Zoulas <christos@zoulas.com> 1034 1035 * Fixes for indirect offsets to handle apple disk formats 1036 10372012-04-03 18:26 Christos Zoulas <christos@zoulas.com> 1038 1039 * Add windows date field types 1040 * More info for windows shortcuts (incomplete) 1041 10422012-02-20 17:33 Christos Zoulas <christos@zoulas.com> 1043 1044 * Fix CDF parsing issues found by CERT's fuzzing tool (Will Dormann) 1045 10462011-12-15 12:17 Chris Metcalf <cmetcalf@tilera.com> 1047 1048 * Support Tilera architectures (tile64, tilepro, tilegx). 1049 10502011-12-16 16:33 Reuben Thomas <rrt@sc3d.org> 1051 1052 * Add magic for /usr/bin/env Perl scripts 1053 * Weaken generic script magic to avoid clashing with 1054 language-specific magic. 1055 10562011-12-08 13:37 Reuben Thomas <rrt@sc3d.org> 1057 1058 * Simplify if (p) free(p) to free(p). 1059 10602011-12-08 13:07 Reuben Thomas <rrt@sc3d.org> 1061 1062 * Remove hardwired token finding (names.h), turning it into soft 1063 magic. Patterns are either anchored regexs or search/8192. English 1064 language detection and PL/1 detection have been removed as they 1065 were too fragile. -e tokens is still accepted for backwards 1066 compatibility. 1067 * Move 3ds patterns (which are commented out anyway) into autodesk 1068 (they were, oddly, in c-lang). 1069 10702011-12-06 00:16 Reuben Thomas <rrt@sc3d.org> 1071 1072 * Tweak strength of generic hash-bang detectors to be less than 1073 specific ones. 1074 * Make an inconsistent description of Python scripts consistent. 1075 10762011-12-05 23:58 Reuben Thomas <rrt@sc3d.org> 1077 1078 * Fix minor error in file(1). 1079 10802011-11-05 00:00 Reuben Thomas <rrt@sc3d.org> 1081 1082 * Fix issue #150 (I hope). 1083 10842011-09-22 12:57 Christos Zoulas <christos@zoulas.com> 1085 1086 * Python3 binding fixes from Kelly Anderson 1087 10882011-09-20 11:32 Christos Zoulas <christos@zoulas.com> 1089 1090 * If a string type magic entry is marked as text or binary 1091 only match text files against text entries and binary 1092 files against binary entries. 1093 10942011-09-01 12:12 Christos Zoulas <christos@zoulas.com> 1095 1096 * Don't wait for any subprocess, just the one we forked. 1097 10982011-08-26 16:40 Christos Zoulas <christos@zoulas.com> 1099 1100 * If the application name is not set in a cdf file, try to see 1101 if it has a directory with the application name on it. 1102 11032011-08-17 14:32 Christos Zoulas <christos@zoulas.com> 1104 1105 * Fix ELF lseek(2) madness. Inspired by PR/134 by Jan Kaluza 1106 11072011-08-14 09:03 Christos Zoulas <christos@zoulas.com> 1108 1109 * Don't use variable string formats. 1110 11112011-07-12 12:32 Reuben Thomas <rrt@sc3d.org> 1112 1113 * Fix detection of Zip files (Mantis #128). 1114 * Make some minor improvements to file(1). 1115 * Rename MIME types for filesystem objects for consistency with 1116 xdg-utils. Typically this means that application/x-foo becomes 1117 inode/foo, but some names also change slightly, e.g. 1118 application/x-character-device becomes inode/chardevice. 1119 11202011-05-10 20:57 Christos Zoulas <christos@zoulas.com> 1121 1122 * fix mingw compilation (Abradoks) 1123 11242011-05-10 20:57 Christos Zoulas <christos@zoulas.com> 1125 1126 * remove patchlevel.h 1127 * Fix read past allocated memory caused by double-incrementing 1128 a pointer in a loop (reported by Roberto Maar) 1129 11302011-03-30 15:45 Christos Zoulas <christos@zoulas.com> 1131 1132 * Fix cdf string buffer setting (Sven Anders) 1133 11342011-03-20 16:35 Christos Zoulas <christos@zoulas.com> 1135 1136 * Eliminate MAXPATHLEN and use dynamic allocation for 1137 path and file buffers. 1138 11392011-03-15 18:15 Christos Zoulas <christos@zoulas.com> 1140 1141 * binary tests on magic entries with masks could spuriously 1142 get converted to ascii. 1143 11442011-03-12 18:06 Reuben Thomas <rrt@sc3d.org> 1145 1146 * Improve file.man (remove BUGS, present email addresses consistently). 1147 11482011-03-07 19:38 Christos Zoulas <christos@zoulas.com> 1149 1150 * add lrzip support (from Ville Skytta) 1151 11522011-02-10 16:36 Christos Zoulas <christos@zoulas.com> 1153 1154 * fix CDF bounds checking (Guy Helmer) 1155 11562011-02-10 12:03 Christos Zoulas <christos@zoulas.com> 1157 1158 * add cdf_ctime() that prints a meaningful error when time cannot 1159 be converted. 1160 11612011-02-02 20:40 Christos Zoulas <christos@zoulas.com> 1162 1163 * help and version output to stdout. 1164 1165 * When matching softmagic for ascii files, don't just print 1166 the softmagic classification, keep going and print the 1167 text classification too. This fixes broken troff files when 1168 we moved them from keyword recognition to softmagic 1169 (they stopped printing "with CRLF" etc.) 1170 Reported by Doug McIlroy. 1171 11722011-01-16 19:31 Reuben Thomas <rrt@sc3d.org> 1173 1174 * Fix two potential buffer overruns in apprentice_list. 1175 11762011-01-14 22:33 Reuben Thomas <rrt@sc3d.org> 1177 1178 * New Python binding in pure Python. 1179 * Update libmagic(3). 1180 11812011-01-06 21:40 Reuben Thomas <rrt@sc3d.org> 1182 1183 * Fix Python bindings (including recent Python 3 compatibility 1184 update). 1185 11862011-01-04 18:43 Reuben Thomas <rrt@sc3d.org> 1187 1188 * magic/Makefile.am: make it easier to recover from magic build failures. 1189 * Fix pstring length specifier parsing to avoid generating invalid 1190 magic files. 1191 * Add pstring length "J" (for "JPEG") to specify that the length 1192 include itself. 1193 * Fix JPEG comment parsing at last using pstring/HJ! 1194 * Ignore section 5 man pages in doc/.cvsignore. 1195 11962010-12-22 13:12 Christos Zoulas <christos@zoulas.com> 1197 1198 * Add pstring/BHhLl to specify the type of the length of pascal 1199 strings. 1200 12012010-11-26 18:39 Reuben Thomas <rrt@sc3d.org> 1202 1203 * Fix "-e soft": it was ignored when softmagic was called 1204 during asciimagic. 1205 * Improve comments and use "unsigned char" in tar.h/is_tar.c. 1206 12072010-11-05 17:26 Reuben Thomas <rrt@sc3d.org> 1208 1209 * Make bug reporting addresses more visible. 1210 12112010-11-01 18:35 Reuben Thomas <rrt@sc3d.org> 1212 1213 * Add tcl magic from Gustaf Neumann 1214 12152010-10-24 10:42 Christos Zoulas <christos@zoulas.com> 1216 1217 * Fix the whitespace comparing code (Christopher Chittleborough) 1218 12192010-10-06 21:05 Christos Zoulas <christos@zoulas.com> 1220 1221 * allow string/t to work (Jan Kaluza) 1222 12232010-09-20 22:11 Reuben Thomas <rrt@sc3d.org> 1224 1225 * Apply some patches from Ubuntu and Fedora. 1226 12272010-09-20 21:16 Reuben Thomas <rrt@sc3d.org> 1228 1229 * Apply all patches from Debian package 5.04-6 which have not 1230 already been applied and are not Debian-specific. 1231 12322010-09-20 15:24 Reuben Thomas <rrt@sc3d.org> 1233 1234 * Minor security fix to softmagic.c (don't use untrusted 1235 string as printf format). 1236 12372010-07-21 12:20 Christos Zoulas <christos@zoulas.com> 1238 1239 * MINGW32 portability from LRN 1240 1241 * Don't warn about escaping magic regex chars when we are in a regex. 1242 12432010-07-19 10:55 Christos Zoulas <christos@zoulas.com> 1244 1245 * Only try to print prpsinfo for core files. (Jan Kaluza) 1246 12472010-04-22 12:55 Christos Zoulas <christos@zoulas.com> 1248 1249 * Try more elf offsets for Debian core files. (Arnaud Giersch) 1250 12512010-02-20 15:18 Reuben Thomas <rrt@sc3d.org> 1252 1253 * Clarify which sort of CDF we mean. 1254 12552010-02-14 22:58 Reuben Thomas <rrt@sc3d.org> 1256 1257 * Re-jig Zip file type magic so that unsupported special 1258 Zip types (those with "mimetype" at offset 30) can be 1259 recognized. 1260 12612010-02-02 21:50 Reuben Thomas <rrt@sc3d.org> 1262 1263 * Add support for OCF (EPUB) files (application/epub+zip) 1264 12652010-01-28 18:25 Christos Zoulas <christos@zoulas.com> 1266 1267 * Fix core-dump from unbound loop: 1268 https://bugzilla.redhat.com/show_bug.cgi?id=533245 1269 12702010-01-22 15:45 Christos Zoulas <christos@zoulas.com> 1271 1272 * print proper mime for crystal reports file 1273 1274 * print the last summary information of a cdf document, not the 1275 first so that nested documents print the right info 1276 12772010-01-16 18:42 Charles Longeau <chl@tuxfamily.org> 1278 1279 * bring back some fixes from OpenBSD: 1280 - make gcc2 builds file 1281 - fix typos in a magic file comment 1282 12832009-11-17 18:35 Christos Zoulas <christos@zoulas.com> 1284 1285 * ctime/asctime can return NULL on some OS's although 1286 they should not (Toshit Antani) 1287 12882009-09-14 13:49 Christos Zoulas <christos@zoulas.com> 1289 1290 * Centralize magic path handling routines and remove the 1291 special-casing from file.c so that the python module for 1292 example comes up with the same magic path (Fixes ~/.magic 1293 handling) (from Gab) 1294 12952009-09-11 23:38 Reuben Thomas <rrt@sc3d.org> 1296 1297 * When magic argument is a directory, read the files in 1298 strcmp-sorted order (fixes Debian bug #488562 and our own FIXME). 1299 13002009-09-11 13:11 Reuben Thomas <rrt@sc3d.org> 1301 1302 * Combine overlapping epoc and psion magic files into one (epoc). 1303 1304 * Add some more EPOC MIME types. 1305 13062009-08-19 15:55 Christos Zoulas <christos@zoulas.com> 1307 1308 * Fix 3 bugs (From Ian Darwin): 1309 - file_showstr could move one past the end of the array 1310 - parse_apple did not nul terminate the string in the overflow case 1311 - parse_mime truncated the wrong string in the overflow case 1312 13132009-08-12 12:28 Robert Byrnes <byrnes@wildpumpkin.net> 1314 1315 * Include Localstuff when compiling magic. 1316 13172009-07-15 10:05 Christos Zoulas <christos@zoulas.com> 1318 1319 * Fix logic for including mygetopts.h 1320 1321 * Make cdf.c compile again with debugging 1322 1323 * Add the necessary field handling for crystal reports files to work 1324 13252009-06-23 01:34 Reuben Thomas <rrt@sc3d.org> 1326 1327 * Stop "(if" identifying Lisp files, that's plain dumb! 1328 13292009-06-09 22:13 Reuben Thomas <rrt@sc3d.org> 1330 1331 * Add a couple of missing MP3 MIME types. 1332 13332009-05-27 23:00 Reuben Thomas <rrt@sc3d.org> 1334 1335 * Add full range of hash-bang tests for Python and Ruby. 1336 1337 * Add MIME types for Python and Ruby scripts. 1338 13392009-05-13 10:44 Christos Zoulas <christos@zoulas.com> 1340 1341 * off by one in parsing hw capabilities in elf 1342 (Cheng Renquan) 1343 13442009-05-08 13:40 Christos Zoulas <christos@zoulas.com> 1345 1346 * lint fixes and more from NetBSD 1347 13482009-05-06 10:25 Christos Zoulas <christos@zoulas.com> 1349 1350 * Avoid null dereference in cdf code (Drew Yao) 1351 1352 * More cdf bounds checks and overflow checks 1353 13542009-05-01 18:37 Christos Zoulas <christos@zoulas.com> 1355 1356 * Buffer overflow fixes from Drew Yao 1357 13582009-04-30 17:10 Christos Zoulas <christos@zoulas.com> 1359 1360 * Fix more cdf lossage. All the documents I have 1361 right now print the correct information. 1362 13632009-03-27 18:43 Christos Zoulas <christos@zoulas.com> 1364 1365 * don't print \012- separators in the same magic entry 1366 if it consists of multiple magic printing lines. 1367 13682009-03-23 10:20 Christos Zoulas <christos@zoulas.com> 1369 1370 * Avoid file descriptor leak in compress code from 1371 (Daniel Novotny) 1372 13732009-03-18 16:50 Christos Zoulas <christos@zoulas.com> 1374 1375 * Allow escaping of relation characters, so that we can say \^[A-Z] 1376 and the ^ is not eaten as a relation char. 1377 1378 * Fix troff and fortran to their previous glory using 1379 regex. This was broken since their removel from ascmagic. 1380 13812009-03-10 16:50 Christos Zoulas <christos@zoulas.com> 1382 1383 * don't use strlen in strndup() (Toby Peterson) 1384 13852009-03-10 7:45 Christos Zoulas <christos@zoulas.com> 1386 1387 * avoid c99 syntax. 1388 13892009-02-23 15:45 Christos Zoulas <christos@zoulas.com> 1390 1391 * make the cdf code use the buffer first if available, 1392 and then the fd code. 1393 13942009-02-13 13:45 Christos Zoulas <christos@zoulas.com> 1395 1396 * look for struct option to determine if getopt.h is usable for IRIX. 1397 1398 * sanitize cdf document strings 1399 14002009-02-04 13:25 Christos Zoulas <christos@zoulas.com> 1401 1402 * fix OS/2 warnings. 1403 14042008-12-12 15:50 Christos Zoulas <christos@zoulas.com> 1405 1406 * fix initial offset calculation for non 4K sector files 1407 1408 * add loop limits to avoid DoS attacks by constructing 1409 looping sector references. 1410 14112008-12-03 13:05 Christos Zoulas <christos@zoulas.com> 1412 1413 * fix memory botches on cdf file parsing. 1414 1415 * exit with non-zero value for any error, not just for the last 1416 file processed. 1417 14182008-11-09 20:42 Charles Longeau <chl@tuxfamily.org> 1419 1420 * Replace all str{cpy,cat} functions with strl{cpy,cat} 1421 * Ensure that strl{cpy,cat} are included in libmagic, 1422 as needed. 1423 14242008-11-06 18:18 Christos Zoulas <christos@zoulas.com> 1425 1426 * Handle ID3 format files. 1427 14282008-11-06 23:00 Reuben Thomas <rrt@sc3d.org> 1429 1430 * Fix --mime, --mime-type and --mime-encoding under new scheme. 1431 1432 * Rename "ascii" to "text" and add "encoding" test. 1433 1434 * Return a precise ("utf-16le" or "utf-16be") MIME charset for 1435 UTF-16. 1436 1437 * Fix error in comment caused by automatic indentation adding 1438 words! 1439 14402008-11-06 10:35 Christos Zoulas <christos@astron.com> 1441 1442 * use memchr instead of strchr because the string 1443 might not be NUL terminated (Scott MacVicar) 1444 14452008-11-03 07:31 Reuben Thomas <rrt@sc3d.org> 1446 1447 * Fix a printf with a non-literal format string. 1448 1449 * Fix formatting and punctuation of help for "--apple". 1450 14512008-10-30 11:00 Reuben Thomas <rrt@sc3d.org> 1452 1453 * Correct words counts in comments of struct magic. 1454 1455 * Fix handle_annotation to allow both Apple and MIME types to be 1456 printed, and to return correct code if MIME type is 1457 printed (1, not 0) or if there's an error (-1 not 1). 1458 1459 * Fix output of charset for MIME type (precede with semi-colon; 1460 fixes Debian bug #501460). 1461 1462 * Fix potential attacks via conversion specifications in magic 1463 strings. 1464 1465 * Add a FIXME for Debian bug #488562 (magic files should be 1466 read in a defined order, by sorting the names). 1467 14682008-10-18 16:45 Christos Zoulas <christos@astron.com> 1469 1470 * Added APPLE file creator/type 1471 14722008-10-12 10:20 Christos Zoulas <christos@astron.com> 1473 1474 * Added CDF parsing 1475 14762008-10-09 16:40 Christos Zoulas <christos@astron.com> 1477 1478 * filesystem and msdos patches (Joerg Jenderek) 1479 14802008-10-09 13:20 Christos Zoulas <christos@astron.com> 1481 1482 * correct --exclude documentation issues: remove troff and fortran 1483 and rename "token" to "tokens". (Randy McMurchy) 1484 14852008-10-01 10:30 Christos Zoulas <christos@astron.com> 1486 1487 * Read ~/.magic in addition to the default magic file not instead 1488 of, as documented in the man page. 1489 14902008-09-10 21:30 Reuben Thomas <rrt@sc3d.org> 1491 1492 * Comment out graphviz patterns, as they match too many files. 1493 14942008-08-30 12:54 Christos Zoulas <christos@astron.com> 1495 1496 * Don't eat trailing \n in magic enties. 1497 1498 * Cast defines to allow compilation using a c++ compiler. 1499 15002008-08-25 23:56 Reuben Thomas <rrt@sc3d.org> 1501 1502 * Add text/x-lua MIME type for Lua scripts. 1503 1504 * Escape { in regex in graphviz patterns. 1505 15062008-07-26 00:59 Reuben Thomas <rrt@sc3d.org> 1507 1508 * Add MIME types for special files. 1509 1510 * Use access to give more accurate information for files that 1511 can't be opened. 1512 1513 * Add a TODO list. 1514 15152008-07-02 11:15 Christos Zoulas <christos@astron.com> 1516 1517 * add !:strength op to adjust magic strength (experimental) 1518 15192008-06-16 21:41 Reuben Thomas <rrt@sc3d.org> 1520 1521 * Fix automake error in configure.ac. 1522 1523 * Add MIME type for Psion Sketch files. 1524 15252008-06-05 08:59 Christos Zoulas <christos@astron.com> 1526 1527 * Don't print warnings about bad namesize in stripped 1528 binaries with PT_NOTE is still there, and the actual 1529 note is gone (Jakub Jelinek) 1530 15312008-05-28 15:12 Robert Byrnes <byrnes@wildpumpkin.net> 1532 1533 * magic/Magdir/elf: 1534 Note invalid byte order for little-endian SPARC32PLUS. 1535 Add SPARC V9 vendor extensions and memory model. 1536 1537 * src/elfclass.h: 1538 Pass target machine to doshn (for Solaris hardware capabilities). 1539 1540 * src/readelf.c (doshn): 1541 Add support for Solaris hardware/software capabilities. 1542 1543 * src/readelf.h: 1544 Ditto. 1545 1546 * src/vasprintf.c (dispatch): 1547 Add support for ll modifier. 1548 15492008-05-16 10:25 Christos Zoulas <christos@astron.com> 1550 1551 * Fix compiler warnings. 1552 1553 * remove stray printf, and fix a vprintf bug. (Martin Dorey) 1554 15552008-05-06 00:13 Robert Byrnes <byrnes@wildpumpkin.net> 1556 1557 * src/Makefile.am: 1558 Ensure that getopt_long and [v]asprintf are included in libmagic, 1559 as needed. 1560 1561 Remove unnecessary EXTRA_DIST. 1562 1563 * src/Makefile.in: 1564 Rerun automake. 1565 1566 * src/vasprintf.c (dispatch): 1567 Fix variable precision bug: be sure to step past '*'. 1568 1569 * src/vasprintf.c (core): 1570 Remove unreachable code. 1571 1572 * src/apprentice.c (set_test_type): 1573 Add cast to avoid compiler warning. 1574 15752008-04-22 23:45 Christos Zoulas <christos@astron.com> 1576 1577 * Add magic submission guidelines (Abel Cheung) 1578 1579 * split msdos and windows magic (Abel Cheung) 1580 15812008-04-04 11:00 Christos Zoulas <christos@astron.com> 1582 1583 * >= <= is not supported, so fix the magic and warn about it. 1584 reported by: Thien-Thi Nguyen <ttn@gnuvola.org> 1585 15862008-03-27 16:16 Robert Byrnes <byrnes@wildpumpkin.net> 1587 1588 * src/readelf.c (donote): 1589 ELF core file command name/line bug fixes and enhancements: 1590 1591 Try larger offsets first to avoid false matches 1592 from earlier data that happen to look like strings; 1593 this primarily affected SunOS 5.x 32-bit Intel core files. 1594 1595 Add support for command line (instead of just short name) 1596 for SunOS 5.x. 1597 1598 Add information about NT_PSINFO for SunOS 5.x. 1599 1600 Only trim whitespace from end of command line. 1601 16022007-02-11 01:36 Reuben Thomas <rrt@sc3d.org> 1603 1604 * Change strength of ! from MULT to 0, as it matches almost 1605 anything (Reuben Thomas) 1606 1607 * Debian fixes (Reuben Thomas) 1608 16092007-02-11 00:17 Reuben Thomas <rrt@sc3d.org> 1610 1611 * Clarify UTF-8 BOM message (Reuben Thomas) 1612 1613 * Add HTML comment to token list in names.h 1614 16152007-02-04 15:50 Christos Zoulas <christos@astron.com> 1616 1617 * Debian fixes (Reuben Thomas) 1618 16192007-02-04 11:31 Christos Zoulas <christos@astron.com> 1620 1621 * !:mime annotations in magic files (Reuben Thomas) 1622 16232007-01-29 15:35 Christos Zoulas <christos@astron.com> 1624 1625 * zero out utime/utimes structs (Gavin Atkinson) 1626 16272007-01-26 13:45 Christos Zoulas <christos@astron.com> 1628 1629 * reduce writable data from Diego "Flameeyes" Petten 1630 16312007-12-28 15:06 Christos Zoulas <christos@astron.com> 1632 1633 * strtof detection 1634 1635 * remove bogus regex magic that could cause a DoS 1636 1637 * better mismatch version message 1638 16392007-12-27 11:35 Christos Zoulas <christos@astron.com> 1640 1641 * bring back some fixes from OpenBSD 1642 1643 * treat ELF dynamic objects as executables 1644 1645 * fix gcc warnings 1646 16472007-12-01 19:55 Christos Zoulas <christos@astron.com> 1648 1649 * make sure we have zlib.h and libz to compile the builtin 1650 decompress code 1651 16522007-10-28 20:48 Christos Zoulas <christos@astron.com> 1653 1654 * float and double magic support (Behan Webster) 1655 16562007-10-28 20:48 Christos Zoulas <christos@astron.com> 1657 1658 * Convert fortran to a soft test (Reuben Thomas) 1659 16602007-10-23 5:25 Christos Zoulas <christos@astron.com> 1661 1662 * Add --with-filename, and --no-filename (Reuben Thomas) 1663 16642007-10-23 3:59 Christos Zoulas <christos@astron.com> 1665 1666 * Rest of the mime split (Reuben Thomas) 1667 1668 * Make usage message generated from the flags so that 1669 they stay consistent (Reuben Thomas) 1670 16712007-10-20 3:06 Christos Zoulas <christos@astron.com> 1672 1673 * typo in comment, missing ifdef QUICK, remove unneeded code 1674 (Charles Longeau) 1675 16762007-10-17 3:33 Christos Zoulas <christos@astron.com> 1677 1678 * Fix problem printing -\012 in some entries 1679 1680 * Separate magic type and encoding flags (Reuben Thomas) 1681 16822007-10-09 3:55 Christos Zoulas <christos@astron.com> 1683 1684 * configure fix for int64 and strndup (Reuben Thomas) 1685 16862007-09-26 4:45 Christos Zoulas <christos@astron.com> 1687 1688 * Add magic_descriptor() function. 1689 1690 * Fix regression in elf reading code where the core name was 1691 not being printed. 1692 1693 * Don't convert NUL's to spaces in {l,b}estring16 (Daniel Dawson) 1694 16952007-08-19 6:30 Christos Zoulas <christos@astron.com> 1696 1697 * Make mime format consistent so that it can 1698 be easily parsed: 1699 mimetype [charset=character-set] [encoding=encoding-mime-type] 1700 1701 Remove spurious extra text from some MIME type printouts 1702 (mostly in is_tar). 1703 1704 Fix one case where -i produced nothing at all (for a 1-byte file, 1705 which is now classed as application/octet-stream). 1706 1707 Remove 7/8bit classifications, since they were arbitrary 1708 and not based on the file data. 1709 1710 This work was done by Reuben Thomas 1711 17122007-05-24 10:00 Christos Zoulas <christos@astron.com> 1713 1714 * Fix another integer overflow (Colin Percival) 1715 17162007-03-26 13:58 Christos Zoulas <christos@astron.com> 1717 1718 * make sure that all of struct magic_set is initialized appropriately 1719 (Brett) 1720 17212007-03-25 17:44 Christos Zoulas <christos@astron.com> 1722 1723 * reset left bytes in the buffer (Dmitry V. Levin) 1724 1725 * compilation failed with COMPILE_ONLY and ENABLE_CONDITIONALS 1726 (Peter Avalos) 1727 17282007-03-15 10:51 Christos Zoulas <christos@astron.com> 1729 1730 * fix fortran and nroff reversed tests (Dmitry V. Levin) 1731 1732 * fix exclude option (Dmitry V. Levin) 1733 17342007-02-08 17:30 Christos Zoulas <christos@astron.com> 1735 1736 * fix integer underflow in file_printf which can lead to 1737 to exploitable heap overflow (Jean-Sebastien Guay-Lero) 1738 17392007-02-05 11:35 Christos Zoulas <christos@astron.com> 1740 1741 * make socket/pipe reading more robust 1742 17432007-01-25 16:01 Christos Zoulas <christos@astron.com> 1744 1745 * Centralize all the tests in file_buffer. 1746 1747 * Add exclude flag. 1748 17492007-01-18 05:29 Anon Ymous <do@not.spam.me> 1750 1751 * Move the "type" detection code from parse() into its own table 1752 driven routine. This avoids maintaining multiple lists in 1753 file.h. 1754 1755 * Add an optional conditional field (ust before the type field). 1756 This code is wrapped in "#ifdef ENABLE_CONDITIONALS" as it is 1757 likely to go away. 1758 17592007-01-16 23:24 Anon Ymous <do@not.spam.me> 1760 1761 * Fix an initialization bug in check_mem(). 1762 17632007-01-16 14:58 Anon Ymous <do@not.spam.me> 1764 1765 * Add a "default" type to print a message if nothing previously 1766 matched at that level or since the last default at that 1767 level. This is useful for setting up switch-like statements. 1768 It can also be used to do if/else constructions without a 1769 redundant second test. 1770 1771 * Fix the "x" special case test so that one can test for that 1772 string with "=x". 1773 1774 * Allow "search" to search the entire buffer if the "/N" 1775 search count is missing. 1776 1777 * Make "regex" work! It now starts its search at the 1778 specified offset and takes an (optional) "/N" line count to 1779 specify the search range; otherwise it searches to the end 1780 of the file. The match is now grabbed correctly for format 1781 strings and the offset set to the end of the match. 1782 1783 * Add a "/s" flag to "regex" and "search" to set the offset to 1784 the start of the match. By default the offset is set to the 1785 end of the match, as it is with other tests. This is mostly 1786 useful for "regex". 1787 1788 * Make "search", "string" and "pstring" use the same 1789 file_strncmp() routine so that they support the same flags; 1790 "bestring16" and "lestring16" call the same routine, but 1791 with flags = 0. Also add a "/C" flag (in analogy to "/c") 1792 to ignore the case on uppercase (lowercase) characters in 1793 the test string. 1794 1795 * Strict adherence to C style string escapes. A warnings are 1796 printed when compiling. Note: previously "\a" was 1797 incorrectly translated to 'a' instead of an <alert> (i.e., 1798 BELL, typically 0x07). 1799 1800 * Make this compile with "-Wall -Wextra" and all the warning 1801 flags used with WARNS=4 in the NetBSD source. Also make it 1802 pass lint. 1803 1804 * Many "cleanups" and hopefully not too many new bugs! 1805 18062007-01-16 14:56 Anon Ymous <do@not.spam.me> 1807 1808 * make several more files compile with gcc warnings 1809 on and also make them pass lint. 1810 18112007-01-16 14:54 Anon Ymous <do@not.spam.me> 1812 1813 * fix a puts()/putc() usage goof in file.c 1814 1815 * make file.c compile with gcc warnings and pass lint 1816 18172006-12-11 16:49 Christos Zoulas <christos@astron.com> 1818 1819 * fix byteswapping issue 1820 1821 * report the number of bytes we tried to 1822 allocate when allocation fails 1823 1824 * add a few missed cases in the strength routine 1825 18262006-12-08 16:32 Christos Zoulas <christos@astron.com> 1827 1828 * store and print the line number of the magic 1829 entry for debugging. 1830 1831 * if the magic entry did not print anything, 1832 don't treat it as a match 1833 1834 * change the magic strength algorithm to take 1835 into account the relationship op. 1836 1837 * fix a bug in search where we could accidentally 1838 return a match. 1839 1840 * propagate the error return from match to 1841 file_softmagic. 1842 18432006-11-25 13:35 Christos Zoulas <christos@astron.com> 1844 1845 * Don't store the current offset in the magic 1846 struct, because it needs to be restored and 1847 it was not done properly all the time. Bug 1848 found by: Arkadiusz Miskiewicz 1849 1850 * Fix problem in the '\0' separator; and don't 1851 print it as an additional separator; print 1852 it as the only separator. 1853 18542006-11-17 10:51 Christos Zoulas <christos@astron.com> 1855 1856 * Added a -0 option to print a '\0' separator 1857 Etienne Buira <etienne.buira@free.fr> 1858 18592006-10-31 15:14 Christos Zoulas <christos@astron.com> 1860 1861 * Check offset before copying (Mike Frysinger) 1862 1863 * merge duplicated code 1864 1865 * add quad date support 1866 1867 * make sure that we nul terminate desc (Ryoji Kanai) 1868 1869 * don't process elf notes multiple times 1870 1871 * allow -z to report empty compressed files 1872 1873 * use calloc to initialize the ascii buffers (Jos van den Oever) 1874 18752006-06-08 11:11 Christos Zoulas <christos@astron.com> 1876 1877 * QNX fixes (Mike Gorchak) 1878 1879 * Add quad support. 1880 1881 * FIFO checks (Dr. Werner Fink) 1882 1883 * Linux ELF fixes (Dr. Werner Fink) 1884 1885 * Magic format checks (Dr. Werner Fink) 1886 1887 * Magic format function improvement (Karl Chen) 1888 18892006-05-03 11:11 Christos Zoulas <christos@astron.com> 1890 1891 * Pick up some elf changes and some constant fixes from SUSE 1892 1893 * Identify gnu tar vs. posix tar 1894 1895 * When keep going, don't print spurious newlines (Radek Vokal) 1896 18972006-04-01 12:02 Christos Zoulas <christos@astron.com> 1898 1899 * Use calloc instead of malloc (Mike Frysinger) 1900 1901 * Fix configure script to detect wctypes.h (Mike Frysinger) 1902 19032006-03-02 16:06 Christos Zoulas <christos@astron.com> 1904 1905 * Print empty if the file is (Mike Frysinger) 1906 1907 * Don't try to read past the end of the buffer (Mike Frysinger) 1908 1909 * Sort magic entries by strength [experimental] 1910 19112005-11-29 13:26 Christos Zoulas <christos@astron.com> 1912 1913 * Use iswprint() to convert the output string. 1914 (Bastien Nocera) 1915 19162005-10-31 8:54 Christos Zoulas <christos@astron.com> 1917 1918 * Fix regression where the core info was not completely processed 1919 (Radek Vokal) 1920 19212005-10-20 11:15 Christos Zoulas <christos@astron.com> 1922 1923 * Middle Endian magic (Diomidis Spinellis) 1924 19252005-10-17 11:15 Christos Zoulas <christos@astron.com> 1926 1927 * Open with O_BINARY for CYGWIN (Corinna Vinschen) 1928 1929 * Don't close stdin (Arkadiusz Miskiewicz) 1930 1931 * Look for note sections in non executables. 1932 19332005-09-20 13:33 Christos Zoulas <christos@astron.com> 1934 1935 * Don't print SVR4 Style in core files multiple times 1936 (Radek Vokal) 1937 19382005-08-27 04:09 Christos Zoulas <christos@astron.com> 1939 1940 * Cygwin changes Corinna Vinschen 1941 19422005-08-18 09:53 Christos Zoulas <christos@astron.com> 1943 1944 * Remove erroreous mention of /etc/magic in the file man page 1945 This is gentoo bug 101639. (Mike Frysinger) 1946 1947 * Cross-compile support and detection (Mike Frysinger) 1948 19492005-08-12 10:17 Christos Zoulas <christos@astron.com> 1950 1951 * Add -h flag and dereference symlinks if POSIXLY_CORRECT 1952 is set. 1953 19542005-07-29 13:57 Christos Zoulas <christos@astron.com> 1955 1956 * Avoid search and regex buffer overflows (Kelledin) 1957 19582005-07-12 11:48 Christos Zoulas <christos@astron.com> 1959 1960 * Provide stub implementations for {v,}nsprintf() for older 1961 OS's that don't have them. 1962 * Change mbstate_t autoconf detection macro from AC_MBSTATE_T 1963 to AC_TYPE_MBSTATE_T. 1964 19652005-06-25 11:48 Christos Zoulas <christos@astron.com> 1966 1967 * Dynamically allocate the string buffers and make the 1968 default read size 256K. 1969 19702005-06-01 00:00 Joerg Sonnenberger <joerg@britannica.bec.de> 1971 1972 * Dragonfly ELF note support 1973 19742005-03-14 00:00 Giuliano Bertoletti <gb@symbolic.it> 1975 1976 * Avoid NULL pointer dereference in time conversion. 1977 19782005-03-06 00:00 Joerg Walter <jwalt@mail.garni.ch> 1979 1980 * Add indirect magic offset support, and search mode. 1981 19822005-01-12 00:00 Stepan Kasal <kasal@ucw.cz> 1983 1984 * src/ascmagic.c (file_ascmagic): Fix three bugs about text files: 1985 If a CRLF text file happens to have CR at offset HOWMANY - 1 1986 (currently 0xffff), it should not be counted as CR line 1987 terminator. 1988 If a line has length exactly MAXLINELEN, it should not yet be 1989 treated as a ``very long line'', as MAXLINELEN is ``longest sane 1990 line length''. 1991 With CRLF, the line length was not computed correctly, and even 1992 lines of length MAXLINELEN - 1 were treated as ``very long''. 1993 19942004-12-07 14:15 Christos Zoulas <christos@astron.com> 1995 1996 * bzip2 needs a lot of input buffer space on some files 1997 before it can begin uncompressing. This makes file -z 1998 fail on some bz2 files. Fix it by giving it a copy of 1999 the file descriptor to read as much as it wants if we 2000 have access to it. <christos@astron.com> 2001 20022004-11-24 12:39 Christos Zoulas <christos@astron.com> 2003 2004 * Stack smash fix, and ELF more conservative reading. 2005 Jakub Bogusz <qboosh@pld-linux.org> 2006 20072004-11-20 18:50 Christos Zoulas <christos@astron.com> 2008 2009 * New FreeBSD version parsing code: 2010 Jon Noack <noackjr@alumni.rice.edu> 2011 2012 * Hackish support for ucs16 strings <christos@astron.com> 2013 20142004-11-13 03:07 Christos Zoulas <christos@astron.com> 2015 2016 * print the file name and line number in syntax errors. 2017 20182004 10-12 10:50 Christos Zoulas <christos@astron.com> 2019 2020 * Fix stack overwriting on 0 length strings: Tim Waugh 2021 <twaugh@redhat.com> Ned Ludd <solar@gentoo.org> 2022 20232004-09-27 11:30 Christos Zoulas <christos@astron.com> 2024 2025 * Remove 3rd and 4th copyright clause; approved by Ian Darwin. 2026 2027 * Fix small memory leaks; caught by: Tamas Sarlos 2028 <stamas@csillag.ilab.sztaki.hu> 2029 20302004-07-24 16:33 Christos Zoulas <christos@astron.com> 2031 2032 * magic.mime update Danny Milosavljevic <danny.milo@gmx.net> 2033 2034 * FreeBSD version update Oliver Eikemeier <eikemeier@fillmore-labs.com> 2035 2036 * utime/utimes detection Ian Lance Taylor <ian@wasabisystems.com> 2037 2038 * errors reading elf magic Jakub Bogusz <qboosh@pld-linux.org> 2039 20402004-04-12 10:55 Christos Zoulas <christos@astron.com> 2041 2042 * make sure that magic formats match magic types during compilation 2043 2044 * fix broken sgi magic file 2045 20462004-04-06 20:36 Christos Zoulas <christos@astron.com> 2047 2048 * detect present of mbstate_t Petter Reinholdtsen <pere@hungry.com> 2049 2050 * magic fixes 2051 20522004-03-22 15:25 Christos Zoulas <christos@astron.com> 2053 2054 * Lots of mime fixes 2055 (Joerg Ostertag) <ostertag@rechengilde.de> 2056 2057 * FreeBSD ELF version handling 2058 (Edwin Groothuis) <edwin@mavetju.org> 2059 2060 * correct cleanup in all cases; don't just close the file. 2061 (Christos Zoulas) <christos@astron.com> 2062 2063 * add gettext message catalogue support 2064 (Michael Piefel) <piefel@debian.org> 2065 2066 * better printout for unreadable files 2067 (Michael Piefel) <piefel@debian.org> 2068 2069 * compensate for missing MAXPATHLEN 2070 (Michael Piefel) <piefel@debian.org> 2071 2072 * add wide character string length computation 2073 (Michael Piefel) <piefel@debian.org> 2074 2075 * Avoid infinite loops caused by bad elf alignments 2076 or name and description note sizes. Reported by 2077 (Mikael Magnusson) <mmikael@comhem.se> 2078 20792004-03-09 13:55 Christos Zoulas <christos@astron.com> 2080 2081 * Fix possible memory leak on error and add missing regfree 2082 (Dmitry V. Levin) <ldv@altlinux.org> 2083 20842003-12-23 12:12 Christos Zoulas <christos@astron.com> 2085 2086 * fix -k flag (Maciej W. Rozycki) 2087 20882003-11-18 14:10 Christos Zoulas <christos@astron.com> 2089 2090 * Try to give us much info as possible on corrupt elf files. 2091 (Willy Tarreau) <willy@w.ods.org> 2092 * Updated python bindings (Brett Funderburg) 2093 <brettf@deepfile.com> 2094 20952003-11-11 15:03 Christos Zoulas <christos@astron.com> 2096 2097 * Include file.h first, because it includes config.h 2098 breaks largefile test macros otherwise. 2099 (Paul Eggert <eggert@CS.UCLA.EDU> via 2100 Lars Hecking <lhecking@nmrc.ie>) 2101 21022003-10-14 21:39 Christos Zoulas <christos@astron.com> 2103 2104 * Python bindings (Brett Funderburg) <brettf@deepfile.com> 2105 * Don't lookup past the end of the buffer 2106 (Chad Hanson) <chanson@tcs-sec.com> 2107 * Add MAGIC_ERROR and api on magic_errno() 2108 21092003-10-08 12:40 Christos Zoulas <christos@astron.com> 2110 2111 * handle error conditions from compile as fatal 2112 (Antti Kantee) <pooka@netbsd.org> 2113 * handle magic filename parsing sanely 2114 * more magic fixes. 2115 * fix a memory leak (Illes Marton) <illes.marton@balabit.hu> 2116 * describe magic file handling 2117 (Bryan Henderson) <bryanh@giraffe-data.com> 2118 21192003-09-12 15:09 Christos Zoulas <christos@astron.com> 2120 2121 * update magic files. 2122 * remove largefile support from file.h; it breaks things on most OS's 2123 21242003-08-10 10:25 Christos Zoulas <christos@astron.com> 2125 2126 * fix unmapping'ing of mmaped files. 2127 21282003-07-10 12:03 Christos Zoulas <christos@astron.com> 2129 2130 * don't exit with -1 on error; always exit 1 (Marty Leisner) 2131 * restore utimes code. 2132 21332003-06-10 17:03 Christos Zoulas <christos@astron.com> 2134 2135 * make sure we don't access uninitialized memory. 2136 * pass lint 2137 * #ifdef __cplusplus in magic.h 2138 21392003-05-25 19:23 Christos Zoulas <christos@astron.com> 2140 2141 * rename cvs magic file to revision to deal with 2142 case insensitive filesystems. 2143 21442003-05-23 17:03 Christos Zoulas <christos@astron.com> 2145 2146 * documentation fixes from Michael Piefel <piefel@debian.org> 2147 * magic fixes (various) 2148 * revert basename magic in .mgc name determination 2149 * buffer protection in uncompress, 2150 signness issues, 2151 close files 2152 Maciej W. Rozycki <macro@ds2.pg.gda.pl 2153 21542003-04-21 20:12 Christos Zoulas <christos@astron.com> 2155 2156 * fix zsh magic 2157 21582003-04-04 16:59 Christos Zoulas <christos@astron.com> 2159 2160 * fix operand sort order in string. 2161 21622003-04-02 17:30 Christos Zoulas <christos@astron.com> 2163 2164 * cleanup namespace in magic.h 2165 21662003-04-02 13:50 Christos Zoulas <christos@astron.com> 2167 2168 * Magic additions (Alex Ott) 2169 * Fix bug that broke VPATH compilation (Peter Breitenlohner) 2170 21712003-03-28 16:03 Christos Zoulas <christos@astron.com> 2172 2173 * remove packed attribute from magic struct. 2174 * make the magic struct properly aligned. 2175 * bump version number of compiled files to 2. 2176 21772003-03-27 13:10 Christos Zoulas <christos@astron.com> 2178 2179 * separate tar detection and run it before softmagic. 2180 * fix reversed symlink test. 2181 * fix version printing. 2182 * make separator a string instead of a char. 2183 * update manual page and sort options. 2184 21852003-03-26 11:00 Christos Zoulas <christos@astron.com> 2186 2187 * Pass lint 2188 * make NULL in magic_file mean stdin 2189 * Fix "-" argument to file to pass NULL to magic_file 2190 * avoid pointer casts by using memcpy 2191 * rename magic_buf -> magic_buffer 2192 * keep only the first error 2193 * manual page: new sentence, new line 2194 * fix typo in api function (magic_buf -> magic_buffer) 2195