Branch :
| 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) |