|
|
@ -29,6 +29,9 @@ void Setup::download(QString url) { |
|
|
|
|
|
|
|
|
|
|
|
auto version = util::read_file("/VERSION"); |
|
|
|
auto version = util::read_file("/VERSION"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct curl_slist *list = NULL; |
|
|
|
|
|
|
|
list = curl_slist_append(list, ("X-openpilot-serial: " + Hardware::get_serial()).c_str()); |
|
|
|
|
|
|
|
|
|
|
|
char tmpfile[] = "/tmp/installer_XXXXXX"; |
|
|
|
char tmpfile[] = "/tmp/installer_XXXXXX"; |
|
|
|
FILE *fp = fdopen(mkstemp(tmpfile), "w"); |
|
|
|
FILE *fp = fdopen(mkstemp(tmpfile), "w"); |
|
|
|
|
|
|
|
|
|
|
@ -38,6 +41,7 @@ void Setup::download(QString url) { |
|
|
|
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); |
|
|
|
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); |
|
|
|
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); |
|
|
|
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); |
|
|
|
curl_easy_setopt(curl, CURLOPT_USERAGENT, (USER_AGENT + version).c_str()); |
|
|
|
curl_easy_setopt(curl, CURLOPT_USERAGENT, (USER_AGENT + version).c_str()); |
|
|
|
|
|
|
|
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, list); |
|
|
|
|
|
|
|
|
|
|
|
int ret = curl_easy_perform(curl); |
|
|
|
int ret = curl_easy_perform(curl); |
|
|
|
|
|
|
|
|
|
|
@ -50,6 +54,7 @@ void Setup::download(QString url) { |
|
|
|
emit finished(false); |
|
|
|
emit finished(false); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
curl_slist_free_all(list); |
|
|
|
curl_easy_cleanup(curl); |
|
|
|
curl_easy_cleanup(curl); |
|
|
|
fclose(fp); |
|
|
|
fclose(fp); |
|
|
|
} |
|
|
|
} |
|
|
|