[libxml2] Release of libxml2-2.9.4
- From: Daniel Veillard <veillard src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libxml2] Release of libxml2-2.9.4
- Date: Mon, 23 May 2016 08:07:05 +0000 (UTC)
commit bdec2183f34b37ee89ae1d330c6ad2bb4d76605f
Author: Daniel Veillard <veillard redhat com>
Date: Mon May 23 16:04:52 2016 +0800
Release of libxml2-2.9.4
* doc/xml.html libxml.spec.in: updated for the release
* doc/*: regenerated but no API additions
doc/APIchunk26.html | 1 +
doc/APIfunctions.html | 2 -
doc/devhelp/libxml2-xmlmemory.html | 2 +-
doc/devhelp/libxml2-xmlstring.html | 8 +-
doc/html/libxml-xmlmemory.html | 2 +-
doc/html/libxml-xmlstring.html | 8 +-
doc/libxml2-api.xml | 6 +-
doc/libxml2-refs.xml | 3 +-
doc/libxml2.xsa | 223 +++++++++---------------------------
doc/news.html | 92 +++++++++++++++-
doc/xml.html | 92 +++++++++++++++
libxml.spec.in | 4 +-
12 files changed, 257 insertions(+), 186 deletions(-)
---
diff --git a/doc/APIchunk26.html b/doc/APIchunk26.html
index c68ae92..af3b1a5 100644
--- a/doc/APIchunk26.html
+++ b/doc/APIchunk26.html
@@ -143,6 +143,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xpathInternals.html#xmlXPathRegisterVariableNS">xmlXPathRegisterVariableNS</a><br />
</dd><dt>unsafe</dt><dd><a
href="html/libxml-valid.html#xmlSprintfElementContent">xmlSprintfElementContent</a><br />
</dd><dt>unsigned</dt><dd><a href="">c</a><br />
+<a href="html/libxml-xmlmemory.html#xmlMallocAtomicLoc">xmlMallocAtomicLoc</a><br />
<a href="html/libxml-uri.html#xmlURIUnescapeString">xmlURIUnescapeString</a><br />
</dd><dt>unsupported</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br
/>
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
diff --git a/doc/APIfunctions.html b/doc/APIfunctions.html
index 9027afe..f9ac249 100644
--- a/doc/APIfunctions.html
+++ b/doc/APIfunctions.html
@@ -368,9 +368,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a><br />
<a href="html/libxml-tree.html#xmlSplitQName3">xmlSplitQName3</a><br />
<a href="html/libxml-xmlstring.html#xmlStrEqual">xmlStrEqual</a><br />
-<a href="html/libxml-xmlstring.html#xmlStrPrintf">xmlStrPrintf</a><br />
<a href="html/libxml-xmlstring.html#xmlStrQEqual">xmlStrQEqual</a><br />
-<a href="html/libxml-xmlstring.html#xmlStrVPrintf">xmlStrVPrintf</a><br />
<a href="html/libxml-xmlstring.html#xmlStrcasecmp">xmlStrcasecmp</a><br />
<a href="html/libxml-xmlstring.html#xmlStrcasestr">xmlStrcasestr</a><br />
<a href="html/libxml-xmlstring.html#xmlStrcat">xmlStrcat</a><br />
diff --git a/doc/devhelp/libxml2-xmlmemory.html b/doc/devhelp/libxml2-xmlmemory.html
index 8610538..bf400d0 100644
--- a/doc/devhelp/libxml2-xmlmemory.html
+++ b/doc/devhelp/libxml2-xmlmemory.html
@@ -118,7 +118,7 @@ char * <a href="#xmlMemStrdupLoc">xmlMemStrdupLoc</a> (const char *
str, <br/>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlMallocAtomicLoc"/>xmlMallocAtomicLoc ()</h3><pre
class="programlisting">void * xmlMallocAtomicLoc (size_t size, <br/>
const char * file, <br/> int line)<br/>
</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to
allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or
NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line
number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated
area or NULL in case of lack of memory.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>size</tt></i>:</span></td><td>an unsigned int specifying the size in byte to
allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or
NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line
number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated
area or NULL in case of lack of memory.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlMallocLoc"/>xmlMallocLoc ()</h3><pre
class="programlisting">void * xmlMallocLoc (size_t size, <br/>
const char * file, <br/> int line)<br/>
</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
diff --git a/doc/devhelp/libxml2-xmlstring.html b/doc/devhelp/libxml2-xmlstring.html
index 6dfc70b..ca90ed4 100644
--- a/doc/devhelp/libxml2-xmlstring.html
+++ b/doc/devhelp/libxml2-xmlstring.html
@@ -49,7 +49,7 @@ int <a href="#xmlStrcmp">xmlStrcmp</a> (const <a
href="libxml2-xmlstring.html#
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlCharStrndup">xmlCharStrndup</a>
(const char * cur, <br/> int len);
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlStrcasestr">xmlStrcasestr</a>
(const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/>
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * val);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlStrcat">xmlStrcat</a> (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * add);
-int <a href="#xmlStrPrintf">xmlStrPrintf</a> (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * msg,
<br/> ... ...);
+int <a href="#xmlStrPrintf">xmlStrPrintf</a> (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const char * msg, <br/> ...
...);
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlStrstr">xmlStrstr</a>
(const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/>
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * val);
int <a href="#xmlUTF8Size">xmlUTF8Size</a> (const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * utf);
int <a href="#xmlStrQEqual">xmlStrQEqual</a> (const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * pref, <br/> const
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/>
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str);
@@ -65,7 +65,7 @@ int <a href="#xmlStrncmp">xmlStrncmp</a> (const <a
href="libxml2-xmlstring.htm
int <a href="#xmlGetUTF8Char">xmlGetUTF8Char</a> (const unsigned char * utf, <br/>
int * len);
int <a href="#xmlStrcasecmp">xmlStrcasecmp</a> (const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str1, <br/> const
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str2);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlStrndup">xmlStrndup</a>
(const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/>
int len);
-int <a href="#xmlStrVPrintf">xmlStrVPrintf</a> (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * msg,
<br/> va_list ap);
+int <a href="#xmlStrVPrintf">xmlStrVPrintf</a> (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const char * msg, <br/>
va_list ap);
int <a href="#xmlUTF8Strsize">xmlUTF8Strsize</a> (const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * utf, <br/> int
len);
int <a href="#xmlCheckUTF8">xmlCheckUTF8</a> (const unsigned char * utf);
int <a href="#xmlStrncasecmp">xmlStrncasecmp</a> (const <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str1, <br/> const
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str2, <br/> int
len);
@@ -111,7 +111,7 @@ int <a href="#xmlUTF8Strloc">xmlUTF8Strloc</a> (const <a
href="libxml2-xmlstri
</pre><p>Check if both strings are equal of have same content. Should be a bit more readable and faster than
xmlStrcmp()</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlStrPrintf"/>xmlStrPrintf ()</h3><pre
class="programlisting">int xmlStrPrintf (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * msg,
<br/> ... ...)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlStrPrintf"/>xmlStrPrintf ()</h3><pre
class="programlisting">int xmlStrPrintf (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const char * msg, <br/> ...
...)<br/>
</pre><p>Formats @msg and places result into @buf.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span
class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span
class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span
class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a
href="libxml2-SAX.html#characters">characters</a> written to @buf or -1 if an error
occurs.</td></tr></tbody></table></div></div>
<hr/>
@@ -119,7 +119,7 @@ int <a href="#xmlUTF8Strloc">xmlUTF8Strloc</a> (const <a
href="libxml2-xmlstri
</pre><p>Check if a QName is Equal to a given string</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>pref</tt></i>:</span></td><td>the prefix of the QName</td></tr><tr><td><span
class="term"><i><tt>name</tt></i>:</span></td><td>the localname of the QName</td></tr><tr><td><span
class="term"><i><tt>str</tt></i>:</span></td><td>the second <a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlStrVPrintf"/>xmlStrVPrintf ()</h3><pre
class="programlisting">int xmlStrVPrintf (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * msg,
<br/> va_list ap)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlStrVPrintf"/>xmlStrVPrintf ()</h3><pre
class="programlisting">int xmlStrVPrintf (<a
href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * buf, <br/> int len,
<br/> const char * msg, <br/>
va_list ap)<br/>
</pre><p>Formats @msg and places result into @buf.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span
class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span
class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span
class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span
class="term"><i><tt>ap</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a
href="libxml2-SAX.html#characters">characters</a> written to @buf or -1 if an error
occurs.</td></tr></tbody></table></div></div>
<hr/>
diff --git a/doc/html/libxml-xmlmemory.html b/doc/html/libxml-xmlmemory.html
index d653775..3406e09 100644
--- a/doc/html/libxml-xmlmemory.html
+++ b/doc/html/libxml-xmlmemory.html
@@ -65,7 +65,7 @@ void xmlFreeFunc (void * mem)
</pre><p>Initialize the memory layer.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a
name="xmlMallocAtomicLoc" id="xmlMallocAtomicLoc"></a>Function: xmlMallocAtomicLoc</h3><pre
class="programlisting">void * xmlMallocAtomicLoc (size_t size, <br />
const char * file, <br /> int line)<br />
</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to
allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or
NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line
number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated
area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMallocFunc"
id="xmlMallocFunc"></a>Function type: xmlMallocFunc</h3><pre class="programlisting">Function type:
xmlMallocFunc
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>size</tt></i>:</span></td><td>an unsigned int specifying the size in byte to
allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or
NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line
number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated
area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMallocFunc"
id="xmlMallocFunc"></a>Function type: xmlMallocFunc</h3><pre class="programlisting">Function type:
xmlMallocFunc
void * xmlMallocFunc (size_t size)
</pre><p>Signature for a malloc() implementation.</p><div class="variablelist"><table border="0"><col
align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size requested in
bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the newly
allocated block or NULL in case of error.</td></tr></tbody></table></div><br />
<h3><a name="xmlMallocLoc" id="xmlMallocLoc"></a>Function: xmlMallocLoc</h3><pre class="programlisting">void
* xmlMallocLoc (size_t size, <br /> const char * file,
<br /> int line)<br />
diff --git a/doc/html/libxml-xmlstring.html b/doc/html/libxml-xmlstring.html
index 4f12cc7..89e9809 100644
--- a/doc/html/libxml-xmlstring.html
+++ b/doc/html/libxml-xmlstring.html
@@ -16,9 +16,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting">int <a href="#xmlCheckUTF8">xmlCheckUTF8</a>
(const unsigned char * utf)</pre>
<pre class="programlisting">int <a href="#xmlGetUTF8Char">xmlGetUTF8Char</a>
(const unsigned char * utf, <br /> int * len)</pre>
<pre class="programlisting">int <a href="#xmlStrEqual">xmlStrEqual</a> (const <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const
<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2)</pre>
-<pre class="programlisting">int <a href="#xmlStrPrintf">xmlStrPrintf</a> (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *
msg, <br /> ... ...)</pre>
+<pre class="programlisting">int <a href="#xmlStrPrintf">xmlStrPrintf</a> (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const char * msg, <br />
... ...)</pre>
<pre class="programlisting">int <a href="#xmlStrQEqual">xmlStrQEqual</a>
(const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * pref, <br />
const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br />
const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str)</pre>
-<pre class="programlisting">int <a href="#xmlStrVPrintf">xmlStrVPrintf</a> (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *
msg, <br /> va_list ap)</pre>
+<pre class="programlisting">int <a href="#xmlStrVPrintf">xmlStrVPrintf</a> (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const char * msg, <br />
va_list ap)</pre>
<pre class="programlisting">int <a href="#xmlStrcasecmp">xmlStrcasecmp</a>
(const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br />
const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2)</pre>
<pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * <a
href="#xmlStrcasestr">xmlStrcasestr</a> (const <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> const
<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * val)</pre>
<pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * <a
href="#xmlStrcat">xmlStrcat</a> (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br
/> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *
add)</pre>
@@ -55,11 +55,11 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>Read the first UTF8 character from @utf</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span
class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to the minimum number of bytes present in the
sequence. This is used to assure the next character is completely contained within the
sequence.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the char value or -1 in
case of error, and sets *len to the actual number of bytes consumed (0 in case of
error)</td></tr></tbody></table></div><h3><a name="xmlStrEqual" id="xmlStrEqual"></a>Function:
xmlStrEqual</h3><pre class="programlisting">int xmlStrEqual (const <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const
<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2)<br />
</pre><p>Check if both strings are equal of have same content. Should be a bit more readable and faster than
xmlStrcmp()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div><h3><a name="xmlStrPrintf" id="xmlStrPrintf"></a>Function:
xmlStrPrintf</h3><pre class="programlisting">int xmlStrPrintf (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *
msg, <br /> ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div><h3><a name="xmlStrPrintf" id="xmlStrPrintf"></a>Function:
xmlStrPrintf</h3><pre class="programlisting">int xmlStrPrintf (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const char * msg, <br />
... ...)<br />
</pre><p>Formats @msg and places result into @buf.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span
class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span
class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span
class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a
href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error
occurs.</td></tr></tbody></table></div><h3><a name="xmlStrQEqual" id="xmlStrQEqual"></a>Function:
xmlStrQEqual</h3><pre class="programlisting">int xmlStrQEqual (const <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * pref, <br /> const
<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br />
const <a href="libxml-xmlstri
ng.html#xmlChar">xmlChar</a> * str)<br />
</pre><p>Check if a QName is Equal to a given string</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>pref</tt></i>:</span></td><td>the prefix of the QName</td></tr><tr><td><span
class="term"><i><tt>name</tt></i>:</span></td><td>the localname of the QName</td></tr><tr><td><span
class="term"><i><tt>str</tt></i>:</span></td><td>the second <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div><h3><a name="xmlStrVPrintf" id="xmlStrVPrintf"></a>Function:
xmlStrVPrintf</h3><pre class="programlisting">int xmlStrVPrintf (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *
msg, <br /> va_list ap)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>pref</tt></i>:</span></td><td>the prefix of the QName</td></tr><tr><td><span
class="term"><i><tt>name</tt></i>:</span></td><td>the localname of the QName</td></tr><tr><td><span
class="term"><i><tt>str</tt></i>:</span></td><td>the second <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are
different</td></tr></tbody></table></div><h3><a name="xmlStrVPrintf" id="xmlStrVPrintf"></a>Function:
xmlStrVPrintf</h3><pre class="programlisting">int xmlStrVPrintf (<a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * buf, <br /> int len,
<br /> const char * msg, <br />
va_list ap)<br />
</pre><p>Formats @msg and places result into @buf.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span
class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span
class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span
class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span
class="term"><i><tt>ap</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span
class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a
href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error
occurs.</td></tr></tbody></table></div><h3><a name="xmlStrcasecmp" id="xmlStrcasecmp"></a>Function:
xmlStrcasecmp</h3><pre class="programlisting">int xmlStrcasecmp (const <a
href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const
<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2)<br />
</pre><p>a strcasecmp for xmlChar's</p>
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index 7680a1b..a0a0117 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -10985,7 +10985,7 @@ Could we use @subtypes for this?'/>
<function name='xmlMallocAtomicLoc' file='xmlmemory' module='xmlmemory'>
<info>a malloc() equivalent, with logging of the allocation info.</info>
<return type='void *' info='a pointer to the allocated area or NULL in case of lack of memory.'/>
- <arg name='size' type='size_t' info='an int specifying the size in byte to allocate.'/>
+ <arg name='size' type='size_t' info='an unsigned int specifying the size in byte to allocate.'/>
<arg name='file' type='const char *' info='the file name or NULL'/>
<arg name='line' type='int' info='the line number'/>
</function>
@@ -14487,7 +14487,7 @@ Could we use @subtypes for this?'/>
<return type='int' info='the number of characters written to @buf or -1 if an error occurs.'/>
<arg name='buf' type='xmlChar *' info='the result buffer.'/>
<arg name='len' type='int' info='the result buffer length.'/>
- <arg name='msg' type='const xmlChar *' info='the message with printf formatting.'/>
+ <arg name='msg' type='const char *' info='the message with printf formatting.'/>
<arg name='...' type='...' info='extra parameters for the message.'/>
</function>
<function name='xmlStrQEqual' file='xmlstring' module='xmlstring'>
@@ -14502,7 +14502,7 @@ Could we use @subtypes for this?'/>
<return type='int' info='the number of characters written to @buf or -1 if an error occurs.'/>
<arg name='buf' type='xmlChar *' info='the result buffer.'/>
<arg name='len' type='int' info='the result buffer length.'/>
- <arg name='msg' type='const xmlChar *' info='the message with printf formatting.'/>
+ <arg name='msg' type='const char *' info='the message with printf formatting.'/>
<arg name='ap' type='va_list' info='extra parameters for the message.'/>
</function>
<function name='xmlStrcasecmp' file='xmlstring' module='xmlstring'>
diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml
index 07a608f..6dce37f 100644
--- a/doc/libxml2-refs.xml
+++ b/doc/libxml2-refs.xml
@@ -8406,9 +8406,7 @@
<ref name='xmlSplitQName2'/>
<ref name='xmlSplitQName3'/>
<ref name='xmlStrEqual'/>
- <ref name='xmlStrPrintf'/>
<ref name='xmlStrQEqual'/>
- <ref name='xmlStrVPrintf'/>
<ref name='xmlStrcasecmp'/>
<ref name='xmlStrcasestr'/>
<ref name='xmlStrcat'/>
@@ -30349,6 +30347,7 @@
</word>
<word name='unsigned'>
<ref name='c'/>
+ <ref name='xmlMallocAtomicLoc'/>
<ref name='xmlURIUnescapeString'/>
</word>
<word name='unsupported'>
diff --git a/doc/libxml2.xsa b/doc/libxml2.xsa
index 0825d53..0d4b8fe 100644
--- a/doc/libxml2.xsa
+++ b/doc/libxml2.xsa
@@ -8,182 +8,73 @@
</vendor>
<product id="libxml2">
<name>libxml2</name>
- <version>2.9.2</version>
- <last-release> Oct 16 2014</last-release>
+ <version>v2.9.3</version>
+ <last-release> Nov 20 2015</last-release>
<info-url>http://xmlsoft.org/</info-url>
<changes> - Security:
- Fix for CVE-2014-3660 billion laugh variant (Daniel Veillard),
- CVE-2014-0191 Do not fetch external parameter entities (Daniel Veillard)
-
- - Bug Fixes:
- fix memory leak xml header encoding field with XML_PARSE_IGNORE_ENC (Bart De Schuymer),
- xmlmemory: handle realloc properly (Yegor Yefremov),
- Python generator bug raised by the const change (Daniel Veillard),
- Windows Critical sections not released correctly (Daniel Veillard),
- Parser error on repeated recursive entity expansion containing &lt; (Daniel Veillard),
- xpointer : fixing Null Pointers (Gaurav Gupta),
- Remove Unnecessary Null check in xpointer.c (Gaurav Gupta),
- parser bug on misformed namespace attributes (Dennis Filder),
- Pointer dereferenced before null check (Daniel Veillard),
- Leak of struct addrinfo in xmlNanoFTPConnect() (Gaurav Gupta),
- Possible overflow in HTMLParser.c (Daniel Veillard),
- python/tests/sync.py assumes Python dictionaries are ordered (John Beck),
- Fix Enum check and missing break (Gaurav Gupta),
- xmlIO: Handle error returns from dup() (Philip Withnall),
- Fix a problem properly saving URIs (Daniel Veillard),
- wrong error column in structured error when parsing attribute values (Juergen Keil),
- wrong error column in structured error when skipping whitespace in xml decl (Juergen Keil),
- no error column in structured error handler for xml schema validation errors (Juergen Keil),
- Couple of Missing Null checks (Gaurav Gupta),
- Add couple of missing Null checks (Daniel Veillard),
- xmlschemastypes: Fix potential array overflow (Philip Withnall),
- runtest: Fix a memory leak on parse failure (Philip Withnall),
- xmlIO: Fix an FD leak on gzdopen() failure (Philip Withnall),
- xmlcatalog: Fix a memory leak on quit (Philip Withnall),
- HTMLparser: Correctly initialise a stack allocated structure (Philip Withnall),
- Check for tmon in _xmlSchemaDateAdd() is incorrect (David Kilzer),
- Avoid Possible Null Pointer in trio.c (Gaurav Gupta),
- Fix processing in SAX2 in case of an allocation failure (Daniel Veillard),
- XML Shell command "cd" does not handle "/" at end of path (Daniel Veillard),
- Fix various Missing Null checks (Gaurav Gupta),
- Fix a potential NULL dereference (Daniel Veillard),
- Add a couple of misisng check in xmlRelaxNGCleanupTree (Gaurav Gupta),
- Add a missing argument check (Gaurav Gupta),
- Adding a check in case of allocation error (Gaurav Gupta),
- xmlSaveUri() incorrectly recomposes URIs with rootless paths (Dennis Filder),
- Adding some missing NULL checks (Gaurav),
- Fixes for xmlInitParserCtxt (Daniel Veillard),
- Fix regressions introduced by CVE-2014-0191 patch (Daniel Veillard),
- erroneously ignores a validation error if no error callback set (Daniel Veillard),
- xmllint was not parsing the --c14n11 flag (Sérgio Batista),
- Avoid Possible null pointer dereference in memory debug mode (Gaurav),
- Avoid Double Null Check (Gaurav),
- Restore context size and position after XPATH_OP_ARG (Nick Wellnhofer),
- Fix xmlParseInNodeContext() if node is not element (Daniel Veillard),
- Avoid a possible NULL pointer dereference (Gaurav),
- Fix xmlTextWriterWriteElement when a null content is given (Daniel Veillard),
- Fix an typo 'onrest' in htmlScriptAttributes (Daniel Veillard),
- fixing a ptotential uninitialized access (Daniel Veillard),
- Fix an fd leak in an error case (Daniel Veillard),
- Missing initialization for the catalog module (Daniel Veillard),
- Handling of XPath function arguments in error case (Nick Wellnhofer),
- Fix a couple of missing NULL checks (Gaurav),
- Avoid a possibility of dangling encoding handler (Gaurav),
- Fix HTML push parser to accept HTML_PARSE_NODEFDTD (Arnold Hendriks),
- Fix a bug loading some compressed files (Mike Alexander),
- Fix XPath node comparison bug (Gaurav),
- Type mismatch in xmlschemas.c (Gaurav),
- Type mismatch in xmlschemastypes.c (Gaurav),
- Avoid a deadcode in catalog.c (Daniel Veillard),
- run close socket on Solaris, same as we do on other platforms (Denis Pauk),
- Fix pointer dereferenced before null check (Gaurav),
- Fix a potential NULL dereference in tree code (Daniel Veillard),
- Fix potential NULL pointer dereferences in regexp code (Gaurav),
- xmllint --pretty crashed without following numeric argument (Tim Galeckas),
- Fix XPath expressions of the form '@ns:*' (Nick Wellnhofer),
- Fix XPath '//' optimization with predicates (Nick Wellnhofer),
- Clear up a potential NULL dereference (Daniel Veillard),
- Fix a possible NULL dereference (Gaurav),
- Avoid crash if allocation fails (Daniel Veillard),
- Remove occasional leading space in XPath number formatting (Daniel Veillard),
- Fix handling of mmap errors (Daniel Veillard),
- Catch malloc error and exit accordingly (Daniel Veillard),
- missing else in xlink.c (Ami Fischman),
- Fix a parsing bug on non-ascii element and CR/LF usage (Daniel Veillard),
- Fix a regression in xmlGetDocCompressMode() (Daniel Veillard),
- properly quote the namespace uris written out during c14n (Aleksey Sanin),
- Remove premature XInclude check on URI being relative (Alexey Neyman),
- Fix missing break on last() function for attributes (dcb),
- Do not URI escape in server side includes (Romain Bondue),
- Fix an error in xmlCleanupParser (Alexander Pastukhov)
+ CVE-2015-8242 Buffer overead with HTML parser in push mode (Hugh Davenport),
+ CVE-2015-7500 Fix memory access error due to incorrect entities boundaries (Daniel Veillard),
+ CVE-2015-7499-2 Detect incoherency on GROW (Daniel Veillard),
+ CVE-2015-7499-1 Add xmlHaltParser() to stop the parser (Daniel Veillard),
+ CVE-2015-5312 Another entity expansion issue (David Drysdale),
+ CVE-2015-7497 Avoid an heap buffer overflow in xmlDictComputeFastQKey (David Drysdale),
+ CVE-2015-7498 Avoid processing entities after encoding conversion failures (Daniel Veillard),
+ CVE-2015-8035 Fix XZ compression support loop (Daniel Veillard),
+ CVE-2015-7942-2 Fix an error in previous Conditional section patch (Daniel Veillard),
+ CVE-2015-7942 Another variation of overflow in Conditional sections (Daniel Veillard),
+ CVE-2015-1819 Enforce the reader to run in constant memory (Daniel Veillard)
+ CVE-2015-7941_2 Cleanup conditional section error handling (Daniel Veillard),
+ CVE-2015-7941_1 Stop parsing on entities boundaries errors (Daniel Veillard),
- Documentation:
- typo in error messages "colon are forbidden from..." (Daniel Veillard),
- Fix a link to James SAX documentation old page (Daniel Veillard),
- Fix typos in relaxng.c (Jan Pokorný),
- Fix a doc typo (Daniel Veillard),
- Fix typos in {tree,xpath}.c (errror) (Jan Pokorný),
- Add limitations about encoding conversion (Daniel Veillard),
- Fix typos in xmlschemas{,types}.c (Jan Pokorný),
- Fix incorrect spelling entites->entities (Jan Pokorný),
- Forgot to document 2.9.1 release, regenerate docs (Daniel Veillard)
+ Correct spelling of "calling" (Alex Henrie),
+ Fix a small error in xmllint --format description (Fabien Degomme),
+ Avoid XSS on the search of xmlsoft.org (Daniel Veillard)
- Portability:
- AC_CONFIG_FILES and executable bit (Roumen Petrov),
- remove HAVE_CONFIG_H dependency in testlimits.c (Roumen Petrov),
- fix some tabs mixing incompatible with python3 (Roumen Petrov),
- Visual Studio 14 CTP defines snprintf() (Francis Dupont),
- OS400: do not try to copy unexisting doc files (Patrick Monnerat),
- OS400: use either configure.ac or configure.in. (Patrick Monnerat),
- os400: make-src.sh: create physical file with target CCSID (Patrick Monnerat),
- OS400: Add some more C macros equivalent procedures. (Patrick Monnerat),
- OS400: use C macros to implement equivalent RPG support procedures. (Patrick Monnerat),
- OS400: implement XPath macros as procedures for ILE/RPG support. (Patrick Monnerat),
- OS400: include in distribution tarball. (Patrick Monnerat),
- OS400: Add README: compilation directives and OS/400 specific stuff. (Patrick Monnerat),
- OS400: Add compilation scripts. (Patrick Monnerat),
- OS400: ILE RPG language header files. (Patrick Monnerat),
- OS400: implement some macros as functions for ILE/RPG language support (that as no macros). (Patrick
Monnerat),
- OS400: UTF8<-->EBCDIC wrappers for system and external library calls (Patrick Monnerat),
- OS400: Easy character transcoding support (Patrick Monnerat),
- OS400: iconv functions compatibility wrappers and table builder. (Patrick Monnerat),
- OS400: create architecture directory. Implement dlfcn emulation. (Patrick Monnerat),
- Fix building when configuring without xpath and xptr (Daniel Veillard),
- configure: Add --with-python-install-dir (Jonas Eriksson),
- Fix compilation with minimum and xinclude. (Nicolas Le Cam),
- Compile out use of xmlValidateNCName() when not available. (Nicolas Le Cam),
- Fix compilation with minimum and schematron. (Nicolas Le Cam),
- Legacy needs xmlSAX2StartElement() and xmlSAX2EndElement(). (Nicolas Le Cam),
- Don't use xmlValidateName() when not available. (Nicolas Le Cam),
- Fix a portability issue on Windows (Longstreth Jon),
- Various portability patches for OpenVMS (Jacob (Jouk) Jansen),
- Use specific macros for portability to OS/400 (Patrick Monnerat),
- Add macros needed for OS/400 portability (Patrick Monnerat),
- Portability patch for fopen on OS/400 (Patrick Monnerat),
- Portability fixes for OS/400 (Patrick Monnerat),
- Improve va_list portability (Patrick Monnerat),
- Portability fix (Patrick Monnerat),
- Portability fix (Patrick Monnerat),
- Generic portability fix (Patrick Monnerat),
- Shortening lines in headers (Patrick Monnerat),
- build: Use pkg-config to find liblzma in preference to AC_CHECK_LIB (Philip Withnall),
- build: Add @LZMA_LIBS@ to libxml’s pkg-config files (Philip Withnall),
- fix some tabs mixing incompatible with python3 (Daniel Veillard),
- add additional defines checks for support "./configure --with-minimum" (Denis Pauk),
- Another round of fixes for older versions of Python (Arfrever Frehtes Taifersar Arahesis),
- python: fix drv_libxml2.py for python3 compatibility (Alexandre Rostovtsev),
- python: Fix compiler warnings when building python3 bindings (Armin K),
- Fix for compilation with python 2.6.8 (Petr Sumbera)
+ threads: use forward declarations only for glibc (Michael Heimpold),
+ Update Win32 configure.js to search for configure.ac (Daniel Veillard)
+
+ - Bug Fixes:
+ Bug on creating new stream from entity (Daniel Veillard),
+ Fix some loop issues embedding NEXT (Daniel Veillard),
+ Do not print error context when there is none (Daniel Veillard),
+ Avoid extra processing of MarkupDecl when EOF (Hugh Davenport),
+ Fix parsing short unclosed comment uninitialized access (Daniel Veillard),
+ Add missing Null check in xmlParseExternalEntityPrivate (Gaurav Gupta),
+ Fix a bug in CData error handling in the push parser (Daniel Veillard),
+ Fix a bug on name parsing at the end of current input buffer (Daniel Veillard),
+ Fix the spurious ID already defined error (Daniel Veillard),
+ Fix previous change to node sort order (Nick Wellnhofer),
+ Fix a self assignment issue raised by clang (Scott Graham),
+ Fail parsing early on if encoding conversion failed (Daniel Veillard),
+ Do not process encoding values if the declaration if broken (Daniel Veillard),
+ Silence clang's -Wunknown-attribute (Michael Catanzaro),
+ xmlMemUsed is not thread-safe (Martin von Gagern),
+ Fix support for except in nameclasses (Daniel Veillard),
+ Fix order of root nodes (Nick Wellnhofer),
+ Allow attributes on descendant-or-self axis (Nick Wellnhofer),
+ Fix the fix to Windows locking (Steve Nairn),
+ Fix timsort invariant loop re: Envisage article (Christopher Swenson),
+ Don't add IDs in xmlSetTreeDoc (Nick Wellnhofer),
+ Account for ID attributes in xmlSetTreeDoc (Nick Wellnhofer),
+ Remove various unused value assignments (Philip Withnall),
+ Fix missing entities after CVE-2014-3660 fix (Daniel Veillard),
+ Revert "Missing initialization for the catalog module" (Daniel Veillard)
- Improvements:
- win32/libxml2.def.src after rebuild in doc (Roumen Petrov),
- elfgcchack.h: more legacy needs xmlSAX2StartElement() and xmlSAX2EndElement() (Roumen Petrov),
- elfgcchack.h: add xmlXPathNodeEval and xmlXPathSetContextNode (Roumen Petrov),
- Provide cmake module (Samuel Martin),
- Fix a couple of issues raised by make dist (Daniel Veillard),
- Fix and add const qualifiers (Kurt Roeckx),
- Preparing for upcoming release of 2.9.2 (Daniel Veillard),
- Fix zlib and lzma libraries check via command line (Dmitriy),
- wrong error column in structured error when parsing end tag (Juergen Keil),
- doc/news.html: small update to avoid line join while generating NEWS. (Patrick Monnerat),
- Add methods for python3 iterator (Ron Angeles),
- Support element node traversal in document fragments. (Kyle VanderBeek),
- xmlNodeSetName: Allow setting the name to a substring of the currently set name (Tristan Van Berkom),
- Added macros for argument casts (Eric Zurcher),
- adding init calls to xml and html Read parsing entry points (Daniel Veillard),
- Get rid of 'REPLACEMENT CHARACTER' Unicode chars in xmlschemas.c (Jan Pokorný),
- Implement choice for name classes on attributes (Shaun McCance),
- Two small namespace tweaks (Daniel Veillard),
- xmllint --memory should fail on empty files (Daniel Veillard),
- Cast encoding name to char pointer to match arg type (Nikolay Sivov)
+ Reuse xmlHaltParser() where it makes sense (Daniel Veillard),
+ xmlStopParser reset errNo (Daniel Veillard),
+ Reenable xz support by default (Daniel Veillard),
+ Recover unescaped less-than character in HTML recovery parsing (Daniel Veillard),
+ Allow HTML serializer to output HTML5 DOCTYPE (Shaun McCance),
+ Regression test for bug #695699 (Nick Wellnhofer),
+ Add a couple of XPath tests (Nick Wellnhofer),
+ Add Python 3 rpm subpackage (Tomas Radej),
+ libxml2-config.cmake.in: update include directories (Samuel Martin),
+ Adding example from bugs 738805 to regression tests (Daniel Veillard)
- Cleanups:
- Removal of old configure.in (Daniel Veillard),
- Unreachable code in tree.c (Gaurav Gupta),
- Remove a couple of dead conditions (Gaurav Gupta),
- Avoid some dead code and cleanup in relaxng.c (Gaurav),
- Drop not needed checks (Denis Pauk),
- Fix a wrong test (Daniel Veillard)
</changes>
diff --git a/doc/news.html b/doc/news.html
index e76ef55..0c692c8 100644
--- a/doc/news.html
+++ b/doc/news.html
@@ -8,7 +8,97 @@ H2 {font-family: Verdana,Arial,Helvetica}
H3 {font-family: Verdana,Arial,Helvetica}
A:link, A:visited, A:active { text-decoration: underline }
</style><title>Releases</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060"
vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td
width="120"><a href="http://swpat.ffii.org/"><img src="epatents.png" alt="Action against software patents"
/></a></td><td width="180"><a href="http://www.gnome.org/"><img src="gnome2.png" alt="Gnome2 Logo" /></a><a
href="http://www.w3.org/Status"><img src="w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img
src="redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img
src="Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0"
width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%"
border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XML C parser and
toolkit of Gnome</h1><h2>Releases</h2></td></tr></table></td><
/tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%"
align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2"
width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0"
cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1"
cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Main
Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="search.php"
enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value=""
/><input name="submit" type="submit" value="Search ..." /></form><ul><li><a
href="index.html">Home</a></li><li><a href="html/index.html">Reference Manual</a></li><li><a
href="intro.html">Introduction</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="docs.html"
style="font-weight:bold">Developer Menu</a></li><li><a href="bugs.
html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a
href="downloads.html">Downloads</a></li><li><a href="news.html">Releases</a></li><li><a
href="XMLinfo.html">XML</a></li><li><a href="XSLT.html">XSLT</a></li><li><a href="xmldtd.html">Validation
& DTDs</a></li><li><a href="encoding.html">Encodings support</a></li><li><a href="catalog.html">Catalog
support</a></li><li><a href="namespaces.html">Namespaces</a></li><li><a
href="contribs.html">Contributions</a></li><li><a href="examples/index.html" style="font-weight:bold">Code
Examples</a></li><li><a href="html/index.html" style="font-weight:bold">API Menu</a></li><li><a
href="guidelines.html">XML Guidelines</a></li><li><a href="ChangeLog.html">Recent
Changes</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td
colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td
bgcolor="#fffacd"><ul><
li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a
href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM
gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a
href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows
binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a
href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a
href="http://lxml.de/">lxml Python bindings</a></li><li><a
href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a
href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a
href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a
href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a
href="http://libxml.rubyforge.org/">Ruby bindi
ngs</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a
href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug
Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table
border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0"
cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1"
width="100%"><tr><td bgcolor="#fffacd"><p>The <a href="ChangeLog.html">change log</a> describes the recents
commits
-to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p><p>Here is the list of public
releases:</p><h3>v2.9.3: Nov 20 2015</h3><ul>
+to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p><p>Here is the list of public
releases:</p><h3>2.9.4: May 23 2016</h3><ul>
+ <li>Security:<br />
+ More format string warnings with possible format string vulnerability (David Kilzer),<br />
+ Avoid building recursive entities (Daniel Veillard),<br />
+ Heap-based buffer overread in htmlCurrentChar (Pranjal Jumde),<br />
+ Heap-based buffer-underreads due to xmlParseName (David Kilzer),<br />
+ Heap use-after-free in xmlSAX2AttributeNs (Pranjal Jumde),<br />
+ Heap use-after-free in htmlParsePubidLiteral and htmlParseSystemiteral (Pranjal Jumde),<br />
+ Fix some format string warnings with possible format string vulnerability (David Kilzer),<br />
+ Detect change of encoding when parsing HTML names (Hugh Davenport),<br />
+ Fix inappropriate fetch of entities content (Daniel Veillard),<br />
+ Bug 759398: Heap use-after-free in xmlDictComputeFastKey
<https://bugzilla.gnome.org/show_bug.cgi?id=759398> (Pranjal Jumde),<br />
+ Bug 758605: Heap-based buffer overread in xmlDictAddString
<https://bugzilla.gnome.org/show_bug.cgi?id=758605> (Pranjal Jumde),<br />
+ Bug 758588: Heap-based buffer overread in xmlParserPrintFileContextInternal
<https://bugzilla.gnome.org/show_bug.cgi?id=758588> (David Kilzer),<br />
+ Bug 757711: heap-buffer-overflow in xmlFAParsePosCharGroup
<https://bugzilla.gnome.org/show_bug.cgi?id=757711> (Pranjal Jumde),<br />
+ Add missing increments of recursion depth counter to XML parser. (Peter Simons)<br />
+ </li>
+
+ <li>Documentation:<br />
+ Fix typo: s{ ec -> cr }cipt (Jan Pokorný),<br />
+ Fix typos: dictio{ nn -> n }ar{y,ies} (Jan Pokorný),<br />
+ Fix typos: PATH_{ SEAPARATOR -> SEPARATOR } (Jan Pokorný),<br />
+ Correct a typo. (Shlomi Fish)<br />
+ </li>
+
+ <li>Portability:<br />
+ Correct the usage of LDFLAGS (Mattias Hansson),<br />
+ Revert the use of SAVE_LDFLAGS in configure.ac (Mattias Hansson),<br />
+ libxml2 hardcodes -L/lib in zlib/lzma tests which breaks cross-compiles (Mike Frysinger),<br />
+ Fix apibuild for a recently added construct (Daniel Veillard),<br />
+ Use pkg-config to locate zlib when possible (Stewart Brodie),<br />
+ Use pkg-config to locate ICU when possible (Stewart Brodie),<br />
+ Portability to non C99 compliant compilers (Patrick Monnerat),<br />
+ dict.h: Move xmlDictPtr definition before includes to allow direct inclusion. (Patrick Monnerat),<br />
+ os400: tell about xmllint and xmlcatalog in README400. (Patrick Monnerat),<br />
+ os400: properly process SGML add in XMLCATALOG command. (Patrick Monnerat),<br />
+ os400: implement CL command XMLCATALOG. (Patrick Monnerat),<br />
+ os400: compile and install program xmlcatalog (qshell-only). (Patrick Monnerat),<br />
+ os400: expand tabs in sources, strip trailing blanks. (Patrick Monnerat),<br />
+ os400: implement CL command XMLLINT. (Patrick Monnerat),<br />
+ os400: compile and install program xmllint (qshell-only). (Patrick Monnerat),<br />
+ os400: initscript make_module(): Use options instead of positional parameters. (Patrick Monnerat),<br />
+ os400: c14n.rpgle: allow *omit for nullable reference parameters. (Patrick Monnerat),<br />
+ os400: use like() for double type. (Patrick Monnerat),<br />
+ os400: use like() for int type. (Patrick Monnerat),<br />
+ os400: use like() for unsigned int type. (Patrick Monnerat),<br />
+ os400: use like() for enum types. (Patrick Monnerat),<br />
+ Add xz to xml2-config --libs output (Baruch Siach),<br />
+ Bug 760190: configure.ac should be able to build --with-icu without icu-config tool
<https://bugzilla.gnome.org/show_bug.cgi?id=760190> (David Kilzer),<br />
+ win32\VC10\config.h and VS 2015 (Bruce Dawson),<br />
+ Add configure maintainer mode (orzen)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ Avoid an out of bound access when serializing malformed strings (Daniel Veillard),<br />
+ Unsigned addition may overflow in xmlMallocAtomicLoc() (David Kilzer),<br />
+ Integer signed/unsigned type mismatch in xmlParserInputGrow() (David Kilzer),<br />
+ Bug 763071: heap-buffer-overflow in xmlStrncat <https://bugzilla.gnome.org/show_bug.cgi?id=763071>
(Pranjal Jumde),<br />
+ Integer overflow parsing port number in URI (Michael Paddon),<br />
+ Fix an error with regexp on nullable counted char transition (Daniel Veillard),<br />
+ Fix memory leak with XPath namespace nodes (Nick Wellnhofer),<br />
+ Fix namespace axis traversal (Nick Wellnhofer),<br />
+ Fix null pointer deref in docs with no root element (Hugh Davenport),<br />
+ Fix XSD validation of URIs with ampersands (Alex Henrie),<br />
+ xmlschemastypes.c: accept endOfDayFrag Times set to "24:00:00" mean "end of day" and should not cause an
error. (Patrick Monnerat),<br />
+ xmlcatalog: flush stdout before interactive shell input. (Patrick Monnerat),<br />
+ xmllint: flush stdout before interactive shell input. (Patrick Monnerat),<br />
+ Don't recurse into OP_VALUEs in xmlXPathOptimizeExpression (Nick Wellnhofer),<br />
+ Fix namespace::node() XPath expression (Nick Wellnhofer),<br />
+ Fix OOB write in xmlXPathEmptyNodeSet (Nick Wellnhofer),<br />
+ Fix parsing of NCNames in XPath (Nick Wellnhofer),<br />
+ Fix OOB read with invalid UTF-8 in xmlUTF8Strsize (Nick Wellnhofer),<br />
+ Do normalize string-based datatype value in RelaxNG facet checking (Audric Schiltknecht),<br />
+ Bug 760921: REGRESSION (8eb55d78): doc/examples/io1 test fails after fix for "xmlSaveUri() incorrectly
recomposes URIs with rootless paths" <https://bugzilla.gnome.org/show_bug.cgi?id=760921> (David
Kilzer),<br />
+ Bug 760861: REGRESSION (bf9c1dad): Missing results for test/schemas/regexp-char-ref_[01].xsd
<https://bugzilla.gnome.org/show_bug.cgi?id=760861> (David Kilzer),<br />
+ error.c: *input->cur == 0 does not mean no error (Pavel Raiskup),<br />
+ Add missing RNG test files (David Kilzer),<br />
+ Bug 760183: REGRESSION (v2.9.3): XML push parser fails with bogus UTF-8 encoding error when multi-byte
character in large CDATA section is split across buffer
<https://bugzilla.gnome.org/show_bug.cgi?id=760183> (David Kilzer),<br />
+ Bug 758572: ASAN crash in make check <https://bugzilla.gnome.org/show_bug.cgi?id=758572> (David
Kilzer),<br />
+ Bug 721158: Missing ICU string when doing --version on xmllint
<https://bugzilla.gnome.org/show_bug.cgi?id=721158> (David Kilzer),<br />
+ python 3: libxml2.c wrappers create Unicode str already (Michael Stahl),<br />
+ Add autogen.sh to distrib (orzen),<br />
+ Heap-based buffer overread in xmlNextChar (Daniel Veillard)<br />
+ </li>
+
+ <li>Improvements:<br />
+ Add more debugging info to runtest (Daniel Veillard),<br />
+ Implement "runtest -u" mode (David Kilzer),<br />
+ Add a make rule to rebuild for ASAN (Daniel Veillard)<br />
+ </li>
+</ul><h3>v2.9.3: Nov 20 2015</h3><ul>
<li>Security:<br />
CVE-2015-8242 Buffer overead with HTML parser in push mode (Hugh Davenport),<br />
CVE-2015-7500 Fix memory access error due to incorrect entities boundaries (Daniel Veillard),<br />
diff --git a/doc/xml.html b/doc/xml.html
index 51dca8c..d035934 100644
--- a/doc/xml.html
+++ b/doc/xml.html
@@ -709,6 +709,98 @@ to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p>
<p>Here is the list of public releases:</p>
+<h3>2.9.4: May 23 2016</h3>
+<ul>
+ <li>Security:<br/>
+ More format string warnings with possible format string vulnerability (David Kilzer),<br/>
+ Avoid building recursive entities (Daniel Veillard),<br/>
+ Heap-based buffer overread in htmlCurrentChar (Pranjal Jumde),<br/>
+ Heap-based buffer-underreads due to xmlParseName (David Kilzer),<br/>
+ Heap use-after-free in xmlSAX2AttributeNs (Pranjal Jumde),<br/>
+ Heap use-after-free in htmlParsePubidLiteral and htmlParseSystemiteral (Pranjal Jumde),<br/>
+ Fix some format string warnings with possible format string vulnerability (David Kilzer),<br/>
+ Detect change of encoding when parsing HTML names (Hugh Davenport),<br/>
+ Fix inappropriate fetch of entities content (Daniel Veillard),<br/>
+ Bug 759398: Heap use-after-free in xmlDictComputeFastKey
<https://bugzilla.gnome.org/show_bug.cgi?id=759398> (Pranjal Jumde),<br/>
+ Bug 758605: Heap-based buffer overread in xmlDictAddString
<https://bugzilla.gnome.org/show_bug.cgi?id=758605> (Pranjal Jumde),<br/>
+ Bug 758588: Heap-based buffer overread in xmlParserPrintFileContextInternal
<https://bugzilla.gnome.org/show_bug.cgi?id=758588> (David Kilzer),<br/>
+ Bug 757711: heap-buffer-overflow in xmlFAParsePosCharGroup
<https://bugzilla.gnome.org/show_bug.cgi?id=757711> (Pranjal Jumde),<br/>
+ Add missing increments of recursion depth counter to XML parser. (Peter Simons)<br/>
+ </li>
+
+ <li>Documentation:<br/>
+ Fix typo: s{ ec -> cr }cipt (Jan Pokorný),<br/>
+ Fix typos: dictio{ nn -> n }ar{y,ies} (Jan Pokorný),<br/>
+ Fix typos: PATH_{ SEAPARATOR -> SEPARATOR } (Jan Pokorný),<br/>
+ Correct a typo. (Shlomi Fish)<br/>
+ </li>
+
+ <li>Portability:<br/>
+ Correct the usage of LDFLAGS (Mattias Hansson),<br/>
+ Revert the use of SAVE_LDFLAGS in configure.ac (Mattias Hansson),<br/>
+ libxml2 hardcodes -L/lib in zlib/lzma tests which breaks cross-compiles (Mike Frysinger),<br/>
+ Fix apibuild for a recently added construct (Daniel Veillard),<br/>
+ Use pkg-config to locate zlib when possible (Stewart Brodie),<br/>
+ Use pkg-config to locate ICU when possible (Stewart Brodie),<br/>
+ Portability to non C99 compliant compilers (Patrick Monnerat),<br/>
+ dict.h: Move xmlDictPtr definition before includes to allow direct inclusion. (Patrick Monnerat),<br/>
+ os400: tell about xmllint and xmlcatalog in README400. (Patrick Monnerat),<br/>
+ os400: properly process SGML add in XMLCATALOG command. (Patrick Monnerat),<br/>
+ os400: implement CL command XMLCATALOG. (Patrick Monnerat),<br/>
+ os400: compile and install program xmlcatalog (qshell-only). (Patrick Monnerat),<br/>
+ os400: expand tabs in sources, strip trailing blanks. (Patrick Monnerat),<br/>
+ os400: implement CL command XMLLINT. (Patrick Monnerat),<br/>
+ os400: compile and install program xmllint (qshell-only). (Patrick Monnerat),<br/>
+ os400: initscript make_module(): Use options instead of positional parameters. (Patrick Monnerat),<br/>
+ os400: c14n.rpgle: allow *omit for nullable reference parameters. (Patrick Monnerat),<br/>
+ os400: use like() for double type. (Patrick Monnerat),<br/>
+ os400: use like() for int type. (Patrick Monnerat),<br/>
+ os400: use like() for unsigned int type. (Patrick Monnerat),<br/>
+ os400: use like() for enum types. (Patrick Monnerat),<br/>
+ Add xz to xml2-config --libs output (Baruch Siach),<br/>
+ Bug 760190: configure.ac should be able to build --with-icu without icu-config tool
<https://bugzilla.gnome.org/show_bug.cgi?id=760190> (David Kilzer),<br/>
+ win32\VC10\config.h and VS 2015 (Bruce Dawson),<br/>
+ Add configure maintainer mode (orzen)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ Avoid an out of bound access when serializing malformed strings (Daniel Veillard),<br/>
+ Unsigned addition may overflow in xmlMallocAtomicLoc() (David Kilzer),<br/>
+ Integer signed/unsigned type mismatch in xmlParserInputGrow() (David Kilzer),<br/>
+ Bug 763071: heap-buffer-overflow in xmlStrncat <https://bugzilla.gnome.org/show_bug.cgi?id=763071>
(Pranjal Jumde),<br/>
+ Integer overflow parsing port number in URI (Michael Paddon),<br/>
+ Fix an error with regexp on nullable counted char transition (Daniel Veillard),<br/>
+ Fix memory leak with XPath namespace nodes (Nick Wellnhofer),<br/>
+ Fix namespace axis traversal (Nick Wellnhofer),<br/>
+ Fix null pointer deref in docs with no root element (Hugh Davenport),<br/>
+ Fix XSD validation of URIs with ampersands (Alex Henrie),<br/>
+ xmlschemastypes.c: accept endOfDayFrag Times set to "24:00:00" mean "end of day" and should not cause an
error. (Patrick Monnerat),<br/>
+ xmlcatalog: flush stdout before interactive shell input. (Patrick Monnerat),<br/>
+ xmllint: flush stdout before interactive shell input. (Patrick Monnerat),<br/>
+ Don't recurse into OP_VALUEs in xmlXPathOptimizeExpression (Nick Wellnhofer),<br/>
+ Fix namespace::node() XPath expression (Nick Wellnhofer),<br/>
+ Fix OOB write in xmlXPathEmptyNodeSet (Nick Wellnhofer),<br/>
+ Fix parsing of NCNames in XPath (Nick Wellnhofer),<br/>
+ Fix OOB read with invalid UTF-8 in xmlUTF8Strsize (Nick Wellnhofer),<br/>
+ Do normalize string-based datatype value in RelaxNG facet checking (Audric Schiltknecht),<br/>
+ Bug 760921: REGRESSION (8eb55d78): doc/examples/io1 test fails after fix for "xmlSaveUri() incorrectly
recomposes URIs with rootless paths" <https://bugzilla.gnome.org/show_bug.cgi?id=760921> (David
Kilzer),<br/>
+ Bug 760861: REGRESSION (bf9c1dad): Missing results for test/schemas/regexp-char-ref_[01].xsd
<https://bugzilla.gnome.org/show_bug.cgi?id=760861> (David Kilzer),<br/>
+ error.c: *input->cur == 0 does not mean no error (Pavel Raiskup),<br/>
+ Add missing RNG test files (David Kilzer),<br/>
+ Bug 760183: REGRESSION (v2.9.3): XML push parser fails with bogus UTF-8 encoding error when multi-byte
character in large CDATA section is split across buffer
<https://bugzilla.gnome.org/show_bug.cgi?id=760183> (David Kilzer),<br/>
+ Bug 758572: ASAN crash in make check <https://bugzilla.gnome.org/show_bug.cgi?id=758572> (David
Kilzer),<br/>
+ Bug 721158: Missing ICU string when doing --version on xmllint
<https://bugzilla.gnome.org/show_bug.cgi?id=721158> (David Kilzer),<br/>
+ python 3: libxml2.c wrappers create Unicode str already (Michael Stahl),<br/>
+ Add autogen.sh to distrib (orzen),<br/>
+ Heap-based buffer overread in xmlNextChar (Daniel Veillard)<br/>
+ </li>
+
+ <li>Improvements:<br/>
+ Add more debugging info to runtest (Daniel Veillard),<br/>
+ Implement "runtest -u" mode (David Kilzer),<br/>
+ Add a make rule to rebuild for ASAN (Daniel Veillard)<br/>
+ </li>
+</ul>
<h3>v2.9.3: Nov 20 2015</h3>
<ul>
<li>Security:<br/>
diff --git a/libxml.spec.in b/libxml.spec.in
index 6fe3c69..9029a18 100644
--- a/libxml.spec.in
+++ b/libxml.spec.in
@@ -3,10 +3,10 @@
Summary: Library providing XML and HTML support
Name: libxml2
Version: @VERSION@
-Release: 0rc2%{?dist}%{?extra_release}
+Release: 1%{?dist}%{?extra_release}
License: MIT
Group: Development/Libraries
-Source: ftp://xmlsoft.org/libxml2/libxml2-%{version}-rc2.tar.gz
+Source: ftp://xmlsoft.org/libxml2/libxml2-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-root
BuildRequires: python-devel
%if 0%{?with_python3}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]