git: 7af41682a96b - main - MFV: file 5.48

From: Xin LI <delphij_at_FreeBSD.org>
Date: Thu, 03 Sep 2026 04:31:22 UTC
The branch main has been updated by delphij:

URL: https://cgit.FreeBSD.org/src/commit/?id=7af41682a96bf7058b82665c33bb9b1bfa079c17

commit 7af41682a96bf7058b82665c33bb9b1bfa079c17
Merge: 74c539fd1cef 288b27192b2a
Author:     Xin LI <delphij@FreeBSD.org>
AuthorDate: 2026-09-03 04:29:02 +0000
Commit:     Xin LI <delphij@FreeBSD.org>
CommitDate: 2026-09-03 04:30:33 +0000

    MFV: file 5.48
    
    MFC after:      1 week

 contrib/file/ChangeLog                             |  30 +-
 contrib/file/Makefile.in                           |  63 ++-
 contrib/file/README.md                             |   9 +-
 contrib/file/aclocal.m4                            | 429 +++++++++++-----
 contrib/file/compile                               |  40 +-
 contrib/file/config.h.in                           |   6 +
 contrib/file/configure                             | 561 +++++++++++++++------
 contrib/file/configure.ac                          |  12 +-
 contrib/file/depcomp                               |  17 +-
 contrib/file/doc/Makefile.in                       |  29 +-
 contrib/file/doc/magic.man                         |  24 +-
 contrib/file/magic/Magdir/a2ml                     |  47 ++
 contrib/file/magic/Magdir/acorn                    |  26 +-
 contrib/file/magic/Magdir/aes                      |  25 +-
 contrib/file/magic/Magdir/amigaos                  |  56 +-
 contrib/file/magic/Magdir/andrew                   |  32 ++
 contrib/file/magic/Magdir/android                  |   9 +-
 contrib/file/magic/Magdir/apple                    |  32 +-
 contrib/file/magic/Magdir/archive                  |  48 +-
 contrib/file/magic/Magdir/atari                    | 233 +++++++++
 contrib/file/magic/Magdir/c-lang                   |   8 +-
 contrib/file/magic/Magdir/cad                      |  14 +-
 contrib/file/magic/Magdir/coff                     |   5 +-
 contrib/file/magic/Magdir/compress                 |  32 +-
 contrib/file/magic/Magdir/console                  |   7 +-
 contrib/file/magic/Magdir/dyadic                   |   3 +-
 contrib/file/magic/Magdir/filesystems              |  28 +-
 contrib/file/magic/Magdir/finger                   |   7 +-
 contrib/file/magic/Magdir/fonts                    |  17 +-
 contrib/file/magic/Magdir/games                    |  45 +-
 contrib/file/magic/Magdir/images                   | 160 ++++--
 contrib/file/magic/Magdir/interleaf                |  12 +-
 contrib/file/magic/Magdir/ispell                   |   9 +-
 contrib/file/magic/Magdir/javascript               |  34 +-
 contrib/file/magic/Magdir/k9                       |  31 ++
 contrib/file/magic/Magdir/lua                      |   4 +-
 contrib/file/magic/Magdir/mail.news                |   4 +-
 contrib/file/magic/Magdir/mips                     |   4 +-
 contrib/file/magic/Magdir/msdos                    |   8 +-
 contrib/file/magic/Magdir/nix                      |  14 +
 contrib/file/magic/Magdir/ole2compounddocs         |   4 +-
 contrib/file/magic/Magdir/partclone                |  32 ++
 contrib/file/magic/Magdir/riff                     |   4 +-
 contrib/file/magic/Magdir/ruby                     |   5 +-
 contrib/file/magic/Magdir/sun                      |  12 +-
 contrib/file/magic/Magdir/tex                      |  10 +-
 contrib/file/magic/Magdir/virtual                  |   8 +-
 contrib/file/magic/Magdir/windows                  |  50 +-
 contrib/file/magic/Magdir/wordprocessors           |   6 +-
 contrib/file/magic/Makefile.am                     |  14 +-
 contrib/file/magic/Makefile.in                     |  43 +-
 contrib/file/missing                               |  77 ++-
 contrib/file/python/Makefile.in                    |  20 +-
 contrib/file/python/magic.py                       |   6 +-
 contrib/file/src/Makefile.am                       |   5 +-
 contrib/file/src/Makefile.in                       |  78 +--
 contrib/file/src/apprentice.c                      | 164 ++----
 contrib/file/src/ascmagic.c                        |   8 +-
 contrib/file/src/cdf.c                             |  12 +-
 contrib/file/src/cdf_time.c                        |  14 +-
 contrib/file/src/compress.c                        |  14 +-
 contrib/file/src/der.c                             |   4 +-
 contrib/file/src/encoding.c                        |   4 +-
 contrib/file/src/file.c                            |  23 +-
 contrib/file/src/file.h                            |  39 +-
 contrib/file/src/funcs.c                           |  85 +++-
 contrib/file/src/is_csv.c                          |   7 +-
 contrib/file/src/is_tar.c                          |  12 +-
 contrib/file/src/landlock.c                        | 178 +++++++
 contrib/file/src/magic.c                           |  47 +-
 contrib/file/src/magic.h.in                        |   1 +
 contrib/file/src/print.c                           |  11 +-
 contrib/file/src/readcdf.c                         |   6 +-
 contrib/file/src/readelf.c                         |  12 +-
 contrib/file/src/seccomp.c                         |  76 ++-
 contrib/file/src/softmagic.c                       | 192 ++++---
 contrib/file/src/swap.c                            | 101 ++++
 contrib/file/src/swap.h                            |  48 ++
 contrib/file/tests/Makefile.in                     |  35 +-
 contrib/file/tests/bgcode.result                   |   2 +-
 .../file/tests/efi-signature-list-sha256.result    |   2 +-
 lib/libmagic/config.h                              |  12 +-
 82 files changed, 2762 insertions(+), 895 deletions(-)

diff --cc contrib/file/README.md
index 26e38045812c,000000000000..62062f934a09
mode 100644,000000..100644
--- a/contrib/file/README.md
+++ b/contrib/file/README.md
@@@ -1,156 -1,0 +1,161 @@@
 +## README for file(1) Command and the libmagic(3) library ##
 +
-     @(#) $File: README.md,v 1.5 2023/05/28 13:59:47 christos Exp $
++    @(#) $File: README.md,v 1.7 2026/06/07 23:44:12 christos Exp $
 +
 +- Bug Tracker: <https://bugs.astron.com/>
 +- Build Status: <https://travis-ci.org/file/file>
 +- Download link: <ftp://ftp.astron.com/pub/file/>
 +- E-mail: <christos@astron.com>
 +- Fuzzing link: <https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:file>
 +- Home page: https://www.darwinsys.com/file/
 +- Mailing List archives: <https://mailman.astron.com/pipermail/file/>
 +- Mailing List: <file@astron.com>
 +- Public repo: <https://github.com/file/file>
 +- Test framework: <https://github.com/file/file-tests>
 +
 +Phone: Do not even think of telephoning me about this program. Send
 +cash first!
 +
 +This is Release 5.x of Ian Darwin's (copyright but distributable)
 +file(1) command, an implementation of the Unix File(1) command.
 +It knows the 'magic number' of several thousands of file types.
 +This version is the standard "file" command for Linux, *BSD, and
 +other systems. (See "patchlevel.h" for the exact release number).
 +
 +The major changes for 5.x are CDF file parsing, indirect magic,
 +name/use (recursion) and overhaul in mime and ascii encoding
 +handling.
 +
 +The major feature of 4.x is the refactoring of the code into a
 +library, and the re-write of the file command in terms of that
 +library. The library itself, libmagic can be used by 3rd party
 +programs that wish to identify file types without having to fork()
 +and exec() file. The prime contributor for 4.0 was Mans Rullgard.
 +
 +UNIX is a trademark of UNIX System Laboratories.
 +
 +The prime contributor to Release 3.8 was Guy Harris, who put in
 +megachanges including byte-order independence.
 +
 +The prime contributor to Release 3.0 was Christos Zoulas, who put
 +in hundreds of lines of source code changes, including his own
 +ANSIfication of the code (I liked my own ANSIfication better, but
 +his (__P()) is the "Berkeley standard" way of doing it, and I wanted
 +UCB to include the code...), his HP-like "indirection" (a feature
 +of the HP file command, I think), and his mods that finally got
 +the uncompress (-z) mode finished and working.
 +
 +This release has compiled in numerous environments; see PORTING
 +for a list and problems.
 +
 +This fine freeware file(1) follows the USG (System V) model of the
 +file command, rather than the Research (V7) version or the V7-derived
 +4.[23] Berkeley one. That is, the file /etc/magic contains much of
 +the ritual information that is the source of this program's power.
 +My version knows a little more magic (including tar archives) than
 +System V; the /etc/magic parsing seems to be compatible with the
 +(poorly documented) System V /etc/magic format (with one exception;
 +see the man page).
 +
 +In addition, the /etc/magic file is built from a subdirectory
 +for easier(?) maintenance.  I will act as a clearinghouse for
 +magic numbers assigned to all sorts of data files that
 +are in reasonable circulation. Send your magic numbers,
 +in magic(5) format please, to the maintainer, Christos Zoulas.
 +
 +COPYING - read this first.
- * `README` - read this second (you are currently reading this file).
++* `ChangeLog` - log of important changes
++* `README.md` - read this second (you are currently reading this file).
 +* `INSTALL` - read on how to install
 +* `src/apprentice.c` - parses /etc/magic to learn magic
 +* `src/apptype.c` - used for OS/2 specific application type magic
 +* `src/ascmagic.c` - third & last set of tests, based on hardwired assumptions.
 +* `src/asctime_r.c` - replacement for OS's that don't have it.
 +* `src/asprintf.c` - replacement for OS's that don't have it.
 +* `src/buffer.c` - buffer handling functions.
 +* `src/cdf.[ch]` - parser for Microsoft Compound Document Files
 +* `src/cdf_time.c` - time converter for CDF.
 +* `src/compress.c` - handles decompressing files to look inside.
 +* `src/ctime_r.c` - replacement for OS's that don't have it.
 +* `src/der.[ch]` - parser for Distinguished Encoding Rules
 +* `src/dprintf.c` - replacement for OS's that don't have it.
 +* `src/elfclass.h` - common code for elf 32/64.
 +* `src/encoding.c` - handles unicode encodings
 +* `src/file.c` - the main program
 +* `src/file.h` - header file
 +* `src/file_opts.h` - list of options
 +* `src/fmtcheck.c` - replacement for OS's that don't have it.
 +* `src/fsmagic.c` - first set of tests the program runs, based on filesystem info
 +* `src/funcs.c` - utilility functions
 +* `src/getline.c` - replacement for OS's that don't have it.
 +* `src/getopt_long.c` - replacement for OS's that don't have it.
 +* `src/gmtime_r.c` - replacement for OS's that don't have it.
 +* `src/is_csv.c` - knows about Comma Separated Value file format (RFC 4180).
 +* `src/is_json.c` - knows about JavaScript Object Notation format (RFC 8259).
 +* `src/is_simh.c` - knows about SIMH tape file format.
 +* `src/is_tar.c, tar.h` - knows about Tape ARchive format (courtesy John Gilmore).
++* `src/landlock.c` - linux landlock protection
 +* `src/localtime_r.c` - replacement for OS's that don't have it.
 +* `src/magic.h.in` - source file for magic.h
 +* `src/mygetopt.h` - replacement for OS's that don't have it.
 +* `src/magic.c` - the libmagic api
 +* `src/names.h` - header file for ascmagic.c
 +* `src/pread.c` - replacement for OS's that don't have it.
 +* `src/print.c` - print results, errors, warnings.
 +* `src/readcdf.c` - CDF wrapper.
 +* `src/readelf.[ch]` - Stand-alone elf parsing code.
 +* `src/softmagic.c` - 2nd set of tests, based on /etc/magic
++* `src/swap.h` - byte swapping
++* `src/swap.c` - byte swapping
 +* `src/mygetopt.h` - replacement for OS's that don't have it.
++* `src/seccomp.c` - linux seccomp protection
 +* `src/strcasestr.c` - replacement for OS's that don't have it.
 +* `src/strlcat.c` - replacement for OS's that don't have it.
 +* `src/strlcpy.c` - replacement for OS's that don't have it.
 +* `src/strndup.c` - replacement for OS's that don't have it.
 +* `src/tar.h` - tar file definitions
 +* `src/vasprintf.c` - for systems that don't have it.
 +* `doc/file.man` - man page for the command
 +* `doc/magic.man` - man page for the magic file, courtesy Guy Harris.
 +	Install as magic.4 on USG and magic.5 on V7 or Berkeley; cf Makefile.
 +
 +Magdir - directory of /etc/magic pieces
 +------------------------------------------------------------------------------
 +
 +If you submit a new magic entry please make sure you read the following
 +guidelines:
 +
 +- Initial match is preferably at least 32 bits long, and is a _unique_ match
 +- If this is not feasible, use additional check
 +- Match of <= 16 bits are not accepted
 +- Delay printing string as much as possible, don't print output too early
 +- Avoid printf arbitrary byte as string, which can be a source of
 +  crash and buffer overflow
 +
 +- Provide complete information with entry:
 +  * One line short summary
 +  * Optional long description
 +  * File extension, if applicable
 +  * Full name and contact method (for discussion when entry has problem)
 +  * Further reference, such as documentation of format
 +
 +gpg for dummies:
 +------------------------------------------------------------------------------
 +
 +```
 +$ gpg --verify file-X.YY.tar.gz.asc file-X.YY.tar.gz
 +gpg: assuming signed data in `file-X.YY.tar.gz'
 +gpg: Signature made WWW MMM DD HH:MM:SS YYYY ZZZ using DSA key ID KKKKKKKK
 +```
 +
 +To download the key:
 +
 +```
 +$ gpg --keyserver hkp://keys.gnupg.net --recv-keys KKKKKKKK
 +```
 +------------------------------------------------------------------------------
 +
 +
 +Parts of this software were developed at SoftQuad Inc., developers
 +of SGML/HTML/XML publishing software, in Toronto, Canada.
 +SoftQuad was swallowed up by Corel in 2002 and does not exist any longer.
diff --cc contrib/file/magic/Magdir/a2ml
index 000000000000,2bcf79f71621..2bcf79f71621
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/a2ml
+++ b/contrib/file/magic/Magdir/a2ml
diff --cc contrib/file/magic/Magdir/andrew
index 000000000000,d0fbeea41a57..d0fbeea41a57
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/andrew
+++ b/contrib/file/magic/Magdir/andrew
diff --cc contrib/file/magic/Magdir/atari
index 000000000000,bffcbfe7e203..bffcbfe7e203
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/atari
+++ b/contrib/file/magic/Magdir/atari
diff --cc contrib/file/magic/Magdir/k9
index 000000000000,3e50709ee714..3e50709ee714
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/k9
+++ b/contrib/file/magic/Magdir/k9
diff --cc contrib/file/magic/Magdir/nix
index 000000000000,9d8ff321235c..9d8ff321235c
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/nix
+++ b/contrib/file/magic/Magdir/nix
diff --cc contrib/file/magic/Magdir/partclone
index 000000000000,fda68e3ebc6d..fda68e3ebc6d
mode 000000,100644..100644
--- a/contrib/file/magic/Magdir/partclone
+++ b/contrib/file/magic/Magdir/partclone
diff --cc contrib/file/src/landlock.c
index 000000000000,15b01d191b6f..15b01d191b6f
mode 000000,100644..100644
--- a/contrib/file/src/landlock.c
+++ b/contrib/file/src/landlock.c
diff --cc contrib/file/src/swap.c
index 000000000000,f20e354237b9..f20e354237b9
mode 000000,100644..100644
--- a/contrib/file/src/swap.c
+++ b/contrib/file/src/swap.c
diff --cc contrib/file/src/swap.h
index 000000000000,a0326078058b..a0326078058b
mode 000000,100644..100644
--- a/contrib/file/src/swap.h
+++ b/contrib/file/src/swap.h
diff --cc lib/libmagic/config.h
index a0778a023e35,000000000000..c919d5949931
mode 100644,000000..100644
--- a/lib/libmagic/config.h
+++ b/lib/libmagic/config.h
@@@ -1,549 -1,0 +1,555 @@@
 +/* config.h.  Generated from config.h.in by configure.  */
 +/* config.h.in.  Generated from configure.ac by autoheader.  */
 +
 +/* FreeBSD */
 +#include <osreldate.h>
 +
 +/* Define if building universal (internal helper macro) */
 +/* #undef AC_APPLE_UNIVERSAL_BUILD */
 +
 +/* Define in built-in ELF support is used */
 +#define BUILTIN_ELF 1
 +
 +/* Enable bzlib compression support */
 +/* #undef BZLIBSUPPORT */
 +
 +/* Define for ELF core file support */
 +#define ELFCORE 1
 +
 +/* Define to 1 if you have the 'asctime_r' function. */
 +#define HAVE_ASCTIME_R 1
 +
 +/* Define to 1 if you have the 'asprintf' function. */
 +#define HAVE_ASPRINTF 1
 +
 +/* Define to 1 if you have the <byteswap.h> header file. */
 +#ifndef __APPLE__ /* Cross building tools on macOS */
 +#if __FreeBSD_version >= 1400079 || (__FreeBSD_version < 1400000 && __FreeBSD_version >= 1302500)
 +#define HAVE_BYTESWAP_H 1
 +#endif
 +#endif
 +
 +/* Define to 1 if you have the <bzlib.h> header file. */
 +/* #undef HAVE_BZLIB_H */
 +
 +/* Define to 1 if you have the 'ctime_r' function. */
 +#define HAVE_CTIME_R 1
 +
 +/* HAVE_DAYLIGHT */
 +/* #undef HAVE_DAYLIGHT */
 +
 +/* Define to 1 if you have the declaration of 'daylight', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_DAYLIGHT 0
 +
 +/* Define to 1 if you have the declaration of 'tzname', and to 0 if you don't.
 +   */
 +#define HAVE_DECL_TZNAME 1
 +
 +/* Define to 1 if you have the <dlfcn.h> header file. */
 +#define HAVE_DLFCN_H 1
 +
 +/* Define to 1 if you have the 'dprintf' function. */
 +#define HAVE_DPRINTF 1
 +
 +/* Define to 1 if you have the <err.h> header file. */
 +#define HAVE_ERR_H 1
 +
 +/* Define to 1 if you have the <fcntl.h> header file. */
 +#define HAVE_FCNTL_H 1
 +
 +/* Define to 1 if you have the 'fmtcheck' function. */
 +#define HAVE_FMTCHECK 1
 +
 +/* Define to 1 if you have the 'fork' function. */
 +#define HAVE_FORK 1
 +
 +/* Define to 1 if you have the 'freelocale' function. */
 +#define HAVE_FREELOCALE 1
 +
 +/* Define to 1 if fseeko (and ftello) are declared in stdio.h. */
 +#define HAVE_FSEEKO 1
 +
 +/* Define to 1 if you have the 'getline' function. */
 +#define HAVE_GETLINE 1
 +
 +/* Define to 1 if you have the <getopt.h> header file. */
 +#define HAVE_GETOPT_H 1
 +
 +/* Define to 1 if you have the 'getopt_long' function. */
 +#define HAVE_GETOPT_LONG 1
 +
 +/* Define to 1 if you have the 'getpagesize' function. */
 +#define HAVE_GETPAGESIZE 1
 +
 +/* Define to 1 if you have the 'gmtime_r' function. */
 +#define HAVE_GMTIME_R 1
 +
 +/* Define to 1 if the system has the type 'intptr_t'. */
 +#define HAVE_INTPTR_T 1
 +
 +/* Define to 1 if you have the <inttypes.h> header file. */
 +#define HAVE_INTTYPES_H 1
 +
 +/* Define to 1 if you have the 'bz2' library (-lbz2). */
 +/* #undef HAVE_LIBBZ2 */
 +
 +/* Define to 1 if you have the 'gnurx' library (-lgnurx). */
 +/* #undef HAVE_LIBGNURX */
 +
 +/* Define to 1 if you have the 'lrzip' library (-llrzip). */
 +/* #undef HAVE_LIBLRZIP */
 +
 +/* Define to 1 if you have the 'lz' library (-llz). */
 +/* #undef HAVE_LIBLZ */
 +
 +/* Define to 1 if you have the 'lzma' library (-llzma). */
 +/* #undef HAVE_LIBLZMA */
 +
 +/* Define to 1 if you have the 'seccomp' library (-lseccomp). */
 +/* #undef HAVE_LIBSECCOMP */
 +
 +/* Define to 1 if you have the 'z' library (-lz). */
 +#define HAVE_LIBZ 1
 +
 +/* Define to 1 if you have the 'zstd' library (-lzstd). */
 +/* #undef HAVE_LIBZSTD */
 +
++/* Define to 1 if you have the <limits.h> header file. */
++#define HAVE_LIMITS_H 1
++
++/* Define to 1 if you have the <linux/landlock.h> header file. */
++/* #undef HAVE_LINUX_LANDLOCK_H */
++
 +/* Define to 1 if you have the 'localtime_r' function. */
 +#define HAVE_LOCALTIME_R 1
 +
 +/* Define to 1 if you have the <Lrzip.h> header file. */
 +/* #undef HAVE_LRZIP_H */
 +
 +/* Define to 1 if you have the <lzlib.h> header file. */
 +/* #undef HAVE_LZLIB_H */
 +
 +/* Define to 1 if you have the <lzma.h> header file. */
 +/* #undef HAVE_LZMA_H */
 +
 +/* Define to 1 if mbrtowc and mbstate_t are properly declared. */
 +#define HAVE_MBRTOWC 1
 +
 +/* Define to 1 if <wchar.h> declares mbstate_t. */
 +#define HAVE_MBSTATE_T 1
 +
 +/* Define to 1 if you have the 'memmem' function. */
 +#define HAVE_MEMMEM 1
 +
 +/* Define to 1 if you have the <minix/config.h> header file. */
 +/* #undef HAVE_MINIX_CONFIG_H */
 +
 +/* Define to 1 if you have the 'mkostemp' function. */
 +#define HAVE_MKOSTEMP 1
 +
 +/* Define to 1 if you have the 'mkstemp' function. */
 +#define HAVE_MKSTEMP 1
 +
 +/* Define to 1 if you have a working 'mmap' system call. */
 +#define HAVE_MMAP 1
 +
 +/* Define to 1 if you have the 'newlocale' function. */
 +#define HAVE_NEWLOCALE 1
 +
 +/* Define to 1 if you have the 'pipe2' function. */
 +#ifndef __APPLE__ /* Cross building tools on macOS */
 +#define HAVE_PIPE2 1
 +#endif
 +
 +/* Define to 1 if you have the 'posix_spawnp' function. */
 +#define HAVE_POSIX_SPAWNP 1
 +
 +/* Define to 1 if you have the 'pread' function. */
 +#define HAVE_PREAD 1
 +
 +/* Have sig_t type */
 +#define HAVE_SIG_T 1
 +
 +/* Define to 1 if you have the <spawn.h> header file. */
 +#define HAVE_SPAWN_H 1
 +
 +/* Define to 1 if you have the <stdint.h> header file. */
 +#define HAVE_STDINT_H 1
 +
 +/* Define to 1 if you have the <stdio.h> header file. */
 +#define HAVE_STDIO_H 1
 +
 +/* Define to 1 if you have the <stdlib.h> header file. */
 +#define HAVE_STDLIB_H 1
 +
 +/* Define to 1 if you have the 'strcasestr' function. */
 +#define HAVE_STRCASESTR 1
 +
 +/* Define to 1 if you have the <strings.h> header file. */
 +#define HAVE_STRINGS_H 1
 +
 +/* Define to 1 if you have the <string.h> header file. */
 +#define HAVE_STRING_H 1
 +
 +/* Define to 1 if you have the 'strlcat' function. */
 +#define HAVE_STRLCAT 1
 +
 +/* Define to 1 if you have the 'strlcpy' function. */
 +#define HAVE_STRLCPY 1
 +
 +/* Define to 1 if you have the 'strndup' function. */
 +#define HAVE_STRNDUP 1
 +
 +/* Define to 1 if you have the 'strtof' function. */
 +#define HAVE_STRTOF 1
 +
 +/* HAVE_STRUCT_OPTION */
 +#define HAVE_STRUCT_OPTION 1
 +
 +/* Define to 1 if 'st_rdev' is a member of 'struct stat'. */
 +#define HAVE_STRUCT_STAT_ST_RDEV 1
 +
 +/* Define to 1 if 'tm_gmtoff' is a member of 'struct tm'. */
 +#define HAVE_STRUCT_TM_TM_GMTOFF 1
 +
 +/* Define to 1 if 'tm_zone' is a member of 'struct tm'. */
 +#define HAVE_STRUCT_TM_TM_ZONE 1
 +
 +/* Define to 1 if you have the <sys/bswap.h> header file. */
 +/* #undef HAVE_SYS_BSWAP_H */
 +
 +/* Define to 1 if you have the <sys/ioctl.h> header file. */
 +#define HAVE_SYS_IOCTL_H 1
 +
 +/* Define to 1 if you have the <sys/mman.h> header file. */
 +#define HAVE_SYS_MMAN_H 1
 +
 +/* Define to 1 if you have the <sys/param.h> header file. */
 +#define HAVE_SYS_PARAM_H 1
 +
 +/* Define to 1 if you have the <sys/stat.h> header file. */
 +#define HAVE_SYS_STAT_H 1
 +
 +/* Define to 1 if you have the <sys/sysmacros.h> header file. */
 +/* #undef HAVE_SYS_SYSMACROS_H */
 +
 +/* Define to 1 if you have the <sys/time.h> header file. */
 +#define HAVE_SYS_TIME_H 1
 +
 +/* Define to 1 if you have the <sys/types.h> header file. */
 +#define HAVE_SYS_TYPES_H 1
 +
 +/* Define to 1 if you have the <sys/utime.h> header file. */
 +/* #undef HAVE_SYS_UTIME_H */
 +
 +/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
 +#define HAVE_SYS_WAIT_H 1
 +
 +/* HAVE_TM_ISDST */
 +#define HAVE_TM_ISDST 1
 +
 +/* HAVE_TM_ZONE */
 +#define HAVE_TM_ZONE 1
 +
 +/* HAVE_TZNAME */
 +#define HAVE_TZNAME 1
 +
 +/* Define to 1 if the system has the type 'uintptr_t'. */
 +#define HAVE_UINTPTR_T 1
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#define HAVE_UNISTD_H 1
 +
 +/* Define to 1 if you have the 'uselocale' function. */
 +#define HAVE_USELOCALE 1
 +
 +/* Define to 1 if you have the 'utime' function. */
 +#define HAVE_UTIME 1
 +
 +/* Define to 1 if you have the 'utimes' function. */
 +#define HAVE_UTIMES 1
 +
 +/* Define to 1 if you have the <utime.h> header file. */
 +#define HAVE_UTIME_H 1
 +
 +/* Define to 1 if you have the 'vasprintf' function. */
 +#define HAVE_VASPRINTF 1
 +
 +/* Define to 1 if you have the 'vfork' function. */
 +#define HAVE_VFORK 1
 +
 +/* Define to 1 if you have the <vfork.h> header file. */
 +/* #undef HAVE_VFORK_H */
 +
 +/* Define to 1 or 0, depending whether the compiler supports simple visibility
 +   declarations. */
 +#define HAVE_VISIBILITY 1
 +
 +/* Define to 1 if you have the <wchar.h> header file. */
 +#define HAVE_WCHAR_H 1
 +
 +/* Define to 1 if you have the <wctype.h> header file. */
 +#define HAVE_WCTYPE_H 1
 +
 +/* Define to 1 if you have the 'wcwidth' function. */
 +#define HAVE_WCWIDTH 1
 +
 +/* Define to 1 if 'fork' works. */
 +#define HAVE_WORKING_FORK 1
 +
 +/* Define to 1 if 'vfork' works. */
 +#define HAVE_WORKING_VFORK 1
 +
 +/* Define to 1 if you have the <xlocale.h> header file. */
 +#ifndef __linux__ /* Cross building tools build with glibc on linux */
 +#define HAVE_XLOCALE_H 1
 +#endif
 +
 +/* Define to 1 if you have the <zlib.h> header file. */
 +#define HAVE_ZLIB_H 1
 +
 +/* Define to 1 if you have the <zstd_errors.h> header file. */
 +/* #undef HAVE_ZSTD_ERRORS_H */
 +
 +/* Define to 1 if you have the <zstd.h> header file. */
 +/* #undef HAVE_ZSTD_H */
 +
 +/* Enable lrziplib compression support */
 +/* #undef LRZIPLIBSUPPORT */
 +
 +/* Define to the sub-directory where libtool stores uninstalled libraries. */
 +#define LT_OBJDIR ".libs/"
 +
 +/* Enable lzlib compression support */
 +/* #undef LZLIBSUPPORT */
 +
 +/* Define to 1 if 'major', 'minor', and 'makedev' are declared in <mkdev.h>.
 +   */
 +/* #undef MAJOR_IN_MKDEV */
 +
 +/* Define to 1 if 'major', 'minor', and 'makedev' are declared in
 +   <sysmacros.h>. */
 +/* #undef MAJOR_IN_SYSMACROS */
 +
 +/* Name of package */
 +#define PACKAGE "file"
 +
 +/* Define to the address where bug reports for this package should be sent. */
 +#define PACKAGE_BUGREPORT "christos@astron.com"
 +
 +/* Define to the full name of this package. */
 +#define PACKAGE_NAME "file"
 +
 +/* Define to the full name and version of this package. */
- #define PACKAGE_STRING "file 5.47"
++#define PACKAGE_STRING "file 5.48"
 +
 +/* Define to the one symbol short name of this package. */
 +#define PACKAGE_TARNAME "file"
 +
 +/* Define to the home page for this package. */
 +#define PACKAGE_URL ""
 +
 +/* Define to the version of this package. */
- #define PACKAGE_VERSION "5.47"
++#define PACKAGE_VERSION "5.48"
 +
 +/* Define to 1 if all of the C89 standard headers exist (not just the ones
 +   required in a freestanding environment). This macro is provided for
 +   backward compatibility; new code need not use it. */
 +#define STDC_HEADERS 1
 +
 +/* Define to 1 if your <sys/time.h> declares 'struct tm'. */
 +/* #undef TM_IN_SYS_TIME */
 +
 +/* Enable extensions on AIX, Interix, z/OS.  */
 +#ifndef _ALL_SOURCE
 +# define _ALL_SOURCE 1
 +#endif
 +/* Enable general extensions on macOS.  */
 +#ifndef _DARWIN_C_SOURCE
 +# define _DARWIN_C_SOURCE 1
 +#endif
 +/* Enable general extensions on Solaris.  */
 +#ifndef __EXTENSIONS__
 +# define __EXTENSIONS__ 1
 +#endif
 +/* Enable GNU extensions on systems that have them.  */
 +#ifndef _GNU_SOURCE
 +# define _GNU_SOURCE 1
 +#endif
 +/* Enable X/Open compliant socket functions that do not require linking
 +   with -lxnet on HP-UX 11.11.  */
 +#ifndef _HPUX_ALT_XOPEN_SOCKET_API
 +# define _HPUX_ALT_XOPEN_SOCKET_API 1
 +#endif
 +/* Identify the host operating system as Minix.
 +   This macro does not affect the system headers' behavior.
 +   A future release of Autoconf may stop defining this macro.  */
 +#ifndef _MINIX
 +/* # undef _MINIX */
 +#endif
 +/* Enable general extensions on NetBSD.
 +   Enable NetBSD compatibility extensions on Minix.  */
 +#ifndef _NETBSD_SOURCE
 +# define _NETBSD_SOURCE 1
 +#endif
 +/* Enable OpenBSD compatibility extensions on NetBSD.
 +   Oddly enough, this does nothing on OpenBSD.  */
 +#ifndef _OPENBSD_SOURCE
 +# define _OPENBSD_SOURCE 1
 +#endif
 +/* Define to 1 if needed for POSIX-compatible behavior.  */
 +#ifndef _POSIX_SOURCE
 +/* # undef _POSIX_SOURCE */
 +#endif
 +/* Define to 2 if needed for POSIX-compatible behavior.  */
 +#ifndef _POSIX_1_SOURCE
 +/* # undef _POSIX_1_SOURCE */
 +#endif
 +/* Enable POSIX-compatible threading on Solaris.  */
 +#ifndef _POSIX_PTHREAD_SEMANTICS
 +# define _POSIX_PTHREAD_SEMANTICS 1
 +#endif
 +/* Enable extensions specified by ISO/IEC TS 18661-5:2014.  */
 +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
 +# define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
 +#endif
 +/* Enable extensions specified by ISO/IEC TS 18661-1:2014.  */
 +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
 +# define __STDC_WANT_IEC_60559_BFP_EXT__ 1
 +#endif
 +/* Enable extensions specified by ISO/IEC TS 18661-2:2015.  */
 +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
 +# define __STDC_WANT_IEC_60559_DFP_EXT__ 1
 +#endif
 +/* Enable extensions specified by C23 Annex F.  */
 +#ifndef __STDC_WANT_IEC_60559_EXT__
 +# define __STDC_WANT_IEC_60559_EXT__ 1
 +#endif
 +/* Enable extensions specified by ISO/IEC TS 18661-4:2015.  */
 +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
 +# define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
 +#endif
 +/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015.  */
 +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
 +# define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
 +#endif
 +/* Enable extensions specified by ISO/IEC TR 24731-2:2010.  */
 +#ifndef __STDC_WANT_LIB_EXT2__
 +# define __STDC_WANT_LIB_EXT2__ 1
 +#endif
 +/* Enable extensions specified by ISO/IEC 24747:2009.  */
 +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
 +# define __STDC_WANT_MATH_SPEC_FUNCS__ 1
 +#endif
 +/* Enable extensions on HP NonStop.  */
 +#ifndef _TANDEM_SOURCE
 +# define _TANDEM_SOURCE 1
 +#endif
 +/* Enable X/Open extensions.  Define to 500 only if necessary
 +   to make mbstate_t available.  */
 +#ifndef _XOPEN_SOURCE
 +/* # undef _XOPEN_SOURCE */
 +#endif
 +
 +
 +/* Version number of package */
- #define VERSION "5.47"
++#define VERSION "5.48"
 +
 +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
 +   significant byte first (like Motorola and SPARC, unlike Intel). */
 +#if defined AC_APPLE_UNIVERSAL_BUILD
 +# if defined __BIG_ENDIAN__
 +#  define WORDS_BIGENDIAN 1
 +# endif
 +#else
 +# ifndef WORDS_BIGENDIAN
 +/* #  undef WORDS_BIGENDIAN */
 +# endif
 +#endif
 +
 +/* Enable xzlib compression support */
 +/* #undef XZLIBSUPPORT */
 +
 +/* Enable zlib compression support */
 +#define ZLIBSUPPORT 1
 +
 +/* Enable zstdlib compression support */
 +/* #undef ZSTDLIBSUPPORT */
 +
 +/* Number of bits in a file offset, on hosts where this is settable. */
 +/* #undef _FILE_OFFSET_BITS */
 +
 +/* Define to 1 if necessary to make fseeko visible. */
 +/* #undef _LARGEFILE_SOURCE */
 +
 +/* Define to 1 on platforms where this makes off_t a 64-bit type. */
 +/* #undef _LARGE_FILES */
 +
 +/* Number of bits in time_t, on hosts where this is settable. */
 +/* #undef _TIME_BITS */
 +
 +/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>,
 +   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 +   #define below would cause a syntax error. */
 +/* #undef _UINT32_T */
 +
 +/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
 +   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 +   #define below would cause a syntax error. */
 +/* #undef _UINT64_T */
 +
 +/* Define for Solaris 2.5.1 so the uint8_t typedef from <sys/synch.h>,
 +   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 +   #define below would cause a syntax error. */
 +/* #undef _UINT8_T */
 +
 +/* Define to 1 on platforms where this makes time_t a 64-bit type. */
 +/* #undef __MINGW_USE_VC2005_COMPAT */
 +
 +/* Define to the type of a signed integer type of width exactly 32 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef int32_t */
 +
 +/* Define to the type of a signed integer type of width exactly 64 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef int64_t */
 +
 +/* Define to the type of a signed integer type wide enough to hold a pointer,
 +   if such a type exists, and if the system does not define it. */
 +/* #undef intptr_t */
 +
 +/* Define to a type if <wchar.h> does not define. */
 +/* #undef mbstate_t */
 +
 +/* Define to 'long int' if <sys/types.h> does not define. */
 +/* #undef off_t */
 +
 +/* Define as a signed integer type capable of holding a process identifier. */
 +/* #undef pid_t */
 +
 +/* Define as 'unsigned int' if <stddef.h> doesn't define. */
 +/* #undef size_t */
 +
 +/* Define to the type of an unsigned integer type of width exactly 16 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef uint16_t */
 +
 +/* Define to the type of an unsigned integer type of width exactly 32 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef uint32_t */
 +
 +/* Define to the type of an unsigned integer type of width exactly 64 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef uint64_t */
 +
 +/* Define to the type of an unsigned integer type of width exactly 8 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef uint8_t */
 +
 +/* Define to the type of an unsigned integer type wide enough to hold a
 +   pointer, if such a type exists, and if the system does not define it. */
 +/* #undef uintptr_t */
 +
 +/* Define as 'fork' if 'vfork' does not work. */
 +/* #undef vfork */