aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/DownloadUtils.cpp6
-rw-r--r--src/plugins/MediaGeneric.cpp2
-rw-r--r--src/plugins/Youtube.cpp2
3 files changed, 6 insertions, 4 deletions
diff --git a/src/DownloadUtils.cpp b/src/DownloadUtils.cpp
index 5be1990..e546bd1 100644
--- a/src/DownloadUtils.cpp
+++ b/src/DownloadUtils.cpp
@@ -192,7 +192,7 @@ namespace QuickMedia {
}
// TODO: Add timeout
- DownloadResult download_to_string(const std::string &url, std::string &result, const std::vector<CommandArg> &additional_args, bool use_browser_useragent, bool fail_on_error, std::string *header, int download_limit) {
+ DownloadResult download_to_string(const std::string &url, std::string &result, const std::vector<CommandArg> &additional_args, bool use_browser_useragent, bool fail_on_error, bool cloudflare_bypass, std::string *header, int download_limit) {
result.clear();
sf::Clock timer;
std::vector<const char*> args;
@@ -204,10 +204,12 @@ namespace QuickMedia {
if(!arg.value.empty())
args.push_back(arg.value.c_str());
}
- if(use_browser_useragent) {
+ if(!cloudflare_bypass && use_browser_useragent) {
args.push_back("-H");
args.push_back(useragent_str);
}
+ if(cloudflare_bypass)
+ args.insert(args.end(), { "--tls-max", "1.1", "-A", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FSL 7.0.6" });
if(header)
args.push_back("-i");
args.push_back("--");
diff --git a/src/plugins/MediaGeneric.cpp b/src/plugins/MediaGeneric.cpp
index 11b0957..1f2389a 100644
--- a/src/plugins/MediaGeneric.cpp
+++ b/src/plugins/MediaGeneric.cpp
@@ -38,7 +38,7 @@ namespace QuickMedia {
args.push_back({ "-H", "referer: " + website_url });
std::string website_data;
- if(download_to_string(url, website_data, args, true) != DownloadResult::OK)
+ if(download_to_string(url, website_data, args, true, true, true) != DownloadResult::OK)
return PluginResult::NET_ERR;
if(website_data.empty())
diff --git a/src/plugins/Youtube.cpp b/src/plugins/Youtube.cpp
index 276fba5..24fd448 100644
--- a/src/plugins/Youtube.cpp
+++ b/src/plugins/Youtube.cpp
@@ -274,7 +274,7 @@ R"END(
for(int i = 0; i < max_redirects; ++i) {
std::string response_body;
std::string response_headers;
- download_to_string(playback_url, response_body, additional_args, true, true, &response_headers, 4096);
+ download_to_string(playback_url, response_body, additional_args, true, true, false, &response_headers, 4096);
std::string content_type = header_extract_value(response_headers, "content-type");
if(content_type.empty()) {