1ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
2ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Summary: minimal HTTP implementation
3ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Description: minimal HTTP implementation allowing to fetch resources
4ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *              like external subset.
5ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
6ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Copy: See Copyright for the status of this software.
7ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
8ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Author: Daniel Veillard
9ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
1094442ad4107000e6d49f9b85a46a591495a57632Selim Gurun
11ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifndef __NANO_HTTP_H__
12ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#define __NANO_HTTP_H__
13ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
14ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/xmlversion.h>
15ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
16ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_HTTP_ENABLED
17ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
18ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef __cplusplus
19ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projectextern "C" {
20ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
21ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source ProjectXMLPUBFUN void XMLCALL
22ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPInit		(void);
2394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
24ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPCleanup	(void);
2594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
26ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPScanProxy	(const char *URL);
2794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
28ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPFetch	(const char *URL,
29ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *filename,
30ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **contentType);
3194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void * XMLCALL
32ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPMethod	(const char *URL,
33ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *method,
34ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *input,
35ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **contentType,
36ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *headers,
37ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 int   ilen);
3894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void * XMLCALL
39ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPMethodRedir	(const char *URL,
40ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *method,
41ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *input,
42ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **contentType,
43ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **redir,
44ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *headers,
45ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 int   ilen);
4694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void * XMLCALL
47ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPOpen		(const char *URL,
48ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **contentType);
4994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void * XMLCALL
50ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPOpenRedir	(const char *URL,
51ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **contentType,
52ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 char **redir);
5394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
54ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPReturnCode	(void *ctx);
5594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN const char * XMLCALL
56ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPAuthHeader	(void *ctx);
57ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source ProjectXMLPUBFUN const char * XMLCALL
58ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPRedir	(void *ctx);
59ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source ProjectXMLPUBFUN int XMLCALL
60ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPContentLength( void * ctx );
61ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source ProjectXMLPUBFUN const char * XMLCALL
62ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPEncoding	(void *ctx);
63ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source ProjectXMLPUBFUN const char * XMLCALL
64ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPMimeType	(void *ctx);
6594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
66ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPRead		(void *ctx,
67ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 void *dest,
68ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 int len);
69ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_OUTPUT_ENABLED
7094442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
71ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPSave		(void *ctxt,
72ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project				 const char *filename);
73ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_OUTPUT_ENABLED */
7494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
75ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	xmlNanoHTTPClose	(void *ctx);
76ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef __cplusplus
77ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project}
78ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
79ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
80ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_HTTP_ENABLED */
81ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* __NANO_HTTP_H__ */
82