Commit Graph

3568 Commits

Author SHA1 Message Date
Rhodri James
23b7f47ef6 Ensure raw tagnames are safe exiting internalEntityParser
Some checks failed
Ensure that GNU Autotools and CMake build systems agree / Ensure that GNU Autotools and CMake build systems agree (-DCMAKE_TOOLCHAIN_FILE=cmake/mingw-toolchain.cmake, --host=i686-w64-mingw32, ubuntu-20.04) (push) Has been cancelled
Ensure that GNU Autotools and CMake build systems agree / Ensure that GNU Autotools and CMake build systems agree (<nil>, <nil>, macos-10.15) (push) Has been cancelled
Ensure that GNU Autotools and CMake build systems agree / Ensure that GNU Autotools and CMake build systems agree (<nil>, <nil>, ubuntu-20.04) (push) Has been cancelled
Ensure realistic minimum CMake version requirement / Ensure realistic minimum CMake version requirement (push) Has been cancelled
Collect test coverage / Collect test coverage (push) Has been cancelled
Run Cppcheck (from macOS Homebrew) / Run Cppcheck (push) Has been cancelled
Check expat_config.h.{in,cmake} for regressions / Check expat_config.h.{in,cmake} for regressions (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_ATTR_INFO=ON, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_CONTEXT_BYTES=OFF, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_DTD=OFF, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_LARGE_SIZE=ON, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_MIN_SIZE=ON, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CMAKE_ARGS=-DEXPAT_NS=OFF, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=memory, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=undefined, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=gcc CXX=g++ LD=ld QA_PROCESSOR=gcov CMAKE_ARGS="-D_EXPAT_M32=ON -DEXPAT_ATTR_INFO=ON", qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=gcc CXX=g++ LD=ld QA_PROCESSOR=gcov CMAKE_ARGS=-D_EXPAT_M32=ON, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=gcc CXX=g++ LD=ld QA_PROCESSOR=gcov, qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ LD=i686-w64-mingw32-ld QA_PROCESSOR=gcov CMAKE_ARGS="-DCMAKE_SYSTEM_NAME=Windows -DWIN32=ON -DMINGW=ON -DEXPAT_ATTR_INFO=ON -DEXPAT_CHAR_TYPE=wchar_t", qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ LD=i686-w64-mingw32-ld QA_PROCESSOR=gcov CMAKE_ARGS="-DCMAKE_SYSTEM_NAME=Windows -DWIN32=ON -DMINGW=ON -DEXPAT_ATTR_INFO=ON", qa-sh) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (CMAKE_ARGS="-DEXPAT_ATTR_INFO=ON -DEXPAT_BUILD_FUZZERS=ON -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++", cmake-… (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (clang-format) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (cmake-oos) (push) Has been cancelled
Run Linux Travis CI tasks / Perform checks (distcheck) (push) Has been cancelled
Run macOS Travis CI tasks / Perform checks (CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address, qa-sh) (push) Has been cancelled
Run macOS Travis CI tasks / Perform checks (cmake-oos) (push) Has been cancelled
Run macOS Travis CI tasks / Perform checks (distcheck) (push) Has been cancelled
Ensure well-formed and valid XML / Ensure well-formed and valid XML (push) Has been cancelled
It is possible to concoct a situation in which parsing is
suspended while substituting in an internal entity, so that
XML_ResumeParser directly uses internalEntityProcessor as
its processor.  If the subsequent parse includes some unclosed
tags, this will return without calling storeRawNames to ensure
that the raw versions of the tag names are stored in memory other
than the parse buffer itself.  If the parse buffer is then changed
or reallocated (for example if processing a file line by line),
badness will ensue.

This patch ensures storeRawNames is always called when needed
after calling doContent.  The earlier call do doContent does
not need the same protection; it only deals with entity
substitution, which cannot leave unbalanced tags, and in any
case the raw names will be pointing into the stored entity
value not the parse buffer.
2022-10-07 02:02:01 +02:00
Vadim Zeitlin
52f86db3e4 Fix warning about undeclared rand_s() with TDM-GCC
Explicitly predefine _CRT_RAND_S to get this function declaration from
stdlib.h, as it's not declared there by default, resulting in warnings
about calling undeclared function when we use it later.
2022-07-18 17:40:12 +01:00
Vadim Zeitlin
1187e4075e Remove README.md symlink
This creates problems when this directory is included in 7z archives
under MSW, as such archives can't be unpacked without administrative
permissions, so simply remove this symlink completely as it's not really
needed anyhow.
2022-04-21 01:07:22 +02:00
Vadim Zeitlin
d0184b0f05 Use _isnan() for even more MSVS versions
isnan() is only available since MSVS 2013, so use non-standard _isnan()
for MSVS 2010 and 2011 too, and not just for 2005 and 2008, as already
done by the parent commit.
2022-04-04 01:58:25 +01:00
Vadim Zeitlin
37edf88387 Use _isnan() for old MSVS version instead of standard isnan()
There is no isnan() in the standard library of e.g. MSVS 2008.
2022-04-01 00:36:46 +01:00
Vadim Zeitlin
d768c5ee1c Consistently fix compilation problems for pre-C99 compilers
This reverts the parent commit and fixes all the problems due to
declaring variables not at the start of the block, which is not
supported by pre-C99 compilers such as MSVS 2008, by adding extra blocks
rather than separating the variable declarations and definitions as done
in the parent commit.

This should make it easier to merge with the upstream changes later and
avoid conflicts when we revert this commit (and the parent one) after
3.2.0. In case any conflicts still do occur, it should be clear enough
that the lines marked with "FIXME-C89" comment need to be removed when
resolving them.
2022-03-31 23:17:34 +01:00
Vadim Zeitlin
33a40d5538 Fix compilation with pre-C99 compilers such as MSVS 2008
Declare the variables at the start of the block.
2022-03-31 22:38:24 +02:00
Vadim Zeitlin
ed09244348 Restore MSVS < 2010 compatibility in another file
Revert another part of ea60ef34 (Drop remaining support for Visual
Studio 2008, 2010, 2012 (#422), 2020-10-03).
2022-03-31 22:02:19 +02:00
Vadim Zeitlin
d454859eed Add a script used by configure forgotten in the last commit
This script is ignored by upstream, but we need to have it as we don't
run autoreconf as part of the build process.
2022-03-31 19:40:49 +02:00
Vadim Zeitlin
274e8a7517 -----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEy43nCpDPv2w79cxWliYqz/vTrsYFAmJCJcoACgkQliYqz/vT
 rsZkSxAAjYiWLkGM1MfOnkr7X6vvWMVAIgtp7PDcxtzTow2+UGM3Dtm6Yd7vsnfQ
 YL83Vkb9MFH8wn9OtTh4dwAVTDyaMgcVMQjnJg9cGdkWU35AD/guNM1KWs2SmvNg
 sBdB3P4/RL1DWem8nnTnz7Oegq0HFxF6DGD8nJ4TJ+Xv2QSKZXQ+y1tEPKubrB4P
 4kTnHuZxfAxSHYATp5wpi6nyZ+c8pORzimDlPZiry0i7Icm/0Oo9yDd/en5IkFD6
 FOtBf6rDpecPBK19PffwFop/VOgJ3jRfGPXJOUjsqXa5IbtYYJVoZThBifhsX20u
 Ybl4IUN6PrU8Qc6YEHq+OQ1fEh4dgUojqtiHMyHjqTVMbdO7/Kzfg091W/prnOlG
 FsROnl12X4dMApSzYFf72Rcv3Dxgtl+MWSQPG8HSqcg6W3UJm7R4N1KvRv5mZVHf
 lyWUwADznSdtyYO+a2JkQsEtg+tRdR/7Xry6sWwLVGlSJwf3n51OxCVwmnHa/BPF
 G0V1klUaKuAnVNek1omCkf5dw/BZqhqPPRHRmo8LL3cslr41LVWN2kd0JBOKvCCq
 ED+8Qs/owSbmylAvltl1Tx6qKuq4HPSyg1GgeycXHyYB6/AdgVcv5YZB+SoHWuK4
 v4v8Hme8v8aJ01kUuZQ9KyCL40QBK1j1MbZdW22xZUpFx5qhBXw=
 =fKbe
 -----END PGP SIGNATURE-----

Merge tag 'R_2_4_8' into wx

Merge the latest upstream release with the following changes:

- Partially revert 8d1bd6ff (Resolve macro HAVE_EXPAT_CONFIG_H,
  2021-04-21) as we still need to support Windows and Mac builds not
  using configure or CMake and so not generating expat_config.h.

- Mostly revert ea60ef34 (Drop remaining support for Visual Studio 2008,
  2010, 2012 (#422), 2020-10-03) as we still need to support these MSVS
  versions.

- Rerun buildconf.sh to update the build files stored in Git.
2022-03-31 19:25:27 +02:00
Sebastian Pipping
3bab6c09bb
Merge pull request #591 from libexpat/issue-590-prepare-release
Prepare release 2.4.8 (part of #590)
2022-03-28 23:11:38 +02:00
Sebastian Pipping
8902f86c39 Set expected release date for 2.4.8 2022-03-28 16:57:36 +02:00
Sebastian Pipping
8a23721475 Sync file headers 2022-03-28 16:52:39 +02:00
Sebastian Pipping
24ae16273b Bump version to 2.4.8 2022-03-28 16:49:52 +02:00
Sebastian Pipping
44c2a9470a Bump version info from 9:7:8 to 9:8:8
See https://verbump.de/ for what these numbers do
2022-03-28 16:01:01 +02:00
Sebastian Pipping
f1fd4b6d4a
Merge pull request #587 from libexpat/fix-pkg-config
Fix pkg-config files
2022-03-28 15:52:03 +02:00
Sebastian Pipping
011c4b5a5c
Merge pull request #589 from libexpat/clang-14
Actions: Upgrade Clang from 13 to 14
2022-03-25 17:06:41 +01:00
Sebastian Pipping
5764f867d4
Merge pull request #586 from libexpat/actions-migrate-off-moving-tags
Actions: Migrate off moving Git tags
2022-03-25 14:59:32 +01:00
Sebastian Pipping
0684e6e183 Actions: Resolve hardcoding of "bionic" for maintainability 2022-03-25 14:58:25 +01:00
Sebastian Pipping
ef31c8681e Actions: Upgrade Clang from 13 to 14 2022-03-25 14:58:25 +01:00
Sebastian Pipping
bc42b64076 Actions: Migrate off moving Git tags 2022-03-24 18:21:29 +01:00
Sebastian Pipping
540c7eb707
Merge pull request #588 from libexpat/actions-make-robust-towards-outdated-images
Actions: Make robust toward outdated images
2022-03-24 18:21:02 +01:00
Sebastian Pipping
95397f52e4 Actions: Make robust toward outdated images 2022-03-24 16:51:44 +01:00
Sebastian Pipping
cbd4807ea6 Changes: Document #587 2022-03-24 16:41:18 +01:00
Sebastian Pipping
7165ae8bff CMake: Fix pkg-config section "Libs" for MSVC 2022-03-24 16:36:29 +01:00
Sebastian Pipping
896e94000c pkg-config: Move "-lm" from section "Libs" to section "Libs.private" 2022-03-24 16:29:58 +01:00
Sebastian Pipping
bccf36869d
Merge pull request #582 from libexpat/issue-55-macos-library-version
CMake: Enforce library versioning compatible with GNU Libtool for macOS (fixes #55)
2022-03-09 20:33:21 +01:00
Sebastian Pipping
53fbdf5b89
Merge pull request #583 from libexpat/dependabot/github_actions/actions/checkout-3
Actions(deps): Bump actions/checkout from 2.4.0 to 3
2022-03-07 19:54:44 +01:00
Sebastian Pipping
f02c23a021
Merge pull request #584 from libexpat/dependabot/github_actions/actions/upload-artifact-3
Actions(deps): Bump actions/upload-artifact from 2.3.1 to 3
2022-03-07 19:54:35 +01:00
Sebastian Pipping
707cea1898 Changes: Document #55 and #582 2022-03-07 18:11:29 +01:00
dependabot[bot]
f1205b2914
Actions(deps): Bump actions/upload-artifact from 2.3.1 to 3
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2.3.1 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.3.1...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 12:05:18 +00:00
dependabot[bot]
3e200940b0
Actions(deps): Bump actions/checkout from 2.4.0 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.4.0 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.4.0...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 12:05:16 +00:00
Sebastian Pipping
f00c5857f9 CMake: Enforce library versioning compatible with GNU Libtool for macOS 2022-03-07 03:31:21 +01:00
Sebastian Pipping
27d5b8ba17
Merge pull request #581 from libexpat/fix-windows-installer
Fix windows installer (related to #555, follow-up to #570)
2022-03-04 22:23:07 +01:00
Sebastian Pipping
c3e9dcfc66 Changes: Document #581 2022-03-04 21:22:31 +01:00
Sebastian Pipping
c9e1ac00c6 win32: Fix version.rc destination in expat.iss 2022-03-04 21:22:31 +01:00
Sebastian Pipping
17b258471d
Merge pull request #580 from libexpat/issue-578-prepare-release
Prepare release 2.4.7 (part of #578)
2022-03-04 20:41:48 +01:00
Sebastian Pipping
c08d530920 Set expected release date for 2.4.7 2022-03-04 19:16:16 +01:00
Sebastian Pipping
e07e394771 Sync file headers 2022-03-04 19:16:16 +01:00
Sebastian Pipping
99eddcd2bb Changes: Document #555 #570 #573 #574 #575 #579 2022-03-04 19:16:16 +01:00
Sebastian Pipping
a34daa5bab Bump version to 2.4.7 2022-03-04 18:47:59 +01:00
Sebastian Pipping
c30b80ee9c Bump version info from 9:6:8 to 9:7:8
See https://verbump.de/ for what these numbers do
2022-03-04 18:46:01 +01:00
Sebastian Pipping
f178826bb1
Merge pull request #577 from libexpat/namesep
lib: Relax fix to CVE-2022-25236 with regard to RFC 3986 URI characters (fixes #572)
2022-03-04 18:43:39 +01:00
Sebastian Pipping
9579f7ea29 Changes: Document #572 and #577 2022-03-04 16:56:22 +01:00
Sebastian Pipping
c57bea96b7 lib|doc: Add a note on namespace URI validation 2022-03-04 16:56:22 +01:00
Sebastian Pipping
5dd5218297 lib: Document namespace separator effect right in header <expat.h> 2022-03-04 16:54:01 +01:00
Sebastian Pipping
e0f852db1e tests: Cover relaxed fix to CVE-2022-25236 2022-03-04 16:54:01 +01:00
Sebastian Pipping
2ba6c76fca lib: Relax fix to CVE-2022-25236 with regard to RFC 3986 URI characters 2022-03-04 16:54:01 +01:00
Sebastian Pipping
c99e0e7f2b
Merge pull request #579 from Tieske/patch-1
doc: Fix documentation of XML_EndDoctypeDeclHandler in <expat.h>
2022-03-04 16:46:36 +01:00
Thijs Schreijer
7abe5549cb
fix typo
This has already been corrected in the official API reference docs
2022-03-04 11:24:31 +01:00