<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=“www.w3.org/1999/xhtml”> http-equiv=“Content-Type” content=“text/html; charset=UTF-8” /><link rel=“SHORTCUT ICON” href=“/favicon.ico” /><style type=“text/css”> TD {font-family: Verdana,Arial,Helvetica} BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em} H1 {font-family: Verdana,Arial,Helvetica} H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } </style><style type=“text/css”>
div.deprecated pre.programlisting {border-style: double;border-color:red} pre.programlisting {border-style: double;background: #EECFA1} </style><title>Module xmlIO from libxml2</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></h1><h2>Module xmlIO from libxml2</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>API 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 style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li><li><a href="../ChangeLog.html">ChangeLog</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>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</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 bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="https://gitlab.gnome.org/GNOME/libxml2/issues">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"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xlink.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xlink.html">xlink</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlautomata.html">xmlautomata</a></th><td><a accesskey="n" href="libxml-xmlautomata.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the I/O interfaces used by the parser </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> <a href="#xmlAllocOutputBuffer">xmlAllocOutputBuffer</a> (<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)</pre>
<pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlAllocParserInputBuffer”>xmlAllocParserInputBuffer</a>
(<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”>int <a
href=“#xmlCheckFilename”>xmlCheckFilename</a>
(const char * path)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
<a href=“#xmlCheckHTTPInput”>xmlCheckHTTPInput</a> (<a
href=“libxml-tree.html#xmlParserCtxtPtr”>xmlParserCtxtPtr</a>
ctxt, <br /> <a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
ret)</pre> <pre class=“programlisting”>void <a
href=“#xmlCleanupInputCallbacks”>xmlCleanupInputCallbacks</a>
(void)</pre> <pre class=“programlisting”>void <a
href=“#xmlCleanupOutputCallbacks”>xmlCleanupOutputCallbacks</a>
(void)</pre> <pre class=“programlisting”>int <a
href=“#xmlFileClose”>xmlFileClose</a> (void
* context)</pre> <pre class=“programlisting”>int <a
href=“#xmlFileMatch”>xmlFileMatch</a>
(const char * filename)</pre> <pre class=“programlisting”>void
* <a href=“#xmlFileOpen”>xmlFileOpen</a>
(const char * filename)</pre> <pre class=“programlisting”>int
<a href=“#xmlFileRead”>xmlFileRead</a> (void *
context, <br /> char * buffer,
<br /> int len)</pre> <pre
class=“programlisting”>void <a
href=“#xmlFreeParserInputBuffer”>xmlFreeParserInputBuffer</a>
(<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in)</pre> <pre class=“programlisting”>int <a
href=“#xmlIOFTPClose”>xmlIOFTPClose</a> (void
* context)</pre> <pre class=“programlisting”>int <a
href=“#xmlIOFTPMatch”>xmlIOFTPMatch</a>
(const char * filename)</pre> <pre class=“programlisting”>void
* <a href=“#xmlIOFTPOpen”>xmlIOFTPOpen</a>
(const char * filename)</pre> <pre class=“programlisting”>int
<a href=“#xmlIOFTPRead”>xmlIOFTPRead</a>
(void * context, <br /> char *
buffer, <br /> int len)</pre>
<pre class=“programlisting”>int <a
href=“#xmlIOHTTPClose”>xmlIOHTTPClose</a> (void
* context)</pre> <pre class=“programlisting”>int <a
href=“#xmlIOHTTPMatch”>xmlIOHTTPMatch</a>
(const char * filename)</pre> <pre class=“programlisting”>void
* <a href=“#xmlIOHTTPOpen”>xmlIOHTTPOpen</a>
(const char * filename)</pre> <pre class=“programlisting”>void
* <a href=“#xmlIOHTTPOpenW”>xmlIOHTTPOpenW</a>
(const char * post_uri, <br /> int
compression)</pre> <pre class=“programlisting”>int <a
href=“#xmlIOHTTPRead”>xmlIOHTTPRead</a> (void
* context, <br /> char * buffer,
<br /> int len)</pre> <pre
class=“programlisting”>Function type: <a
href=“#xmlInputCloseCallback”>xmlInputCloseCallback</a> int
<a href=“#xmlInputCloseCallback”>xmlInputCloseCallback</a>
(void * context) </pre> <pre class=“programlisting”>Function
type: <a
href=“#xmlInputMatchCallback”>xmlInputMatchCallback</a> int
<a href=“#xmlInputMatchCallback”>xmlInputMatchCallback</a>
(char const * filename) </pre> <pre
class=“programlisting”>Function type: <a
href=“#xmlInputOpenCallback”>xmlInputOpenCallback</a> void *
<a href=“#xmlInputOpenCallback”>xmlInputOpenCallback</a>
(char const * filename) </pre> <pre
class=“programlisting”>Function type: <a
href=“#xmlInputReadCallback”>xmlInputReadCallback</a> int
<a href=“#xmlInputReadCallback”>xmlInputReadCallback</a>
(void * context, <br /> char *
buffer, <br /> int len)
</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
<a
href=“#xmlNoNetExternalEntityLoader”>xmlNoNetExternalEntityLoader</a>
(const char * URL, <br />
const char * ID, <br />
<a
href=“libxml-tree.html#xmlParserCtxtPtr”>xmlParserCtxtPtr</a>
ctxt)</pre> <pre class=“programlisting”><a
href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> * <a
href=“#xmlNormalizeWindowsPath”>xmlNormalizeWindowsPath</a>
(const <a href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> *
path)</pre> <pre class=“programlisting”>int <a
href=“#xmlOutputBufferClose”>xmlOutputBufferClose</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
<a
href=“#xmlOutputBufferCreateBuffer”>xmlOutputBufferCreateBuffer</a>
(<a href=“libxml-tree.html#xmlBufferPtr”>xmlBufferPtr</a>
buffer, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
<a href=“#xmlOutputBufferCreateFd”>xmlOutputBufferCreateFd</a>
(int fd, <br /> <a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
<a
href=“#xmlOutputBufferCreateFile”>xmlOutputBufferCreateFile</a>
(FILE * file, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
<a
href=“#xmlOutputBufferCreateFilename”>xmlOutputBufferCreateFilename</a>
(const char * URI, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder, <br /> int
compression)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
<a href=“#xmlOutputBufferCreateIO”>xmlOutputBufferCreateIO</a>
(<a
href=“libxml-xmlIO.html#xmlOutputWriteCallback”>xmlOutputWriteCallback</a>
iowrite, <br /> <a
href=“libxml-xmlIO.html#xmlOutputCloseCallback”>xmlOutputCloseCallback</a>
ioclose, <br /> void *
ioctx, <br /> <a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)</pre> <pre class=“programlisting”>int <a
href=“#xmlOutputBufferFlush”>xmlOutputBufferFlush</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out)</pre> <pre class=“programlisting”>const <a
href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> * <a
href=“#xmlOutputBufferGetContent”>xmlOutputBufferGetContent</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out)</pre> <pre class=“programlisting”>size_t <a
href=“#xmlOutputBufferGetSize”>xmlOutputBufferGetSize</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out)</pre> <pre class=“programlisting”>int <a
href=“#xmlOutputBufferWrite”>xmlOutputBufferWrite</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out, <br /> int len, <br
/> const char * buf)</pre>
<pre class=“programlisting”>int <a
href=“#xmlOutputBufferWriteEscape”>xmlOutputBufferWriteEscape</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out, <br /> const <a
href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> * str, <br
/> <a
href=“libxml-encoding.html#xmlCharEncodingOutputFunc”>xmlCharEncodingOutputFunc</a>
escaping)</pre> <pre class=“programlisting”>int <a
href=“#xmlOutputBufferWriteString”>xmlOutputBufferWriteString</a>
(<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out, <br /> const char *
str)</pre> <pre class=“programlisting”>Function type: <a
href=“#xmlOutputCloseCallback”>xmlOutputCloseCallback</a> int
<a href=“#xmlOutputCloseCallback”>xmlOutputCloseCallback</a>
(void * context) </pre> <pre class=“programlisting”>Function
type: <a
href=“#xmlOutputMatchCallback”>xmlOutputMatchCallback</a> int
<a href=“#xmlOutputMatchCallback”>xmlOutputMatchCallback</a>
(char const * filename) </pre> <pre
class=“programlisting”>Function type: <a
href=“#xmlOutputOpenCallback”>xmlOutputOpenCallback</a> void *
<a href=“#xmlOutputOpenCallback”>xmlOutputOpenCallback</a>
(char const * filename) </pre> <pre
class=“programlisting”>Function type: <a
href=“#xmlOutputWriteCallback”>xmlOutputWriteCallback</a> int
<a href=“#xmlOutputWriteCallback”>xmlOutputWriteCallback</a>
(void * context, <br /> const char *
buffer, <br /> int len)
</pre> <pre class=“programlisting”>char * <a
href=“#xmlParserGetDirectory”>xmlParserGetDirectory</a>
(const char * filename)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateFd”>xmlParserInputBufferCreateFd</a>
(int fd, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateFile”>xmlParserInputBufferCreateFile</a>
(FILE * file, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateFilename”>xmlParserInputBufferCreateFilename</a>
(const char * URI, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateIO”>xmlParserInputBufferCreateIO</a>
(<a
href=“libxml-xmlIO.html#xmlInputReadCallback”>xmlInputReadCallback</a>
ioread, <br />
<a
href=“libxml-xmlIO.html#xmlInputCloseCallback”>xmlInputCloseCallback</a>
ioclose, <br />
void * ioctx, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateMem”>xmlParserInputBufferCreateMem</a>
(const char * mem, <br />
int size, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
<a
href=“#xmlParserInputBufferCreateStatic”>xmlParserInputBufferCreateStatic</a>
(const char * mem, <br />
int size, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)</pre> <pre class=“programlisting”>int <a
href=“#xmlParserInputBufferGrow”>xmlParserInputBufferGrow</a>
(<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len)</pre>
<pre class=“programlisting”>int <a
href=“#xmlParserInputBufferPush”>xmlParserInputBufferPush</a>
(<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len, <br
/> const char * buf)</pre>
<pre class=“programlisting”>int <a
href=“#xmlParserInputBufferRead”>xmlParserInputBufferRead</a>
(<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len)</pre>
<pre class=“programlisting”>int <a
href=“#xmlPopInputCallbacks”>xmlPopInputCallbacks</a>
(void)</pre> <pre class=“programlisting”>void <a
href=“#xmlRegisterDefaultInputCallbacks”>xmlRegisterDefaultInputCallbacks</a>
(void)</pre> <pre class=“programlisting”>void <a
href=“#xmlRegisterDefaultOutputCallbacks”>xmlRegisterDefaultOutputCallbacks</a>
(void)</pre> <pre class=“programlisting”>void <a
href=“#xmlRegisterHTTPPostCallbacks”>xmlRegisterHTTPPostCallbacks</a>
(void)</pre> <pre class=“programlisting”>int <a
href=“#xmlRegisterInputCallbacks”>xmlRegisterInputCallbacks</a>
(<a
href=“libxml-xmlIO.html#xmlInputMatchCallback”>xmlInputMatchCallback</a>
matchFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputOpenCallback”>xmlInputOpenCallback</a>
openFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputReadCallback”>xmlInputReadCallback</a>
readFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputCloseCallback”>xmlInputCloseCallback</a>
closeFunc)</pre> <pre class=“programlisting”>int <a
href=“#xmlRegisterOutputCallbacks”>xmlRegisterOutputCallbacks</a>
(<a
href=“libxml-xmlIO.html#xmlOutputMatchCallback”>xmlOutputMatchCallback</a>
matchFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputOpenCallback”>xmlOutputOpenCallback</a>
openFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputWriteCallback”>xmlOutputWriteCallback</a>
writeFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputCloseCallback”>xmlOutputCloseCallback</a>
closeFunc)</pre> <h2>Description</h2> <h3><a
name=“xmlAllocOutputBuffer”
id=“xmlAllocOutputBuffer”></a>Function:
xmlAllocOutputBuffer</h3><pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
xmlAllocOutputBuffer (<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)<br /> </pre><p>Create a buffered parser
output</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>encoder
:</span></td><td>the
encoding converter or
NULL</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser output or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlAllocParserInputBuffer”
id=“xmlAllocParserInputBuffer”></a>Function:
xmlAllocParserInputBuffer</h3><pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
xmlAllocParserInputBuffer (<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
progressive parsing</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlCheckFilename” id=“xmlCheckFilename”></a>Function:
xmlCheckFilename</h3><pre class=“programlisting”>int
xmlCheckFilename (const char * path)<br />
</pre><p>function checks to see if @path is a valid source
(file, socket…) for XML. if stat is not available on the target
machine,</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>path
:</span></td><td>the
path to check</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>1.
if stat fails, returns 0 (if calling stat on the filename fails, it
can't be right). if stat succeeds and the file is a directory, returns
2. otherwise returns
1.</td></tr></tbody></table></div><h3><a
name=“xmlCheckHTTPInput” id=“xmlCheckHTTPInput”></a>Function:
xmlCheckHTTPInput</h3><pre class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
xmlCheckHTTPInput (<a
href=“libxml-tree.html#xmlParserCtxtPtr”>xmlParserCtxtPtr</a>
ctxt, <br /> <a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
ret)<br /> </pre><p>Check an input in case it was created
from an HTTP stream, in that case it will handle encoding and update of the
base URL in case of redirection. It also checks for HTTP errors in which
case the input is cleanly freed up and an appropriate error is raised in
context</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>ctxt
:</span></td><td>an
XML parser context</td></tr><tr><td><span
class=“term”>ret
:</span></td><td>an
XML parser input</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
input or NULL in case of HTTP
error.</td></tr></tbody></table></div><h3><a
name=“xmlCleanupInputCallbacks”
id=“xmlCleanupInputCallbacks”></a>Function:
xmlCleanupInputCallbacks</h3><pre class=“programlisting”>void
xmlCleanupInputCallbacks (void)<br />
</pre><p>clears the entire input callback table. this includes
the compiled-in I/O.</p> <h3><a
name=“xmlCleanupOutputCallbacks”
id=“xmlCleanupOutputCallbacks”></a>Function:
xmlCleanupOutputCallbacks</h3><pre class=“programlisting”>void
xmlCleanupOutputCallbacks (void)<br />
</pre><p>clears the entire output callback table. this includes
the compiled-in I/O callbacks.</p> <h3><a
name=“xmlFileClose” id=“xmlFileClose”></a>Function:
xmlFileClose</h3><pre class=“programlisting”>int
xmlFileClose (void * context)<br />
</pre><p>Close an I/O channel</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>0
or -1 in case of
error</td></tr></tbody></table></div><h3><a
name=“xmlFileMatch” id=“xmlFileMatch”></a>Function:
xmlFileMatch</h3><pre class=“programlisting”>int
xmlFileMatch (const char * filename)<br />
</pre><p>input from FILE *</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>1
if matches, 0
otherwise</td></tr></tbody></table></div><h3><a
name=“xmlFileOpen” id=“xmlFileOpen”></a>Function:
xmlFileOpen</h3><pre class=“programlisting”>void *
xmlFileOpen (const char * filename)<br />
</pre><p>Wrapper around xmlFileOpen_real that try it with an
unescaped version of @filename, if this fails fallback to
@filename</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>a
handler or NULL in case or
failure</td></tr></tbody></table></div><h3><a
name=“xmlFileRead” id=“xmlFileRead”></a>Function:
xmlFileRead</h3><pre class=“programlisting”>int
xmlFileRead (void * context, <br />
char * buffer, <br /> int
len)<br /> </pre><p>Read @len bytes to @buffer from the
I/O channel.</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>buffer
:</span></td><td>where
to drop data</td></tr><tr><td><span
class=“term”>len
:</span></td><td>number
of bytes to write</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of bytes written or < 0 in case of
failure</td></tr></tbody></table></div><h3><a
name=“xmlFreeParserInputBuffer”
id=“xmlFreeParserInputBuffer”></a>Function:
xmlFreeParserInputBuffer</h3><pre class=“programlisting”>void
xmlFreeParserInputBuffer (<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in)<br /> </pre><p>Free up the memory used by a buffered
parser input</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>in
:</span></td><td>a
buffered parser
input</td></tr></tbody></table></div><h3><a
name=“xmlIOFTPClose” id=“xmlIOFTPClose”></a>Function:
xmlIOFTPClose</h3><pre class=“programlisting”>int
xmlIOFTPClose (void * context)<br />
</pre><p>Close an FTP I/O channel</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>0</td></tr></tbody></table></div><h3><a
name=“xmlIOFTPMatch” id=“xmlIOFTPMatch”></a>Function:
xmlIOFTPMatch</h3><pre class=“programlisting”>int
xmlIOFTPMatch (const char * filename)<br />
</pre><p>check if the URI matches an FTP one</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>1
if matches, 0
otherwise</td></tr></tbody></table></div><h3><a
name=“xmlIOFTPOpen” id=“xmlIOFTPOpen”></a>Function:
xmlIOFTPOpen</h3><pre class=“programlisting”>void *
xmlIOFTPOpen (const char * filename)<br />
</pre><p>open an FTP I/O channel</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>an
I/O context or NULL in case of
error</td></tr></tbody></table></div><h3><a
name=“xmlIOFTPRead” id=“xmlIOFTPRead”></a>Function:
xmlIOFTPRead</h3><pre class=“programlisting”>int xmlIOFTPRead
(void * context, <br /> char *
buffer, <br /> int len)<br />
</pre><p>Read @len bytes to @buffer from the I/O
channel.</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>buffer
:</span></td><td>where
to drop data</td></tr><tr><td><span
class=“term”>len
:</span></td><td>number
of bytes to write</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of bytes
written</td></tr></tbody></table></div><h3><a
name=“xmlIOHTTPClose” id=“xmlIOHTTPClose”></a>Function:
xmlIOHTTPClose</h3><pre class=“programlisting”>int
xmlIOHTTPClose (void * context)<br />
</pre><p>Close an HTTP I/O channel</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>0</td></tr></tbody></table></div><h3><a
name=“xmlIOHTTPMatch” id=“xmlIOHTTPMatch”></a>Function:
xmlIOHTTPMatch</h3><pre class=“programlisting”>int
xmlIOHTTPMatch (const char * filename)<br />
</pre><p>check if the URI matches an HTTP one</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>1
if matches, 0
otherwise</td></tr></tbody></table></div><h3><a
name=“xmlIOHTTPOpen” id=“xmlIOHTTPOpen”></a>Function:
xmlIOHTTPOpen</h3><pre class=“programlisting”>void *
xmlIOHTTPOpen (const char * filename)<br />
</pre><p>open an HTTP I/O channel</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
URI for matching</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>an
I/O context or NULL in case of
error</td></tr></tbody></table></div><h3><a
name=“xmlIOHTTPOpenW” id=“xmlIOHTTPOpenW”></a>Function:
xmlIOHTTPOpenW</h3><pre class=“programlisting”>void *
xmlIOHTTPOpenW (const char * post_uri, <br />
int compression)<br /> </pre><p>Open a temporary buffer
to collect the document for a subsequent HTTP POST request. Non-static as
is called from the output buffer creation routine.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>post_uri
:</span></td><td>The
destination URI for the
document</td></tr><tr><td><span
class=“term”>compression
:</span></td><td>The
compression desired for the
document.</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>an
I/O context or NULL in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlIOHTTPRead” id=“xmlIOHTTPRead”></a>Function:
xmlIOHTTPRead</h3><pre class=“programlisting”>int
xmlIOHTTPRead (void * context, <br />
char * buffer, <br /> int
len)<br /> </pre><p>Read @len bytes to @buffer from the
I/O channel.</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>the
I/O context</td></tr><tr><td><span
class=“term”>buffer
:</span></td><td>where
to drop data</td></tr><tr><td><span
class=“term”>len
:</span></td><td>number
of bytes to write</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of bytes
written</td></tr></tbody></table></div><h3><a
name=“xmlInputCloseCallback”
id=“xmlInputCloseCallback”></a>Function type:
xmlInputCloseCallback</h3><pre class=“programlisting”>Function
type: xmlInputCloseCallback int xmlInputCloseCallback (void *
context) </pre><p>Callback used in the I/O Input API to close
the resource</p><div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>an
Input context</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>0
or -1 in case of
error</td></tr></tbody></table></div><br
/> <h3><a name=“xmlInputMatchCallback”
id=“xmlInputMatchCallback”></a>Function type:
xmlInputMatchCallback</h3><pre class=“programlisting”>Function
type: xmlInputMatchCallback int xmlInputMatchCallback (char
const * filename) </pre><p>Callback used in the I/O Input API
to detect if the current handler can provide input functionality for this
resource.</p><div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
filename or URI</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>1
if yes and 0 if another Input module should be
used</td></tr></tbody></table></div><br
/> <h3><a name=“xmlInputOpenCallback”
id=“xmlInputOpenCallback”></a>Function type:
xmlInputOpenCallback</h3><pre class=“programlisting”>Function
type: xmlInputOpenCallback void * xmlInputOpenCallback (char
const * filename) </pre><p>Callback used in the I/O Input API
to open the resource</p><div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>filename
:</span></td><td>the
filename or URI</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>an
Input context or NULL in case or
error</td></tr></tbody></table></div><br
/> <h3><a name=“xmlInputReadCallback”
id=“xmlInputReadCallback”></a>Function type:
xmlInputReadCallback</h3><pre class=“programlisting”>Function
type: xmlInputReadCallback int xmlInputReadCallback (void *
context, <br /> char * buffer,
<br /> int len)
</pre><p>Callback used in the I/O Input API to read the
resource</p><div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>context
:</span></td><td>an
Input context</td></tr><tr><td><span
class=“term”>buffer
:</span></td><td>the
buffer to store data read</td></tr><tr><td><span
class=“term”>len
:</span></td><td>the
length of the buffer in
bytes</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of bytes read or -1 in case of
error</td></tr></tbody></table></div><br
/> <h3><a name=“xmlNoNetExternalEntityLoader”
id=“xmlNoNetExternalEntityLoader”></a>Function:
xmlNoNetExternalEntityLoader</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputPtr”>xmlParserInputPtr</a>
xmlNoNetExternalEntityLoader (const char * URL, <br />
const char * ID, <br />
<a
href=“libxml-tree.html#xmlParserCtxtPtr”>xmlParserCtxtPtr</a>
ctxt)<br /> </pre><p>A specific entity loader disabling
network accesses, though still allowing local catalog accesses for
resolution.</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>URL
:</span></td><td>the
URL for the entity to
load</td></tr><tr><td><span
class=“term”>ID
:</span></td><td>the
System ID for the entity to
load</td></tr><tr><td><span
class=“term”>ctxt
:</span></td><td>the
context in which the entity is called or
NULL</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>a
new allocated xmlParserInputPtr, or
NULL.</td></tr></tbody></table></div><h3><a
name=“xmlNormalizeWindowsPath”
id=“xmlNormalizeWindowsPath”></a>Function:
xmlNormalizeWindowsPath</h3><pre class=“programlisting”><a
href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> *
xmlNormalizeWindowsPath (const <a
href=“libxml-xmlstring.html#xmlChar”>xmlChar</a> * path)<br
/> </pre><p>This function is obsolete. Please see
xmlURIFromPath in uri.c for a better solution.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>path
:</span></td><td>the
input file path</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>a
canonicalized version of the
path</td></tr></tbody></table></div><h3><a
name=“xmlOutputBufferClose”
id=“xmlOutputBufferClose”></a>Function:
xmlOutputBufferClose</h3><pre class=“programlisting”>int
xmlOutputBufferClose (<a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
out)<br /> </pre><p>flushes and close the output I/O
channel and free up all the associated resources</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>out
:</span></td><td>a
buffered output</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of byte written or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlOutputBufferCreateBuffer”
id=“xmlOutputBufferCreateBuffer”></a>Function:
xmlOutputBufferCreateBuffer</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
xmlOutputBufferCreateBuffer (<a
href=“libxml-tree.html#xmlBufferPtr”>xmlBufferPtr</a> buffer,
<br /> <a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)<br /> </pre><p>Create a buffered output for the
progressive saving to a <a
href=“libxml-tree.html#xmlBuffer”>xmlBuffer</a></p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>buffer
:</span></td><td>a
<a
href=“libxml-tree.html#xmlBufferPtr”>xmlBufferPtr</a></td></tr><tr><td><span
class=“term”>encoder
:</span></td><td>the
encoding converter or
NULL</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser output or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlOutputBufferCreateFd”
id=“xmlOutputBufferCreateFd”></a>Function:
xmlOutputBufferCreateFd</h3><pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
xmlOutputBufferCreateFd (int fd, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)<br /> </pre><p>Create a buffered output for the
progressive saving to a file descriptor</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>fd
:</span></td><td>a
file descriptor number</td></tr><tr><td><span
class=“term”>encoder
:</span></td><td>the
encoding converter or
NULL</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser output or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlOutputBufferCreateFile”
id=“xmlOutputBufferCreateFile”></a>Function:
xmlOutputBufferCreateFile</h3><pre class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
xmlOutputBufferCreateFile (FILE * file, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder)<br /> </pre><p>Create a buffered output for the
progressive saving to a FILE * buffered C I/O</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>file
:</span></td><td>a
FILE*</td></tr><tr><td><span
class=“term”>encoder
:</span></td><td>the
encoding converter or
NULL</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser output or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlOutputBufferCreateFilename”
id=“xmlOutputBufferCreateFilename”></a>Function:
xmlOutputBufferCreateFilename</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlOutputBufferPtr”>xmlOutputBufferPtr</a>
xmlOutputBufferCreateFilename (const char * URI, <br />
<a
href=“libxml-encoding.html#xmlCharEncodingHandlerPtr”>xmlCharEncodingHandlerPtr</a>
encoder, <br /> int
compression)<br /> </pre><p>Create a buffered output for
the progressive saving of a file If filename is “-' then we use stdout
as the output. Automatic support for ZLIB/Compress compressed document is
provided by default if found at compile-time. TODO: currently if
compression is set, the library only support writing to a local
file.</p> <div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>URI
:</span></td><td>a
C string containing the URI or
filename</td></tr><tr><td><span
class=”term“>encoder
:</span></td><td>the
encoding converter or
NULL</td></tr><tr><td><span
class=”term“>compression
:</span></td><td>the
compression ration (0 none, 9
max).</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
new output or
NULL</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferCreateIO“
id=”xmlOutputBufferCreateIO“></a>Function:
xmlOutputBufferCreateIO</h3><pre class=”programlisting“><a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
xmlOutputBufferCreateIO (<a
href=”libxml-xmlIO.html#xmlOutputWriteCallback“>xmlOutputWriteCallback</a>
iowrite, <br /> <a
href=”libxml-xmlIO.html#xmlOutputCloseCallback“>xmlOutputCloseCallback</a>
ioclose, <br /> void *
ioctx, <br /> <a
href=”libxml-encoding.html#xmlCharEncodingHandlerPtr“>xmlCharEncodingHandlerPtr</a>
encoder)<br /> </pre><p>Create a buffered output for the
progressive saving to an I/O handler</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>iowrite
:</span></td><td>an
I/O write function</td></tr><tr><td><span
class=”term“>ioclose
:</span></td><td>an
I/O close function</td></tr><tr><td><span
class=”term“>ioctx
:</span></td><td>an
I/O handler</td></tr><tr><td><span
class=”term“>encoder
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
new parser output or
NULL</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferFlush“
id=”xmlOutputBufferFlush“></a>Function:
xmlOutputBufferFlush</h3><pre class=”programlisting“>int
xmlOutputBufferFlush (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out)<br /> </pre><p>flushes the output I/O
channel</p> <div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>a
buffered output</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
number of byte written or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferGetContent“
id=”xmlOutputBufferGetContent“></a>Function:
xmlOutputBufferGetContent</h3><pre class=”programlisting“>const
<a href=”libxml-xmlstring.html#xmlChar“>xmlChar</a> *
xmlOutputBufferGetContent (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out)<br /> </pre><p>Gives a pointer to the data currently
held in the output buffer</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>an
<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a></td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>a
pointer to the data or NULL in case of
error</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferGetSize“
id=”xmlOutputBufferGetSize“></a>Function:
xmlOutputBufferGetSize</h3><pre class=”programlisting“>size_t
xmlOutputBufferGetSize (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out)<br /> </pre><p>Gives the length of the data
currently held in the output buffer</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>an
<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a></td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>0
in case or error or no data is held, the size
otherwise</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferWrite“
id=”xmlOutputBufferWrite“></a>Function:
xmlOutputBufferWrite</h3><pre class=”programlisting“>int
xmlOutputBufferWrite (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out, <br /> int len, <br
/> const char * buf)<br />
</pre><p>Write the content of the array in the output I/O
buffer This routine handle the I18N transcoding from internal UTF-8 The
buffer is lossless, i.e. will store in case of partial or delayed
writes.</p> <div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>a
buffered parser output</td></tr><tr><td><span
class=”term“>len
:</span></td><td>the
size in bytes of the
array.</td></tr><tr><td><span
class=”term“>buf
:</span></td><td>an
char array</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
number of chars immediately written, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferWriteEscape“
id=”xmlOutputBufferWriteEscape“></a>Function:
xmlOutputBufferWriteEscape</h3><pre class=”programlisting“>int
xmlOutputBufferWriteEscape (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out, <br /> const <a
href=”libxml-xmlstring.html#xmlChar“>xmlChar</a> * str, <br
/> <a
href=”libxml-encoding.html#xmlCharEncodingOutputFunc“>xmlCharEncodingOutputFunc</a>
escaping)<br /> </pre><p>Write the content of the string
in the output I/O buffer This routine escapes the <a
href=”libxml-SAX.html#characters“>characters</a> and then handle
the I18N transcoding from internal UTF-8 The buffer is lossless, i.e. will
store in case of partial or delayed writes.</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>a
buffered parser output</td></tr><tr><td><span
class=”term“>str
:</span></td><td>a
zero terminated UTF-8
string</td></tr><tr><td><span
class=”term“>escaping
:</span></td><td>an
optional escaping function (or
NULL)</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
number of chars immediately written, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=”xmlOutputBufferWriteString“
id=”xmlOutputBufferWriteString“></a>Function:
xmlOutputBufferWriteString</h3><pre class=”programlisting“>int
xmlOutputBufferWriteString (<a
href=”libxml-tree.html#xmlOutputBufferPtr“>xmlOutputBufferPtr</a>
out, <br /> const char *
str)<br /> </pre><p>Write the content of the string in
the output I/O buffer This routine handle the I18N transcoding from
internal UTF-8 The buffer is lossless, i.e. will store in case of partial
or delayed writes.</p> <div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>out
:</span></td><td>a
buffered parser output</td></tr><tr><td><span
class=”term“>str
:</span></td><td>a
zero terminated C string</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
number of chars immediately written, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=”xmlOutputCloseCallback“
id=”xmlOutputCloseCallback“></a>Function type:
xmlOutputCloseCallback</h3><pre class=”programlisting“>Function
type: xmlOutputCloseCallback int xmlOutputCloseCallback (void
* context) </pre><p>Callback used in the I/O Output API to
close the resource</p><div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>context
:</span></td><td>an
Output context</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>0
or -1 in case of
error</td></tr></tbody></table></div><br
/> <h3><a name=”xmlOutputMatchCallback“
id=”xmlOutputMatchCallback“></a>Function type:
xmlOutputMatchCallback</h3><pre class=”programlisting“>Function
type: xmlOutputMatchCallback int xmlOutputMatchCallback (char
const * filename) </pre><p>Callback used in the I/O Output API
to detect if the current handler can provide output functionality for this
resource.</p><div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>filename
:</span></td><td>the
filename or URI</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>1
if yes and 0 if another Output module should be
used</td></tr></tbody></table></div><br
/> <h3><a name=”xmlOutputOpenCallback“
id=”xmlOutputOpenCallback“></a>Function type:
xmlOutputOpenCallback</h3><pre class=”programlisting“>Function
type: xmlOutputOpenCallback void * xmlOutputOpenCallback (char
const * filename) </pre><p>Callback used in the I/O Output API
to open the resource</p><div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>filename
:</span></td><td>the
filename or URI</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>an
Output context or NULL in case or
error</td></tr></tbody></table></div><br
/> <h3><a name=”xmlOutputWriteCallback“
id=”xmlOutputWriteCallback“></a>Function type:
xmlOutputWriteCallback</h3><pre class=”programlisting“>Function
type: xmlOutputWriteCallback int xmlOutputWriteCallback (void
* context, <br /> const char *
buffer, <br /> int len)
</pre><p>Callback used in the I/O Output API to write to the
resource</p><div class=”variablelist“><table
border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>context
:</span></td><td>an
Output context</td></tr><tr><td><span
class=”term“>buffer
:</span></td><td>the
buffer of data to write</td></tr><tr><td><span
class=”term“>len
:</span></td><td>the
length of the buffer in
bytes</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
number of bytes written or -1 in case of
error</td></tr></tbody></table></div><br
/> <h3><a name=”xmlParserGetDirectory“
id=”xmlParserGetDirectory“></a>Function:
xmlParserGetDirectory</h3><pre class=”programlisting“>char *
xmlParserGetDirectory (const char * filename)<br />
</pre><p>lookup the directory for that file</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>filename
:</span></td><td>the
path to a file</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>a
new allocated string containing the directory, or
NULL.</td></tr></tbody></table></div><h3><a
name=”xmlParserInputBufferCreateFd“
id=”xmlParserInputBufferCreateFd“></a>Function:
xmlParserInputBufferCreateFd</h3><pre
class=”programlisting“><a
href=”libxml-tree.html#xmlParserInputBufferPtr“>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateFd (int fd, <br />
<a
href=”libxml-encoding.html#xmlCharEncoding“>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing for the input from a file descriptor</p>
<div class=”variablelist“><table border=”0“><col
align=”left“ /><tbody><tr><td><span
class=”term“>fd
:</span></td><td>a
file descriptor number</td></tr><tr><td><span
class=”term“>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=”xmlParserInputBufferCreateFile“
id=”xmlParserInputBufferCreateFile“></a>Function:
xmlParserInputBufferCreateFile</h3><pre
class=”programlisting“><a
href=”libxml-tree.html#xmlParserInputBufferPtr“>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateFile (FILE * file, <br />
<a
href=”libxml-encoding.html#xmlCharEncoding“>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing of a FILE * buffered C I/O</p> <div
class=”variablelist“><table border=”0“><col align=”left“
/><tbody><tr><td><span
class=”term“>file
:</span></td><td>a
FILE*</td></tr><tr><td><span
class=”term“>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=”term“>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=”xmlParserInputBufferCreateFilename“
id=”xmlParserInputBufferCreateFilename“></a>Function:
xmlParserInputBufferCreateFilename</h3><pre
class=”programlisting“><a
href=”libxml-tree.html#xmlParserInputBufferPtr“>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateFilename (const char * URI, <br />
<a
href=”libxml-encoding.html#xmlCharEncoding“>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing of a file If filename is ”-' then we use stdin
as the input. Automatic support for ZLIB/Compress compressed document is
provided by default if found at compile-time. Do an encoding check if enc
== <a
href=“libxml-encoding.html#XML_CHAR_ENCODING_NONE”>XML_CHAR_ENCODING_NONE</a></p>
<div class=“variablelist”><table border=“0”><col
align=“left” /><tbody><tr><td><span
class=“term”>URI
:</span></td><td>a
C string containing the URI or
filename</td></tr><tr><td><span
class=“term”>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferCreateIO”
id=“xmlParserInputBufferCreateIO”></a>Function:
xmlParserInputBufferCreateIO</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateIO (<a
href=“libxml-xmlIO.html#xmlInputReadCallback”>xmlInputReadCallback</a>
ioread, <br />
<a
href=“libxml-xmlIO.html#xmlInputCloseCallback”>xmlInputCloseCallback</a>
ioclose, <br />
void * ioctx, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing for the input from an I/O handler</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>ioread
:</span></td><td>an
I/O read function</td></tr><tr><td><span
class=“term”>ioclose
:</span></td><td>an
I/O close function</td></tr><tr><td><span
class=“term”>ioctx
:</span></td><td>an
I/O handler</td></tr><tr><td><span
class=“term”>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferCreateMem”
id=“xmlParserInputBufferCreateMem”></a>Function:
xmlParserInputBufferCreateMem</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateMem (const char * mem, <br />
int size, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing for the input from a memory area.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>mem
:</span></td><td>the
memory input</td></tr><tr><td><span
class=“term”>size
:</span></td><td>the
length of the memory
block</td></tr><tr><td><span
class=“term”>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferCreateStatic”
id=“xmlParserInputBufferCreateStatic”></a>Function:
xmlParserInputBufferCreateStatic</h3><pre
class=“programlisting”><a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
xmlParserInputBufferCreateStatic (const char * mem, <br />
int size, <br />
<a
href=“libxml-encoding.html#xmlCharEncoding”>xmlCharEncoding</a>
enc)<br /> </pre><p>Create a buffered parser input for
the progressive parsing for the input from an immutable memory area. This
will not copy the memory area to the buffer, but the memory is expected to
be available until the end of the parsing, this is useful for example when
using mmap'ed file.</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>mem
:</span></td><td>the
memory input</td></tr><tr><td><span
class=“term”>size
:</span></td><td>the
length of the memory
block</td></tr><tr><td><span
class=“term”>enc
:</span></td><td>the
charset encoding if known</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
new parser input or
NULL</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferGrow”
id=“xmlParserInputBufferGrow”></a>Function:
xmlParserInputBufferGrow</h3><pre class=“programlisting”>int
xmlParserInputBufferGrow (<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len)<br />
</pre><p>Grow up the content of the input buffer, the old data
are preserved This routine handle the I18N transcoding to internal UTF-8
This routine is used when operating the parser in normal (pull) mode TODO:
one should be able to remove one extra copy by copying directly onto
in->buffer or in->raw</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>in
:</span></td><td>a
buffered parser input</td></tr><tr><td><span
class=“term”>len
:</span></td><td>indicative
value of the amount of chars to
read</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of chars read and stored in the buffer, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferPush”
id=“xmlParserInputBufferPush”></a>Function:
xmlParserInputBufferPush</h3><pre class=“programlisting”>int
xmlParserInputBufferPush (<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len, <br
/> const char * buf)<br />
</pre><p>Push the content of the arry in the input buffer This
routine handle the I18N transcoding to internal UTF-8 This is used when
operating the parser in progressive (push) mode.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>in
:</span></td><td>a
buffered parser input</td></tr><tr><td><span
class=“term”>len
:</span></td><td>the
size in bytes of the
array.</td></tr><tr><td><span
class=“term”>buf
:</span></td><td>an
char array</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of chars read and stored in the buffer, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlParserInputBufferRead”
id=“xmlParserInputBufferRead”></a>Function:
xmlParserInputBufferRead</h3><pre class=“programlisting”>int
xmlParserInputBufferRead (<a
href=“libxml-tree.html#xmlParserInputBufferPtr”>xmlParserInputBufferPtr</a>
in, <br /> int len)<br />
</pre><p>Refresh the content of the input buffer, the old data
are considered consumed This routine handle the I18N transcoding to
internal UTF-8</p> <div class=“variablelist”><table
border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>in
:</span></td><td>a
buffered parser input</td></tr><tr><td><span
class=“term”>len
:</span></td><td>indicative
value of the amount of chars to
read</td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of chars read and stored in the buffer, or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlPopInputCallbacks”
id=“xmlPopInputCallbacks”></a>Function:
xmlPopInputCallbacks</h3><pre class=“programlisting”>int
xmlPopInputCallbacks (void)<br />
</pre><p>Clear the top input callback from the input stack.
this includes the compiled-in I/O.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>Returns
:</span></td><td>the
number of input callback registered or -1 in case of
error.</td></tr></tbody></table></div><h3><a
name=“xmlRegisterDefaultInputCallbacks”
id=“xmlRegisterDefaultInputCallbacks”></a>Function:
xmlRegisterDefaultInputCallbacks</h3><pre
class=“programlisting”>void xmlRegisterDefaultInputCallbacks
(void)<br /> </pre><p>Registers the default compiled-in
I/O handlers.</p> <h3><a
name=“xmlRegisterDefaultOutputCallbacks”
id=“xmlRegisterDefaultOutputCallbacks”></a>Function:
xmlRegisterDefaultOutputCallbacks</h3><pre
class=“programlisting”>void xmlRegisterDefaultOutputCallbacks
(void)<br /> </pre><p>Registers the default compiled-in
I/O handlers.</p> <h3><a name=“xmlRegisterHTTPPostCallbacks”
id=“xmlRegisterHTTPPostCallbacks”></a>Function:
xmlRegisterHTTPPostCallbacks</h3><pre
class=“programlisting”>void xmlRegisterHTTPPostCallbacks
(void)<br /> </pre><p>By default, libxml submits HTTP
output requests using the “PUT” method. Calling this method changes the
HTTP output method to use the “POST” method instead.</p>
<h3><a name=“xmlRegisterInputCallbacks”
id=“xmlRegisterInputCallbacks”></a>Function:
xmlRegisterInputCallbacks</h3><pre class=“programlisting”>int
xmlRegisterInputCallbacks (<a
href=“libxml-xmlIO.html#xmlInputMatchCallback”>xmlInputMatchCallback</a>
matchFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputOpenCallback”>xmlInputOpenCallback</a>
openFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputReadCallback”>xmlInputReadCallback</a>
readFunc, <br /> <a
href=“libxml-xmlIO.html#xmlInputCloseCallback”>xmlInputCloseCallback</a>
closeFunc)<br /> </pre><p>Register a new set of I/O
callback for handling parser input.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>matchFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlInputMatchCallback”>xmlInputMatchCallback</a></td></tr><tr><td><span
class=“term”>openFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlInputOpenCallback”>xmlInputOpenCallback</a></td></tr><tr><td><span
class=“term”>readFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlInputReadCallback”>xmlInputReadCallback</a></td></tr><tr><td><span
class=“term”>closeFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlInputCloseCallback”>xmlInputCloseCallback</a></td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
registered handler number or -1 in case of
error</td></tr></tbody></table></div><h3><a
name=“xmlRegisterOutputCallbacks”
id=“xmlRegisterOutputCallbacks”></a>Function:
xmlRegisterOutputCallbacks</h3><pre class=“programlisting”>int
xmlRegisterOutputCallbacks (<a
href=“libxml-xmlIO.html#xmlOutputMatchCallback”>xmlOutputMatchCallback</a>
matchFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputOpenCallback”>xmlOutputOpenCallback</a>
openFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputWriteCallback”>xmlOutputWriteCallback</a>
writeFunc, <br /> <a
href=“libxml-xmlIO.html#xmlOutputCloseCallback”>xmlOutputCloseCallback</a>
closeFunc)<br /> </pre><p>Register a new set of I/O
callback for handling output.</p> <div
class=“variablelist”><table border=“0”><col align=“left”
/><tbody><tr><td><span
class=“term”>matchFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlOutputMatchCallback”>xmlOutputMatchCallback</a></td></tr><tr><td><span
class=“term”>openFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlOutputOpenCallback”>xmlOutputOpenCallback</a></td></tr><tr><td><span
class=“term”>writeFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlOutputWriteCallback”>xmlOutputWriteCallback</a></td></tr><tr><td><span
class=“term”>closeFunc
:</span></td><td>the
<a
href=“libxml-xmlIO.html#xmlOutputCloseCallback”>xmlOutputCloseCallback</a></td></tr><tr><td><span
class=“term”>Returns
:</span></td><td>the
registered handler number or -1 in case of
error</td></tr></tbody></table></div><p><a
href=“../bugs.html”>Daniel
Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>