Curl is a tool and libcurl is a library for transferring data with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TFTP, SCP, SFTP, TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3, RTSP and RTMP. libcurl offers a myriad of powerful features
Перейти к файлу
W. Mark Kubacki 4b41424910
lib: don't export all symbols, just everything curl_*
Absent any 'symbol map' or script to limit what gets exported, static
linking of libraries previously resulted in a libcurl with curl's and
those other symbols being (re-)exported.

This did not happen if 'versioned symbols' were enabled (which is not
the default) because then a version script is employed.

This limits exports to everything starting in 'curl_*'., which is
what "libcurl.vers" exports.

This avoids strange side-effects such as with mixing methods
from system libraries and those erroneously offered by libcurl.

Closes #2127
2017-12-01 10:32:28 +01:00
.github ISSUE_TEMPLATE: Add a comment not to file security issues on github 2017-07-11 11:48:37 -04:00
CMake cmake: Export libcurl and curl targets to use by other cmake projects 2017-10-28 17:22:47 +02:00
docs examples/xmlstream.c: don't switch off CURL_GLOBAL_SSL 2017-12-01 07:52:24 +01:00
include global_init: ignore CURL_GLOBAL_SSL's absense 2017-11-27 08:50:33 +01:00
lib lib: don't export all symbols, just everything curl_* 2017-12-01 10:32:28 +01:00
m4 configure: use -Wno-varargs on clang 3.9[.X] debug builds 2017-09-08 23:16:16 +02:00
packages auth: add support for RFC7616 - HTTP Digest access authentication 2017-10-28 16:32:43 +02:00
projects build-openssl.bat: Warn OpenSSL 1.1.0 not yet supported 2017-10-04 01:04:43 -04:00
scripts scripts/contri*sh: use "git log --use-mailmap" 2017-08-18 22:41:48 +02:00
src metalink: fix memory-leak and NULL pointer dereference 2017-11-24 13:30:38 +01:00
tests wildcardmatch: fix heap buffer overflow in setcharset 2017-11-27 08:19:34 +01:00
winbuild winbuild/BUILD.WINDOWS.txt: mention WITH_NGHTTP2 2017-10-12 13:54:00 +02:00
.dir-locals.el
.gitattributes .gitattributes: force shell scripts to LF 2017-04-17 08:32:13 +02:00
.gitignore ossfuzz: Move to C++ for curl_fuzzer. 2017-09-02 11:07:55 +02:00
.mailmap mailmap: de-duplify some git authors 2017-08-18 17:49:20 +02:00
.travis.yml travis: add boringssl build 2017-11-30 08:16:32 +01:00
CHANGES CHANGES: spell fix, use correct path to script 2017-02-07 08:22:37 +01:00
CMakeLists.txt cmake: Add missing setmode check 2017-11-10 15:38:23 -05:00
COPYING COPYING: update the generic copyright year range 2017-01-07 20:25:43 +01:00
GIT-INFO CHANGES.0: removed 2017-02-07 08:20:10 +01:00
MacOSX-Framework includes: remove curl/curlbuild.h and curl/curlrules.h 2017-06-14 11:07:33 +02:00
Makefile.am make: fix "make distclean" 2017-11-24 08:38:29 +01:00
Makefile.dist VC: remove the makefile.vc6 build infra 2017-01-23 14:27:32 +01:00
README URLs: follow GitHub project rename (also Travis CI) 2016-02-04 23:01:38 +01:00
README.md README.md: fixed layout 2017-11-12 00:07:38 +01:00
RELEASE-NOTES RELEASE-NOTES: curl 7.57.0 2017-11-29 10:27:26 +01:00
acinclude.m4 CURL_SIZEOF_LONG: removed, use only SIZEOF_LONG 2017-08-17 10:27:00 +02:00
appveyor.yml appveyor: add a win32 build 2017-10-27 23:40:04 +02:00
buildconf includes: remove curl/curlbuild.h and curl/curlrules.h 2017-06-14 11:07:33 +02:00
buildconf.bat includes: remove curl/curlbuild.h and curl/curlrules.h 2017-06-14 11:07:33 +02:00
configure.ac connect: add support for new TCP Fast Open API on Linux 2017-11-24 10:49:59 +01:00
curl-config.in URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
libcurl.pc.in URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
maketgz maketgz: remove old *.dist files before making the tarball 2017-08-10 22:56:49 +02:00

README.md

curl logo

CII Best Practices Coverity passed Build Status Coverage Status

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 find answers to the most frequent questions we get in the FAQ document.

Study the COPYING file for distribution terms and similar. If you distribute curl binaries or other binaries that involve libcurl, you might enjoy the LICENSE-MIXING document.

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.

Website

Visit the curl web site for the latest news and downloads.

Git

To download the very latest source off 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)

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.