fix for CVE-2008-4226, a memory overflow when building gigantic text

* SAX2.c parser.c: fix for CVE-2008-4226, a memory overflow
  when building gigantic text nodes, and a bit of cleanup
  to better handled out of memory problem in that code.
* tree.c: fix for CVE-2008-4225, lack of testing leads to
  a busy loop test assuming one have enough core memory.
Daniel

svn path=/trunk/; revision=3803
4 files changed
tree: 3843278e61595bec1a5483f0e90bb75587671341
  1. bakefile/
  2. doc/
  3. example/
  4. include/
  5. macos/
  6. optim/
  7. python/
  8. result/
  9. test/
  10. vms/
  11. VxWorks/
  12. win32/
  13. xstc/
  14. .cvsignore
  15. acconfig.h
  16. acinclude.m4
  17. AUTHORS
  18. autogen.sh
  19. build_glob.py
  20. c14n.c
  21. catalog.c
  22. ChangeLog
  23. check-relaxng-test-suite.py
  24. check-relaxng-test-suite2.py
  25. check-xinclude-test-suite.py
  26. check-xml-test-suite.py
  27. check-xsddata-test-suite.py
  28. chvalid.c
  29. chvalid.def
  30. config.h.in
  31. configure.in
  32. Copyright
  33. dbgen.pl
  34. dbgenattr.pl
  35. debugXML.c
  36. dict.c
  37. DOCBparser.c
  38. elfgcchack.h
  39. encoding.c
  40. entities.c
  41. error.c
  42. genChRanges.py
  43. gentest.py
  44. genUnicode.py
  45. global.data
  46. globals.c
  47. HACKING
  48. hash.c
  49. HTMLparser.c
  50. HTMLtree.c
  51. INSTALL
  52. install-sh
  53. legacy.c
  54. libxml-2.0-uninstalled.pc.in
  55. libxml-2.0.pc.in
  56. libxml.3
  57. libxml.h
  58. libxml.m4
  59. libxml.spec.in
  60. list.c
  61. MAINTAINERS
  62. Makefile.am
  63. Makefile.tests
  64. Makefile.win
  65. missing
  66. mkinstalldirs
  67. nanoftp.c
  68. nanohttp.c
  69. NEWS
  70. parser.c
  71. parserInternals.c
  72. pattern.c
  73. README
  74. README.cvs-commits
  75. README.tests
  76. regressions.py
  77. regressions.xml
  78. relaxng.c
  79. rngparser.c
  80. runsuite.c
  81. runtest.c
  82. runxmlconf.c
  83. SAX.c
  84. SAX2.c
  85. schematron.c
  86. testapi.c
  87. testAutomata.c
  88. testC14N.c
  89. testchar.c
  90. testdict.c
  91. testdso.c
  92. testHTML.c
  93. testModule.c
  94. testOOM.c
  95. testOOMlib.c
  96. testOOMlib.h
  97. testReader.c
  98. testrecurse.c
  99. testRegexp.c
  100. testRelax.c
  101. testSAX.c
  102. testSchemas.c
  103. testThreads.c
  104. testThreadsWin32.c
  105. testURI.c
  106. testXPath.c
  107. threads.c
  108. TODO
  109. TODO_SCHEMAS
  110. tree.c
  111. trio.c
  112. trio.h
  113. triodef.h
  114. trionan.c
  115. trionan.h
  116. triop.h
  117. triostr.c
  118. triostr.h
  119. uri.c
  120. valid.c
  121. xinclude.c
  122. xlink.c
  123. xml2-config.1
  124. xml2-config.in
  125. xml2Conf.sh.in
  126. xmlcatalog.c
  127. xmlIO.c
  128. xmllint.c
  129. xmlmemory.c
  130. xmlmodule.c
  131. xmlreader.c
  132. xmlregexp.c
  133. xmlsave.c
  134. xmlschemas.c
  135. xmlschemastypes.c
  136. xmlstring.c
  137. xmlunicode.c
  138. xmlwriter.c
  139. xpath.c
  140. xpointer.c