Log

Author Commit Date CI Message
Nick Wellnhofer a80f8b64 2023-05-04T15:59:31 html: Allow attributes in end tags Attribute are syntactically allowed in HTML5 end tags but otherwise ignored.
Nick Wellnhofer f2272c23 2023-05-04T15:33:27 html: Handle unexpected-solidus-in-tag according to HTML5
Nick Wellnhofer dcb2abb2 2023-05-04T15:16:29 html: Parse tag and attribute names according to HTML5 HTML5 allows bascially all characters in tag and attribute names.
Nick Wellnhofer 939b53ee 2023-05-04T15:25:24 html: Stop skipping tag content Tag and attributes names should always be parsed succesfully now.
Nick Wellnhofer d67833a3 2024-09-26T19:21:24 xmllint: Use proper type to store seconds since epoch Should avoid year 2038 problem. Fixes #801.
correctmost 81d38ed0 2024-09-25T07:52:10 meson: Fix duplicate listing of libxml2.devhelp2 The duplication caused a warning when uninstalling.
Nick Wellnhofer b1c5aa65 2024-09-19T12:50:59 xpath: Deprecate xmlXPathNAN and xmlXPath*INF Users should simply use the C99 macros.
Nick Wellnhofer 55ddccb6 2024-09-14T00:03:56 io: Make sure not to pass partial UTF-8 to write callback We cannot split UTF-8 at arbitrary boundaries.
Nick Wellnhofer c46b89e2 2024-09-13T21:06:36 xpath: Deprecate xmlXPathEvalExpr Also check the argument instead of crashing if there's no context.
Nick Wellnhofer 03f1bdd2 2024-09-13T20:59:47 xpath: Make recursion check work with xmlXPathCompile The check for maximum recursion depth required a parser context with an xmlXPathContext which xmlXPathCompile didn't provide. All other code should already set up or require an xmlXPathContext.
Nick Wellnhofer dae160c6 2024-09-13T12:08:20 encoding: Fix table entry for "UTF16"
Nick Wellnhofer 5e787401 2024-09-10T17:12:25 save: Make xmlEscapeTab signed Fixes issues in platforms where char is unsigned. Fixes #797.
Nick Wellnhofer 6e503eb7 2024-09-10T03:32:37 encoding: Handle more ICU error codes U_ILLEGAL_ESCAPE_SEQUENCE and U_UNSUPPORTED_ESCAPE_SEQUENCE can occur with ISO-2022.
Nick Wellnhofer 55d36c59 2024-09-10T03:11:18 encoding: Fix error code in xmlUconvConvert Broke in 46ec621e.
Nick Wellnhofer de10d4cd 2024-09-04T16:19:42 include: Check whether _MSC_VER is defined Should fix #795.
Nick Wellnhofer bd9eed46 2024-09-02T18:37:41 parser: Make unsupported encodings an error in declarations This was changed in 45157261, but in encoding declarations, unsupported encodings should raise a fatal error. Fixes #794.
Nick Wellnhofer 40abebbc 2024-08-29T01:02:33 python: Fix SAX driver with character streams This apparently broke with Python 3.5 which introduced character streams. Fixes #790.
Nick Wellnhofer 8ae06d52 2024-08-29T00:07:27 SAX2: Don't merge CDATA sections The Document Object Model (DOM) Level 3 Core Specification says: > Adjacent CDATASection nodes are not merged by use of the normalize > method of the Node interface. Fixes #412.
Nick Wellnhofer dde62ae5 2024-08-28T23:58:20 parser: Align push parsing of CDATA sections with pull parser Remove special handling of CDATA sections in push parser. This makes sure that only a single callback is generated for large sections. Fixes #22 and needed for #412.
Nick Wellnhofer 4d10e53a 2024-08-28T22:47:20 parser: Make sure to set and increment input id Revert part of commits 410931e3 and b9d2f3c9.
Nick Wellnhofer 6d365ca0 2024-08-28T22:09:30 doc: XML_PARSE_NO_XXE is available since 2.13.0
Nick Wellnhofer 8ad618d2 2024-08-28T22:03:30 doc: Document all xmllint options Remove --pushsmall. Fixes #785.
triallax 67ff748c 2024-08-26T23:53:29 io: don't set the executable bit when creating files Issue seems to have been introduced in 0bef93bf24def68c448af0e71844b942e0ed93ec.
Nick Wellnhofer 0bb0012e 2024-08-19T21:15:28 catalog: Set xmlCatalogInitialized after setting default catalog
Nick Wellnhofer 8625db28 2024-08-19T20:02:47 xmlcatalog: Improved fix for #699
Nick Wellnhofer 4b007878 2024-08-19T20:44:07 Revert "catalog: Fetch XML catalog before dumping" This reverts commit 723b4de04015c5acccd3cda5dd60db7d00702064.
Nick Wellnhofer 57b92cab 2024-08-19T20:35:54 catalog: Fix regression in xmlCatalogAdd Don't load system catalog.
Nick Wellnhofer 2abb9033 2024-08-19T17:58:47 tests: Add fallback for glob() Fix build on platforms without glob().
Nick Wellnhofer 567f612d 2024-08-19T17:43:32 build: Check for declaration of glob() function Don't rely on presence of glob.h.
Nick Wellnhofer 2191ccdf 2024-08-18T12:16:34 autotools: Fix EXTRA_DIST Fixes #786.
makise-homura 5c608609 2024-08-16T22:35:54 Eliminate false positive -Warray-bounds on some compilers This affects GCC 7.3, MinGW 7.3, and LCC 1.25 and 1.26. In some sense it reverts ad93f087.
makise-homura a3043b47 2024-08-14T23:40:16 threads: define _WIN32_WINNT as 0x0600 to use InitOnceExecuteOnce()
makise-homura f59da1a3 2024-08-14T23:22:59 hash: Suppress GCC 7.3 and MINGW maybe-uninitialized warning
makise-homura 103aadbc 2024-08-14T23:15:30 parser: Suppress EDG maybe-uninitialized warning
Nick Wellnhofer f2c48847 2024-08-13T14:38:07 io: Add missing calls to xmlInitParser This is required after c9a46a91. Should fix #782.
Nick Wellnhofer 0c56eb82 2024-08-12T21:38:50 tree: Restore return value of xmlNodeListGetString with NULL list When passing a NULL list to xmlNodeListGetString or xmlNodeListGetRawString, return NULL instead of "" to match the old behavior. Fixes #783.
Taylor R Campbell b45a0f0e 2024-08-06T22:34:29 nanohttp: Avoid ctype(3) misuse. fix https://gitlab.gnome.org/GNOME/libxml2/-/issues/780
Nick Wellnhofer 1d009fe3 2024-08-05T15:14:21 parser: Report at least one fatal error
Nick Wellnhofer bfed6e6a 2024-08-05T14:58:37 parser: Fix error handling after reaching limit Mark document as non-wellformed and stop parser even if error limit was reached. Regressed in abd74186.
Nick Wellnhofer 6e1e22dc 2024-08-04T11:45:05 malloc-fail: Fix null-deref in xmlPatPushState
Nick Wellnhofer a530ff12 2024-07-29T14:18:57 io: Always consume encoding handler when creating output buffers Also free encoding handler in error case. Remove xmlAllocOutputBufferInternal which was identical to xmlAllocOutputBuffer.
Nick Wellnhofer 36ea881b 2024-07-26T18:07:27 malloc-fail: Fix memory leak in xmlOutputBufferCreateFilename Close encoding handler on error.
Nick Wellnhofer 02fcb1ef 2024-07-25T17:07:18 parser: Make xmlParseChunk return an error if parser was stopped This regressed after enhancing the disableSAX member in 2.13. Should fix #777.
Nick Wellnhofer bc14d70f 2024-07-25T00:26:48 xmlsave: Improve "unsupported encoding" error message Incomplete support of XML_SAVE_* error codes was removed. Error handling still needs work. xmlOutputBufferCreateFilename should return an error code.
Nick Wellnhofer 1a893230 2024-07-06T01:03:46 [CVE-2024-40896] Fix XXE protection in downstream code Some users set an entity's children manually in the getEntity SAX callback to restrict entity expansion. This stopped working after renaming the "checked" member of xmlEntity, making at least one downstream project and its dependants susceptible to XXE attacks. See #761.
Nick Wellnhofer 6cc2387e 2024-07-24T11:42:39 shell: Only use readline on terminals Should fix xmllint shell tests.
Nick Wellnhofer d04e152d 2024-07-24T11:40:01 shell: Remove access(2) checks The checks didn't handle stdout. Since unistd.h wasn't included, W_OK wasn't defined and the checks wouldn't run anyway.
Nick Wellnhofer aa6ca0b1 2024-07-23T03:29:41 module: Deprecate module API This was only used by libxslt which switched to a private implementation.
Nick Wellnhofer ec4340b8 2024-07-23T01:32:43 Update NEWS
Nick Wellnhofer e1291059 2024-07-22T22:22:48 build: Don't check for pthread.h The Autotools build still checks for pthread.h (and zlib.h and lzma.h) but the result isn't needed in config.h.
Nick Wellnhofer cc03c069 2024-07-22T22:15:09 build: Don't check for standard POSIX headers These headers should be available since early POSIX days and are required no matter what.
Nick Wellnhofer d7dc2eaf 2024-07-22T21:39:54 build: Don't check for dlfcn.h and dl.h It's enough to check for symbols.
Nick Wellnhofer 7c10393f 2024-07-22T17:25:15 build: Fix config.h macros We have to emulate AC_CHECK_DECLS. Instead of leaving the macro undefined if a symbol wasn't found, it has to be set to 0.
Nick Wellnhofer 095b3c7f 2024-07-22T15:37:13 cmake: Implement READLINE and HISTORY options
Nick Wellnhofer 0172ffa9 2024-07-22T15:21:36 build: Only check for required headers
Nick Wellnhofer 3ef66611 2024-07-22T14:58:16 build: Rework mmap checks Switch to AC_CHECK_DECLS/check_symbol_exists. Don't check for sys/mman.h separately. Don't check for munmap.
Nick Wellnhofer e1657f3f 2024-07-22T14:33:14 build: Use AC_CHECK_DECLS/check_symbol_exists for getentropy This assumes that getentropy is declared in sys/random.h. Should fix issues on iOS. See #774.
Nick Wellnhofer 278fcf13 2024-07-22T13:02:07 buf: Limit xmlBuffer size to INT_MAX Some API functions like xmlBufUse only support ints.
Nick Wellnhofer 6a3c0b0d 2024-07-22T12:53:00 parser: Increase XML_MAX_DICTIONARY_LIMIT This limit is somewhat arbitrary and can be reached when fuzzing documents up to 1 MB. Increase limit to 100 MB and disable limit if XML_PARSE_HUGE is set.
Nick Wellnhofer d2755cdb 2024-07-22T12:35:29 buf: Fix memory leak if malloc fails before xmlBufBackToBuffer Short-lived regression.
Nick Wellnhofer 322e733b 2024-07-18T19:27:43 xinclude: Fix fallback for text includes Fixes #772.
Nick Wellnhofer 0dada804 2024-07-18T03:48:11 threads: Fix 32-bit Windows build Should fix #771.
Nick Wellnhofer 7b98e8d6 2024-07-18T01:54:22 io: Don't call getcwd in xmlParserGetDirectory The "directory" value isn't used internally. Calling getcwd is unnecessary and can cause problems in sandboxed environments. Fixes #770.
Nick Wellnhofer 15202100 2024-07-18T02:36:30 buf: Fix maxSize behavior Short-lived regression.
Nick Wellnhofer 2440cb5d 2024-07-18T02:10:32 buf: Fix xmlBufBackToBuffer Short-lived regression.
Nick Wellnhofer 5862e9dd 2024-07-18T01:59:25 Add NULL checks Short-lived regression.
Nick Wellnhofer 4e93425a 2024-07-16T20:02:13 threads: Prefer Win32 over pthreads
Nick Wellnhofer 1f7d4af3 2024-07-16T18:59:19 globals: Clean up macros and add comments
Nick Wellnhofer 4f08a1a2 2024-07-15T23:23:06 globals: Also use thread-specific storage on "main" thread Don't treat "main" thread specially. This simplifies access to thread-specific data. xmlGetGlobalState can now also fail on the former main thread, leading to an unrecoverable condition if malloc fails. The globals were never defined in public header files when compiling with thread support. Now they're only defined in a legacy build. Move TlsFree to DllMain to make cleanup more robust on Windows. Obsoletes #1.
Nick Wellnhofer 769e5a4a 2024-07-16T01:12:21 threads: Allocate global RMutexes statically Avoid memory allocations during initialization.
Nick Wellnhofer 5d36664f 2024-07-16T00:35:53 memory: Deprecate xmlGcMemSetup
Nick Wellnhofer ff39f28b 2024-07-16T00:21:22 schematron: Use xmlMalloc
Nick Wellnhofer a87944e9 2024-07-16T00:13:49 windows: Use DllMain for cleanup
Nick Wellnhofer 5f3f66c6 2024-07-15T23:50:08 threads: Use pthread_once and InitOnceExecuteOnce Static initialization flags aren't thread-safe. Also avoids an allocation on Windows. TODO: Breaks xmllint on Windows.
Nick Wellnhofer be250b79 2024-07-15T20:04:08 xpath: Remove union swap optimization This would require locking to make it thread-safe.
Nick Wellnhofer 79e11995 2024-07-15T19:43:28 error: Make xmlLastError const
Nick Wellnhofer eb66d03e 2024-07-07T23:15:54 io: Deprecate a few functions
Nick Wellnhofer 97680d6c 2024-07-07T21:29:18 io: Rework xmlParserInputBufferGrow Remove dubious (len != 4) check. Remove compression-related code. This should already be set when opening the input.
Nick Wellnhofer a6f54f05 2024-07-07T18:52:17 io: Fine-tune initial IO buffer size
Nick Wellnhofer 7148b778 2024-07-07T16:11:08 parser: Optimize memory buffer I/O Reenable zero-copy IO for zero-terminated static memory buffers. Don't stream zero-terminated dynamic memory buffers on top of creating a copy.
Nick Wellnhofer 34c9108f 2024-07-07T18:38:31 encoding: Add sizeOut argument to xmlCharEncInput When push parsing, we want to convert as much of the input as possible. When pull parsing memory buffers, we want to convert data chunk by chunk to save memory.
Nick Wellnhofer 8e871a31 2024-07-07T12:58:43 buf: Rework xmlBuffer code Port most changes made to the xmlBuf code in f3807d76, except that "size" still includes the terminating NULL byte. Make xmlSetBufferAllocationScheme, xmlBufferAllocScheme and xmlDefaultBufferSize no-ops. Deprecate a few functions.
Nick Wellnhofer 888f70c7 2024-07-07T11:35:54 buf: Move xmlBuffer code to buf.c
Nick Wellnhofer 92f30711 2024-07-07T03:02:11 parser: Optimize buffer shrinking Remove checks now that we can shrink memory buffers efficiently. Shrink more aggressively.
Nick Wellnhofer a221cd78 2024-07-07T03:01:51 buf: Rework xmlBuf code Always use what the old implementation called the "IO" allocation scheme, allowing to move the content pointer past the initial allocation. This is inexpensive and allows efficient shrinking. Optimize xmlBufGrow, reusing shrunken memory as much as possible. Simplify xmlBufAdd. Make xmlBufBackToBuffer return an error on overflow. Make "size" exclude the terminating NULL byte. Always provide an initial size. Reintroduce static buffers. Remove xmlBufResize and several other functions.
Nick Wellnhofer 2adcde39 2024-07-12T16:25:05 save: Optimize xmlSerializeText Use lookup tables.
Nick Wellnhofer 1b067082 2024-07-12T15:19:26 save: Always serialize CR as decimal "
" We used to serialize CR as "
" when there was no encoding and we weren't in an attribute. This was somewhat inconsistent.
Nick Wellnhofer 1cfc5b80 2024-07-12T03:07:57 entities: Rework serialization of numeric character references
Nick Wellnhofer 8d160626 2024-07-12T02:01:06 entities: Rework text escaping
Nick Wellnhofer cc45f618 2024-07-11T22:06:31 save: Rework text escaping Stop using xmlOutputBufferWriteEscape except when using deprecated xmlSaveSetEscape. Rewrite xmlOutputBufferWriteEscape to use an extra buffer and call xmlOutputBufferWrite. Introduce xmlSerializeText to serialize both text and attribute content. Don't read encoding from document when serializing and remove all hacks that temporarily changed the document's encoding.
Nick Wellnhofer e488695b 2024-07-11T20:23:49 save: Deprecate xmlSaveSet*Escape xmlSaveSetAttrEscape never had an effect.
Nick Wellnhofer 0ab07b21 2024-07-11T20:04:39 io: Rework xmlOutputBufferWrite Simplify code, handle short writes from callback.
Markus Rickert bb1884cb 2024-07-16T10:19:23 Enable CMake checks for MSVC
Nick Wellnhofer e0494c0d 2024-07-15T15:10:18 io: Add some deprecation warnings
Nick Wellnhofer 2dcd561d 2024-07-15T14:54:37 regexp: Don't print to stderr
Nick Wellnhofer 4b1832c1 2024-07-15T14:46:00 relaxng: Use error handler for internal errors Don't print to stderr.
Nick Wellnhofer 72886980 2024-07-15T14:35:47 error: Add helper functions to print errors and abort
Nick Wellnhofer f6170b48 2024-07-15T14:19:34 memory: Don't report OOM to stderr
Nick Wellnhofer 6be79014 2024-07-15T14:18:26 Remove unused code
Nick Wellnhofer fee0006a 2024-07-15T13:03:55 parser: Fix memory leak after malloc failure in xml*ParseDTD