• Stars
    star
    684
  • Rank 66,068 (Top 2 %)
  • Language
    Shell
  • License
    MIT License
  • Created about 9 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Reproducible curl binaries for Linux, macOS and Windows

Build status Daily status

Reproducible curl binaries for Windows

  • We are switching the default TLS backend to LibreSSL upon the next curl release when LibreSSL 3.8.x stable becomes available. This fixes a long-standing OpenSSL vulnerability. It also makes binaries 40% smaller. Major crypto and curl features remain the same.
  • Download our .zip or .tar.xz packages,
    PGP signed with: 002C 1689 65BA C220 2118 408B 4ED8 5DF9 BB3D 0DE8
  • Standalone curl.exe and libcurl.dll. Static libraries included.
  • Vista and Universal CRT required.
  • HTTP/3, HTTP/2 support, and more.
  • ARM64 builds are Control Flow Guard enabled [EXPERIMENTAL].
  • Transparent builds, using open source code, run in public, with auditable logs.
  • LLVM/Clang build environment with mingw-w64 via Debian, Homebrew, MSYS2. llvm-mingw for ARM64.
  • Cross-built and published from Linux via AppVeyor CI. Using reproducible OS image debian:testing-slim via Docker.
  • We verify components using SHA-256, and PGP where provided.
  • We build reproducible binaries, producing the same hash given the same input sources and C compiler.
  • Patching policy: No local patches. We may apply patches if already merged upstream or β€” for showstoppers β€” had them submitted with fair confidence of getting merged.
  • You can look up our package hashes in lines starting with SHA in the build log.
  • Packages built across host platforms do not have identical hashes due to slightly different build options and toolchain builds/versions. Except llvm-mingw builds, which are reproducible across platforms. ARM64 and BoringSSL builds are such by default.
  • We code-sign with a self-signed certificate, and avoid trusted timestamps for reproducibility.

Features

Uses quictls, with runtime-selectable option Schannel:

Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli       HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM     SPNEGO SSL SSPI threadsafe UnixSockets zstd
Alternate configurations with different footprints:

"big":
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli gsasl HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets zstd

"boringssl":
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli       HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM     SPNEGO SSL SSPI threadsafe UnixSockets zstd

"noh3", HTTP/2:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli       HSTS HTTP2       HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM     SPNEGO SSL SSPI threadsafe UnixSockets zstd

"mini", Schannel, without brotli and zstd:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS              HSTS HTTP2       HTTPS-proxy IDN IPv6 Kerberos Largefile libz          NTLM     SPNEGO SSL SSPI threadsafe UnixSockets

"micro", without libssh2:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp          smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS              HSTS HTTP2       HTTPS-proxy IDN IPv6 Kerberos Largefile libz          NTLM     SPNEGO SSL SSPI threadsafe UnixSockets

"nano", HTTP/1.1:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp          smb smbs smtp smtps telnet tftp ws wss
Features:         AsynchDNS              HSTS             HTTPS-proxy IDN IPv6 Kerberos Largefile libz          NTLM     SPNEGO SSL SSPI threadsafe UnixSockets

"pico", HTTP/1.1-only:
Protocols:                                   http https
Features:         AsynchDNS              HSTS             HTTPS-proxy     IPv6          Largefile libz                          SSL SSPI threadsafe UnixSockets

Downloads

Build logs

https://ci.appveyor.com/project/curlorg/curl-for-win/history

Unstable/development daily builds

https://github.com/curl/curl-for-win/actions/workflows/daily.yml

Guarantees and Liability

See LICENSE.

Information in this document is subject to change without notice and does not represent or imply any future commitment by the participants of the project.


This document Β© Viktor Szakats, CC BY-SA 4.0

More Repositories

1

curl

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
C
31,356
star
2

trurl

trurl is a command line tool for URL parsing and manipulation.
C
3,084
star
3

everything-curl

The book documenting the curl project, the curl tool, libcurl and more. Simply put: everything curl.
Perl
2,043
star
4

doh

stand-alone application for DoH (DNS-over-HTTPS) name resolves and lookups
C
367
star
5

curl-cheat-sheet

A single page document with the most important curl options for HTTP explained
353
star
6

h2c

headers 2 curl. Provided a set of HTTP request headers, output the curl command line for generating that set. Try the converter online at
Perl
258
star
7

wcurl

a simple wrapper around curl to easily download files
Shell
245
star
8

curl-docker

official docker image for curl
Makefile
167
star
9

curl-www

The curl.se website
HTML
100
star
10

curl-fuzzer

Quality assurance testing for the curl project
C++
82
star
11

curl-container

curl images
Shell
60
star
12

stats

Scripts for generating project statistics and for plotting them as graphs.
Perl
59
star
13

curl-up

All things related to the curl up conference series
41
star
14

fcurl

fcurl - fopen, fread, fwrite style functions for URL operations using libcurl
C
35
star
15

relative

Tools to measure libcurl performance delta between versions
C
16
star
16

build-images

repository for curl build images
Shell
11
star
17

curl.dev

The curl.dev website
HTML
10
star