TAILQ_HEAD(transfers, pakfire_transfer) transfers;
};
-static int pakfire_url_is_absolute(const char* url) {
- if (pakfire_string_startswith(url, "https://"))
- return 1;
-
- if (pakfire_string_startswith(url, "http://"))
- return 1;
-
- if (pakfire_string_startswith(url, "file://"))
- return 1;
-
- return 0;
-}
-
static char* pakfire_url_join(const char* part1, const char* part2) {
char* url = NULL;
baseurl = NULL;
// Do not allow relative URLs when no mirrors are set
- if (!pakfire_url_is_absolute(url) && !(mirrors || baseurl)) {
+ if (!pakfire_string_is_url(url) && !(mirrors || baseurl)) {
ERROR(downloader->pakfire, "Relative URLs cannot be used without a baseurl and/or mirrorlist\n");
errno = EINVAL;
return NULL;
transfer->tries++;
// Simply set absolute URLs
- if (pakfire_url_is_absolute(transfer->url)) {
+ if (pakfire_string_is_url(transfer->url)) {
curl_easy_setopt(transfer->handle, CURLOPT_URL, transfer->url);
// Join path if we are using mirrors