diff --git a/ext/fileinfo/libmagic.patch b/ext/fileinfo/libmagic.patch index 505aeb0feb8..f8f36ab6018 100644 --- a/ext/fileinfo/libmagic.patch +++ b/ext/fileinfo/libmagic.patch @@ -1,6 +1,6 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c --- libmagic.orig/apprentice.c 2023-07-17 16:38:35.000000000 +0200 -+++ libmagic/apprentice.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/apprentice.c 2024-05-27 16:08:06.689332368 +0200 @@ -48,7 +48,9 @@ #ifdef QUICK #include @@ -870,7 +870,7 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c break; diff -u libmagic.orig/ascmagic.c libmagic/ascmagic.c --- libmagic.orig/ascmagic.c 2023-05-30 22:17:50.000000000 +0200 -+++ libmagic/ascmagic.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/ascmagic.c 2024-05-27 16:08:06.689332368 +0200 @@ -96,7 +96,7 @@ rv = file_ascmagic_with_encoding(ms, &bb, ubuf, ulen, code, type, text); @@ -912,7 +912,7 @@ diff -u libmagic.orig/ascmagic.c libmagic/ascmagic.c } diff -u libmagic.orig/buffer.c libmagic/buffer.c --- libmagic.orig/buffer.c 2023-07-02 14:48:39.000000000 +0200 -+++ libmagic/buffer.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/buffer.c 2024-05-27 16:08:06.689332368 +0200 @@ -31,19 +31,21 @@ #endif /* lint */ @@ -971,7 +971,7 @@ diff -u libmagic.orig/buffer.c libmagic/buffer.c } diff -u libmagic.orig/cdf.c libmagic/cdf.c --- libmagic.orig/cdf.c 2022-09-24 22:56:49.000000000 +0200 -+++ libmagic/cdf.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/cdf.c 2024-05-27 16:08:06.689332368 +0200 @@ -43,7 +43,9 @@ #include #endif @@ -1202,7 +1202,7 @@ diff -u libmagic.orig/cdf.c libmagic/cdf.c #endif diff -u libmagic.orig/cdf.h libmagic/cdf.h --- libmagic.orig/cdf.h 2022-09-24 22:56:49.000000000 +0200 -+++ libmagic/cdf.h 2024-02-07 10:04:46.577977135 +0100 ++++ libmagic/cdf.h 2024-05-27 16:08:06.690332378 +0200 @@ -37,8 +37,6 @@ #ifdef WIN32 @@ -1214,7 +1214,7 @@ diff -u libmagic.orig/cdf.h libmagic/cdf.h #define timespec timeval diff -u libmagic.orig/compress.c libmagic/compress.c --- libmagic.orig/compress.c 2023-05-21 17:59:58.000000000 +0200 -+++ libmagic/compress.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/compress.c 2024-05-27 16:08:06.690332378 +0200 @@ -63,13 +63,14 @@ #if defined(HAVE_SYS_TIME_H) #include @@ -1333,7 +1333,7 @@ diff -u libmagic.orig/compress.c libmagic/compress.c +#endif diff -u libmagic.orig/der.c libmagic/der.c --- libmagic.orig/der.c 2022-09-24 22:56:49.000000000 +0200 -+++ libmagic/der.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/der.c 2024-05-27 16:08:06.690332378 +0200 @@ -54,7 +54,9 @@ #include "magic.h" #include "der.h" @@ -1344,39 +1344,9 @@ diff -u libmagic.orig/der.c libmagic/der.c #include #include #endif -diff -u libmagic.orig/elfclass.h libmagic/elfclass.h ---- libmagic.orig/elfclass.h 2022-09-24 22:56:49.000000000 +0200 -+++ libmagic/elfclass.h 2023-11-27 19:47:19.275556073 +0100 -@@ -41,7 +41,7 @@ - return toomany(ms, "program headers", phnum); - flags |= FLAGS_IS_CORE; - if (dophn_core(ms, clazz, swap, fd, -- CAST(off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, -+ CAST(zend_off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_phentsize)), - fsize, &flags, ¬ecount) == -1) - return -1; -@@ -56,7 +56,7 @@ - if (shnum > ms->elf_shnum_max) - return toomany(ms, "section", shnum); - if (dophn_exec(ms, clazz, swap, fd, -- CAST(off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, -+ CAST(zend_off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_phentsize)), - fsize, shnum, &flags, ¬ecount) == -1) - return -1; -@@ -66,7 +66,7 @@ - if (shnum > ms->elf_shnum_max) - return toomany(ms, "section headers", shnum); - if (doshn(ms, clazz, swap, fd, -- CAST(off_t, elf_getu(swap, elfhdr.e_shoff)), shnum, -+ CAST(zend_off_t, elf_getu(swap, elfhdr.e_shoff)), shnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_shentsize)), - fsize, elf_getu16(swap, elfhdr.e_machine), - CAST(int, elf_getu16(swap, elfhdr.e_shstrndx)), diff -u libmagic.orig/encoding.c libmagic/encoding.c --- libmagic.orig/encoding.c 2022-12-26 18:31:56.000000000 +0100 -+++ libmagic/encoding.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/encoding.c 2024-05-27 16:08:06.690332378 +0200 @@ -97,7 +97,7 @@ nbytes = ms->encoding_max; @@ -1412,7 +1382,7 @@ diff -u libmagic.orig/encoding.c libmagic/encoding.c } diff -u libmagic.orig/file.h libmagic/file.h --- libmagic.orig/file.h 2023-07-27 21:40:22.000000000 +0200 -+++ libmagic/file.h 2024-02-15 19:50:18.840553550 +0100 ++++ libmagic/file.h 2024-05-27 16:08:06.690332378 +0200 @@ -27,15 +27,13 @@ */ /* @@ -1613,7 +1583,7 @@ diff -u libmagic.orig/file.h libmagic/file.h #define QUICK diff -u libmagic.orig/fsmagic.c libmagic/fsmagic.c --- libmagic.orig/fsmagic.c 2023-07-27 21:33:24.000000000 +0200 -+++ libmagic/fsmagic.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/fsmagic.c 2024-05-27 16:08:06.690332378 +0200 @@ -66,26 +66,10 @@ # define minor(dev) ((dev) & 0xff) #endif @@ -1906,7 +1876,7 @@ diff -u libmagic.orig/fsmagic.c libmagic/fsmagic.c case S_IFSOCK: diff -u libmagic.orig/funcs.c libmagic/funcs.c --- libmagic.orig/funcs.c 2023-07-27 21:40:12.000000000 +0200 -+++ libmagic/funcs.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/funcs.c 2024-05-27 16:08:06.690332378 +0200 @@ -66,7 +66,7 @@ file_private void file_clearbuf(struct magic_set *ms) @@ -2252,7 +2222,7 @@ diff -u libmagic.orig/funcs.c libmagic/funcs.c file_clear_closexec(int fd) { diff -u libmagic.orig/magic.c libmagic/magic.c --- libmagic.orig/magic.c 2023-07-27 21:33:24.000000000 +0200 -+++ libmagic/magic.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/magic.c 2024-05-27 16:08:06.691332388 +0200 @@ -25,11 +25,6 @@ * SUCH DAMAGE. */ @@ -2725,8 +2695,8 @@ diff -u libmagic.orig/magic.c libmagic/magic.c } return file_getbuffer(ms); diff -u libmagic.orig/magic.h libmagic/magic.h ---- libmagic.orig/magic.h 2024-02-15 19:52:41.323552388 +0100 -+++ libmagic/magic.h 2024-02-15 19:28:46.036308654 +0100 +--- libmagic.orig/magic.h 2024-05-28 16:08:42.589182799 +0200 ++++ libmagic/magic.h 2024-05-27 16:08:06.691332388 +0200 @@ -47,8 +47,6 @@ * extensions */ #define MAGIC_COMPRESS_TRANSP 0x2000000 /* Check inside compressed files @@ -2779,7 +2749,7 @@ diff -u libmagic.orig/magic.h libmagic/magic.h int magic_getparam(magic_t, int, void *); diff -u libmagic.orig/print.c libmagic/print.c --- libmagic.orig/print.c 2023-07-27 20:04:45.000000000 +0200 -+++ libmagic/print.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/print.c 2024-05-27 16:08:06.691332388 +0200 @@ -73,7 +73,7 @@ if (m->mask_op & FILE_OPINVERSE) (void) fputc('~', stderr); @@ -2836,7 +2806,7 @@ diff -u libmagic.orig/print.c libmagic/print.c goto out; diff -u libmagic.orig/readcdf.c libmagic/readcdf.c --- libmagic.orig/readcdf.c 2023-02-09 18:43:53.000000000 +0100 -+++ libmagic/readcdf.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/readcdf.c 2024-05-27 16:08:06.691332388 +0200 @@ -31,7 +31,9 @@ #include @@ -2956,7 +2926,7 @@ diff -u libmagic.orig/readcdf.c libmagic/readcdf.c if (i != -1) diff -u libmagic.orig/softmagic.c libmagic/softmagic.c --- libmagic.orig/softmagic.c 2023-07-27 21:40:12.000000000 +0200 -+++ libmagic/softmagic.c 2024-02-15 19:28:46.036308654 +0100 ++++ libmagic/softmagic.c 2024-05-27 16:08:06.691332388 +0200 @@ -45,7 +45,7 @@ #include #include "der.h" diff --git a/ext/fileinfo/libmagic/elfclass.h b/ext/fileinfo/libmagic/elfclass.h deleted file mode 100644 index 29a65f42abb..00000000000 --- a/ext/fileinfo/libmagic/elfclass.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) Christos Zoulas 2008. - * All Rights Reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice immediately at the beginning of the file, without modification, - * this list of conditions, and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - if (nbytes <= sizeof(elfhdr)) - return 0; - - u.l = 1; - (void)memcpy(&elfhdr, buf, sizeof elfhdr); - swap = (u.c[sizeof(int32_t) - 1] + 1) != elfhdr.e_ident[EI_DATA]; - - type = elf_getu16(swap, elfhdr.e_type); - notecount = ms->elf_notes_max; - switch (type) { -#ifdef ELFCORE - case ET_CORE: - phnum = elf_getu16(swap, elfhdr.e_phnum); - if (phnum > ms->elf_phnum_max) - return toomany(ms, "program headers", phnum); - flags |= FLAGS_IS_CORE; - if (dophn_core(ms, clazz, swap, fd, - CAST(zend_off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_phentsize)), - fsize, &flags, ¬ecount) == -1) - return -1; - break; -#endif - case ET_EXEC: - case ET_DYN: - phnum = elf_getu16(swap, elfhdr.e_phnum); - if (phnum > ms->elf_phnum_max) - return toomany(ms, "program", phnum); - shnum = elf_getu16(swap, elfhdr.e_shnum); - if (shnum > ms->elf_shnum_max) - return toomany(ms, "section", shnum); - if (dophn_exec(ms, clazz, swap, fd, - CAST(zend_off_t, elf_getu(swap, elfhdr.e_phoff)), phnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_phentsize)), - fsize, shnum, &flags, ¬ecount) == -1) - return -1; - /*FALLTHROUGH*/ - case ET_REL: - shnum = elf_getu16(swap, elfhdr.e_shnum); - if (shnum > ms->elf_shnum_max) - return toomany(ms, "section headers", shnum); - if (doshn(ms, clazz, swap, fd, - CAST(zend_off_t, elf_getu(swap, elfhdr.e_shoff)), shnum, - CAST(size_t, elf_getu16(swap, elfhdr.e_shentsize)), - fsize, elf_getu16(swap, elfhdr.e_machine), - CAST(int, elf_getu16(swap, elfhdr.e_shstrndx)), - &flags, ¬ecount) == -1) - return -1; - break; - - default: - break; - } - if (notecount == 0) - return toomany(ms, "notes", ms->elf_notes_max); - return 1;