kc3-lang/libxml2

Branch :


Log

Author Commit Date CI Message
966f5ebd 2022-10-23 14:14:39 xinclude: Remove inefficient refcounting scheme xinclude.c used to implement a refcounting mechanism for documents which could result in documents being freed too early and reloaded. We really should keep parsed and processed documents around for as long as possible to avoid reprocessing.
fe0194d5 2022-10-23 13:57:33 xinlucde: Pass xmlXIncludeRefPtrs directly Stop passing indices into the include table.
2fc8d123 2022-10-22 19:08:43 xinclude: Make xmlXIncludeCopyNode non-recursive Avoid call stack overflows. Also switch to xmlStaticCopyNode which avoids duplicate namespace definitions.
bc32c386 2022-10-22 17:48:25 xinclude: Don't pass documents to xmlXIncludeCopyNode Extract the root element directly in xmlXIncludeCopyXPointer.
0fc5be0a 2022-10-23 13:55:29 xinclude: Remove dead code in xmlXIncludeLoadDoc The include table was already scanned for entries with a matching URI a couple of lines before.
46e4cfb6 2022-10-22 19:20:20 xinclude: Remove unused source and target arguments source is unused, target is always ctxt->doc.
d2ed1e4f 2022-10-22 16:50:18 xinclude: Limit recursion depth This avoids call stack overflows.
34496f26 2022-10-22 16:09:21 xinclude: Test for inclusion loops
bad30e2b 2022-10-21 17:27:23 xinclude: Copy included docs with xmlDocCopyNode All includes should already be expanded after calling xmlXIncludeRecurseDoc, so there's no need to invoke the more costly xmlXIncludeCopyNodeList. Now xmlXIncludeCopyNode is only used to copy XPointer fragments.
bc267cb9 2022-10-22 02:19:22 xinclude: Expand includes in xmlXIncludeCopyNode This should make nested includes work reliably. Fixes #424.
5e4b751f 2022-10-22 02:17:39 xinclude: Make xmlXIncludeCopyNode return a node list Convert callers of xmlXIncludeCopyNode to handle node lists.
64eaf4d4 2022-10-21 16:05:29 xinclude: Make xmlXIncludeCopyNode iterate all descendants
5f664ab2 2022-10-21 16:17:48 xinclude: Rework xmlXIncludePreProcessNode Rename xmlXIncludePreProcessNode to xmlXIncludeExpandNode. Search the include table for an already existing entry. Also load the included items in xmlXIncludeExpandNode and remove the second phase in xmlXIncludeDoProcess.
4d7524af 2022-10-21 16:46:38 xinclude: Ignore XML_XINCLUDE_START in xmlXIncludeCopyXPointer The XPath engine shouldn't return such nodes anyway.
ea7c9fb5 2022-10-22 16:48:58 xinclude: Don't create result doc for test with errors
c99cde3f 2022-10-22 16:59:35 xinclude: Also test error messages The reader interface with XIncludes is somewhat broken and can generate different error messages. Start to move tests which are sketchy with reader to a separate directory.
938105b5 2022-10-21 15:56:12 Revert "xinclude: Fix regression with nested includes" This reverts commit 7f04e297318b1b908cec20711f74f75625afed7f which caused memory errors. See #424.
e85f9b98 2022-10-19 02:47:30 xmllint: Improve handling of empty XPath node sets Don't return an error if the result is an empty node set. Suppress the "XPath set is empty" message in quiet mode. Fixes #180.
530938b4 2022-10-18 18:56:56 cmake: Build static library with -DLIBXML_STATIC Fix scope of target_compile_definitions command. Fixes #425.
7f04e297 2022-10-18 18:40:00 xinclude: Fix regression with nested includes This reverts commits 74dcc10b and 87d20b55. Fixes #424.
644a89e0 2022-08-31 22:11:25 [CVE-2022-40304] Fix dict corruption caused by entity reference cycles When an entity reference cycle is detected, the entity content is cleared by setting its first byte to zero. But the entity content might be allocated from a dict. In this case, the dict entry becomes corrupted leading to all kinds of logic errors, including memory errors like double-frees. Stop storing entity content, orig, ExternalID and SystemID in a dict. These values are unlikely to occur multiple times in a document, so they shouldn't have been stored in a dict in the first place. Thanks to Ned Williamson and Nathan Wachholz working with Google Project Zero for the report!
ffaec758 2022-08-25 17:43:08 Fix integer overflows with XML_PARSE_HUGE Also impose size limits when XML_PARSE_HUGE is set. Limit size of names to XML_MAX_TEXT_LENGTH (10 million bytes) and other content to XML_MAX_HUGE_LENGTH (1 billion bytes). Move some the length checks to the end of the respective loop to make them strict. xmlParseEntityValue didn't have a length limitation at all. But without XML_PARSE_HUGE, this should eventually trigger an error in xmlGROW. Thanks to Maddie Stone working with Google Project Zero for the report!
1a2d8ddc 2022-10-11 13:02:47 parser: Fix potential memory leak in xmlParseAttValueInternal Fix memory leak in case xmlParseAttValueInternal is called with a NULL `len` a non-NULL `alloc` argument. This static function is never called with such arguments internally, but the misleading code should be fixed nevertheless. Fixes #422.
5bfaf230 2022-10-11 13:00:33 win32: Fix build with VS2013 Should fix #420.
e2bae1bc 2022-09-20 14:34:20 autotools: Don't use version script on Windows A feature test would be better, but blacklisting Windows platforms seems good enough for now.
796c830a 2022-09-20 14:30:19 cmake: Set SOVERSION Fixes #410.
1d4f5d24 2022-09-13 16:40:31 schemas: Fix null-pointer-deref in xmlSchemaCheckCOSSTDerivedOK Found by OSS-Fuzz.
f2392dc4 2022-09-09 13:51:58 gitlab-ci: Allow cast-align warnings from clang
a9669679 2022-09-09 01:44:00 error: Don't use initGenericErrorDefaultFunc The code in xmlInitParser did only set the error handler if it was NULL which should never happen.
27c8ba60 2022-09-07 22:34:42 xpath: Lower XPath recursion limit on Windows
f597eff8 2022-09-07 18:18:06 autotools: Fix winsock detection Hardcode the required library on MinGW because winsock uses non-standard calling conventions on 32-bit Windows which makes AC_SEARCH_LIBS fail. Should fix #406.
16d3e8b2 2022-09-07 18:10:03 autotools: Only add network libraries if HTTP/FTP enabled
ae98a5b4 2022-09-07 12:10:39 gitlab-ci: Fix tar invocation
c52dd494 2022-09-06 23:27:01 gitlab-ci: Move MSVC test to separate script
ea78427d 2022-09-06 22:46:07 gitlab-ci: Fix SUFFIX, remove MINGW_PATH
e4bdbf3d 2022-09-06 21:29:24 gitlab-ci: Consolidate CMake test scripts
861466bf 2022-09-06 20:32:08 gitlab-ci: Only install MinGW autotools if needed
5ff3baf0 2022-09-06 17:33:38 python: Create .pyd on Windows
e86ede09 2022-09-06 18:24:25 gitlab-ci: Only install cmake MinGW package if needed On MinGW, cmake requires curl which requires nghttp2 which requires libxml2. But having a system libxml2 interferes with the Python tests for now. Ultimately, we should use Python's os.add_dll_directory() on Windows. I'm not sure why the current solution using PATH even works.
7ab3228f 2022-09-06 18:32:55 gitlab-ci: Install 7-Zip using the .msi So we don't need cmake to extract a file.
fec85df1 2022-09-06 18:50:23 xmllint: Document --quiet option
ea8f7c92 2022-09-06 00:47:00 autotools: Disable parallel Python build Makefile rules with multiple output files don't work reliably with parallel builds. There are several ways to fix this issue with GNU Make, but they aren't portable. I'd be really interested in a totally reliable, cross-platform solution to this problem. .NOTPARALLEL is also understood by BSD make, at least.
9d19c169 2022-09-06 00:21:28 python: Don't output missing generators during build
a41878bd 2022-09-05 23:16:23 build: Remove check for broken ss_family This only seemed to affect ancient AIX systems.
c63b2692 2022-09-05 22:50:45 gitlab-ci: Disable MSan for now MSan seems broken on Ubuntu 22.04.
ad338459 2022-09-05 21:16:20 autotools: Fix bug with multiline arguments Should fix #404.
adcf399b 2022-09-05 15:36:13 autotools: Try to fix bug with multiline arguments Only happens with older autoconf?
30c8d9bb 2022-09-05 02:02:54 http: Simplify IPv6 checks This should also enable IPv6 support on Windows. Untested and mostly useless anyway, since we don't support HTTPS.
9e5a016e 2022-09-05 01:08:33 autotools: Fix network checks on Windows
98acf28f 2022-09-04 22:12:32 Use $MSYSTEM and 'bash -lc' in MinGW CI Setting the $MSYSTEM environment variable and invoking shell scripts with 'bash -lc' sets up the correct MinGW environment. See https://www.msys2.org/docs/ci/
5d32b126 2022-09-04 22:05:16 Fix detection of GNU libiconv GNU libiconv prefixes symbols with "lib".
460ba0cb 2022-09-04 16:00:19 Add CI job for MinGW/Autotools
0cc9c1d1 2022-09-04 15:35:47 Consolidate CI scripts
89aeb4df 2022-09-04 18:44:52 Allow empty MINGW_PACKAGE_PREFIX
efc0e85c 2022-09-04 15:26:47 Move Dockerfile to .gitlab-ci directory
02e12371 2022-09-04 20:12:18 cmake: Fix Python installation Don't install into ${Python_SITEARCH} for now.
243fdbc3 2022-09-04 19:13:14 cmake: Don't check for Python 2
b0556e14 2022-09-04 18:49:23 testapi: Disable on Windows for now It's incredibly slow for some reason.
71736b4e 2022-09-04 16:16:37 Fix libxml_PyFileGet Broken in commit 75cdb6dd.
27b2b864 2022-09-04 18:32:55 configure.ac: Also check for MSYS host
3a1c5ee7 2022-09-04 18:22:30 Disable fuzzer tests if glob.h wasn't found
ad6f10a8 2022-09-04 17:21:51 Fix Python build on Windows Build Python bindings with -no-undefined on Windows. Remove libs that should already be set by PKG_CHECK_MODULE.
22b82d14 2022-09-04 17:19:58 Improve network library detection
0d901258 2022-09-04 16:41:43 Fix Windows compiler warnings in python/types.c
f9fcb2c4 2022-09-04 04:47:48 Revert "CI job for MingW64/Autotools" This reverts commit 6bfebf4d5886bd5f2a3979ceedc27ebd6c3c5009.
6bfebf4d 2022-09-04 04:04:45 CI job for MingW64/Autotools
0048fd0a 2022-09-04 03:48:49 Detect ws2_32 with AC_SEARCH_LIBS
60b03c9e 2022-09-04 03:31:27 Rework network configure checks Migrate to AC_SEARCH_LIBS. Don't pollute LIBS.
fe02289f 2022-09-04 03:19:01 Remove arg cast configure checks We can simply cast to non-const char * unconditionally.
2d164d68 2022-09-04 02:54:20 Fix dlopen check
1e60c768 2022-09-04 01:49:41 Remove HAVE_WIN32_THREADS configuration flag Check for LIBXML_THREAD_ENABLED and _WIN32 instead.
13a66378 2022-09-04 01:05:51 Remove BeOS support Haiku shouldn't be affected.
38290ec1 2022-09-04 00:49:36 Rework dlopen and pthread detection Migrate to AC_SEARCH_LIBS. Remove check for ancient GCC 3.3.
e47df37b 2022-09-04 00:46:32 Fix test in configure.ac Broken in commit b4847d60.
202b8e19 2022-09-01 06:52:02 cmake: Enable GCC compiler warnings
81621b1f 2022-09-02 18:38:33 Fix compiler warnings in SAX2.c
caef8563 2022-09-02 17:26:47 Move automata test to runtest.c
c59df16d 2022-09-02 17:00:05 Always link with -no-undefined This is a good idea to detect errors early.
513d65fe 2022-09-02 16:45:06 Use AM_CFLAGS and AM_LDFLAGS consistently
75cdb6dd 2022-09-02 16:47:25 Fix unused variable warning in python/types.c
1bd24d44 2022-09-02 17:59:09 Fix compiler warning in examples
d0ab5c4f 2022-09-02 17:47:48 Fix compiler warnings in fuzzing code
17d505e2 2022-09-02 17:33:42 Remove -Wredundant-decls Some Python headers contain redundant redeclarations.
4d911ebc 2022-09-02 16:14:04 Call AC_CHECK_* with multiple arguments
75bd98a5 2022-09-02 05:09:42 Remove unused code in nanohttp.c This was hidden behind an undocumented flag RES_USE_INET6.
5bffa33a 2022-09-02 05:03:03 Stop including sys/types.h
05fc6ee2 2022-09-02 04:45:27 configure.ac: Remove checks for unused programs
16ae1d8f 2022-09-02 04:33:54 Don't define WIN32 macro
0f77167f 2022-09-02 02:08:44 Rework library detection in configure.ac Migrate to AC_CHECK_LIB and AC_SEARCH_LIBS. Don't pollute CPPFLAGS, LDFLAGS and LIBS.
f2dda8e8 2022-09-02 00:51:46 Rearrange configure.ac Move some sections around and align headers.
6a5c88cc 2022-09-02 00:40:03 Consolidate zlib and lzma detection Don't depend on a global variable for flag backup. Now the blocks can be moved freely around.
59f2f60e 2022-09-02 00:27:57 Remove "runtime debugging" This doesn't seem useful as configuration option.
b4847d60 2022-09-02 00:17:43 Consolidate simple API modules in configure.ac Add some small consistency fixes.
88a8757b 2022-09-01 23:44:00 Fix dependency resolution in configure.ac This mainly fixes the case of disabling a single module, for example ./configure --without-xpath Before, there were still a few cases where a module wouldn't be disabled unless another module depending on it were disabled, too. Finding the correct options to really disable some modules could be extremely hard for casual users. Now every --without option should reliably disable dependent modules unless they were specifcally requested. In the latter case, a warning is printed consistently. Some missing dependencies were added and the logic was consolidated in a single code section.
c7149792 2022-09-01 23:15:35 Fix --with-valid --without-regexps build This build config resulted in segfaults in 'runtest' because a special xmlElementContentPtr showed up in a few places. I'm not sure if this is the right fix. An error message was changed to conform to the --with-regexps build. There are still a few missing validity errors, so the tests don't pass.
884e142d 2022-09-01 22:44:02 Fix --with-schemas --without-xpath build xmlXPathInit must be called for schemas.
14d38a71 2022-09-01 05:53:51 Don't build unneeded .c source files
bdcf842c 2022-09-01 20:45:35 Move xmlIsXHTML to tree.c It's declared in tree.h and not guarded by LIBXML_OUTPUT_ENABLED like the other functions in xmlsave.c.
6843fc72 2022-09-01 02:58:00 Remove or annotate char casts
2cac6269 2022-09-01 03:14:13 Don't use sizeof(xmlChar) or sizeof(char)