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 19 extern "C" { 20 #endif 21 XMLPUBFUN void XMLCALL 22 xmlNanoHTTPInit (void); 23 XMLPUBFUN void XMLCALL 24 xmlNanoHTTPCleanup (void); 25 XMLPUBFUN void XMLCALL 26 xmlNanoHTTPScanProxy (const char *URL); 27 XMLPUBFUN int XMLCALL 28 xmlNanoHTTPFetch (const char *URL, 29 const char *filename, 30 char **contentType); 31 XMLPUBFUN 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); 38 XMLPUBFUN 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); 46 XMLPUBFUN void * XMLCALL 47 xmlNanoHTTPOpen (const char *URL, 48 char **contentType); 49 XMLPUBFUN void * XMLCALL 50 xmlNanoHTTPOpenRedir (const char *URL, 51 char **contentType, 52 char **redir); 53 XMLPUBFUN int XMLCALL 54 xmlNanoHTTPReturnCode (void *ctx); 55 XMLPUBFUN const char * XMLCALL 56 xmlNanoHTTPAuthHeader (void *ctx); 57 XMLPUBFUN const char * XMLCALL 58 xmlNanoHTTPRedir (void *ctx); 59 XMLPUBFUN int XMLCALL 60 xmlNanoHTTPContentLength( void * ctx ); 61 XMLPUBFUN const char * XMLCALL 62 xmlNanoHTTPEncoding (void *ctx); 63 XMLPUBFUN const char * XMLCALL 64 xmlNanoHTTPMimeType (void *ctx); 65 XMLPUBFUN int XMLCALL 66 xmlNanoHTTPRead (void *ctx, 67 void *dest, 68 int len); 69 #ifdef LIBXML_OUTPUT_ENABLED 70 XMLPUBFUN int XMLCALL 71 xmlNanoHTTPSave (void *ctxt, 72 const char *filename); 73 #endif /* LIBXML_OUTPUT_ENABLED */ 74 XMLPUBFUN void XMLCALL 75 xmlNanoHTTPClose (void *ctx); 76 #ifdef __cplusplus 77 } 78 #endif 79 80 #endif /* LIBXML_HTTP_ENABLED */ 81 #endif /* __NANO_HTTP_H__ */ 82