git: 207d96dabfec - main - contrib/expat: import expat 2.8.3

Philip Paeps <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.src
Message-ID <6a7a62b6.3f623.65225c30__10358.6006605596$1786405584$gmane$org@gitrepo.freebsd.org>
The branch main has been updated by philip:

URL: https://cgit.FreeBSD.org/src/commit/?id=207d96dabfec14d7b3699747abb539ab3c1118ab

commit 207d96dabfec14d7b3699747abb539ab3c1118ab
Merge: a6999a1c947f ef5aa86648f5
Author:     Philip Paeps <[email protected]>
AuthorDate: 2026-08-10 23:30:15 +0000
Commit:     Philip Paeps <[email protected]>
CommitDate: 2026-08-10 23:30:15 +0000

    contrib/expat: import expat 2.8.3
    
    Changes: https://github.com/libexpat/libexpat/blob/R_2_8_3/expat/Changes
    
    Security:       CVE-2026-72522
    MFC after:      1 week

 contrib/expat/Changes                         | 97 +++++++++++++++++++++------
 contrib/expat/Makefile.am                     |  3 +-
 contrib/expat/Makefile.in                     |  3 +-
 contrib/expat/README.md                       | 14 ++--
 contrib/expat/configure.ac                    |  2 +-
 contrib/expat/doc/reference.html              | 30 ++++++++-
 contrib/expat/doc/xmlwf.1                     |  2 +-
 contrib/expat/doc/xmlwf.xml                   |  2 +-
 contrib/expat/examples/element_declarations.c |  2 +
 contrib/expat/examples/elements.c             |  2 +
 contrib/expat/examples/outline.c              |  2 +
 contrib/expat/lib/ascii.h                     |  2 +
 contrib/expat/lib/asciitab.h                  |  2 +
 contrib/expat/lib/expat.h                     |  4 +-
 contrib/expat/lib/expat_external.h            |  2 +
 contrib/expat/lib/fallthrough.h               |  2 +
 contrib/expat/lib/iasciitab.h                 |  2 +
 contrib/expat/lib/internal.h                  | 17 ++---
 contrib/expat/lib/latin1tab.h                 |  2 +
 contrib/expat/lib/memory_sanitizer.h          |  2 +
 contrib/expat/lib/nametab.h                   |  2 +
 contrib/expat/lib/random_arc4random.c         |  2 +
 contrib/expat/lib/random_arc4random.h         |  2 +
 contrib/expat/lib/random_arc4random_buf.c     |  2 +
 contrib/expat/lib/random_arc4random_buf.h     |  2 +
 contrib/expat/lib/random_dev_urandom.c        |  2 +
 contrib/expat/lib/random_dev_urandom.h        |  2 +
 contrib/expat/lib/random_getentropy.c         |  2 +
 contrib/expat/lib/random_getentropy.h         |  2 +
 contrib/expat/lib/random_getrandom.c          |  2 +
 contrib/expat/lib/random_getrandom.h          |  2 +
 contrib/expat/lib/random_rand_s.c             |  2 +
 contrib/expat/lib/random_rand_s.h             |  2 +
 contrib/expat/lib/siphash.h                   |  2 +
 contrib/expat/lib/utf8tab.h                   |  2 +
 contrib/expat/lib/xcsinc.c                    |  8 ++-
 contrib/expat/lib/xmlparse.c                  | 74 +++++++++++++-------
 contrib/expat/lib/xmlrole.c                   |  2 +
 contrib/expat/lib/xmlrole.h                   |  2 +
 contrib/expat/lib/xmltok.c                    | 17 ++++-
 contrib/expat/lib/xmltok.h                    | 10 ++-
 contrib/expat/lib/xmltok_impl.c               |  2 +
 contrib/expat/lib/xmltok_impl.h               |  2 +
 contrib/expat/lib/xmltok_ns.c                 |  2 +
 contrib/expat/tests/acc_tests.c               |  2 +
 contrib/expat/tests/acc_tests.h               |  2 +
 contrib/expat/tests/alloc_tests.c             |  2 +
 contrib/expat/tests/alloc_tests.h             |  2 +
 contrib/expat/tests/basic_tests.c             | 33 ++++++++-
 contrib/expat/tests/basic_tests.h             |  2 +
 contrib/expat/tests/chardata.c                |  2 +
 contrib/expat/tests/chardata.h                |  2 +
 contrib/expat/tests/common.c                  |  2 +
 contrib/expat/tests/common.h                  |  2 +
 contrib/expat/tests/dummy.c                   |  2 +
 contrib/expat/tests/dummy.h                   |  2 +
 contrib/expat/tests/handlers.c                |  2 +
 contrib/expat/tests/handlers.h                |  2 +
 contrib/expat/tests/memcheck.c                |  2 +
 contrib/expat/tests/memcheck.h                |  2 +
 contrib/expat/tests/minicheck.c               |  2 +
 contrib/expat/tests/minicheck.h               |  2 +
 contrib/expat/tests/misc_tests.c              | 71 +++++++++++++++++++-
 contrib/expat/tests/misc_tests.h              |  2 +
 contrib/expat/tests/ns_tests.c                |  2 +
 contrib/expat/tests/ns_tests.h                |  2 +
 contrib/expat/tests/nsalloc_tests.c           |  2 +
 contrib/expat/tests/nsalloc_tests.h           |  2 +
 contrib/expat/tests/runtests.c                |  2 +
 contrib/expat/tests/structdata.c              |  2 +
 contrib/expat/tests/structdata.h              |  2 +
 contrib/expat/xmlwf/codepage.c                |  2 +
 contrib/expat/xmlwf/codepage.h                |  2 +
 contrib/expat/xmlwf/ct.c                      |  2 +
 contrib/expat/xmlwf/filemap.h                 |  2 +
 contrib/expat/xmlwf/readfilemap.c             |  2 +
 contrib/expat/xmlwf/unixfilemap.c             |  2 +
 contrib/expat/xmlwf/win32filemap.c            |  2 +
 contrib/expat/xmlwf/xmlfile.c                 |  2 +
 contrib/expat/xmlwf/xmlfile.h                 |  2 +
 contrib/expat/xmlwf/xmlmime.c                 |  2 +
 contrib/expat/xmlwf/xmlmime.h                 |  2 +
 contrib/expat/xmlwf/xmltchar.h                |  2 +
 contrib/expat/xmlwf/xmlwf.c                   |  2 +
 contrib/expat/xmlwf/xmlwf_helpgen.py          |  2 +
 contrib/expat/xmlwf/xmlwf_helpgen.sh          |  2 +
 lib/libexpat/expat_config.h                   |  6 +-
 lib/libexpat/libbsdxml.3                      |  4 +-
 88 files changed, 455 insertions(+), 82 deletions(-)

diff --cc contrib/expat/README.md
index 5ad5e1e85afa,000000000000..3e75af77e500
mode 100644,000000..100644
--- a/contrib/expat/README.md
+++ b/contrib/expat/README.md
@@@ -1,297 -1,0 +1,303 @@@
 +[![Run Linux CI tasks](https://github.com/libexpat/libexpat/actions/workflows/linux.yml/badge.svg)](https://github.com/libexpat/libexpat/actions/workflows/linux.yml)
 +[![Packaging status](https://repology.org/badge/tiny-repos/expat.svg)](https://repology.org/metapackage/expat/versions)
 +[![Downloads SourceForge](https://img.shields.io/sourceforge/dt/expat?label=Downloads%20SourceForge)](https://sourceforge.net/projects/expat/files/)
 +[![Downloads GitHub](https://img.shields.io/github/downloads/libexpat/libexpat/total?label=Downloads%20GitHub)](https://github.com/libexpat/libexpat/releases)
 +[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/10205/badge)](https://www.bestpractices.dev/projects/10205)
 +
 +> [!CAUTION]
 +>
- > Expat is **understaffed** and without funding.
- > There is a [call for help with details](https://github.com/libexpat/libexpat/blob/master/expat/Changes)
- > at the top of the `Changes` file.
++> Expat has **unfixed security issues**!
++> Please see https://github.com/libexpat/libexpat/issues/1160 for details.
++
++> [!NOTE]
++>
++> Starting 2026-08-01, for up to six months my work maintaining libexpat
++> will be funded by the [City of Munich](https://en.wikipedia.org/wiki/Munich)
++> as part of their [Open Source Sabbatical](https://opensource.muenchen.de/software/libexpat.html#open-source-sabbatical).
++> Thank you! :heart: :pray:
 +
 +
- # Expat, Release 2.8.2
++# Expat, Release 2.8.3
 +
 +This is Expat, a C99 library for parsing
 +[XML 1.0 Fourth Edition](https://www.w3.org/TR/2006/REC-xml-20060816/), started by
 +[James Clark](https://en.wikipedia.org/wiki/James_Clark_%28programmer%29) in 1997.
 +Expat is a stream-oriented XML parser.  This means that you register
 +handlers with the parser before starting the parse.  These handlers
 +are called when the parser discovers the associated structures in the
 +document being parsed.  A start tag is an example of the kind of
 +structures for which you may register handlers.
 +
 +Expat supports the following C99 compilers:
 +
 +- GNU GCC >=4.5 (for use from C) or GNU GCC >=4.8.1 (for use from C++)
 +- LLVM Clang >=3.5
 +- Microsoft Visual Studio >=17.0/2022
 +  (the oldest version supported by the [official GitHub Actions Windows images](https://github.com/actions/runner-images))
 +
 +Windows users can use the
 +[`expat-win32bin-*.*.*.{exe,zip}` download](https://github.com/libexpat/libexpat/releases),
 +which includes both pre-compiled libraries and executables, and source code for
 +developers.
 +
 +Expat is [free software](https://www.gnu.org/philosophy/free-sw.en.html).
 +You may copy, distribute, and modify it under the terms of the License
 +contained in the file
 +[`COPYING`](https://github.com/libexpat/libexpat/blob/master/expat/COPYING)
 +distributed with this package.
 +This license is the same as the MIT/X Consortium license.
 +
 +
 +## Using libexpat in your CMake-Based Project
 +
 +There are three documented ways of using libexpat with CMake:
 +
 +### a) `find_package` with Module Mode
 +
 +This approach leverages CMake's own [module `FindEXPAT`](https://cmake.org/cmake/help/latest/module/FindEXPAT.html).
 +
 +Notice the *uppercase* `EXPAT` in the following example:
 +
 +```cmake
 +cmake_minimum_required(VERSION 3.10)
 +
 +project(hello VERSION 1.0.0)
 +
 +find_package(EXPAT 2.2.8 MODULE REQUIRED)
 +
 +add_executable(hello
 +    hello.c
 +)
 +
 +target_link_libraries(hello PUBLIC EXPAT::EXPAT)
 +```
 +
 +### b) `find_package` with Config Mode
 +
 +This approach requires files from…
 +
 +- libexpat >=2.2.8 where packaging uses the CMake build system
 +or
 +- libexpat >=2.3.0 where packaging uses the GNU Autotools build system
 +  on Linux
 +or
 +- libexpat >=2.4.0 where packaging uses the GNU Autotools build system
 +  on macOS or MinGW.
 +
 +Notice the *lowercase* `expat` in the following example:
 +
 +```cmake
 +cmake_minimum_required(VERSION 3.10)
 +
 +project(hello VERSION 1.0.0)
 +
 +find_package(expat 2.2.8 CONFIG REQUIRED char dtd ns)
 +
 +add_executable(hello
 +    hello.c
 +)
 +
 +target_link_libraries(hello PUBLIC expat::expat)
 +```
 +
 +### c) The `FetchContent` module
 +
 +This approach — as demonstrated below — requires CMake >=3.18 for both the
 +[`FetchContent` module](https://cmake.org/cmake/help/latest/module/FetchContent.html)
 +and its support for the `SOURCE_SUBDIR` option to be available.
 +
 +Please note that:
 +- Use of the `FetchContent` module with *non-release* SHA1s or `master`
 +  of libexpat is neither advised nor considered officially supported.
 +- Pinning to a specific commit is great for robust CI.
 +- Pinning to a specific commit needs updating every time there is a new
 +  release of libexpat — either manually or through automation —,
 +  to not miss out on libexpat security updates.
 +
 +For an example that pulls in libexpat via Git:
 +
 +```cmake
 +cmake_minimum_required(VERSION 3.18)
 +
 +include(FetchContent)
 +
 +project(hello VERSION 1.0.0)
 +
 +FetchContent_Declare(
 +    expat
 +    GIT_REPOSITORY https://github.com/libexpat/libexpat/
 +    GIT_TAG        000000000_GIT_COMMIT_SHA1_HERE_000000000  # i.e. Git tag R_X_Y_Z
 +    SOURCE_SUBDIR  expat/
 +)
 +
 +FetchContent_MakeAvailable(expat)
 +
 +add_executable(hello
 +    hello.c
 +)
 +
 +target_link_libraries(hello PUBLIC expat)
 +```
 +
 +
 +## Building from a Git Clone
 +
 +If you are building Expat from a check-out from the
 +[Git repository](https://github.com/libexpat/libexpat/),
 +you need to run a script that generates the configure script using the
 +GNU autoconf and libtool tools.  To do this, you need to have
 +autoconf 2.58 or newer. Run the script like this:
 +
 +```console
 +./buildconf.sh
 +```
 +
 +Once this has been done, follow the same instructions as for building
 +from a source distribution.
 +
 +
 +## Building from a Source Distribution
 +
 +### a) Building with the configure script (i.e. GNU Autotools)
 +
 +To build Expat from a source distribution, you first run the
 +configuration shell script in the top level distribution directory:
 +
 +```console
 +./configure
 +```
 +
 +There are many options which you may provide to configure (which you
 +can discover by running configure with the `--help` option).  But the
 +one of most interest is the one that sets the installation directory.
 +By default, the configure script will set things up to install
 +libexpat into `/usr/local/lib`, `expat.h` into `/usr/local/include`, and
 +`xmlwf` into `/usr/local/bin`.  If, for example, you'd prefer to install
 +into `/home/me/mystuff/lib`, `/home/me/mystuff/include`, and
 +`/home/me/mystuff/bin`, you can tell `configure` about that with:
 +
 +```console
 +./configure --prefix=/home/me/mystuff
 +```
 +
 +Another interesting option is to enable 64-bit integer support for
 +line and column numbers and the over-all byte index:
 +
 +```console
 +./configure CPPFLAGS=-DXML_LARGE_SIZE
 +```
 +
 +However, such a modification would be a breaking change to the ABI
 +and is therefore not recommended for general use &mdash; e.g. as part of
 +a Linux distribution &mdash; but rather for builds with special requirements.
 +
 +After running the configure script, the `make` command will build
 +things and `make install` will install things into their proper
 +location.  Have a look at the `Makefile` to learn about additional
 +`make` options.  Note that you need to have write permission into
 +the directories into which things will be installed.
 +
 +If you are interested in building Expat to provide document
 +information in UTF-16 encoding rather than the default UTF-8, follow
 +these instructions (after having run `make distclean`).
 +Please note that we configure with `--without-xmlwf` as xmlwf does not
 +support this mode of compilation (yet):
 +
 +1. Mass-patch `Makefile.am` files to use `libexpatw.la` for a library name:
 +   <br/>
 +   `find . -name Makefile.am -exec sed
 +       -e 's,libexpat\.la,libexpatw.la,'
 +       -e 's,libexpat_la,libexpatw_la,'
 +       -i.bak {} +`
 +
 +1. Run `automake` to re-write `Makefile.in` files:<br/>
 +   `automake`
 +
 +1. For UTF-16 output as unsigned short (and version/error strings as char),
 +   run:<br/>
 +   `./configure CPPFLAGS=-DXML_UNICODE --without-xmlwf`<br/>
 +   For UTF-16 output as `wchar_t` (incl. version/error strings), run:<br/>
 +   `./configure CFLAGS="-g -O2 -fshort-wchar" CPPFLAGS=-DXML_UNICODE_WCHAR_T
 +       --without-xmlwf`
 +   <br/>Note: The latter requires libc compiled with `-fshort-wchar`, as well.
 +
 +1. Run `make` (which excludes xmlwf).
 +
 +1. Run `make install` (again, excludes xmlwf).
 +
 +Using `DESTDIR` is supported.  It works as follows:
 +
 +```console
 +make install DESTDIR=/path/to/image
 +```
 +
 +overrides the in-makefile set `DESTDIR`, because variable-setting priority is
 +
 +1. commandline
 +1. in-makefile
 +1. environment
 +
 +Note: This only applies to the Expat library itself, building UTF-16 versions
 +of xmlwf and the tests is currently not supported.
 +
 +A reference manual is available in the file `doc/reference.html` in this
 +distribution.
 +
 +
 +### b) Building with CMake
 +
 +The CMake build system is still *experimental* and may replace the primary
 +build system based on GNU Autotools at some point when it is ready.
 +
 +
 +#### Available Options
 +
 +For an idea of the available (non-advanced) options for building with CMake:
 +
 +```console
 +# rm -f CMakeCache.txt ; cmake -D_EXPAT_HELP=ON -LH . | grep -B1 ':.*=' | sed 's,^--$,,'
 +// Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel ...
 +CMAKE_BUILD_TYPE:STRING=
 +
 +// Install path prefix, prepended onto install directories.
 +CMAKE_INSTALL_PREFIX:PATH=/usr/local
 +
 +// Path to a program.
 +DOCBOOK_TO_MAN:FILEPATH=/usr/bin/docbook2x-man
 +
 +// Build man page for xmlwf
 +EXPAT_BUILD_DOCS:BOOL=ON
 +
 +// Build the examples for expat library
 +EXPAT_BUILD_EXAMPLES:BOOL=ON
 +
 +// Build fuzzers for the expat library
 +EXPAT_BUILD_FUZZERS:BOOL=OFF
 +
 +// Build pkg-config file
 +EXPAT_BUILD_PKGCONFIG:BOOL=ON
 +
 +// Build the tests for expat library
 +EXPAT_BUILD_TESTS:BOOL=ON
 +
 +// Build the xmlwf tool for expat library
 +EXPAT_BUILD_TOOLS:BOOL=ON
 +
 +// Character type to use (char|ushort|wchar_t) [default=char]
 +EXPAT_CHAR_TYPE:STRING=char
 +
 +// Install expat files in cmake install target
 +EXPAT_ENABLE_INSTALL:BOOL=ON
 +
 +// Use /MT flag (static CRT) when compiling in MSVC
 +EXPAT_MSVC_STATIC_CRT:BOOL=OFF
 +
 +// Build a shared expat library
 +EXPAT_SHARED_LIBS:BOOL=ON
 +
 +// Define to provide symbol versioning for dependency generation
 +EXPAT_SYMBOL_VERSIONING:BOOL=OFF
 +
 +// Treat all compiler warnings as errors
 +EXPAT_WARNINGS_AS_ERRORS:BOOL=OFF
 +```
diff --cc lib/libexpat/expat_config.h
index 32ffa12002c4,000000000000..25c004e0bdd6
mode 100644,000000..100644
--- a/lib/libexpat/expat_config.h
+++ b/lib/libexpat/expat_config.h
@@@ -1,149 -1,0 +1,149 @@@
 +/* expat_config.h.  Generated from expat_config.h.in by configure.  */
 +/* expat_config.h.in.  Generated from configure.ac by autoheader.  */
 +
 +#ifndef EXPAT_CONFIG_H
 +#define EXPAT_CONFIG_H 1
 +
 +#include <machine/endian.h>
 +
 +/* Define if building universal (internal helper macro) */
 +/* #undef AC_APPLE_UNIVERSAL_BUILD */
 +
 +/* 1234 = LILENDIAN, 4321 = BIGENDIAN */
 +#if BYTE_ORDER == LITTLE_ENDIAN
 +#define BYTEORDER 1234
 +#else
 +#define BYTEORDER 4321
 +#endif
 +
 +/* Define to 1 if you have the `arc4random' function. */
 +#define HAVE_ARC4RANDOM 1
 +
 +/* Define to 1 if you have the `arc4random_buf' function. */
 +#define HAVE_ARC4RANDOM_BUF 1
 +
 +/* define if the compiler supports basic C++11 syntax */
 +#define HAVE_CXX11 1
 +
 +/* Define to 1 if you have the <dlfcn.h> header file. */
 +#define HAVE_DLFCN_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 'getpagesize' function. */
 +#define HAVE_GETPAGESIZE 1
 +
 +/* Define to 1 if you have the `getrandom' function. */
 +#define HAVE_GETRANDOM 1
 +
 +/* Define to 1 if you have the <inttypes.h> header file. */
 +#define HAVE_INTTYPES_H 1
 +
 +/* Define to 1 if you have the 'bsd' library (-lbsd). */
 +/* #undef HAVE_LIBBSD */
 +
 +/* Define to 1 if you have a working 'mmap' system call. */
 +#define HAVE_MMAP 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 <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 `syscall' and `SYS_getrandom'. */
 +#define HAVE_SYSCALL_GETRANDOM 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/types.h> header file. */
 +#define HAVE_SYS_TYPES_H 1
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#define HAVE_UNISTD_H 1
 +
 +/* Define to the sub-directory where libtool stores uninstalled libraries. */
 +#define LT_OBJDIR ".libs/"
 +
 +/* Name of package */
 +#define PACKAGE "expat"
 +
 +/* Define to the address where bug reports for this package should be sent. */
 +#define PACKAGE_BUGREPORT "https://github.com/libexpat/libexpat/issues"
 +
 +/* Define to the full name of this package. */
 +#define PACKAGE_NAME "expat"
 +
 +/* Define to the full name and version of this package. */
- #define PACKAGE_STRING "expat 2.8.2"
++#define PACKAGE_STRING "expat 2.8.3"
 +
 +/* Define to the one symbol short name of this package. */
 +#define PACKAGE_TARNAME "expat"
 +
 +/* Define to the home page for this package. */
 +#define PACKAGE_URL ""
 +
 +/* Define to the version of this package. */
- #define PACKAGE_VERSION "2.8.2"
++#define PACKAGE_VERSION "2.8.3"
 +
 +/* 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
 +
 +/* Version number of package */
- #define VERSION "2.8.2"
++#define VERSION "2.8.3"
 +
 +/* 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
 +
 +/* Define to allow retrieving the byte offsets for attribute names and values.
 +   */
 +/* #undef XML_ATTR_INFO */
 +
 +/* Define to specify how much context to retain around the current parse
 +   point, 0 to disable. */
 +#define XML_CONTEXT_BYTES 1024
 +
 +/* Define to include code reading entropy from `/dev/urandom'. */
 +#define XML_DEV_URANDOM 1
 +
 +/* Define to make parameter entity parsing functionality available. */
 +#define XML_DTD 1
 +
 +/* Define as 1/0 to enable/disable support for general entities. */
 +#define XML_GE 1
 +
 +/* Define to make XML Namespaces functionality available. */
 +#define XML_NS 1
 +
 +/* Define to empty if 'const' does not conform to ANSI C. */
 +/* #undef const */
 +
 +/* Define to 'long int' if <sys/types.h> does not define. */
 +/* #undef off_t */
 +
 +#endif // ndef EXPAT_CONFIG_H
diff --cc lib/libexpat/libbsdxml.3
index 14de264bfa7f,000000000000..912078d2465a
mode 100644,000000..100644
--- a/lib/libexpat/libbsdxml.3
+++ b/lib/libexpat/libbsdxml.3
@@@ -1,67 -1,0 +1,67 @@@
 +.\"-
 +.\" Copyright (c) 2002 Poul-Henning Kamp
 +.\" 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, 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.
 +.\"/
- .Dd June 25, 2026
++.Dd August 10, 2026
 +.Dt LIBBSDXML 3
 +.Os
 +.Sh NAME
 +.Nm libbsdxml
 +.Nd eXpat XML parser library
 +.Sh SYNOPSIS
 +.In bsdxml.h
 +.Sh DESCRIPTION
 +The
 +.Nm
- library is a verbatim copy of the eXpat XML library version 2.8.2.
++library is a verbatim copy of the eXpat XML library version 2.8.3.
 +.Pp
 +The
 +.Nm
 +library is intended to be used within the
 +.Fx
 +base system only.
 +Use of the
 +.Nm
 +library for other purposes is not supported and discouraged.
 +.Pp
 +To avoid version and autoconfiguration issues, the library has been
 +renamed to
 +.Nm
 +rather than retain the original eXpat library and include file names
 +to prevent confusion and autoconfiguration issues for 3rd party
 +software.
 +.Sh SEE ALSO
 +For full documentation, please see the eXpat webpage at
 +.Pa http://www.libexpat.org/ .
 +.Sh AUTHORS
 +.An -nosplit
 +The original eXpat was written by
 +.An James Clark Aq Mt [email protected] .
 +.Pp
 +Subsequently eXpat maintenance and development been taken up by a group
 +of people under the leadership of
 +.An Fred Drake Aq Mt [email protected] ,
 +.An Paul Prescod ,
 +and
 +.An Clark Cooper .
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.