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