A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
Go to file
Viktor Szakats 0da1489eb9
build: disable warning -Wunreachable-code-break
This warning remains silent in unity builds. Since we're using unity
in CI for most jobs, warnings remain undetected there.
Disable them for all builds to avoid a surprise warning outside our CI.

The issue caught by the warning is useful for a tidy codebase, but
doesn't affect executed code. It was enabled in
84338c4de2 #12331 (2023-11-15).

llvm source: fee2953f23/clang/lib/Sema/AnalysisBasedWarnings.cpp (L125-L134)
llvm issue: https://github.com/llvm/llvm-project/issues/71046

Follow-up to 7c023c3f6e #15384
Closes #15416
2024-10-27 14:11:18 +01:00
.circleci GHA/linux: fix wolfSSL version in cache key 2024-10-03 01:17:40 +02:00
.github cmake: document -D and env build options 2024-10-24 23:06:40 +02:00
CMake build: disable warning -Wunreachable-code-break 2024-10-27 14:11:18 +01:00
docs docs: clarify FTP over HTTP proxy functionality somewhat 2024-10-26 23:45:32 +02:00
include source: avoid use of 'very' in comments 2024-10-17 13:36:33 +02:00
lib multi: split multi_runsingle into sub functions 2024-10-27 10:59:50 +01:00
LICENSES copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
m4 build: disable warning -Wunreachable-code-break 2024-10-27 14:11:18 +01:00
packages packages/OS400/curlmain: remove the strncpy calls 2024-10-10 07:47:41 +02:00
plan9 copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
projects misc: general C style cleanups 2024-08-22 23:43:45 +02:00
scripts checksrc: add check for spaces around logical AND operators 2024-10-21 09:35:00 +02:00
src curl: detect ECH support dynamically, not at build time 2024-10-24 16:10:39 +02:00
tests cmake: document -D and env build options 2024-10-24 23:06:40 +02:00
winbuild winbuild: add initial wolfSSL support 2024-10-18 12:58:50 +02:00
.dir-locals.el copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
.git-blame-ignore-revs copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
.gitattributes winbuild: MS-DOS batch tidy-ups 2024-07-02 19:26:15 +02:00
.gitignore build: buildinfo.txt improvements 2024-09-19 15:56:30 +02:00
.mailmap mprintf: treat %o as unsigned, add tests for %o, %x, %X 2024-10-24 10:17:24 +02:00
acinclude.m4 cmake: use the BSD variable 2024-10-22 20:20:41 +02:00
appveyor.sh ci: dump curl_config.h to log in all jobs 2024-10-11 15:01:29 +02:00
appveyor.yml appveyor: bump to OpenSSL 3.3 2024-09-30 10:54:46 +02:00
buildconf copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
buildconf.bat buildconf.bat: remove outdated groff/nroff use 2024-03-07 22:38:16 +01:00
CHANGES.md CHANGES: rename to CHANGES.md, no longer generated 2024-08-01 13:37:12 +02:00
CMakeLists.txt cmake: document -D and env build options 2024-10-24 23:06:40 +02:00
configure.ac cmake: untangle feature detection interdependencies 2024-10-11 17:44:45 +02:00
COPYING COPYING: update copyright year 2024-01-08 18:40:06 +01:00
curl-config.in GHA/configure-vs-cmake: check libcurl.pc/curl-config, fix issues 2024-09-21 12:08:35 +02:00
Dockerfile Dockerfile: update Docker digest to d830561 2024-10-18 16:39:26 +02:00
GIT-INFO.md GIT-INFO.md: remove version requirements 2024-07-08 23:06:05 +02:00
libcurl.pc.in GHA/configure-vs-cmake: check libcurl.pc/curl-config, fix issues 2024-09-21 12:08:35 +02:00
Makefile.am build: add pytest targets 2024-09-25 09:25:44 +02:00
Makefile.dist Makefile.dist: fix ca-firefox target 2024-09-06 21:46:05 +02:00
README docs: minor grammar fixes 2022-09-29 10:44:12 +02:00
README.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
RELEASE-NOTES RELEASE-NOTES: synced 2024-10-24 14:35:24 +02:00
renovate.json GHA: drop "3" from openssl names and keys 2024-10-23 19:36:03 +02:00
REUSE.toml tests/server/util.c: remove use of strncpy 2024-10-10 07:47:01 +02:00
SECURITY.md docs: Clarify OpenSSF Best Practices vs Scorecard 2024-08-22 11:50:20 +02:00

curl logo

Curl is a command-line tool for transferring data specified with URL syntax. Learn how to use curl by reading the manpage or everything curl.

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 manpage to learn how.

Open Source

curl is Open Source and is distributed under an MIT-like license.

Contact

Contact us on a suitable mailing list or use GitHub issues/ pull requests/ discussions.

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 visit the support page.

Website

Visit the curl website for the latest news and downloads.

Source code

Download the latest source from the Git server:

git clone https://github.com/curl/curl.git

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.