265b14d6b3
Warning: this will make existing curl command lines that use metalink to stop working. Reasons for removal: 1. We've found several security problems and issues involving the metalink support in curl. The issues are not detailed here. When working on those, it become apparent to the team that several of the problems are due to the system design, metalink library API and what the metalink RFC says. They are very hard to fix on the curl side only. 2. The metalink usage with curl was only very briefly documented and was not following the "normal" curl usage pattern in several ways, making it surprising and non-intuitive which could lead to further security issues. 3. The metalink library was last updated 6 years ago and wasn't so active the years before that either. An unmaintained library means there's a security problem waiting to happen. This is probably reason enough. 4. Metalink requires an XML parsing library, which is complex code (even the smaller alternatives) and to this day often gets security updates. 5. Metalink is not a widely used curl feature. In the 2020 curl user survey, only 1.4% of the responders said that they'd are using it. In 2021 that number was 1.2%. Searching the web also show very few traces of it being used, even with other tools. 6. The torrent format and associated technology clearly won for downloading large files from multiple sources in parallel. Cloes #7176 |
||
---|---|---|
.github | ||
.muse | ||
CMake | ||
docs | ||
include | ||
lib | ||
m4 | ||
packages | ||
plan9 | ||
projects | ||
scripts | ||
src | ||
tests | ||
winbuild | ||
.azure-pipelines.yml | ||
.cirrus.yml | ||
.dcignore | ||
.dir-locals.el | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
.mailmap | ||
.travis.yml | ||
CHANGES | ||
CMakeLists.txt | ||
COPYING | ||
GIT-INFO | ||
MacOSX-Framework | ||
Makefile.am | ||
Makefile.dist | ||
README | ||
README.md | ||
RELEASE-NOTES | ||
SECURITY.md | ||
acinclude.m4 | ||
appveyor.yml | ||
buildconf | ||
buildconf.bat | ||
configure.ac | ||
curl-config.in | ||
libcurl.pc.in | ||
maketgz |
README.md
Curl is a command-line tool for transferring data specified with URL syntax. Find out how to use curl by reading the curl.1 man page or the MANUAL document. Find out how to install Curl by reading the INSTALL document.
libcurl is the library curl is using to do its job. It is readily available to be used by your software. Read the libcurl.3 man page to learn how!
You can find answers to the most frequent questions we get in the FAQ document.
Study the COPYING file for distribution terms.
Contact
If you have problems, questions, ideas or suggestions, please contact us by posting to a suitable mailing list.
All contributors to the project are listed in the THANKS document.
Commercial support
For commercial support, maybe private and dedicated help with your problems or applications using (lib)curl: https://curl.se/support.html
Website
Visit the curl website for the latest news and downloads.
Git
To download the very latest source from the Git server do this:
git clone https://github.com/curl/curl.git
(you'll get a directory named curl created, filled with the source code)
Security problems
Report suspected security problems via our HackerOne page and not in public!
Notice
Curl contains pieces of source code that is Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan. This notice is included here to comply with the distribution terms.
Backers
Thank you to all our backers! 🙏 [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]