-
Notifications
You must be signed in to change notification settings - Fork 222
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use libcurl for HTTP transfers #218
Draft
gonosztopi
wants to merge
10
commits into
amule-project:master
Choose a base branch
from
gonosztopi:pr/libcurl
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Commits on Sep 24, 2020
-
curl: Initial implementation using libcurl for HTTP download
Advantage of libcurl over wxHTTP is that we get HTTPS support out of the box. Disadvantage is it being another dependency. Therefore using libcurl is optional now, but strongly encouraged. Since HTTP download was the last piece of network functions not replaced by Boost.Asio, using libcurl together with boost makes it possible to forget wxWidgets networking completely.
Configuration menu - View commit details
-
Copy full SHA for aeaf043 - Browse repository at this point
Copy the full SHA aeaf043View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74d5e14 - Browse repository at this point
Copy the full SHA 74d5e14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8f38185 - Browse repository at this point
Copy the full SHA 8f38185View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8231e95 - Browse repository at this point
Copy the full SHA 8231e95View commit details
Commits on Sep 25, 2020
-
Minimum required libcurl version is now 7.32.0, required by CURLOPT_XFERINFOFUNCTION. Since it's already seven years old, we're not planning to support older versions.
Configuration menu - View commit details
-
Copy full SHA for 9f9ed79 - Browse repository at this point
Copy the full SHA 9f9ed79View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ebe232 - Browse repository at this point
Copy the full SHA 5ebe232View commit details -
curl: Print transfer summary after successful download
This is mainly a demonstration of how we can select new functionality if available. First, we have to check the compile-time headers version whether they have the new functionality or not, to be able to compile it in. Then, we have to check the library version at runtime because that might very well be different from what we used for compilation. If both checks succeed then and only then can we use the new interface. In all other cases we need to revert to use the old interface.
Configuration menu - View commit details
-
Copy full SHA for a87822e - Browse repository at this point
Copy the full SHA a87822eView commit details
Commits on Oct 1, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 26899d7 - Browse repository at this point
Copy the full SHA 26899d7View commit details
Commits on Oct 12, 2020
-
curl: Added support for cancelling an ongoing transfer
We use the progress callback to periodically check whether the current download is requested to be cancelled (i.e. the user pressed the 'Cancel' button, or the application is exiting). That requires that we always have a progress callback installed, therefore the minimum required libcurl version is lowered to 7.19.1.
Configuration menu - View commit details
-
Copy full SHA for 34a2941 - Browse repository at this point
Copy the full SHA 34a2941View commit details
Commits on Oct 29, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 71e56dd - Browse repository at this point
Copy the full SHA 71e56ddView commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.