Merge pull request #10067 from ramboman/fix-proxy-nix

`nix`: Fix `haveInternet` to check for proxy
This commit is contained in:
Théophane Hufschmitt 2024-02-23 11:06:36 +01:00 committed by GitHub
commit accae60e77
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -32,6 +32,24 @@ void chrootHelper(int argc, char * * argv);
namespace nix {
static bool haveProxyEnvironmentVariables()
{
static const std::vector<std::string> proxyVariables = {
"http_proxy",
"https_proxy",
"ftp_proxy",
"HTTP_PROXY",
"HTTPS_PROXY",
"FTP_PROXY"
};
for (auto & proxyVariable: proxyVariables) {
if (getEnv(proxyVariable).has_value()) {
return true;
}
}
return false;
}
/* Check if we have a non-loopback/link-local network interface. */
static bool haveInternet()
{
@ -55,6 +73,8 @@ static bool haveInternet()
}
}
if (haveProxyEnvironmentVariables()) return true;
return false;
}