38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync/*
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Summary: minimal HTTP implementation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Description: minimal HTTP implementation allowing to fetch resources
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * like external subset.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Copy: See Copyright for the status of this software.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Author: Daniel Veillard
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifndef __NANO_HTTP_H__
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#define __NANO_HTTP_H__
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#include <libxml/xmlversion.h>
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef LIBXML_HTTP_ENABLED
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef __cplusplus
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncextern "C" {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPInit (void);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPCleanup (void);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPScanProxy (const char *URL);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN int XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPFetch (const char *URL,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *filename,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **contentType);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPMethod (const char *URL,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *method,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *input,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **contentType,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *headers,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int ilen);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPMethodRedir (const char *URL,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *method,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *input,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **contentType,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **redir,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *headers,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int ilen);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPOpen (const char *URL,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **contentType);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPOpenRedir (const char *URL,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **contentType,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char **redir);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN int XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPReturnCode (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN const char * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPAuthHeader (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN const char * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPRedir (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN int XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPContentLength( void * ctx );
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN const char * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPEncoding (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN const char * XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPMimeType (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN int XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPRead (void *ctx,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *dest,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int len);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef LIBXML_OUTPUT_ENABLED
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN int XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPSave (void *ctxt,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *filename);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_OUTPUT_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void XMLCALL
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNanoHTTPClose (void *ctx);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef __cplusplus
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync}
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_HTTP_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __NANO_HTTP_H__ */