commit 6bcb80e
Michael Forney
·
2026-05-15 08:04:15 +0000 UTC
parent d83ece1
curl: Update to our own branch with 8.20.0 and bearssl
9 files changed,
+42,
-81
+3,
-0
1@@ -18,6 +18,9 @@
2 [submodule "pkg/cproc/src"]
3 path = pkg/cproc/src
4 url = https://git.sr.ht/~mcf/cproc
5+[submodule "pkg/curl/src"]
6+ path = pkg/curl/src
7+ url = https://github.com/oasislinux/curl.git
8 [submodule "pkg/dosfstools/src"]
9 path = pkg/dosfstools/src
10 url = https://github.com/dosfstools/dosfstools
+0,
-1
1@@ -1,2 +1 @@
2 /curl.1.gz
3-/src
+15,
-29
1@@ -1,7 +1,9 @@
2 #define CURL_CA_BUNDLE "/etc/ssl/cert.pem"
3 /* #undef CURL_CA_FALLBACK */
4+/* #undef CURL_CA_NATIVE */
5 /* #undef CURL_CA_PATH */
6 /* #undef CURL_CA_SEARCH_SAFE */
7+/* #undef CURL_DEBUG_GLOBAL_MEM */
8 /* #undef CURL_DEFAULT_SSL_BACKEND */
9 /* #undef CURL_DISABLE_ALTSVC */
10 /* #undef CURL_DISABLE_AWS */
11@@ -32,7 +34,6 @@
12 /* #undef CURL_DISABLE_MQTT */
13 /* #undef CURL_DISABLE_NEGOTIATE_AUTH */
14 /* #undef CURL_DISABLE_NETRC */
15-/* #undef CURL_DISABLE_NTLM */
16 /* #undef CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG */
17 /* #undef CURL_DISABLE_PARSEDATE */
18 #define CURL_DISABLE_POP3 1
19@@ -41,19 +42,20 @@
20 /* #undef CURL_DISABLE_RTSP */
21 /* #undef CURL_DISABLE_SHA512_256 */
22 /* #undef CURL_DISABLE_SHUFFLE_DNS */
23-#define CURL_DISABLE_SMB 1
24 /* #undef CURL_DISABLE_SMTP */
25 /* #undef CURL_DISABLE_SOCKETPAIR */
26 /* #undef CURL_DISABLE_TELNET */
27 /* #undef CURL_DISABLE_TFTP */
28 /* #undef CURL_DISABLE_VERBOSE_STRINGS */
29 /* #undef CURL_DISABLE_WEBSOCKETS */
30+/* #undef CURL_ENABLE_NTLM */
31+/* #undef CURL_ENABLE_SMB */
32 #define CURL_EXTERN_SYMBOL __attribute__((__visibility__("default")))
33+/* #undef CURL_KRB5_VERSION */
34 #define CURL_OS "oasis"
35 /* #undef CURL_WITH_MULTI_SSL */
36 #define GETHOSTNAME_TYPE_ARG2 size_t
37 #define HAVE_ACCEPT4 1
38-/* #undef HAVE_ADDRESS_FAMILY */
39 #define HAVE_ALARM 1
40 /* #undef HAVE_ARC4RANDOM */
41 #define HAVE_ARPA_INET_H 1
42@@ -68,6 +70,7 @@
43 /* #undef HAVE_CLOSESOCKET */
44 /* #undef HAVE_CLOSESOCKET_CAMEL */
45 #define HAVE_DECL_FSEEKO 1
46+/* #undef HAVE_DES_ECB_ENCRYPT */
47 #define HAVE_DIRENT_H 1
48 #define HAVE_DLFCN_H 1
49 #define HAVE_EVENTFD 1
50@@ -80,7 +83,6 @@
51 #define HAVE_FSETXATTR 1
52 #define HAVE_FSETXATTR_5 1
53 /* #undef HAVE_FSETXATTR_6 */
54-#define HAVE_FTRUNCATE 1
55 #define HAVE_GETADDRINFO 1
56 #define HAVE_GETADDRINFO_THREADSAFE 1
57 #define HAVE_GETEUID 1
58@@ -101,6 +103,7 @@
59 /* #undef HAVE_GLIBC_STRERROR_R */
60 #define HAVE_GMTIME_R 1
61 /* #undef HAVE_GNUTLS_SRP */
62+/* #undef HAVE_GSASL_H */
63 /* #undef HAVE_GSSAPI */
64 /* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */
65 /* #undef HAVE_GSSAPI_GSSAPI_H */
66@@ -129,20 +132,17 @@
67 #define HAVE_LIBGEN_H 1
68 /* #undef HAVE_LIBIDN2 */
69 /* #undef HAVE_LIBPSL_H */
70-/* #undef HAVE_LIBRTMP_RTMP_H */
71 /* #undef HAVE_LIBSSH */
72 /* #undef HAVE_LIBSSH2 */
73 /* #undef HAVE_LIBSSL */
74-/* #undef HAVE_LIBWOLFSSH */
75 #define HAVE_LIBZ 1
76 /* #undef HAVE_LIBZSTD */
77 #define HAVE_LINUX_TCP_H 1
78 #define HAVE_LOCALE_H 1
79-#define HAVE_LONGLONG 1
80+#define HAVE_LOCALTIME_R 1
81 /* #undef HAVE_MACH_ABSOLUTE_TIME */
82+/* #undef HAVE_MBEDTLS_DES_CRYPT_ECB */
83 #define HAVE_MEMRCHR 1
84-#define HAVE_MSG_NOSIGNAL 1
85-/* #undef HAVE_MSH3_H */
86 #define HAVE_NETDB_H 1
87 /* #undef HAVE_NETINET_IN6_H */
88 #define HAVE_NETINET_IN_H 1
89@@ -153,7 +153,6 @@
90 /* #undef HAVE_NGHTTP3_NGHTTP3_H */
91 /* #undef HAVE_NGTCP2_NGTCP2_CRYPTO_H */
92 /* #undef HAVE_NGTCP2_NGTCP2_H */
93-/* #undef HAVE_OLD_GSSMIT */
94 #define HAVE_OPENDIR 1
95 /* #undef HAVE_OPENSSL_CRYPTO_H */
96 /* #undef HAVE_OPENSSL_ERR_H */
97@@ -161,14 +160,12 @@
98 /* #undef HAVE_OPENSSL_RSA_H */
99 /* #undef HAVE_OPENSSL_SRP */
100 /* #undef HAVE_OPENSSL_SSL_H */
101-/* #undef HAVE_OPENSSL_X509_H */
102 #define HAVE_PIPE 1
103 #define HAVE_PIPE2 1
104 #define HAVE_POLL 1
105 #define HAVE_POLL_H 1
106 #define HAVE_POSIX_STRERROR_R 1
107 /* #undef HAVE_PROTO_BSDSOCKET_H */
108-#define HAVE_PTHREAD_H 1
109 #define HAVE_PWD_H 1
110 /* #undef HAVE_QUICHE_CONN_SET_QLOG_FD */
111 /* #undef HAVE_QUICHE_H */
112@@ -181,13 +178,11 @@
113 #define HAVE_SENDMMSG 1
114 #define HAVE_SENDMSG 1
115 #define HAVE_SETLOCALE 1
116-/* #undef HAVE_SETMODE */
117 #define HAVE_SETRLIMIT 1
118 #define HAVE_SIGACTION 1
119 #define HAVE_SIGINTERRUPT 1
120 #define HAVE_SIGNAL 1
121 #define HAVE_SIGSETJMP 1
122-#define HAVE_SNPRINTF 1
123 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
124 #define HAVE_SOCKET 1
125 #define HAVE_SOCKETPAIR 1
126@@ -202,7 +197,6 @@
127 #define HAVE_STDLIB_H 1
128 #define HAVE_STRCASECMP 1
129 /* #undef HAVE_STRCMPI */
130-#define HAVE_STRDUP 1
131 #define HAVE_STRERROR_R 1
132 /* #undef HAVE_STRICMP */
133 #define HAVE_STRINGS_H 1
134@@ -218,16 +212,15 @@
135 #define HAVE_SYS_POLL_H 1
136 #define HAVE_SYS_RESOURCE_H 1
137 #define HAVE_SYS_SELECT_H 1
138-#define HAVE_SYS_SOCKET_H 1
139 /* #undef HAVE_SYS_SOCKIO_H */
140 #define HAVE_SYS_STAT_H 1
141-#define HAVE_SYS_TIME_H 1
142 #define HAVE_SYS_TYPES_H 1
143 #define HAVE_SYS_UN_H 1
144 /* #undef HAVE_SYS_UTIME_H */
145 #define HAVE_SYS_XATTR_H 1
146 #define HAVE_TERMIOS_H 1
147 /* #undef HAVE_TERMIO_H */
148+#define HAVE_THREADS_POSIX 1
149 /* #undef HAVE_TIME_T_UNSIGNED */
150 /* #undef HAVE_UNICODE_UIDNA_H */
151 #define HAVE_UNISTD_H 1
152@@ -235,18 +228,16 @@
153 #define HAVE_UTIMES 1
154 #define HAVE_UTIME_H 1
155 /* #undef HAVE_UV_H */
156-/* #undef HAVE_WOLFSSH_SSH_H */
157+/* #undef HAVE_WC_DES_ECBENCRYPT */
158 /* #undef HAVE_WOLFSSL_BIO_NEW */
159 /* #undef HAVE_WOLFSSL_BIO_SET_SHUTDOWN */
160 /* #undef HAVE_WOLFSSL_CTX_GENERATEECHCONFIG */
161-/* #undef HAVE_WOLFSSL_DES_ECB_ENCRYPT */
162 /* #undef HAVE_WOLFSSL_GET_PEER_CERTIFICATE */
163 /* #undef HAVE_WOLFSSL_SET_QUIC_USE_LEGACY_CODEPOINT */
164 /* #undef HAVE_WOLFSSL_USEALPN */
165 #define HAVE_WRITABLE_ARGV 1
166 /* #undef HAVE_ZSTD */
167 /* #undef HAVE_ZSTD_H */
168-/* #undef HAVE__SETMODE */
169 #define LT_OBJDIR ".libs/"
170 /* #undef NEED_LBER_H */
171 /* #undef NEED_REENTRANT */
172@@ -263,14 +254,15 @@
173 #define SIZEOF_CURL_SOCKET_T 4
174 #define SIZEOF_INT 4
175 /* probe SIZEOF_LONG */
176-/* #undef SIZEOF_LONG_LONG */
177 #define SIZEOF_OFF_T 8
178 /* probe SIZEOF_SIZE_T */
179 /* probe SIZEOF_TIME_T */
180 #define STDC_HEADERS 1
181 /* #undef USE_AMISSL */
182 /* #undef USE_APPLE_IDN */
183+/* #undef USE_APPLE_SECTRUST */
184 /* #undef USE_ARES */
185+/* #undef USE_BACKTRACE */
186 #define USE_BEARSSL 1
187 /* #undef USE_ECH */
188 /* #undef USE_GNUTLS */
189@@ -278,34 +270,28 @@
190 /* #undef USE_HTTPSRR */
191 #define USE_IPV6 1
192 /* #undef USE_LIBPSL */
193-/* #undef USE_LIBRTMP */
194 /* #undef USE_LIBSSH */
195 /* #undef USE_LIBSSH2 */
196 /* #undef USE_LIBUV */
197 /* #undef USE_MBEDTLS */
198-/* #undef USE_MSH3 */
199 /* #undef USE_NGHTTP2 */
200 /* #undef USE_NGHTTP3 */
201 /* #undef USE_NGTCP2 */
202 /* #undef USE_OPENLDAP */
203 /* #undef USE_OPENSSL */
204-/* #undef USE_OPENSSL_QUIC */
205 /* #undef USE_QUICHE */
206+/* #undef USE_RESOLV_ARES */
207+#define USE_RESOLV_THREADED 1
208 /* #undef USE_RUSTLS */
209 /* #undef USE_SCHANNEL */
210-/* #undef USE_SECTRANSP */
211 /* #undef USE_SSLS_EXPORT */
212-#define USE_THREADS_POSIX 1
213-/* #undef USE_THREADS_WIN32 */
214 /* #undef USE_TLS_SRP */
215 #define USE_UNIX_SOCKETS 1
216 /* #undef USE_WATT32 */
217 /* #undef USE_WIN32_CRYPTO */
218 /* #undef USE_WIN32_IDN */
219-/* #undef USE_WIN32_LARGE_FILES */
220 /* #undef USE_WIN32_LDAP */
221 /* #undef USE_WINDOWS_SSPI */
222-/* #undef USE_WOLFSSH */
223 /* #undef USE_WOLFSSL */
224 #define VERSION "-"
225 #ifndef _ALL_SOURCE
+22,
-19
1@@ -45,10 +45,12 @@ lib('libcurl.a', [[
2 asyn-thrdd.c
3 bufq.c
4 bufref.c
5+ cf-dns.c
6 cf-h1-proxy.c
7 cf-h2-proxy.c
8 cf-haproxy.c
9 cf-https-connect.c
10+ cf-ip-happy.c
11 cf-socket.c
12 cfilters.c
13 conncache.c
14@@ -57,24 +59,25 @@ lib('libcurl.a', [[
15 cookie.c
16 cshutdn.c
17 curl_addrinfo.c
18- curl_des.c
19 curl_endian.c
20 curl_fnmatch.c
21+ curl_fopen.c
22 curl_get_line.c
23 curl_gethostname.c
24 curl_gssapi.c
25 curl_memrchr.c
26 curl_ntlm_core.c
27 curl_range.c
28- curl_rtmp.c
29 curl_sasl.c
30 curl_sha512_256.c
31+ curl_share.c
32 curl_sspi.c
33 curl_threads.c
34 curl_trc.c
35 cw-out.c
36 cw-pause.c
37 dict.c
38+ dnscache.c
39 doh.c
40 dynhds.c
41 easy.c
42@@ -84,7 +87,6 @@ lib('libcurl.a', [[
43 fake_addrinfo.c
44 file.c
45 fileinfo.c
46- fopen.c
47 formdata.c
48 ftp.c
49 ftplistparser.c
50@@ -111,8 +113,6 @@ lib('libcurl.a', [[
51 idn.c
52 if2ip.c
53 imap.c
54- inet_ntop.c
55- krb5.c
56 ldap.c
57 llist.c
58 macos.c
59@@ -124,6 +124,7 @@ lib('libcurl.a', [[
60 mqtt.c
61 multi.c
62 multi_ev.c
63+ multi_ntfy.c
64 netrc.c
65 noproxy.c
66 openldap.c
67@@ -131,16 +132,16 @@ lib('libcurl.a', [[
68 pingpong.c
69 pop3.c
70 progress.c
71+ protocol.c
72 psl.c
73 rand.c
74- rename.c
75+ ratelimit.c
76 request.c
77 rtsp.c
78 select.c
79 sendf.c
80 setopt.c
81 sha256.c
82- share.c
83 slist.c
84 smb.c
85 smtp.c
86@@ -148,15 +149,15 @@ lib('libcurl.a', [[
87 socks.c
88 socks_gssapi.c
89 socks_sspi.c
90- speedcheck.c
91 splay.c
92 strcase.c
93- strdup.c
94 strequal.c
95 strerror.c
96 system_win32.c
97 telnet.c
98 tftp.c
99+ thrdpool.c
100+ thrdqueue.c
101 transfer.c
102 uint-bset.c
103 uint-hash.c
104@@ -168,14 +169,22 @@ lib('libcurl.a', [[
105 ws.c
106 curlx/(
107 base64.c
108+ basename.c
109 dynbuf.c
110+ fopen.c
111+ inet_ntop.c
112 inet_pton.c
113 multibyte.c
114 nonblock.c
115+ snprintf.c
116+ strcopy.c
117+ strdup.c
118+ strerr.c
119 strparse.c
120 timediff.c
121 timeval.c
122 version_win32.c
123+ wait.c
124 warnless.c
125 winapi.c
126 )
127@@ -195,18 +204,17 @@ lib('libcurl.a', [[
128 vauth.c
129 )
130 vtls/(
131+ apple.c
132 bearssl.c
133 cipher_suite.c
134 gtls.c
135 hostcheck.c
136 keylog.c
137 mbedtls.c
138- mbedtls_threadlock.c
139 openssl.c
140 rustls.c
141 schannel.c
142 schannel_verify.c
143- sectransp.c
144 vtls.c
145 vtls_scache.c
146 vtls_spack.c
147@@ -214,9 +222,7 @@ lib('libcurl.a', [[
148 x509asn1.c
149 )
150 vquic/(
151- curl_msh3.c
152 curl_ngtcp2.c
153- curl_osslq.c
154 curl_quiche.c
155 vquic.c
156 vquic-tls.c
157@@ -224,8 +230,7 @@ lib('libcurl.a', [[
158 vssh/(
159 libssh.c
160 libssh2.c
161- curl_path.c
162- wolfssh.c
163+ vssh.c
164 )
165 )
166 $builddir/pkg/bearssl/libbearssl.a
167@@ -238,7 +243,6 @@ exe('curl', [[
168 config2setopts.c
169 slist_wc.c
170 terminal.c
171- tool_bname.c
172 tool_cb_dbg.c
173 tool_cb_hdr.c
174 tool_cb_prg.c
175@@ -268,10 +272,8 @@ exe('curl', [[
176 tool_parsecfg.c
177 tool_progress.c
178 tool_setopt.c
179- tool_sleep.c
180 tool_ssls.c
181 tool_stderr.c
182- tool_strdup.c
183 tool_urlglob.c
184 tool_util.c
185 tool_vms.c
186@@ -279,6 +281,7 @@ exe('curl', [[
187 tool_writeout_json.c
188 tool_xattr.c
189 var.c
190+ toolx/(tool_time.c)
191 )
192 libcurl.a.d
193 ]])
194@@ -286,4 +289,4 @@ exe('curl', [[
195 file('bin/curl', '755', '$outdir/curl')
196 man{'$dir/curl.1'}
197
198-fetch 'curl'
199+fetch 'git'
1@@ -1,29 +0,0 @@
2-From e81451b1773b64d19392a4802b178b7b0f325b2a Mon Sep 17 00:00:00 2001
3-From: Michael Forney <mforney@mforney.org>
4-Date: Mon, 15 Nov 2021 13:10:02 -0800
5-Subject: [PATCH] bearssl: Remove unnecessary CA blob length check
6-
7-BearSSL APIs take a size_t length parameter, so unlike OpenSSL,
8-there is no conversion to int and no reason to check that it's less
9-than INT_MAX.
10----
11- lib/vtls/bearssl.c | 3 ---
12- 1 file changed, 3 deletions(-)
13-
14-diff --git a/lib/vtls/bearssl.c b/lib/vtls/bearssl.c
15-index 4b65244..0590d91 100644
16---- a/lib/vtls/bearssl.c
17-+++ b/lib/vtls/bearssl.c
18-@@ -135,9 +135,6 @@ static CURLcode load_cafile(struct cafile_source *source,
19- return CURLE_SSL_CACERT_BADFILE;
20- }
21-
22-- if(source->type == CAFILE_SOURCE_BLOB && source->len > (size_t)INT_MAX)
23-- return CURLE_SSL_CACERT_BADFILE;
24--
25- ca.err = CURLE_OK;
26- ca.in_cert = FALSE;
27- ca.anchors = NULL;
28---
29-2.49.0
30-
+0,
-1
1@@ -1 +0,0 @@
2-f4619a1e2474c4bbfedc88a7c2191209c8334b48fa1f4e53fd584cc12e9120dd curl-8.14.1.tar.xz
+1,
-0
1@@ -0,0 +1 @@
2+Subproject commit e47c93992c1d517477c7304cb48d23d6a79b3b0c
+0,
-1
1@@ -1 +0,0 @@
2-url = "https://curl.se/download/curl-8.14.1.tar.xz"
+1,
-1
1@@ -1 +1 @@
2-8.14.1 r1
3+8.20.0