  
    
    
    
    
    
    
    
  
  
    
      
        
          
libxml2-nanoftp.html            
Prev          
        
        
          
general.html            
Up          
        
        
          
index.html            
Home          
        
        
          
libxml2-parser.html            
Next          
        
        
libxml2 Reference Manual      
    
    
      
nanohttp    
    
nanohttp - minimal HTTP implementation
    
minimal HTTP implementation allowing to fetch resources like external subset. 
    
Author(s): Daniel Veillard 
    
      
Synopsis
      
int	#xmlNanoHTTPReadxmlNanoHTTPRead 			(void * ctx, 					 void * dest, 					 int len);
int	
#xmlNanoHTTPSavexmlNanoHTTPSave 			(void * ctxt, 					 const char * filename);
const char *	
#xmlNanoHTTPRedirxmlNanoHTTPRedir 	(void * ctx);
const char *	
#xmlNanoHTTPAuthHeaderxmlNanoHTTPAuthHeader 	(void * ctx);
int	
#xmlNanoHTTPFetchxmlNanoHTTPFetch 		(const char * URL, 					 const char * filename, 					 char ** contentType);
int	
#xmlNanoHTTPContentLengthxmlNanoHTTPContentLength 	(void * ctx);
const char *	
#xmlNanoHTTPMimeTypexmlNanoHTTPMimeType 	(void * ctx);
void	
#xmlNanoHTTPClosexmlNanoHTTPClose 		(void * ctx);
void	
#xmlNanoHTTPCleanupxmlNanoHTTPCleanup 		(void);
void *	
#xmlNanoHTTPMethodxmlNanoHTTPMethod 		(const char * URL, 					 const char * method, 					 const char * input, 					 char ** contentType, 					 const char * headers, 					 int ilen);
void	
#xmlNanoHTTPInitxmlNanoHTTPInit 			(void);
void *	
#xmlNanoHTTPOpenxmlNanoHTTPOpen 			(const char * URL, 					 char ** contentType);
void *	
#xmlNanoHTTPOpenRedirxmlNanoHTTPOpenRedir 		(const char * URL, 					 char ** contentType, 					 char ** redir);
void *	
#xmlNanoHTTPMethodRedirxmlNanoHTTPMethodRedir 		(const char * URL, 					 const char * method, 					 const char * input, 					 char ** contentType, 					 char ** redir, 					 const char * headers, 					 int ilen);
void	
#xmlNanoHTTPScanProxyxmlNanoHTTPScanProxy 		(const char * URL);
const char *	
#xmlNanoHTTPEncodingxmlNanoHTTPEncoding 	(void * ctx);
int	
#xmlNanoHTTPReturnCodexmlNanoHTTPReturnCode 		(void * ctx);
    
    
      
Description
    
    
      
Details
      
        
xmlNanoHTTPAuthHeader ()
const char *	xmlNanoHTTPAuthHeader	(void * ctx)Get the authentication header of an HTTP context
ctx: the HTTP context Returns: the stashed value of the WWW-Authenticate or Proxy-Authenticate header.         
        
xmlNanoHTTPCleanup ()
void	xmlNanoHTTPCleanup		(void)Cleanup the HTTP protocol layer.
        
        
xmlNanoHTTPClose ()
void	xmlNanoHTTPClose		(void * ctx)This function closes an HTTP context, it ends up the connection and free all data related to it.
ctx: the HTTP context         
        
xmlNanoHTTPContentLength ()
int	xmlNanoHTTPContentLength	(void * ctx)Provides the specified content length from the HTTP header.
ctx: the HTTP context Returns: the specified content length from the HTTP header. Note that a value of -1 indicates that the content length element was not included in the response header.         
        
xmlNanoHTTPEncoding ()
const char *	xmlNanoHTTPEncoding	(void * ctx)Provides the specified encoding if specified in the HTTP headers.
ctx: the HTTP context Returns: the specified encoding or NULL if not available         
        
xmlNanoHTTPFetch ()
int	xmlNanoHTTPFetch		(const char * URL, 					 const char * filename, 					 char ** contentType)This function try to fetch the indicated resource via HTTP GET and save it's content in the file.
URL: The URL to load filename: the filename where the content should be saved contentType: if available the Content-Type information will be returned at that location Returns: -1 in case of failure, 0 incase of success. The contentType, if provided must be freed by the caller         
        
xmlNanoHTTPInit ()
void	xmlNanoHTTPInit			(void)Initialize the HTTP protocol layer. Currently it just checks for proxy informations
        
        
xmlNanoHTTPMethod ()
void *	xmlNanoHTTPMethod		(const char * URL, 					 const char * method, 					 const char * input, 					 char ** contentType, 					 const char * headers, 					 int ilen)This function try to open a connection to the indicated resource via HTTP using the given @method, adding the given extra headers and the input buffer for the request content.
URL: The URL to load method: the HTTP method to use input: the input string if any contentType: the Content-Type information IN and OUT headers: the extra headers ilen: input length Returns: NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller         
        
xmlNanoHTTPMethodRedir ()
void *	xmlNanoHTTPMethodRedir		(const char * URL, 					 const char * method, 					 const char * input, 					 char ** contentType, 					 char ** redir, 					 const char * headers, 					 int ilen)This function try to open a connection to the indicated resource via HTTP using the given @method, adding the given extra headers and the input buffer for the request content.
URL: The URL to load method: the HTTP method to use input: the input string if any contentType: the Content-Type information IN and OUT redir: the redirected URL OUT headers: the extra headers ilen: input length Returns: NULL in case of failure, otherwise a request handler. The contentType, or redir, if provided must be freed by the caller         
        
xmlNanoHTTPMimeType ()
const char *	xmlNanoHTTPMimeType	(void * ctx)Provides the specified Mime-Type if specified in the HTTP headers.
ctx: the HTTP context Returns: the specified Mime-Type or NULL if not available         
        
xmlNanoHTTPOpen ()
void *	xmlNanoHTTPOpen			(const char * URL, 					 char ** contentType)This function try to open a connection to the indicated resource via HTTP GET.
URL: The URL to load contentType: if available the Content-Type information will be returned at that location Returns: NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller         
        
xmlNanoHTTPOpenRedir ()
void *	xmlNanoHTTPOpenRedir		(const char * URL, 					 char ** contentType, 					 char ** redir)This function try to open a connection to the indicated resource via HTTP GET.
URL: The URL to load contentType: if available the Content-Type information will be returned at that location redir: if available the redirected URL will be returned Returns: NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller         
        
xmlNanoHTTPRead ()
int	xmlNanoHTTPRead			(void * ctx, 					 void * dest, 					 int len)This function tries to read @len bytes from the existing HTTP connection and saves them in @dest. This is a blocking call.
ctx: the HTTP context dest: a buffer len: the buffer length Returns: the number of byte read. 0 is an indication of an end of connection. -1 indicates a parameter error.         
        
xmlNanoHTTPRedir ()
const char *	xmlNanoHTTPRedir	(void * ctx)Provides the specified redirection URL if available from the HTTP header.
ctx: the HTTP context Returns: the specified redirection URL or NULL if not redirected.         
        
xmlNanoHTTPReturnCode ()
int	xmlNanoHTTPReturnCode		(void * ctx)Get the latest HTTP return code received
ctx: the HTTP context Returns: the HTTP return code for the request.         
        
xmlNanoHTTPSave ()
int	xmlNanoHTTPSave			(void * ctxt, 					 const char * filename)This function saves the output of the HTTP transaction to a file It closes and free the context at the end
ctxt: the HTTP context filename: the filename where the content should be saved Returns: -1 in case of failure, 0 incase of success.         
        
xmlNanoHTTPScanProxy ()
void	xmlNanoHTTPScanProxy		(const char * URL)(Re)Initialize the HTTP Proxy context by parsing the URL and finding the protocol host port it indicates. Should be like http://myproxy/ or http://myproxy:3128/ A NULL URL cleans up proxy informations.
URL: The proxy URL used to initialize the proxy context         
      
    
  
