Paul Cercueil / libxml2

Dependents:   libiio

Committer:
pcercuei
Date:
Thu Aug 25 10:05:35 2016 +0000
Revision:
0:03b5121a232e
Add basic C files of libxml2 2.9.4

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pcercuei 0:03b5121a232e 1 /*
pcercuei 0:03b5121a232e 2 * Summary: interface for the I/O interfaces used by the parser
pcercuei 0:03b5121a232e 3 * Description: interface for the I/O interfaces used by the parser
pcercuei 0:03b5121a232e 4 *
pcercuei 0:03b5121a232e 5 * Copy: See Copyright for the status of this software.
pcercuei 0:03b5121a232e 6 *
pcercuei 0:03b5121a232e 7 * Author: Daniel Veillard
pcercuei 0:03b5121a232e 8 */
pcercuei 0:03b5121a232e 9
pcercuei 0:03b5121a232e 10 #ifndef __XML_IO_H__
pcercuei 0:03b5121a232e 11 #define __XML_IO_H__
pcercuei 0:03b5121a232e 12
pcercuei 0:03b5121a232e 13 #include <stdio.h>
pcercuei 0:03b5121a232e 14 #include <libxml/xmlversion.h>
pcercuei 0:03b5121a232e 15
pcercuei 0:03b5121a232e 16 #ifdef __cplusplus
pcercuei 0:03b5121a232e 17 extern "C" {
pcercuei 0:03b5121a232e 18 #endif
pcercuei 0:03b5121a232e 19
pcercuei 0:03b5121a232e 20 /*
pcercuei 0:03b5121a232e 21 * Those are the functions and datatypes for the parser input
pcercuei 0:03b5121a232e 22 * I/O structures.
pcercuei 0:03b5121a232e 23 */
pcercuei 0:03b5121a232e 24
pcercuei 0:03b5121a232e 25 /**
pcercuei 0:03b5121a232e 26 * xmlInputMatchCallback:
pcercuei 0:03b5121a232e 27 * @filename: the filename or URI
pcercuei 0:03b5121a232e 28 *
pcercuei 0:03b5121a232e 29 * Callback used in the I/O Input API to detect if the current handler
pcercuei 0:03b5121a232e 30 * can provide input fonctionnalities for this resource.
pcercuei 0:03b5121a232e 31 *
pcercuei 0:03b5121a232e 32 * Returns 1 if yes and 0 if another Input module should be used
pcercuei 0:03b5121a232e 33 */
pcercuei 0:03b5121a232e 34 typedef int (XMLCALL *xmlInputMatchCallback) (char const *filename);
pcercuei 0:03b5121a232e 35 /**
pcercuei 0:03b5121a232e 36 * xmlInputOpenCallback:
pcercuei 0:03b5121a232e 37 * @filename: the filename or URI
pcercuei 0:03b5121a232e 38 *
pcercuei 0:03b5121a232e 39 * Callback used in the I/O Input API to open the resource
pcercuei 0:03b5121a232e 40 *
pcercuei 0:03b5121a232e 41 * Returns an Input context or NULL in case or error
pcercuei 0:03b5121a232e 42 */
pcercuei 0:03b5121a232e 43 typedef void * (XMLCALL *xmlInputOpenCallback) (char const *filename);
pcercuei 0:03b5121a232e 44 /**
pcercuei 0:03b5121a232e 45 * xmlInputReadCallback:
pcercuei 0:03b5121a232e 46 * @context: an Input context
pcercuei 0:03b5121a232e 47 * @buffer: the buffer to store data read
pcercuei 0:03b5121a232e 48 * @len: the length of the buffer in bytes
pcercuei 0:03b5121a232e 49 *
pcercuei 0:03b5121a232e 50 * Callback used in the I/O Input API to read the resource
pcercuei 0:03b5121a232e 51 *
pcercuei 0:03b5121a232e 52 * Returns the number of bytes read or -1 in case of error
pcercuei 0:03b5121a232e 53 */
pcercuei 0:03b5121a232e 54 typedef int (XMLCALL *xmlInputReadCallback) (void * context, char * buffer, int len);
pcercuei 0:03b5121a232e 55 /**
pcercuei 0:03b5121a232e 56 * xmlInputCloseCallback:
pcercuei 0:03b5121a232e 57 * @context: an Input context
pcercuei 0:03b5121a232e 58 *
pcercuei 0:03b5121a232e 59 * Callback used in the I/O Input API to close the resource
pcercuei 0:03b5121a232e 60 *
pcercuei 0:03b5121a232e 61 * Returns 0 or -1 in case of error
pcercuei 0:03b5121a232e 62 */
pcercuei 0:03b5121a232e 63 typedef int (XMLCALL *xmlInputCloseCallback) (void * context);
pcercuei 0:03b5121a232e 64
pcercuei 0:03b5121a232e 65 #ifdef LIBXML_OUTPUT_ENABLED
pcercuei 0:03b5121a232e 66 /*
pcercuei 0:03b5121a232e 67 * Those are the functions and datatypes for the library output
pcercuei 0:03b5121a232e 68 * I/O structures.
pcercuei 0:03b5121a232e 69 */
pcercuei 0:03b5121a232e 70
pcercuei 0:03b5121a232e 71 /**
pcercuei 0:03b5121a232e 72 * xmlOutputMatchCallback:
pcercuei 0:03b5121a232e 73 * @filename: the filename or URI
pcercuei 0:03b5121a232e 74 *
pcercuei 0:03b5121a232e 75 * Callback used in the I/O Output API to detect if the current handler
pcercuei 0:03b5121a232e 76 * can provide output fonctionnalities for this resource.
pcercuei 0:03b5121a232e 77 *
pcercuei 0:03b5121a232e 78 * Returns 1 if yes and 0 if another Output module should be used
pcercuei 0:03b5121a232e 79 */
pcercuei 0:03b5121a232e 80 typedef int (XMLCALL *xmlOutputMatchCallback) (char const *filename);
pcercuei 0:03b5121a232e 81 /**
pcercuei 0:03b5121a232e 82 * xmlOutputOpenCallback:
pcercuei 0:03b5121a232e 83 * @filename: the filename or URI
pcercuei 0:03b5121a232e 84 *
pcercuei 0:03b5121a232e 85 * Callback used in the I/O Output API to open the resource
pcercuei 0:03b5121a232e 86 *
pcercuei 0:03b5121a232e 87 * Returns an Output context or NULL in case or error
pcercuei 0:03b5121a232e 88 */
pcercuei 0:03b5121a232e 89 typedef void * (XMLCALL *xmlOutputOpenCallback) (char const *filename);
pcercuei 0:03b5121a232e 90 /**
pcercuei 0:03b5121a232e 91 * xmlOutputWriteCallback:
pcercuei 0:03b5121a232e 92 * @context: an Output context
pcercuei 0:03b5121a232e 93 * @buffer: the buffer of data to write
pcercuei 0:03b5121a232e 94 * @len: the length of the buffer in bytes
pcercuei 0:03b5121a232e 95 *
pcercuei 0:03b5121a232e 96 * Callback used in the I/O Output API to write to the resource
pcercuei 0:03b5121a232e 97 *
pcercuei 0:03b5121a232e 98 * Returns the number of bytes written or -1 in case of error
pcercuei 0:03b5121a232e 99 */
pcercuei 0:03b5121a232e 100 typedef int (XMLCALL *xmlOutputWriteCallback) (void * context, const char * buffer,
pcercuei 0:03b5121a232e 101 int len);
pcercuei 0:03b5121a232e 102 /**
pcercuei 0:03b5121a232e 103 * xmlOutputCloseCallback:
pcercuei 0:03b5121a232e 104 * @context: an Output context
pcercuei 0:03b5121a232e 105 *
pcercuei 0:03b5121a232e 106 * Callback used in the I/O Output API to close the resource
pcercuei 0:03b5121a232e 107 *
pcercuei 0:03b5121a232e 108 * Returns 0 or -1 in case of error
pcercuei 0:03b5121a232e 109 */
pcercuei 0:03b5121a232e 110 typedef int (XMLCALL *xmlOutputCloseCallback) (void * context);
pcercuei 0:03b5121a232e 111 #endif /* LIBXML_OUTPUT_ENABLED */
pcercuei 0:03b5121a232e 112
pcercuei 0:03b5121a232e 113 #ifdef __cplusplus
pcercuei 0:03b5121a232e 114 }
pcercuei 0:03b5121a232e 115 #endif
pcercuei 0:03b5121a232e 116
pcercuei 0:03b5121a232e 117 #include <libxml/globals.h>
pcercuei 0:03b5121a232e 118 #include <libxml/tree.h>
pcercuei 0:03b5121a232e 119 #include <libxml/parser.h>
pcercuei 0:03b5121a232e 120 #include <libxml/encoding.h>
pcercuei 0:03b5121a232e 121
pcercuei 0:03b5121a232e 122 #ifdef __cplusplus
pcercuei 0:03b5121a232e 123 extern "C" {
pcercuei 0:03b5121a232e 124 #endif
pcercuei 0:03b5121a232e 125 struct _xmlParserInputBuffer {
pcercuei 0:03b5121a232e 126 void* context;
pcercuei 0:03b5121a232e 127 xmlInputReadCallback readcallback;
pcercuei 0:03b5121a232e 128 xmlInputCloseCallback closecallback;
pcercuei 0:03b5121a232e 129
pcercuei 0:03b5121a232e 130 xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
pcercuei 0:03b5121a232e 131
pcercuei 0:03b5121a232e 132 xmlBufPtr buffer; /* Local buffer encoded in UTF-8 */
pcercuei 0:03b5121a232e 133 xmlBufPtr raw; /* if encoder != NULL buffer for raw input */
pcercuei 0:03b5121a232e 134 int compressed; /* -1=unknown, 0=not compressed, 1=compressed */
pcercuei 0:03b5121a232e 135 int error;
pcercuei 0:03b5121a232e 136 unsigned long rawconsumed;/* amount consumed from raw */
pcercuei 0:03b5121a232e 137 };
pcercuei 0:03b5121a232e 138
pcercuei 0:03b5121a232e 139
pcercuei 0:03b5121a232e 140 #ifdef LIBXML_OUTPUT_ENABLED
pcercuei 0:03b5121a232e 141 struct _xmlOutputBuffer {
pcercuei 0:03b5121a232e 142 void* context;
pcercuei 0:03b5121a232e 143 xmlOutputWriteCallback writecallback;
pcercuei 0:03b5121a232e 144 xmlOutputCloseCallback closecallback;
pcercuei 0:03b5121a232e 145
pcercuei 0:03b5121a232e 146 xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
pcercuei 0:03b5121a232e 147
pcercuei 0:03b5121a232e 148 xmlBufPtr buffer; /* Local buffer encoded in UTF-8 or ISOLatin */
pcercuei 0:03b5121a232e 149 xmlBufPtr conv; /* if encoder != NULL buffer for output */
pcercuei 0:03b5121a232e 150 int written; /* total number of byte written */
pcercuei 0:03b5121a232e 151 int error;
pcercuei 0:03b5121a232e 152 };
pcercuei 0:03b5121a232e 153 #endif /* LIBXML_OUTPUT_ENABLED */
pcercuei 0:03b5121a232e 154
pcercuei 0:03b5121a232e 155 /*
pcercuei 0:03b5121a232e 156 * Interfaces for input
pcercuei 0:03b5121a232e 157 */
pcercuei 0:03b5121a232e 158 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 159 xmlCleanupInputCallbacks (void);
pcercuei 0:03b5121a232e 160
pcercuei 0:03b5121a232e 161 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 162 xmlPopInputCallbacks (void);
pcercuei 0:03b5121a232e 163
pcercuei 0:03b5121a232e 164 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 165 xmlRegisterDefaultInputCallbacks (void);
pcercuei 0:03b5121a232e 166 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 167 xmlAllocParserInputBuffer (xmlCharEncoding enc);
pcercuei 0:03b5121a232e 168
pcercuei 0:03b5121a232e 169 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 170 xmlParserInputBufferCreateFilename (const char *URI,
pcercuei 0:03b5121a232e 171 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 172 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 173 xmlParserInputBufferCreateFile (FILE *file,
pcercuei 0:03b5121a232e 174 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 175 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 176 xmlParserInputBufferCreateFd (int fd,
pcercuei 0:03b5121a232e 177 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 178 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 179 xmlParserInputBufferCreateMem (const char *mem, int size,
pcercuei 0:03b5121a232e 180 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 181 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 182 xmlParserInputBufferCreateStatic (const char *mem, int size,
pcercuei 0:03b5121a232e 183 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 184 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 185 xmlParserInputBufferCreateIO (xmlInputReadCallback ioread,
pcercuei 0:03b5121a232e 186 xmlInputCloseCallback ioclose,
pcercuei 0:03b5121a232e 187 void *ioctx,
pcercuei 0:03b5121a232e 188 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 189 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 190 xmlParserInputBufferRead (xmlParserInputBufferPtr in,
pcercuei 0:03b5121a232e 191 int len);
pcercuei 0:03b5121a232e 192 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 193 xmlParserInputBufferGrow (xmlParserInputBufferPtr in,
pcercuei 0:03b5121a232e 194 int len);
pcercuei 0:03b5121a232e 195 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 196 xmlParserInputBufferPush (xmlParserInputBufferPtr in,
pcercuei 0:03b5121a232e 197 int len,
pcercuei 0:03b5121a232e 198 const char *buf);
pcercuei 0:03b5121a232e 199 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 200 xmlFreeParserInputBuffer (xmlParserInputBufferPtr in);
pcercuei 0:03b5121a232e 201 XMLPUBFUN char * XMLCALL
pcercuei 0:03b5121a232e 202 xmlParserGetDirectory (const char *filename);
pcercuei 0:03b5121a232e 203
pcercuei 0:03b5121a232e 204 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 205 xmlRegisterInputCallbacks (xmlInputMatchCallback matchFunc,
pcercuei 0:03b5121a232e 206 xmlInputOpenCallback openFunc,
pcercuei 0:03b5121a232e 207 xmlInputReadCallback readFunc,
pcercuei 0:03b5121a232e 208 xmlInputCloseCallback closeFunc);
pcercuei 0:03b5121a232e 209
pcercuei 0:03b5121a232e 210 xmlParserInputBufferPtr
pcercuei 0:03b5121a232e 211 __xmlParserInputBufferCreateFilename(const char *URI,
pcercuei 0:03b5121a232e 212 xmlCharEncoding enc);
pcercuei 0:03b5121a232e 213
pcercuei 0:03b5121a232e 214 #ifdef LIBXML_OUTPUT_ENABLED
pcercuei 0:03b5121a232e 215 /*
pcercuei 0:03b5121a232e 216 * Interfaces for output
pcercuei 0:03b5121a232e 217 */
pcercuei 0:03b5121a232e 218 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 219 xmlCleanupOutputCallbacks (void);
pcercuei 0:03b5121a232e 220 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 221 xmlRegisterDefaultOutputCallbacks(void);
pcercuei 0:03b5121a232e 222 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 223 xmlAllocOutputBuffer (xmlCharEncodingHandlerPtr encoder);
pcercuei 0:03b5121a232e 224
pcercuei 0:03b5121a232e 225 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 226 xmlOutputBufferCreateFilename (const char *URI,
pcercuei 0:03b5121a232e 227 xmlCharEncodingHandlerPtr encoder,
pcercuei 0:03b5121a232e 228 int compression);
pcercuei 0:03b5121a232e 229
pcercuei 0:03b5121a232e 230 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 231 xmlOutputBufferCreateFile (FILE *file,
pcercuei 0:03b5121a232e 232 xmlCharEncodingHandlerPtr encoder);
pcercuei 0:03b5121a232e 233
pcercuei 0:03b5121a232e 234 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 235 xmlOutputBufferCreateBuffer (xmlBufferPtr buffer,
pcercuei 0:03b5121a232e 236 xmlCharEncodingHandlerPtr encoder);
pcercuei 0:03b5121a232e 237
pcercuei 0:03b5121a232e 238 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 239 xmlOutputBufferCreateFd (int fd,
pcercuei 0:03b5121a232e 240 xmlCharEncodingHandlerPtr encoder);
pcercuei 0:03b5121a232e 241
pcercuei 0:03b5121a232e 242 XMLPUBFUN xmlOutputBufferPtr XMLCALL
pcercuei 0:03b5121a232e 243 xmlOutputBufferCreateIO (xmlOutputWriteCallback iowrite,
pcercuei 0:03b5121a232e 244 xmlOutputCloseCallback ioclose,
pcercuei 0:03b5121a232e 245 void *ioctx,
pcercuei 0:03b5121a232e 246 xmlCharEncodingHandlerPtr encoder);
pcercuei 0:03b5121a232e 247
pcercuei 0:03b5121a232e 248 /* Couple of APIs to get the output without digging into the buffers */
pcercuei 0:03b5121a232e 249 XMLPUBFUN const xmlChar * XMLCALL
pcercuei 0:03b5121a232e 250 xmlOutputBufferGetContent (xmlOutputBufferPtr out);
pcercuei 0:03b5121a232e 251 XMLPUBFUN size_t XMLCALL
pcercuei 0:03b5121a232e 252 xmlOutputBufferGetSize (xmlOutputBufferPtr out);
pcercuei 0:03b5121a232e 253
pcercuei 0:03b5121a232e 254 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 255 xmlOutputBufferWrite (xmlOutputBufferPtr out,
pcercuei 0:03b5121a232e 256 int len,
pcercuei 0:03b5121a232e 257 const char *buf);
pcercuei 0:03b5121a232e 258 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 259 xmlOutputBufferWriteString (xmlOutputBufferPtr out,
pcercuei 0:03b5121a232e 260 const char *str);
pcercuei 0:03b5121a232e 261 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 262 xmlOutputBufferWriteEscape (xmlOutputBufferPtr out,
pcercuei 0:03b5121a232e 263 const xmlChar *str,
pcercuei 0:03b5121a232e 264 xmlCharEncodingOutputFunc escaping);
pcercuei 0:03b5121a232e 265
pcercuei 0:03b5121a232e 266 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 267 xmlOutputBufferFlush (xmlOutputBufferPtr out);
pcercuei 0:03b5121a232e 268 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 269 xmlOutputBufferClose (xmlOutputBufferPtr out);
pcercuei 0:03b5121a232e 270
pcercuei 0:03b5121a232e 271 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 272 xmlRegisterOutputCallbacks (xmlOutputMatchCallback matchFunc,
pcercuei 0:03b5121a232e 273 xmlOutputOpenCallback openFunc,
pcercuei 0:03b5121a232e 274 xmlOutputWriteCallback writeFunc,
pcercuei 0:03b5121a232e 275 xmlOutputCloseCallback closeFunc);
pcercuei 0:03b5121a232e 276
pcercuei 0:03b5121a232e 277 xmlOutputBufferPtr
pcercuei 0:03b5121a232e 278 __xmlOutputBufferCreateFilename(const char *URI,
pcercuei 0:03b5121a232e 279 xmlCharEncodingHandlerPtr encoder,
pcercuei 0:03b5121a232e 280 int compression);
pcercuei 0:03b5121a232e 281
pcercuei 0:03b5121a232e 282 #ifdef LIBXML_HTTP_ENABLED
pcercuei 0:03b5121a232e 283 /* This function only exists if HTTP support built into the library */
pcercuei 0:03b5121a232e 284 XMLPUBFUN void XMLCALL
pcercuei 0:03b5121a232e 285 xmlRegisterHTTPPostCallbacks (void );
pcercuei 0:03b5121a232e 286 #endif /* LIBXML_HTTP_ENABLED */
pcercuei 0:03b5121a232e 287
pcercuei 0:03b5121a232e 288 #endif /* LIBXML_OUTPUT_ENABLED */
pcercuei 0:03b5121a232e 289
pcercuei 0:03b5121a232e 290 XMLPUBFUN xmlParserInputPtr XMLCALL
pcercuei 0:03b5121a232e 291 xmlCheckHTTPInput (xmlParserCtxtPtr ctxt,
pcercuei 0:03b5121a232e 292 xmlParserInputPtr ret);
pcercuei 0:03b5121a232e 293
pcercuei 0:03b5121a232e 294 /*
pcercuei 0:03b5121a232e 295 * A predefined entity loader disabling network accesses
pcercuei 0:03b5121a232e 296 */
pcercuei 0:03b5121a232e 297 XMLPUBFUN xmlParserInputPtr XMLCALL
pcercuei 0:03b5121a232e 298 xmlNoNetExternalEntityLoader (const char *URL,
pcercuei 0:03b5121a232e 299 const char *ID,
pcercuei 0:03b5121a232e 300 xmlParserCtxtPtr ctxt);
pcercuei 0:03b5121a232e 301
pcercuei 0:03b5121a232e 302 /*
pcercuei 0:03b5121a232e 303 * xmlNormalizeWindowsPath is obsolete, don't use it.
pcercuei 0:03b5121a232e 304 * Check xmlCanonicPath in uri.h for a better alternative.
pcercuei 0:03b5121a232e 305 */
pcercuei 0:03b5121a232e 306 XMLPUBFUN xmlChar * XMLCALL
pcercuei 0:03b5121a232e 307 xmlNormalizeWindowsPath (const xmlChar *path);
pcercuei 0:03b5121a232e 308
pcercuei 0:03b5121a232e 309 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 310 xmlCheckFilename (const char *path);
pcercuei 0:03b5121a232e 311 /**
pcercuei 0:03b5121a232e 312 * Default 'file://' protocol callbacks
pcercuei 0:03b5121a232e 313 */
pcercuei 0:03b5121a232e 314 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 315 xmlFileMatch (const char *filename);
pcercuei 0:03b5121a232e 316 XMLPUBFUN void * XMLCALL
pcercuei 0:03b5121a232e 317 xmlFileOpen (const char *filename);
pcercuei 0:03b5121a232e 318 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 319 xmlFileRead (void * context,
pcercuei 0:03b5121a232e 320 char * buffer,
pcercuei 0:03b5121a232e 321 int len);
pcercuei 0:03b5121a232e 322 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 323 xmlFileClose (void * context);
pcercuei 0:03b5121a232e 324
pcercuei 0:03b5121a232e 325 /**
pcercuei 0:03b5121a232e 326 * Default 'http://' protocol callbacks
pcercuei 0:03b5121a232e 327 */
pcercuei 0:03b5121a232e 328 #ifdef LIBXML_HTTP_ENABLED
pcercuei 0:03b5121a232e 329 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 330 xmlIOHTTPMatch (const char *filename);
pcercuei 0:03b5121a232e 331 XMLPUBFUN void * XMLCALL
pcercuei 0:03b5121a232e 332 xmlIOHTTPOpen (const char *filename);
pcercuei 0:03b5121a232e 333 #ifdef LIBXML_OUTPUT_ENABLED
pcercuei 0:03b5121a232e 334 XMLPUBFUN void * XMLCALL
pcercuei 0:03b5121a232e 335 xmlIOHTTPOpenW (const char * post_uri,
pcercuei 0:03b5121a232e 336 int compression );
pcercuei 0:03b5121a232e 337 #endif /* LIBXML_OUTPUT_ENABLED */
pcercuei 0:03b5121a232e 338 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 339 xmlIOHTTPRead (void * context,
pcercuei 0:03b5121a232e 340 char * buffer,
pcercuei 0:03b5121a232e 341 int len);
pcercuei 0:03b5121a232e 342 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 343 xmlIOHTTPClose (void * context);
pcercuei 0:03b5121a232e 344 #endif /* LIBXML_HTTP_ENABLED */
pcercuei 0:03b5121a232e 345
pcercuei 0:03b5121a232e 346 /**
pcercuei 0:03b5121a232e 347 * Default 'ftp://' protocol callbacks
pcercuei 0:03b5121a232e 348 */
pcercuei 0:03b5121a232e 349 #ifdef LIBXML_FTP_ENABLED
pcercuei 0:03b5121a232e 350 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 351 xmlIOFTPMatch (const char *filename);
pcercuei 0:03b5121a232e 352 XMLPUBFUN void * XMLCALL
pcercuei 0:03b5121a232e 353 xmlIOFTPOpen (const char *filename);
pcercuei 0:03b5121a232e 354 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 355 xmlIOFTPRead (void * context,
pcercuei 0:03b5121a232e 356 char * buffer,
pcercuei 0:03b5121a232e 357 int len);
pcercuei 0:03b5121a232e 358 XMLPUBFUN int XMLCALL
pcercuei 0:03b5121a232e 359 xmlIOFTPClose (void * context);
pcercuei 0:03b5121a232e 360 #endif /* LIBXML_FTP_ENABLED */
pcercuei 0:03b5121a232e 361
pcercuei 0:03b5121a232e 362 #ifdef __cplusplus
pcercuei 0:03b5121a232e 363 }
pcercuei 0:03b5121a232e 364 #endif
pcercuei 0:03b5121a232e 365
pcercuei 0:03b5121a232e 366 #endif /* __XML_IO_H__ */
pcercuei 0:03b5121a232e 367