diff options
author | ShadowNinja <shadowninja@minetest.net> | 2014-09-14 20:58:21 -0400 |
---|---|---|
committer | ShadowNinja <shadowninja@minetest.net> | 2014-09-18 21:54:23 -0400 |
commit | 8852333eb3042580592ade478e5def20f8ed5d4c (patch) | |
tree | f7fcd6614a7e456cbe211410fe43fa417405da6c | |
parent | 86a3c8ce566f28112dc032aa48c40e12fde97be2 (diff) | |
download | minetest-8852333eb3042580592ade478e5def20f8ed5d4c.tar.gz minetest-8852333eb3042580592ade478e5def20f8ed5d4c.tar.bz2 minetest-8852333eb3042580592ade478e5def20f8ed5d4c.zip |
Use configured bind_address for HTTPFetch
-rw-r--r-- | src/defaultsettings.cpp | 2 | ||||
-rw-r--r-- | src/httpfetch.cpp | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp index 22e7b4dfa..ccde6b577 100644 --- a/src/defaultsettings.cpp +++ b/src/defaultsettings.cpp @@ -189,7 +189,7 @@ void set_default_settings(Settings *settings) settings->setDefault("workaround_window_size","5"); settings->setDefault("max_packets_per_iteration","1024"); settings->setDefault("port", "30000"); - settings->setDefault("bind_address",""); + settings->setDefault("bind_address", ""); settings->setDefault("default_game", "minetest"); settings->setDefault("motd", ""); settings->setDefault("max_users", "15"); diff --git a/src/httpfetch.cpp b/src/httpfetch.cpp index f61dbbf71..47e33480b 100644 --- a/src/httpfetch.cpp +++ b/src/httpfetch.cpp @@ -221,6 +221,11 @@ HTTPFetchOngoing::HTTPFetchOngoing(HTTPFetchRequest request_, CurlHandlePool *po curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1); curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 1); + std::string bind_address = g_settings->get("bind_address"); + if (!bind_address.empty()) { + curl_easy_setopt(curl, CURLOPT_INTERFACE, bind_address.c_str()); + } + #if LIBCURL_VERSION_NUM >= 0x071304 // Restrict protocols so that curl vulnerabilities in // other protocols don't affect us. |