curl is used in command lines or scripts to transfer data. It is also used in
cars, television sets, routers, printers, audio equipment, mobile phones,
tablets, settop boxes, media players and is the internet transfer backbone for
thousands of software applications affecting billions of humans daily.
It supports DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP,
LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, Telnet and
TFTP. curl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP
form based upload, proxies, HTTP/2, cookies, user+password authentication
(Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos), file transfer
resume, proxy tunneling and more.
===> The following configuration options are available for curl-8.22.0:
ALTSVC=on: HTTP Alternative Services support
COOKIES=on: Cookies support
DEBUG=off: Build with debugging support
DOCS=on: Build and/or install documentation
EXAMPLES=on: Build and/or install examples
IDN=on: International Domain Names support
IPV6=on: IPv6 protocol support
LIBUV=off: Event-based tests
NTLM=on: NTLM authentication support
PROXY=on: Proxy support
PSL=on: Public Suffix List support
STATIC=on: Build static executables and/or libraries
====> Compression methods
BROTLI=on: Brotli compression support
ZSTD=on: Zstandard compression support
====> Transmission protocols
DICT=on: DICT (RFC 2229) support
FTP=on: FTP protocol support
GOPHER=on: Gopher protocol support
HTTP=on: HTTP/HTTPS support
HTTP2=on: HTTP/2 support (requires HTTP)
IMAP=on: IMAP/IMAPS support
IPFS=on: IPFS support
LDAP=off: LDAP protocol support
LDAPS=off: LDAP protocol over SSL support (requires GNUTLS/OPENSSL/WOLFSSL)
LIBSSH=off: SCP/SFTP support via libssh (requires OPENSSL)
LIBSSH2=on: SCP/SFTP support via libssh2 (requires OPENSSL)
MQTT=on: MQTT support
POP3=on: POP3/POP3S support
RTSP=on: Real Time Streaming Protocol (RTSP) support
SMB=on: SMB/CIFS support
SMTP=on: SMTP/SMTPS support
TELNET=on: Telnet support
TFTP=on: TFTP support
WEBSOCKET=on: WebSocket protocol support
====> GSSAPI Security API support: you have to select exactly one of them
GSSAPI_BASE=on: GSSAPI support via base system (needs Kerberos)
GSSAPI_MIT=off: GSSAPI support via security/krb5
GSSAPI_NONE=off: Disable GSSAPI support
====> DNS resolving options: you have to select exactly one of them
CARES=off: Asynchronous DNS resolution via c-ares
THREADED_RESOLVER=on: Threaded DNS resolver
====> SSL protocol support: you can only select none or one of them
GNUTLS=off: SSL/TLS support via GnuTLS
OPENSSL=on: SSL/TLS support via OpenSSL
WOLFSSL=off: SSL/TLS support via wolfSSL
===> Use 'make config' to modify these settings
ftp/curl: Fix build on FreeBSD 13
- Update OPTIONS_DEFAULT:
- Change from OPENSSL to OPENSSL
- Remove LIBSSH2 and TLS_SRP (depends on OPENSSL)
ftp/curl uses OpenSSL by default. However, curl 8.18.0 drops OpenSSL 1.x support
which is used in FreeBSD 13 base system. Therefore, we change the defaults to
wolfSSL instead. This commit can be reverted after FreeBSD 13 EoL (expected Apr
30, 2026).
ftp/curl: update 8.17.0 -> 8.19.0, fix some security bugs
- build moved from GNU autoconf to CMake
- No MFH as it is a big change/update and new quarterly is coming soon
PR: 293734
Changes: https://curl.se/changes.html
Security: CVE-2026-3805
CVE-2026-3784
CVE-2026-3783
CVE-2026-1965
CVE-2025-15224
CVE-2025-15079
CVE-2025-14819
CVE-2025-14524
CVE-2025-14017
CVE-2025-13034
See https://curl.se/docs/security.html for details
Tested by: ulassayginim@gmail.com, george@m5p.com,
freebsd-bugzilla.bugs@kjpetrie.co.uk,
fabian@wenks.ch, jordan@ostreff.info,
einar@isnic.is, void@f-m.fm
Approved by: ports-secteam (joneum)
ftp/curl: Specify default CA path
Add --with-ca-path=/etc/ssl/certs to CONFIGURE_ARGS so GnuTLS and wolfSSL can
find CA certificates by default.
Remove --with-ca-fallback. It has no effect with GnuTLS and with OpenSSL curl
uses the OpenSSL CA path which should also be /etc/ssl/certs so it is redundant
now.
PR: 288861, 288862
ftp/curl: Fix b55113e4038c74da6ab611a932db9cb041b7b967
- Use the upstream commit instead of the pull request
- Use = instead of += for PATCHFILES
- Cosmetic change
ftp/curl: Re-apply modified 2a3bac310439f8de03b945ae6b596ddf6384d411
- Fix libcurl.pc with GSSAPI_BASE enabled
- Bump PORTREVISION for package change
Do not add heimdal-gssapi to libcurl.pc because we do no provide .pc file base
GSSAPI library.
ftp/curl: Fix libcurl.pc with GSSAPI_BASE enabled
- Bump PORTREVISION for package change
Do not add heimdal-gssapi to libcurl.pc because we do no provide .pc file base
GSSAPI library.
ftp/curl: Update to 8.10.1
- Adjust options:
- Add IPFS
- Enable WEBSOCKET by default: It is no longer experimental
Changes: https://curl.se/changes.html
ftp/curl: Adjust default options
- Add COMPRESSION group
- Enable BROTLI and ZSTD: Add both compression support
- Enable IDN: libidn2 is already part of the dependencies of libpsl (PSL option)
- Bump PORTREVISION for dependency change
ftp/curl: Add LIBUV_IMPLIES=DEBUG
Upstream mentioned that using libuv without debug support enabled is useless.
Therefore, LIBUV option will also enable DEBUG option.
Reported by: adamw
ftp/curl: Clean up patch file after librtmp removal
multimedia/librtmp is removed in 8d01b5458f4660725fcaf562cdbb073debc9b751
RTMP option is removed in ac11b26ab75ddd548c39fe64ccf2e5de66842bd3
ftp/curl: Remove support for librtmp
Remove invalid option as support for librtmp was removed in
8d01b5458f4660725fcaf562cdbb073debc9b751
Approved by: portmgr (blanket)
ftp/curl: Always use the default trust store instead of ca_root_nss.
MFH: 2023Q4
Reviewed by: sunpoet
Differential Revision: https://reviews.freebsd.org/D42039
ftp/curl: Update to 8.1.1
Upgrade to 8.1.0 broke the build on recent CURRENT and this version
contains a fix for that
PR: 271526
Reported by: O. Hartmann <ohartmann@walstatt.org>
Fixes: 5fae3323ed2f9a1d203ccaed617ed49dec9d85ce
Pointy hat to: garga
MFH: 2023Q2
Sponsored by: Rubicon Communications, LLC ("Netgate")
Mk/**ldap.mk: Convert USE_LDAP to USES=ldap
Convert the USE_LDAP=yes to USES=ldap and adds the following features:
- Adds the argument USES=ldap:server to add openldap2{4|5|6}-server as
RUN_DEPENDS
- Adds the argument USES=ldap<version> and replaces WANT_OPENLDAP_VER
- Adds OPENLDAP versions in bsd.default-versions.mk
- Adds USE_OPENLDAP/WANT_OPENLDAP_VER in Mk/bsd.sanity.mk
- Changes consumers to use the features
Reviewed by: delphij
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D38233
ftp/curl: Fix OPENSSL_CONFIGURE_WITH
Upstream renamed --with-ssl to --with-openssl, and --without-ssl now
means no SSL at all. This fixes building with SSL libraries other than
OpenSSL.
Approved by: sunpoet (via email)
ftp/curl: Update to 7.87.0
- Update WWW
- Disable CA_BUNDLE option by default
ca_root_nss is not needed since we have caroot in the base system.
Changes: https://curl.se/changes.html
Security: CVE-2022-43551, CVE-2022-43552
ftp/curl: Update to 7.86.0
While here,
* Switch to DISTVERSION.
* Pet portlint and portclippy.
* Tidy up Makefile with portfmt.
ChangeLog: https://curl.se/changes.html#7_86_0
PR: 267802
Approved by: maintainer timeout
MFH: 2022Q4
Security: 0f99a30c-7b4b-11ed-9168-080027f5fec9
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
ftp: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* Aaron Dalton <aaron@FreeBSD.org>
* Alexander Kriventsov
* Anders Nordby <anders@fix.no>
* Andreas Fehlner <fehlner@gmx.de>
* Andrew Pantyukhin <infofarmer@FreeBSD.org>
* Andrey Zakhvatov
* Antonio Carlos Venancio Junior (<antonio@inf.ufsc.br>)
* Chris Piazza <cpiazza@FreeBSD.org>
* Damjan Marion <dmarion@open.hr>
* Emanuel Haupt <ehaupt@critical.ch>
* Eric Freeman <freebsdports@chillibear.com>
(Only the first 15 lines of the commit message are shown above )
ftp/curl: Update to 7.78.0
- Remove METALINK option: all support removed by upstream
- Update NTLM option: it has own configure option now
Changes: https://curl.se/changes.html