Go to file
Petr Štetiar 8af6b087e0
curl-wolfssl.m4: error out if wolfSSL is not usable
When I explicitly declare, that I would like to have curl built with
wolfSSL support using `--with-wolfssl` configure option, then I would
expect, that either I endup with curl having that support, for example
in form of https support or it wouldn't be available at all.

Downstream projects like for example OpenWrt build curl wolfSSL variant
with `--with-wolfssl` already, but in certain corner cases it does fail:

  configure:25299: checking for wolfSSL_Init in -lwolfssl
  configure:25321: x86_64-openwrt-linux-musl-gcc -o conftest [snip]
  In file included from target-x86_64_musl/usr/include/wolfssl/wolfcrypt/dsa.h:33,
                   from target-x86_64_musl/usr/include/wolfssl/wolfcrypt/asn_public.h:35,
                  from target-x86_64_musl/usr/include/wolfssl/ssl.h:35,
                   from conftest.c:47:
  target-x86_64_musl/usr/include/wolfssl/wolfcrypt/integer.h:37:14: fatal error: wolfssl/wolfcrypt/sp_int.h: No such file or directory
       #include <wolfssl/wolfcrypt/sp_int.h>
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  compilation terminated.

and in the end thus produces curl without https support:

 curl: (1) Protocol "https" not supported or disabled in libcurl

So fix it, by making the working wolfSSL mandatory and error out in
configure step when that's not the case:

 checking for wolfSSL_Init in -lwolfssl... no
 configure: error: --with-wolfssl but wolfSSL was not found or doesn't work

References: https://github.com/openwrt/packages/issues/19005
References: https://github.com/openwrt/packages/issues/19547
Signed-off-by: Petr Štetiar <ynezz@true.cz>

Closes #9682
2022-10-10 11:17:53 +02:00
.circleci CI: skip make, do make install at once for dependencies 2022-09-13 15:42:10 +02:00
.github CI/GHA: merge msh3 and openssl3 builds into linux workflow 2022-10-07 21:47:51 +02:00
.lift
.reuse reuse/dep5: adjusted to parse better 2022-06-14 14:07:02 +02:00
CMake tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
docs curl_ws_send.3: call the argument 'fragsize' 2022-10-07 18:34:01 +02:00
include websockets: remodeled API to support 63 bit frame sizes 2022-10-07 12:50:58 +02:00
lib ws: minor fixes for web sockets without the CONNECT_ONLY flag 2022-10-09 23:09:58 +02:00
LICENSES examples/curlx.c: remove 2022-08-18 00:00:12 +02:00
m4 curl-wolfssl.m4: error out if wolfSSL is not usable 2022-10-10 11:17:53 +02:00
packages tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
plan9
projects tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
scripts scripts/release-notes.pl: strip ci skip tag [ci skip] 2022-10-02 22:15:21 +00:00
src tool_getparam: pass in the snprintf("%.*s") string length as 'int' 2022-10-10 08:42:48 +02:00
tests websockets: remodeled API to support 63 bit frame sizes 2022-10-07 12:50:58 +02:00
winbuild tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
zuul.d zuul: remove the clang-tidy job 2022-08-30 15:40:03 +02:00
.azure-pipelines.yml test972: verify the output without using external tool 2022-09-22 13:46:40 +02:00
.cirrus.yml CI/cirrus: merge existing macOS jobs into a job matrix 2022-10-08 23:49:55 +02:00
.dcignore
.dir-locals.el
.git-blame-ignore-revs
.gitattributes
.gitignore
.lgtm.yml
.mailmap mailmap: merge Philip Heiduck's two addresses into one 2022-09-16 16:46:32 +02:00
acinclude.m4 functypes: provide the recv and send arg and return types 2022-09-28 09:06:11 +02:00
appveyor.yml appveyor: enable websockets 2022-09-09 15:11:15 +02:00
buildconf
buildconf.bat buildconf.bat: update copyright year range 2022-06-14 14:06:55 +02:00
CHANGES
CMakeLists.txt tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
configure.ac tidy-up: delete parallel/unused feature flags 2022-10-06 15:30:13 +00:00
COPYING
curl-config.in curl-config: quote directories with potential space 2022-08-10 14:35:40 +02:00
GIT-INFO
libcurl.pc.in
MacOSX-Framework scripts: use grep -E instead of egrep 2022-09-13 10:18:50 +02:00
Makefile.am
Makefile.dist
maketgz
mlc_config.json
README docs: minor grammar fixes 2022-09-29 10:44:12 +02:00
README.md docs: minor grammar fixes 2022-09-29 10:44:12 +02:00
RELEASE-NOTES RELEASE-NOTES: synced 2022-10-04 16:24:19 +02:00
SECURITY.md docs: spellfixes 2022-09-21 15:20:08 +02:00

curl logo

OpenSSF Best Practices Coverity passed AppVeyor Build Status Azure DevOps Build Status Cirrus Build Status GitHub Actions Linux Build Status GitHub Actions macOS Build Status Backers on Open Collective Sponsors on Open Collective Language Grade: C/C++ Fuzzing Status REUSE 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 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 visit the support page.

Website

Visit the curl website for the latest news and downloads.

Git

To download the latest source from the Git server, do this:

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

(you will 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]

Open Collective Backers

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Open Collective Sponsor 0 Open Collective Sponsor 1 Open Collective Sponsor 2 Open Collective Sponsor 3 Open Collective Sponsor 4 Open Collective Sponsor 5 Open Collective Sponsor 6 Open Collective Sponsor 7 Open Collective Sponsor 8 Open Collective Sponsor 9