1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-27 04:55:04 +03:00
Commit Graph

108 Commits

Author SHA1 Message Date
Jared Yanovich
2a350ee9b4 Large batch of typo fixes
Closes #109.
2019-09-30 18:04:38 +02:00
Nick Wellnhofer
e91cbcf639 Don't read external entities or XIncludes from stdin
The file input callbacks try to read from stdin if "-" is passed as URL.
This should never be done when loading indirect resources like external
entities or XIncludes. Unfortunately, the stdin substitution happens
deep inside the IO code, so we simply replace "-" with "./-" in specific
locations.

This issue also affects other users of the library like libxslt.
Ideally, stdin should only be substituted on explicit request. But more
intrusive changes could break existing code.

Closes #90 and #102.
2019-09-20 13:26:51 +02:00
Nick Wellnhofer
e32afd3fd7 Fix error message when processing XIncludes with fallbacks
Fixes bug #616491
https://bugzilla.gnome.org/show_bug.cgi?id=616491

Based on merge request !41
2019-09-13 15:45:21 +02:00
Wang Kirin
a6a578675b Fix memory leak in xmlXIncludeLoadTxt 2019-08-25 14:12:34 +02:00
Nick Wellnhofer
e03f0a199a Fix hash callback signatures
Make sure that all parameters and return values of hash callback
functions exactly match the callback function type. This is required
to pass clang's Control Flow Integrity checks and to allow compilation
to asm.js with Emscripten.

Fixes bug 784861.
2017-11-09 16:42:47 +01:00
David Kilzer
4472c3a5a5 Fix some format string warnings with possible format string vulnerability
For https://bugzilla.gnome.org/show_bug.cgi?id=761029

Decorate every method in libxml2 with the appropriate
LIBXML_ATTR_FORMAT(fmt,args) macro and add some cleanups
following the reports.
2016-05-23 15:01:07 +08:00
Nicolas Le Cam
41586ca667 Fix compilation with minimum and xinclude.
xinclude needs xmlAddNextSibling().
Compile out use of xmlLocationSetPtr when xptr is disabled.
Include xpath header.
2014-02-10 10:36:40 +08:00
Alexey Neyman
0b86537dfa Remove premature XInclude check on URI being relative
As it gives false negatives, see
  https://mail.gnome.org/archives/xml/2013-April/msg00023.html
2013-05-06 10:20:18 +08:00
Daniel Veillard
f8e3db0445 Big space and tab cleanup
Remove all space before tabs and space and tabs at end of lines.
2012-09-11 13:26:36 +08:00
Vitaly Ostanin
dce1c8baae Patch for xinclude of text using multibyte characters
for bug https://bugzilla.gnome.org/show_bug.cgi?id=633166

When you xinclude a text file, reading portions (by 4000 bytes) of the
buffer incorrectly handled the situation when the end comes across
portions of the bytes in a multibyte character.
2012-08-17 22:59:44 +08:00
Daniel Veillard
3e62adbe39 Adding various checks on node type though the API
Specifially checking against namespace nodes before accessing node
pointers
2012-08-09 14:24:02 +08:00
Daniel Veillard
345ee8b620 Convert XInclude to the new input buffers
A few xmlBuffer...() calls changed to their xmlBuf...() counterparts
2012-07-23 14:24:27 +08:00
Shaun McCance
4cf7325e1f xinclude with parse="text" does not use the entity loader
For https://bugzilla.gnome.org/show_bug.cgi?id=552479

The code for xinclude parse="text" was not using the registered
entity loader, defeating attempts to control loading of files.
2012-05-10 20:59:33 +08:00
Daniel Veillard
06c93b7509 Remove a few warnings 2010-03-15 16:08:44 +01:00
Daniel Veillard
594e5dfb48 Chasing dead assignments reported by clang-scan
* SAX2.c dict.c error.c hash.c nanohttp.c parser.c python/libxml.c
  relaxng.c runtest.c tree.c valid.c xinclude.c xmlregexp.c xmlsave.c
  xmlschemas.c xpath.c xpointer.c: mostly removing unneded affectations,
  but this led to a few real bugs and some part not yet understood
  (relaxng/interleave)
2009-09-07 14:58:47 +02:00
Daniel Veillard
cb6f525fff 584220 xpointer(/) and xinclude problems
* xinclude.c: xpointer(/) in xinclude could lead to sub-document nodes
  and also fixed the code to inherit the dictionary from the embedding
  document
2009-08-25 19:24:15 +02:00
Stefan Behnel
b9590e9cd2 440226 Add xmlXIncludeProcessTreeFlagsData API
* xinclude.c include/libxml/xinclude.h: new function similar to
  xmlXIncludeProcessFlagsData but operating on a subtree
2009-08-24 19:45:54 +02:00
Daniel Veillard
54bd29b79b patch based on Wieant Nielander contribution to add the option of not
* include/libxml/parser.h xinclude.c xmllint.c: patch based on
  Wieant Nielander contribution to add the option of not doing
  URI base fixup in XInclude
Daniel

svn path=/trunk/; revision=3775
2008-08-26 07:26:55 +00:00
Daniel Veillard
37d2d16c89 patch from Vasily Chekalkin fixes memory leaks, should fix 512647 Daniel
* parser.c xinclude.c: patch from Vasily Chekalkin fixes memory
  leaks, should fix 512647
Daniel

svn path=/trunk/; revision=3706
2008-03-14 10:54:00 +00:00
Daniel Veillard
b242b08831 applied patch from Florent Guilian to remove an useless mutex in the
* dict.c: applied patch from Florent Guilian to remove an
  useless mutex in the xmlDict structure.

older, not commited ...

* SAX2.c: another leak reported by Ashwin
* xinclude.c: fixed the behaviour when XIncluding a fragment
  of the current document, patch from Chris Ryan

Daniel


svn path=/trunk/; revision=3686
2008-02-08 09:56:31 +00:00
William M. Brack
b0a94e8bfa applied patch from bug #454608 from Patrik Fimml. Fixes bug #454608.
* xinclude.c: applied patch from bug #454608 from Patrik Fimml.
  Fixes bug #454608.

svn path=/trunk/; revision=3644
2007-07-18 18:04:55 +00:00
William M. Brack
53ce98cd03 fixed problem with invalid char encountered during text include (reported
* xinclude.c: fixed problem with invalid char encountered during text include (reported on xslt mailing list)

svn path=/trunk/; revision=3583
2007-02-13 00:37:20 +00:00
Daniel Veillard
a658582e1a anothe XInclude user data propagation patch from Michael Day Daniel
* xinclude.c: anothe XInclude user data propagation patch from
  Michael Day
Daniel
2006-12-04 09:21:28 +00:00
Daniel Veillard
681e904e37 fixed a comment applied a patch from Michael Day to add a new function
* xmlsave.c: fixed a comment
* xinclude.c include/libxml/xinclude.h: applied a patch from Michael Day
  to add a new function providing the _private field for the generated
  parser contexts xmlXIncludeProcessFlagsData()
Daniel
2006-09-29 09:16:00 +00:00
Daniel Veillard
bf630c0d8b fix bug #343968, include='text' can't lead to a recursion. Daniel
* xinclude.c: fix bug #343968, include='text' can't lead to a
  recursion.
Daniel
2006-06-06 08:21:41 +00:00
Daniel Veillard
11ce4004d8 end of first pass on coverity reports. Daniel
* runtest.c schematron.c testAutomata.c tree.c valid.c xinclude.c
  xmlcatalog.c xmlreader.c xmlregexp.c xpath.c: end of first
  pass on coverity reports.
Daniel
2006-03-10 00:36:23 +00:00
Daniel Veillard
e0fd93f5d3 fixed bug #302302, nasty but the fix is rather simple. Daniel
* xinclude.c: fixed bug #302302, nasty but the fix is rather simple.
Daniel
2005-08-10 13:39:10 +00:00
Daniel Veillard
24505b0f5c a lot of small cleanups based on Linus' sparse check output. Daniel
* HTMLparser.c SAX2.c encoding.c globals.c parser.c relaxng.c
  runsuite.c runtest.c schematron.c testHTML.c testReader.c
  testRegexp.c testSAX.c testThreads.c valid.c xinclude.c xmlIO.c
  xmllint.c xmlmodule.c xmlschemas.c xpath.c xpointer.c: a lot of
  small cleanups based on Linus' sparse check output.
Daniel
2005-07-28 23:49:35 +00:00
William M. Brack
0b13a091e8 Enhanced handling of xml:base for included elements, fixing bugs 169209
* xinclude.c: Enhanced handling of xml:base for included
  elements, fixing bugs 169209 and 302353.
2005-06-01 03:37:59 +00:00
Daniel Veillard
5d4644ef6e revamped the elfgcchack.h format to cope with gcc4 change of aliasing
* doc/apibuild.py doc/elfgcchack.xsl: revamped the elfgcchack.h
  format to cope with gcc4 change of aliasing allowed scopes, had
  to add extra informations to doc/libxml2-api.xml to separate
  the header from the c module source.
* *.c: updated all c library files to add a #define bottom_xxx
  and reimport elfgcchack.h thereafter, and a bit of cleanups.
* doc//* testapi.c: regenerated when rebuilding the API
Daniel
2005-04-01 13:11:58 +00:00
William M. Brack
a22da29921 fixed xmlXIncludeParseFile to prevent overwriting XML_COMPLETE_ATTRS when
* xinclude.c: fixed xmlXIncludeParseFile to prevent
  overwriting XML_COMPLETE_ATTRS when setting pctxt->loadsubset
  (bug 166199)
* Makefile.am, python/tests/Makefile.am, xstc/Makefile.am: added
  code to add $(top_builddir)/.libs to LD_LIBRARY_PATH whenever
  PYTHONPATH is set, to assure new libxml2 routines are used.
2005-02-12 01:08:22 +00:00
Daniel Veillard
ce244ad595 fixed the way the generator works, extended the testing, especially with
* gentest.py testapi.c: fixed the way the generator works,
  extended the testing, especially with more real trees and nodes.
* HTMLtree.c tree.c valid.c xinclude.c xmlIO.c xmlsave.c: a bunch
  of real problems found and fixed.
* entities.c: fix error reporting to go through the new handlers
Daniel
2004-11-05 10:03:46 +00:00
Daniel Veillard
03a53c34db added checking for names values and dictionnaries generates a tons of
* debugXML.c include/libxml/xmlerror.h: added checking for names
  values and dictionnaries generates a tons of errors
* SAX2.ccatalog.c parser.c relaxng.c tree.c xinclude.c xmlwriter.c
  include/libxml/tree.h: fixing the errors in the regression tests
Daniel
2004-10-26 16:06:51 +00:00
Daniel Veillard
c14c3892a2 added help for new set shell command added parser option to not generate
* debugXML.c: added help for new set shell command
* xinclude.c xmllint.c xmlreader.c include/libxml/parser.h:
  added parser option to not generate XInclude start/end nodes,
  added a specific option to xmllint to test it fixes #130769
* Makefile.am: regression test the new feature
* doc/xmllint.1 doc/xmllint.xml: updated man page to document option.
Daniel
2004-08-16 12:34:50 +00:00
William M. Brack
b85c9205f9 added some code to check, when an include is done, whether the requested
* xinclude.c: added some code to check, when an include is
  done, whether the requested URL gets mapped to some other
  location (e.g. with a catalog entry) and, if so, take care
  of the xml:base properly (bug 146988)
2004-07-26 00:20:13 +00:00
William M. Brack
abf598b548 some further enhancement to take care of xml:base for XPointer elements
* xinclude.c: some further enhancement to take care of
  xml:base for XPointer elements (bug 143886).  Also fixed
  a problem when xml:base was already specified on an
  XInclude'd element.
2004-06-08 02:01:28 +00:00
William M. Brack
f7789b13c5 added a new routine xmlBuildRelativeURI needed for enhancement of
* uri.c, include/libxml/uri.h: added a new routine
  xmlBuildRelativeURI needed for enhancement of xinclude.c
* xinclude.c: changed handling of xml:base (bug 135864)
* result/XInclude/*: results of 5 tests changed as a result
  of the above change
2004-06-07 08:57:27 +00:00
William M. Brack
7b0e276395 a little further fixing of fallback processing, this time for fallback
* xinclude.c: a little further fixing of fallback processing, this
  time for fallback with children (bug 139520).
2004-05-12 09:33:23 +00:00
William M. Brack
87640d5f14 minor warning cleanup (no change to logic) fixed return value for internal
* xmlschemas.c, xmlwriter.c, doc/examples/parse4.c,
  doc/examples/io2.c: minor warning cleanup (no change to logic)
* xinclude: fixed return value for internal function
  xmlXIncludeLoadFallback (now always 0 or -1)
2004-04-17 14:58:15 +00:00
William M. Brack
5d8d10bba3 fixed problem causing duplicate fallback execution (bug 139520) added
* xinclude.c: fixed problem causing duplicate fallback
  execution (bug 139520)
* test/XInclude/docs/fallback2.xml result/XInclude/fallback2.*:
  added testcase
2004-04-16 08:11:26 +00:00
Daniel Veillard
500a1de533 applied patch from Alfred Mickautsch for better DTD support. fixed bug
* xmlwriter.c include/libxml/xmlwriter.h doc/* : applied patch from
  Alfred Mickautsch for better DTD support.
* SAX2.c HTMLparser.c parser.c xinclude.c xmllint.c xmlreader.c
  xmlschemas.c: fixed bug #137867 i.e. fixed properly the way
  reference counting is handled in the XML parser which had the
  side effect of removing a lot of hazardous cruft added to try
  to fix the problems associated as they popped up.
* xmlIO.c: FILE * close fixup for stderr/stdout
Daniel
2004-03-22 15:22:58 +00:00
William M. Brack
57e9e9180a Changed the flag to xmlDocCopyNode (and similar routines), previously used
* tree.c: Changed the flag to xmlDocCopyNode (and similar routines),
  previously used only for recursion, to use a value of '2' to
  indicate copy properties & namespaces, but not children.
* xinclude.c: changed the handling of ranges to use the above new
  facility.  Fixes Bug 134268.
2004-03-09 16:19:02 +00:00
William M. Brack
4d59e22a19 enhanced to assure that if xpointer is called for a document, the
* xinclude.c: enhanced to assure that if xpointer is called
  for a document, the XML_PARSE_NOENT flag is set before parsing
  the included document so that entities will automatically get
  taken care of.
* xpointer.c: corrected code so that, if an XML_ENTITY_REF node
  is encountered, it will log it and not crash (bug 135713)
2004-03-08 14:42:31 +00:00
William M. Brack
a11e483e8a modified to make sub-includes inherit the parse flags from the parent
* xinclude.c: modified to make sub-includes inherit the
  parse flags from the parent document (bug 132597)
2004-03-07 11:03:43 +00:00
Daniel Veillard
f54cd533d8 fixing compilation and link option when configuring with --without-valid
* debugXML.c relaxng.c valid.c xinclude.c xmllint.c xmlreader.c:
  fixing compilation and link option when configuring with
  --without-valid should fix #135309
Daniel
2004-02-25 11:52:31 +00:00
Daniel Veillard
5bb9ccd56a remove the warning on the 2001 namespace remove some warnings when
* xinclude.c: remove the warning on the 2001 namespace
* parser.c parserInternals.c xpath.c: remove some warnings
  when compiling with MSVC6
* nanohttp.c: applied a patch when using _WINSOCKAPI_
Daniel
2004-02-09 12:39:02 +00:00
William M. Brack
95af594b0b added a small hack to fix interference between my fixes for bugs 132585
* xinclude.c: added a small hack to fix interference between
  my fixes for bugs 132585 and 132588.
* python/libxml.c: fixed problem with serialization of namespace
  reported on the mailing list by Anthony Carrico
2004-02-08 04:12:49 +00:00
William M. Brack
6bdacd7aee fixed problem with function xmlXIncludeCopyRange (bug 133686).
* xinclude.c: fixed problem with function xmlXIncludeCopyRange
  (bug 133686).
2004-02-07 08:53:23 +00:00
William M. Brack
6b1a28d34e changed coding to output good XIncludes when one or more bad ones are
* xinclude.c: changed coding to output good XIncludes when
  one or more bad ones are present (bug 132588)
2004-02-06 11:24:44 +00:00
William M. Brack
ef245fda92 corrected handling of empty fallback condition (bug 132585)
* xinclude.c: corrected handling of empty fallback condition
  (bug 132585)
2004-02-06 09:33:59 +00:00