|  | @@ -6,22 +6,35 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  | Parameter | Type | Description |
 | 
	
		
			
				|  |  |  | :--- | :--- | :--- |
 | 
	
		
			
				|  |  | -|**`host`**|`const char *`||
 | 
	
		
			
				|  |  | -|**`port`**|`int`||
 | 
	
		
			
				|  |  | -|**`use_ssl`**|`int`||
 | 
	
		
			
				|  |  | -|**`error_buffer`**|`char *`||
 | 
	
		
			
				|  |  | -|**`error_buffer_size`**|`size_t`||
 | 
	
		
			
				|  |  | -|**`fmt`**|`const char *`||
 | 
	
		
			
				|  |  | -|**`...`**|*various*||
 | 
	
		
			
				|  |  | +|**`host`**|`const char *`|The hostname or IP address of the server|
 | 
	
		
			
				|  |  | +|**`port`**|`int`|The port number on the server|
 | 
	
		
			
				|  |  | +|**`use_ssl`**|`int`|Use SSL if this value is not equal zero|
 | 
	
		
			
				|  |  | +|**`error_buffer`**|`char *`|Buffer to store an error message|
 | 
	
		
			
				|  |  | +|**`error_buffer_size`**|`size_t`|Size of the error message buffer including the terminating NUL|
 | 
	
		
			
				|  |  | +|**`fmt`**|`const char *`|Format string specifying the remote command to execute|
 | 
	
		
			
				|  |  | +|**`...`**|*various*|Parameters used in the format string|
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  ### Return Value
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  | Type | Description |
 | 
	
		
			
				|  |  |  | :--- | :--- |
 | 
	
		
			
				|  |  | -|`struct mg_connection *`||
 | 
	
		
			
				|  |  | +|`struct mg_connection *`|A pointer to the connection structure if successful and NULL otherwise|
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  ### Description
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +The `mg_download()` function is used to download data from a remote webserver. The server
 | 
	
		
			
				|  |  | +address can either be specified as a hostname or IP address and SSL can be used if
 | 
	
		
			
				|  |  | +needed. If the function succeeds, a pointer is returned to a connection structure.
 | 
	
		
			
				|  |  | +The connection must be closed with a call to the
 | 
	
		
			
				|  |  | +[`mg_close_connection()`](mg_close_connection.md) function.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +The format string is a format string from the `printf()` series of functions to specify
 | 
	
		
			
				|  |  | +the remote command. An example to get the main index page from Google is the following
 | 
	
		
			
				|  |  | +call:
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +`conn = mg_download( "google.com", 80, 0, ebuf, sizeof(ebuf),
 | 
	
		
			
				|  |  | +                     "%s", "GET / HTTP/1.0\r\nHost: google.com\r\n\r\n" );`
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  ### See Also
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  * [`mg_close_connection();`](mg_close_connection.md)
 |