Civetweb API Reference

mg_download( host, port, use_ssl, error_buffer, error_buffer_size, fmt, ... );

Parameters

ParameterTypeDescription
hostconst char *The hostname or IP address of the server
portintThe port number on the server
use_sslintUse SSL if this value is not equal zero
error_bufferchar *Buffer to store an error message
error_buffer_sizesize_tSize of the error message buffer including the terminating NUL
fmtconst char *Format string specifying the remote command to execute
...variousParameters used in the format string

Return Value

TypeDescription
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() 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" );

Please note that although Civetweb supports both IPv4 and IPv6 communication that IPv6 addressing is only available if it was enabled at compile time. When running an application it is possible to check if IPv6 support has been compiled in by using the mg_check_feature() function with the parameter USE_IPV6.

See Also