Compare commits

...

No commits in common. "factory" and "main" have entirely different histories.

21 changed files with 162 additions and 203 deletions

1
.gitignore vendored
View File

@ -1 +0,0 @@
.osc

View File

@ -38,7 +38,7 @@
#include <stdint.h>
#endif
@@ -573,4 +576,5 @@ typedef struct {
@@ -542,4 +545,5 @@ typedef struct {
#define DF_1_STUB 0x04000000 /* Stub */
#define DF_1_PIE 0x08000000 /* Position Independent Executable */

View File

@ -2,7 +2,7 @@ Index: file-5.43/src/file.c
===================================================================
--- file-5.43.orig/src/file.c
+++ file-5.43/src/file.c
@@ -265,6 +265,8 @@ main(int argc, char *argv[])
@@ -263,6 +263,8 @@ main(int argc, char *argv[])
break;
case 'e':
case OPT_EXCLUDE_QUIET:
@ -11,7 +11,7 @@ Index: file-5.43/src/file.c
for (i = 0; i < __arraycount(nv); i++)
if (strcmp(nv[i].name, optarg) == 0)
break;
@@ -277,7 +279,7 @@ main(int argc, char *argv[])
@@ -275,7 +277,7 @@ main(int argc, char *argv[])
break;
case 'f':
@ -20,7 +20,7 @@ Index: file-5.43/src/file.c
usage();
if (magic == NULL)
if ((magic = load(magicfile, flags)) == NULL)
@@ -287,6 +289,8 @@ main(int argc, char *argv[])
@@ -285,6 +287,8 @@ main(int argc, char *argv[])
++didsomefiles;
break;
case 'F':
@ -29,7 +29,7 @@ Index: file-5.43/src/file.c
separator = optarg;
break;
case 'i':
@@ -299,6 +303,8 @@ main(int argc, char *argv[])
@@ -297,6 +301,8 @@ main(int argc, char *argv[])
action = FILE_LIST;
break;
case 'm':

View File

@ -1,17 +1,13 @@
Index: magic/Magdir/cafebabe
===================================================================
---
magic/Magdir/cafebabe | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- magic/Magdir/cafebabe
+++ magic/Magdir/cafebabe 2024-11-28 08:56:12.978938091 +0000
@@ -32,7 +32,7 @@
# Reference: https://opensource.apple.com/source/cctools/cctools-949.0.1/
# include/mach-o/fat.h
# include/mach/machine.h
--- magic/Magdir/cafebabe.orig
+++ magic/Magdir/cafebabe
@@ -17,7 +17,7 @@
### JAVA START ###
# Reference: http://en.wikipedia.org/wiki/Java_class_file
# Update: Joerg Jenderek
-0 belong 0xcafebabe
+0 belong 0xcafebabe Cafe Babe
>4 belong 1 Mach-O universal binary with 1 architecture:
!:mime application/x-mach-binary
>>8 use mach-o \b
>4 ubelong >30 compiled Java class data,
!:mime application/x-java-applet
#!:mime application/java-byte-code

View File

@ -6,7 +6,7 @@ Index: magic/Magdir/images
===================================================================
--- magic/Magdir/images.orig
+++ magic/Magdir/images
@@ -2378,6 +2378,8 @@
@@ -2180,6 +2180,8 @@
# https://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt
# Samples: https://www.loci.wisc.edu/software/sample-data
14 uleshort <2

View File

@ -6,7 +6,7 @@ Index: src/apprentice.c
===================================================================
--- src/apprentice.c.orig
+++ src/apprentice.c
@@ -2647,7 +2647,7 @@ check_format_type(const char *ptr, int t
@@ -2623,7 +2623,7 @@ check_format_type(const char *ptr, int t
}
} else
h = 0;

View File

@ -1,19 +1,18 @@
---
magic/Magdir/archive | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
magic/Magdir/archive | 5 +++++
1 file changed, 5 insertions(+)
--- magic/Magdir/archive
+++ magic/Magdir/archive 2024-11-28 08:59:31.099299217 +0000
@@ -1793,7 +1793,11 @@
+++ magic/Magdir/archive 2023-07-28 09:40:12.243809381 +0000
@@ -1622,6 +1622,11 @@
0 string PK\x07\x08PK\x03\x04 Zip multi-volume archive data, at least PKZIP v2.50 to extract
!:mime application/zip
!:ext zip/cbz
-
+>30 ubelong 0x6d696d65 Zip archive data, at least v2.0 to extract
+>>34 ubelong 0x74797065 \b, mime type
+>>>38 regex application/[a-z+-]+ \b %s
+!:mime application/unknown+zip
+!:mime application/unknown+zip
+!:ext zip/cbz
# Android APK file (Zip archive)
0 string PK\003\004
!:strength +1

View File

@ -6,7 +6,7 @@ Index: src/readelf.c
===================================================================
--- src/readelf.c.orig
+++ src/readelf.c
@@ -884,7 +884,7 @@ do_core_note(struct magic_set *ms, unsig
@@ -825,7 +825,7 @@ do_core_note(struct magic_set *ms, unsig
default:
if (type == NT_PRPSINFO && *flags & FLAGS_IS_CORE) {
@ -15,7 +15,7 @@ Index: src/readelf.c
unsigned char c;
/*
* Extract the program name. We assume
@@ -896,7 +896,9 @@ do_core_note(struct magic_set *ms, unsig
@@ -837,7 +837,9 @@ do_core_note(struct magic_set *ms, unsig
* If the characters aren't all printable,
* reject it.
*/

View File

@ -17,7 +17,7 @@ Index: file-5.43/magic/Magdir/filesystems
===================================================================
--- file-5.43.orig/magic/Magdir/filesystems
+++ file-5.43/magic/Magdir/filesystems
@@ -2277,20 +2277,29 @@
@@ -2257,20 +2257,29 @@
>>0x10060 string >\0 lockproto %s)
# Russell Coker <russell@coker.com.au>

42
file-5.45-type_t.dif Normal file
View File

@ -0,0 +1,42 @@
---
configure.ac | 12 ++++++++++++
src/file.h | 6 ++++--
2 files changed, 16 insertions(+), 2 deletions(-)
--- src/file.h
+++ src/file.h 2023-07-28 14:37:17.000000000 +0000
@@ -159,9 +159,11 @@
/*
* Dec 31, 23:59:59 9999
* we need to make sure that we don't exceed 9999 because some libc
- * implementations like muslc crash otherwise
+ * implementations like muslc crash otherwise. If you are unlucky
+ * to be running on a system with a 32 bit time_t, then it is even less.
*/
-#define MAX_CTIME CAST(time_t, 0x3afff487cfULL)
+#define MAX_CTIME \
+ CAST(time_t, sizeof(time_t) > 4 ? 0x3afff487cfULL : 0x7fffffffULL)
#define FILE_BADSIZE CAST(size_t, ~0ul)
#define MAXDESC 64 /* max len of text description/MIME type */
--- configure.ac
+++ configure.ac 2023-07-31 06:45:39.269468700 +0000
@@ -152,6 +152,18 @@ AC_TYPE_UINT64_T
AC_TYPE_INT64_T
AC_TYPE_INTPTR_T
AC_TYPE_UINTPTR_T
+m4_ifdef([AC_SYS_YEAR2038], [AC_SYS_YEAR2038], [
+# GNU libc only allows setting _TIME_BITS when FILE_OFFSET_BITS is also set.
+# GNU libc defines __TIMESIZE on systems where _TIME_BITS can be set.
+AS_IF([test X"$ac_cv_sys_file_offset_bits" = X"64"], [
+ AC_CHECK_DECL(__TIMESIZE, [
+ AC_DEFINE([_TIME_BITS], [64], [Number of bits in a timestamp, on hosts where this is settable.])
+ ], [], [
+AC_INCLUDES_DEFAULT
+#include <time.h>
+ ])
+ ])
+])
AC_FUNC_MMAP
AC_FUNC_FORK
AC_FUNC_MBRTOWC

View File

@ -20,57 +20,56 @@
>18 leshort 51 Stanford MIPS-X,
>18 leshort 52 Motorola Coldfire,
>18 leshort 53 Motorola M68HC12,
! Does not fit anymore !!
!--- magic/Magdir/linux
!+++ magic/Magdir/linux 2023-07-28 09:42:01.845813939 +0000
!@@ -140,27 +140,31 @@
! # All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29
! # Linux kernel boot images (i386 arch) (Wolfram Kleff)
! # URL: https://www.kernel.org/doc/Documentation/x86/boot.txt
!-514 string HdrS Linux kernel
!+514 string HdrS Linux
! !:strength + 55
! # often no extension like in linux, vmlinuz, bzimage or memdisk but sometimes
! # Acronis Recovery kernel64.dat and Plop Boot Manager plpbtrom.bin
! # DamnSmallLinux 1.5 damnsmll.lnx
! !:ext /dat/bin/lnx
!->510 leshort 0xAA55 x86 boot executable
!->>518 leshort >0x1ff
!->>>529 byte 0 zImage,
!->>>529 byte 1 bzImage,
!->>>526 lelong >0
!->>>>(526.s+0x200) string >\0 version %s,
!->>498 leshort 1 RO-rootFS,
!->>498 leshort 0 RW-rootFS,
!->>508 leshort >0 root_dev %#X,
!->>502 leshort >0 swap_dev %#X,
!->>504 leshort >0 RAMdisksize %u KB,
!->>506 leshort 0xFFFF Normal VGA
!->>506 leshort 0xFFFE Extended VGA
!->>506 leshort 0xFFFD Prompt for Videomode
!->>506 leshort >0 Video mode %d
!+>510 leshort 0xAA55 \b/x86 Kernel
!+>510 leshort <0xAA55 Kernel
!+>510 leshort >0xAA55 Kernel
!+>518 leshort 0x0105 \b, Setup Version 0x105, zImage
!+>518 leshort >0x0105 \b, Setup Version %#x
!+>518 leshort >0x1ff
!+>>529 byte 0 \b, zImage
!+>>529 byte 1 \b, bzImage
!+>>526 lelong >0
!+>>>(526.s+0x200) string >\0 \b, Version %s
!+>>498 leshort 1 \b, RO-rootFS
!+>>498 leshort 0 \b, RW-rootFS
!+>>508 leshort >0 \b, root_dev %#X
!+>>502 leshort >0 \b, swap_dev %#X
!+>>504 leshort >0 \b, RAMdisksize %u KB
!+>>506 leshort 0xFFFF \b, Normal VGA
!+>>506 leshort 0xFFFE \b, Extended VGA
!+>>506 leshort 0xFFFD \b, Prompt for Videomode
!+>>506 leshort >0 \b, Video mode %d
! # This also matches new kernels, which were caught above by "HdrS".
! 0 belong 0xb8c0078e Linux kernel
! >0x1e3 string Loading version 1.3.79 or older
--- magic/Magdir/linux
+++ magic/Magdir/linux 2023-07-28 09:42:01.845813939 +0000
@@ -140,27 +140,31 @@
# All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29
# Linux kernel boot images (i386 arch) (Wolfram Kleff)
# URL: https://www.kernel.org/doc/Documentation/x86/boot.txt
-514 string HdrS Linux kernel
+514 string HdrS Linux
!:strength + 55
# often no extension like in linux, vmlinuz, bzimage or memdisk but sometimes
# Acronis Recovery kernel64.dat and Plop Boot Manager plpbtrom.bin
# DamnSmallLinux 1.5 damnsmll.lnx
!:ext /dat/bin/lnx
->510 leshort 0xAA55 x86 boot executable
->>518 leshort >0x1ff
->>>529 byte 0 zImage,
->>>529 byte 1 bzImage,
->>>526 lelong >0
->>>>(526.s+0x200) string >\0 version %s,
->>498 leshort 1 RO-rootFS,
->>498 leshort 0 RW-rootFS,
->>508 leshort >0 root_dev %#X,
->>502 leshort >0 swap_dev %#X,
->>504 leshort >0 RAMdisksize %u KB,
->>506 leshort 0xFFFF Normal VGA
->>506 leshort 0xFFFE Extended VGA
->>506 leshort 0xFFFD Prompt for Videomode
->>506 leshort >0 Video mode %d
+>510 leshort 0xAA55 \b/x86 Kernel
+>510 leshort <0xAA55 Kernel
+>510 leshort >0xAA55 Kernel
+>518 leshort 0x0105 \b, Setup Version 0x105, zImage
+>518 leshort >0x0105 \b, Setup Version %#x
+>518 leshort >0x1ff
+>>529 byte 0 \b, zImage
+>>529 byte 1 \b, bzImage
+>>526 lelong >0
+>>>(526.s+0x200) string >\0 \b, Version %s
+>>498 leshort 1 \b, RO-rootFS
+>>498 leshort 0 \b, RW-rootFS
+>>508 leshort >0 \b, root_dev %#X
+>>502 leshort >0 \b, swap_dev %#X
+>>504 leshort >0 \b, RAMdisksize %u KB
+>>506 leshort 0xFFFF \b, Normal VGA
+>>506 leshort 0xFFFE \b, Extended VGA
+>>506 leshort 0xFFFD \b, Prompt for Videomode
+>>506 leshort >0 \b, Video mode %d
# This also matches new kernels, which were caught above by "HdrS".
0 belong 0xb8c0078e Linux kernel
>0x1e3 string Loading version 1.3.79 or older
--- magic/Magdir/msad
+++ magic/Magdir/msad 2023-07-28 09:42:01.845813939 +0000
@@ -0,0 +1,5 @@
@ -80,21 +79,20 @@
+# This must precede the heuristic for raw G3 data
+4 string Standard\ Jet\ DB Microsoft Access Database
--- magic/Magdir/msdos
+++ magic/Magdir/msdos 2024-11-28 10:44:09.616373881 +0000
@@ -331,10 +331,10 @@
# Check for presence of COM Runtime descriptor
+++ magic/Magdir/msdos 2023-07-28 09:42:01.845813939 +0000
@@ -298,9 +298,9 @@
>>(0x3c.l+22) leshort&0x0200 >0 (stripped to external PDB)
>>(0x3c.l+22) leshort&0x1000 >0 system file
>>(0x3c.l+24) leshort 0x010b
>>>(0x3c.l+116) leshort >14
->>>>(0x3c.l+232) lelong >0 Mono/.Net assembly
+>>>>(0x3c.l+232) lelong >0 \b, Mono/.Net assembly
->>>(0x3c.l+232) lelong >0 Mono/.Net assembly
+>>>(0x3c.l+232) lelong >0 \b, Mono/.Net assembly
>>(0x3c.l+24) leshort 0x020b
>>>(0x3c.l+132) leshort >14
->>>>(0x3c.l+248) lelong >0 Mono/.Net assembly
+>>>>(0x3c.l+248) lelong >0 \b, Mono/.Net assembly
->>>(0x3c.l+248) lelong >0 Mono/.Net assembly
+>>>(0x3c.l+248) lelong >0 \b, Mono/.Net assembly
# hooray, there's a DOS extender using the PE format, with a valid PE
# executable inside (which just prints a message and exits if run in win)
@@ -1499,7 +1499,7 @@
@@ -1026,7 +1026,7 @@
>1 leshort <-259
# that offset must be accessible
# add 10000h to jump at end of 64 KiB segment, add 1 for jump instruction and 2 for 16-bit offset
@ -139,7 +137,7 @@
$(MAGIC_FRAGMENT_DIR)/karma \
$(MAGIC_FRAGMENT_DIR)/kde \
$(MAGIC_FRAGMENT_DIR)/keepass \
@@ -165,7 +165,6 @@ $(MAGIC_FRAGMENT_DIR)/lammps \
@@ -163,7 +163,6 @@ $(MAGIC_FRAGMENT_DIR)/lammps \
$(MAGIC_FRAGMENT_DIR)/lecter \
$(MAGIC_FRAGMENT_DIR)/lex \
$(MAGIC_FRAGMENT_DIR)/lif \
@ -147,7 +145,7 @@
$(MAGIC_FRAGMENT_DIR)/lisp \
$(MAGIC_FRAGMENT_DIR)/llvm \
$(MAGIC_FRAGMENT_DIR)/locoscript \
@@ -173,7 +172,6 @@ $(MAGIC_FRAGMENT_DIR)/lua \
@@ -171,7 +170,6 @@ $(MAGIC_FRAGMENT_DIR)/lua \
$(MAGIC_FRAGMENT_DIR)/luks \
$(MAGIC_FRAGMENT_DIR)/m4 \
$(MAGIC_FRAGMENT_DIR)/mach \
@ -155,7 +153,7 @@
$(MAGIC_FRAGMENT_DIR)/macos \
$(MAGIC_FRAGMENT_DIR)/magic \
$(MAGIC_FRAGMENT_DIR)/mail.news \
@@ -197,11 +195,11 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
@@ -195,11 +193,11 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
$(MAGIC_FRAGMENT_DIR)/mkid \
$(MAGIC_FRAGMENT_DIR)/mlssa \
$(MAGIC_FRAGMENT_DIR)/mmdf \
@ -168,7 +166,7 @@
$(MAGIC_FRAGMENT_DIR)/msooxml \
$(MAGIC_FRAGMENT_DIR)/msvc \
$(MAGIC_FRAGMENT_DIR)/msx \
@@ -265,6 +263,8 @@ $(MAGIC_FRAGMENT_DIR)/qt \
@@ -263,6 +261,8 @@ $(MAGIC_FRAGMENT_DIR)/qt \
$(MAGIC_FRAGMENT_DIR)/revision \
$(MAGIC_FRAGMENT_DIR)/ringdove \
$(MAGIC_FRAGMENT_DIR)/riff \
@ -177,7 +175,7 @@
$(MAGIC_FRAGMENT_DIR)/rpi \
$(MAGIC_FRAGMENT_DIR)/rpm \
$(MAGIC_FRAGMENT_DIR)/rpmsg \
@@ -358,9 +358,21 @@ EXTRA_DIST = \
@@ -355,9 +355,21 @@ EXTRA_DIST = \
$(MAGIC_DIR)/scripts/create_filemagic_flac \
$(MAGIC_FRAGMENTS)
@ -201,7 +199,7 @@
# FIXME: Build file natively as well so that it can be used to compile
# the target's magic file; for now we bail if the local version does not match
@@ -372,19 +384,22 @@ FILE_COMPILE = $(top_builddir)/src/file$
@@ -369,19 +381,22 @@ FILE_COMPILE = $(top_builddir)/src/file$
FILE_COMPILE_DEP = $(FILE_COMPILE)
endif
@ -242,7 +240,7 @@
+# @rm -fr magic
--- magic/Makefile.in
+++ magic/Makefile.in 2023-07-28 09:42:01.849813866 +0000
@@ -284,7 +284,7 @@ top_srcdir = @top_srcdir@
@@ -283,7 +283,7 @@ top_srcdir = @top_srcdir@
MAGIC_FRAGMENT_BASE = Magdir
MAGIC_DIR = $(top_srcdir)/magic
MAGIC_FRAGMENT_DIR = $(MAGIC_DIR)/$(MAGIC_FRAGMENT_BASE)
@ -251,7 +249,7 @@
MAGIC_FRAGMENTS = \
$(MAGIC_DIR)/Header \
$(MAGIC_DIR)/Localstuff \
@@ -302,7 +302,6 @@ $(MAGIC_FRAGMENT_DIR)/animation \
@@ -301,7 +301,6 @@ $(MAGIC_FRAGMENT_DIR)/animation \
$(MAGIC_FRAGMENT_DIR)/aout \
$(MAGIC_FRAGMENT_DIR)/apache \
$(MAGIC_FRAGMENT_DIR)/apl \
@ -259,7 +257,7 @@
$(MAGIC_FRAGMENT_DIR)/application \
$(MAGIC_FRAGMENT_DIR)/applix \
$(MAGIC_FRAGMENT_DIR)/apt \
@@ -384,7 +383,6 @@ $(MAGIC_FRAGMENT_DIR)/erlang \
@@ -383,7 +382,6 @@ $(MAGIC_FRAGMENT_DIR)/erlang \
$(MAGIC_FRAGMENT_DIR)/espressif \
$(MAGIC_FRAGMENT_DIR)/esri \
$(MAGIC_FRAGMENT_DIR)/fcs \
@ -267,7 +265,7 @@
$(MAGIC_FRAGMENT_DIR)/finger \
$(MAGIC_FRAGMENT_DIR)/firmware \
$(MAGIC_FRAGMENT_DIR)/flash \
@@ -431,6 +429,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
@@ -430,6 +428,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
$(MAGIC_FRAGMENT_DIR)/java \
$(MAGIC_FRAGMENT_DIR)/javascript \
$(MAGIC_FRAGMENT_DIR)/jpeg \
@ -276,7 +274,7 @@
$(MAGIC_FRAGMENT_DIR)/karma \
$(MAGIC_FRAGMENT_DIR)/kde \
$(MAGIC_FRAGMENT_DIR)/keepass \
@@ -443,7 +443,6 @@ $(MAGIC_FRAGMENT_DIR)/lammps \
@@ -440,7 +440,6 @@ $(MAGIC_FRAGMENT_DIR)/lammps \
$(MAGIC_FRAGMENT_DIR)/lecter \
$(MAGIC_FRAGMENT_DIR)/lex \
$(MAGIC_FRAGMENT_DIR)/lif \
@ -284,7 +282,7 @@
$(MAGIC_FRAGMENT_DIR)/lisp \
$(MAGIC_FRAGMENT_DIR)/llvm \
$(MAGIC_FRAGMENT_DIR)/locoscript \
@@ -451,7 +450,6 @@ $(MAGIC_FRAGMENT_DIR)/lua \
@@ -448,7 +447,6 @@ $(MAGIC_FRAGMENT_DIR)/lua \
$(MAGIC_FRAGMENT_DIR)/luks \
$(MAGIC_FRAGMENT_DIR)/m4 \
$(MAGIC_FRAGMENT_DIR)/mach \
@ -292,7 +290,7 @@
$(MAGIC_FRAGMENT_DIR)/macos \
$(MAGIC_FRAGMENT_DIR)/magic \
$(MAGIC_FRAGMENT_DIR)/mail.news \
@@ -475,11 +473,11 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
@@ -472,11 +470,11 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
$(MAGIC_FRAGMENT_DIR)/mkid \
$(MAGIC_FRAGMENT_DIR)/mlssa \
$(MAGIC_FRAGMENT_DIR)/mmdf \
@ -305,7 +303,7 @@
$(MAGIC_FRAGMENT_DIR)/msooxml \
$(MAGIC_FRAGMENT_DIR)/msvc \
$(MAGIC_FRAGMENT_DIR)/msx \
@@ -543,6 +541,8 @@ $(MAGIC_FRAGMENT_DIR)/qt \
@@ -540,6 +538,8 @@ $(MAGIC_FRAGMENT_DIR)/qt \
$(MAGIC_FRAGMENT_DIR)/revision \
$(MAGIC_FRAGMENT_DIR)/ringdove \
$(MAGIC_FRAGMENT_DIR)/riff \
@ -314,7 +312,7 @@
$(MAGIC_FRAGMENT_DIR)/rpi \
$(MAGIC_FRAGMENT_DIR)/rpm \
$(MAGIC_FRAGMENT_DIR)/rpmsg \
@@ -636,10 +636,22 @@ EXTRA_DIST = \
@@ -632,10 +632,22 @@ EXTRA_DIST = \
$(MAGIC_DIR)/scripts/create_filemagic_flac \
$(MAGIC_FRAGMENTS)
@ -338,7 +336,7 @@
# FIXME: Build file natively as well so that it can be used to compile
# the target's magic file; for now we bail if the local version does not match
@IS_CROSS_COMPILE_TRUE@FILE_COMPILE = file${EXEEXT}
@@ -863,23 +875,25 @@ uninstall-am: uninstall-pkgdataDATA
@@ -859,23 +871,25 @@ uninstall-am: uninstall-pkgdataDATA
.PRECIOUS: Makefile

3
file-5.45.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fc97f51029bb0e2c9f4e3bffefdaf678f0e039ee872b9de5c002a6d09c784d82
size 1246503

6
file-5.45.tar.gz.asc Normal file
View File

@ -0,0 +1,6 @@
-----BEGIN PGP SIGNATURE-----
iEYEABECAAYFAmTCz2IACgkQcREqsWyzOzpvCgCcDRR1icCs3FF4dXiIXCS3mykf
T5wAoI4+RrEesZEWRBl641Z1lshkK+4c
=bF1Y
-----END PGP SIGNATURE-----

BIN
file-5.46.tar.gz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,6 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iF0EABECAB0WIQS+BJlbqPkO0MDBdsRxESqxbLM7OgUCZ0c+EQAKCRBxESqxbLM7
OkFvAJ9cMVrW0aZfXPN6kqU7zi5Sgy43xQCg6WRiqMb4bQZy/F1i11rmP7+Mx7Q=
=y7Gw
-----END PGP SIGNATURE-----

View File

@ -1,35 +0,0 @@
From 3cb58bb51d47b8e61611350324b751eaa46166a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= <crrodriguez@opensuse.org>
Date: Fri, 8 Nov 2024 08:28:12 +0100
Subject: [PATCH] Allow getrandom, rseq, and prctl for glibc malloc
glibc uses getrandom in malloc, rseq, and prctl in various other
places, allow these syscalls in seccomp filter.
```
export GLIBC_TUNABLES=glibc.mem.decorate_maps=1
make check
```
Signed-off-by: Werner Fink <werner@suse.de>
---
src/seccomp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/seccomp.c b/src/seccomp.c
index ce824330..8a2c8a4c 100644
--- a/src/seccomp.c
+++ b/src/seccomp.c
@@ -80,6 +80,9 @@ enable_sandbox(void)
if (ctx == NULL)
return -1;
+ ALLOW_RULE(prctl);
+ ALLOW_RULE(getrandom);
+ ALLOW_RULE(rseq);
ALLOW_RULE(access);
ALLOW_RULE(brk);
ALLOW_RULE(close);
--
2.43.0

View File

@ -6,7 +6,7 @@
--- file-5.42/configure.ac
+++ file-5.42/configure.ac 2022-06-13 08:34:50.347521415 +0000
@@ -138,6 +138,8 @@ if test "$enable_xzlib" != "no"; then
@@ -130,6 +130,8 @@ if test "$enable_xzlib" != "no"; then
fi
AC_CHECK_TYPE([sig_t],[AC_DEFINE([HAVE_SIG_T],1,[Have sig_t type])],,[#include <signal.h>])
@ -17,7 +17,7 @@
AC_TYPE_SIZE_T
--- file-5.42/src/file.h
+++ file-5.42/src/file.h 2022-06-13 08:34:50.347521415 +0000
@@ -735,4 +735,12 @@ static const char *rcsid(const char *p)
@@ -726,4 +726,12 @@ static const char *rcsid(const char *p)
#define __RCSID(a)
#endif

View File

@ -1,38 +1,3 @@
-------------------------------------------------------------------
Thu Nov 28 10:51:57 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Update to 5.46:
* Add OFFPOSITIVE
* avoid leaking symbols in libmagic
* PR/562: jsummers: Search/regex offsets are absolute to the
beginning of the file, so adjust them by subtracting the
offset that the "use" starts so that we don't double-count it.
* PR/543: matshch: bump nbuf so we can get the flags into the buffer.
* Add Android elf notes (enh)
* Add limit for number of magic warnings allowed
* check regex bounds (found by clusterfuzz)
- Remove patch file-5.45-type_t.dif now upstream
- Port patches
* file-4.24-autoconf.dif
* file-5.17-option.dif
* file-5.18-javacheck.dif
* file-5.19-biorad.dif
* file-5.19-printf.dif
* file-5.19-zip2.0.dif
* file-5.22-elf.dif
* file-5.28-btrfs-image.dif
* file-5.45-type_t.dif
* file-secure_getenv.patch
- Port patch file-5.45.dif and rename it to file-5.46.dif
* Note that our kernel magics do not fit anymore as
upstream now has a huge rework and extended features
-------------------------------------------------------------------
Thu Nov 7 20:11:48 UTC 2024 - Cristian Rodríguez <crrodriguez@opensuse.org>
- file-seccomp.patch: glibc uses getrandom in malloc, rseq and prctl
in various other places, allow these syscalls in seccomp filter.
-------------------------------------------------------------------
Mon Feb 26 09:11:40 UTC 2024 - Dr. Werner Fink <werner@suse.de>

View File

@ -34,7 +34,7 @@ Obsoletes: file-64bit
%endif
#
# Set Version also in python-magic.spec
Version: 5.46
Version: 5.45
Release: 0
Summary: A Tool to Determine File Types
License: BSD-2-Clause
@ -44,7 +44,7 @@ Source2: baselibs.conf
Source3: file-rpmlintrc
Source4: https://www.astron.com/pub/file/file-%{version}.tar.gz.asc
Source5: file.keyring
Patch0: file-5.46.dif
Patch0: file-5.45.dif
Patch1: file-5.19-misc.dif
Patch4: file-4.24-autoconf.dif
Patch5: file-5.14-tex.dif
@ -63,7 +63,8 @@ Patch31: file-5.19-biorad.dif
Patch32: file-5.19-clicfs.dif
Patch37: file-secure_getenv.patch
Patch39: file-5.28-btrfs-image.dif
Patch43: file-seccomp.patch
# PATCH-FIX-UPSTREAM: Support max time_t on 32bit
Patch42: file-5.45-type_t.dif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%global _sysconfdir /etc
%global magicdir %{_datadir}/file
@ -108,6 +109,7 @@ to develop applications that require the magic "file" interface.
%prep
%setup -q -n file-%{version}
%patch -P 42 -p0 -b .t_t
%patch -P 1 -p0 -b .misc
%patch -P 4 -p0 -b .conf
%patch -P 5 -p0 -b .tex
@ -127,7 +129,6 @@ to develop applications that require the magic "file" interface.
%patch -P 37 -p1 -b .getenv
%patch -P 39 -p1 -b .btrfs
%patch -P 0 -b .0
%patch -P 43 -p1 -b .seccomp
test -s src/magic.h.in || cp -p src/magic.h src/magic.h.in
rm -fv src/magic.h
@ -161,8 +162,6 @@ install -s dcore %{buildroot}%{_bindir}
rm -f %{buildroot}%{_libdir}/*.la
%check
# Test if prctl is still allowed by the seccomp filter.
export GLIBC_TUNABLES=glibc.mem.decorate_maps=1
# Standard checks
make check
# Check out that the binary does not bail out:
@ -175,7 +174,6 @@ for dir in %{_bindir} /%{_lib} %{_libdir} ; do
xargs %{buildroot}%{_bindir}/file -m %{buildroot}%{_miscdir}/magic
done
unset LD_LIBRARY_PATH
unset GLIBC_TUNABLES
%post -n %libname -p /sbin/ldconfig

View File

@ -1,8 +1,3 @@
-------------------------------------------------------------------
Fri Aug 9 14:18:25 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
- Don't use `setup.py test`, that is now not allowed.
-------------------------------------------------------------------
Thu May 4 14:15:38 UTC 2023 - Frederic Crozat <fcrozat@suse.com>

View File

@ -21,7 +21,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%global _miscdir %{_datadir}/misc
Name: python-magic
Version: 5.46
Version: 5.45
Release: 0
Summary: Python module to use libmagic
License: BSD-3-Clause AND BSD-4-Clause
@ -60,7 +60,9 @@ popd
export LC_ALL=C.UTF-8
pushd python
%python_flavored_alternatives
%pyunittest -v tests
%{python_expand # indicate a writeable .pth directory for tests
python%{$python_version} setup.py test
}
popd
%files %{python_files}