opkg

statically linked package installer
git clone anongit@rnpnr.xyz:opkg.git
Log | Files | Refs | Feed | Submodules | README | LICENSE

Commit: ea84adb43bf4ee21f315f19d0cdb63beb9bd660a
Parent: 91667c608d8f9cc789e1c16dff4add12f938131b
Author: Michael Forney
Date:   Fri, 15 May 2026 01:04:15 -0700

curl: Update to our own branch with 8.20.0 and bearssl

Diffstat:
M.gitmodules | 3+++
Mdist/.gitignore | 1-
Dpkg/curl/.gitignore | 1-
Mpkg/curl/curl_config.h | 44+++++++++++++++-----------------------------
Mpkg/curl/gen.lua | 41++++++++++++++++++++++-------------------
Dpkg/curl/patch/0001-bearssl-Remove-unnecessary-CA-blob-length-check.patch | 29-----------------------------
Dpkg/curl/sha256 | 1-
Apkg/curl/src | 1+
Dpkg/curl/url | 1-
Mpkg/curl/ver | 2+-
10 files changed, 42 insertions(+), 82 deletions(-)

diff --git a/.gitmodules b/.gitmodules @@ -14,6 +14,9 @@ [submodule "pkg/cproc/src"] path = pkg/cproc/src url = https://git.sr.ht/~mcf/cproc +[submodule "pkg/curl/src"] + path = pkg/curl/src + url = https://github.com/oasislinux/curl.git [submodule "pkg/fspec-sync/src"] path = pkg/fspec-sync/src url = https://github.com/oasislinux/fspec-sync.git diff --git a/dist/.gitignore b/dist/.gitignore @@ -1,4 +1,3 @@ -/curl-8.14.1.tar.gz /git-manpages-2.54.0.tar.gz /hyx-2026.01.11.tar.xz /less-643.tar.gz diff --git a/pkg/curl/.gitignore b/pkg/curl/.gitignore @@ -1 +0,0 @@ -/src diff --git a/pkg/curl/curl_config.h b/pkg/curl/curl_config.h @@ -1,7 +1,9 @@ #define CURL_CA_BUNDLE "/etc/ssl/cert.pem" /* #undef CURL_CA_FALLBACK */ +/* #undef CURL_CA_NATIVE */ /* #undef CURL_CA_PATH */ /* #undef CURL_CA_SEARCH_SAFE */ +/* #undef CURL_DEBUG_GLOBAL_MEM */ /* #undef CURL_DEFAULT_SSL_BACKEND */ /* #undef CURL_DISABLE_ALTSVC */ /* #undef CURL_DISABLE_AWS */ @@ -32,7 +34,6 @@ /* #undef CURL_DISABLE_MQTT */ /* #undef CURL_DISABLE_NEGOTIATE_AUTH */ /* #undef CURL_DISABLE_NETRC */ -/* #undef CURL_DISABLE_NTLM */ /* #undef CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG */ /* #undef CURL_DISABLE_PARSEDATE */ #define CURL_DISABLE_POP3 1 @@ -41,19 +42,20 @@ /* #undef CURL_DISABLE_RTSP */ /* #undef CURL_DISABLE_SHA512_256 */ /* #undef CURL_DISABLE_SHUFFLE_DNS */ -#define CURL_DISABLE_SMB 1 /* #undef CURL_DISABLE_SMTP */ /* #undef CURL_DISABLE_SOCKETPAIR */ /* #undef CURL_DISABLE_TELNET */ /* #undef CURL_DISABLE_TFTP */ /* #undef CURL_DISABLE_VERBOSE_STRINGS */ /* #undef CURL_DISABLE_WEBSOCKETS */ +/* #undef CURL_ENABLE_NTLM */ +/* #undef CURL_ENABLE_SMB */ #define CURL_EXTERN_SYMBOL __attribute__((__visibility__("default"))) +/* #undef CURL_KRB5_VERSION */ #define CURL_OS "oasis" /* #undef CURL_WITH_MULTI_SSL */ #define GETHOSTNAME_TYPE_ARG2 size_t #define HAVE_ACCEPT4 1 -/* #undef HAVE_ADDRESS_FAMILY */ #define HAVE_ALARM 1 /* #undef HAVE_ARC4RANDOM */ #define HAVE_ARPA_INET_H 1 @@ -68,6 +70,7 @@ /* #undef HAVE_CLOSESOCKET */ /* #undef HAVE_CLOSESOCKET_CAMEL */ #define HAVE_DECL_FSEEKO 1 +/* #undef HAVE_DES_ECB_ENCRYPT */ #define HAVE_DIRENT_H 1 #define HAVE_DLFCN_H 1 #define HAVE_EVENTFD 1 @@ -80,7 +83,6 @@ #define HAVE_FSETXATTR 1 #define HAVE_FSETXATTR_5 1 /* #undef HAVE_FSETXATTR_6 */ -#define HAVE_FTRUNCATE 1 #define HAVE_GETADDRINFO 1 #define HAVE_GETADDRINFO_THREADSAFE 1 #define HAVE_GETEUID 1 @@ -101,6 +103,7 @@ /* #undef HAVE_GLIBC_STRERROR_R */ #define HAVE_GMTIME_R 1 /* #undef HAVE_GNUTLS_SRP */ +/* #undef HAVE_GSASL_H */ /* #undef HAVE_GSSAPI */ /* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */ /* #undef HAVE_GSSAPI_GSSAPI_H */ @@ -129,20 +132,17 @@ #define HAVE_LIBGEN_H 1 /* #undef HAVE_LIBIDN2 */ /* #undef HAVE_LIBPSL_H */ -/* #undef HAVE_LIBRTMP_RTMP_H */ /* #undef HAVE_LIBSSH */ /* #undef HAVE_LIBSSH2 */ /* #undef HAVE_LIBSSL */ -/* #undef HAVE_LIBWOLFSSH */ #define HAVE_LIBZ 1 /* #undef HAVE_LIBZSTD */ #define HAVE_LINUX_TCP_H 1 #define HAVE_LOCALE_H 1 -#define HAVE_LONGLONG 1 +#define HAVE_LOCALTIME_R 1 /* #undef HAVE_MACH_ABSOLUTE_TIME */ +/* #undef HAVE_MBEDTLS_DES_CRYPT_ECB */ #define HAVE_MEMRCHR 1 -#define HAVE_MSG_NOSIGNAL 1 -/* #undef HAVE_MSH3_H */ #define HAVE_NETDB_H 1 /* #undef HAVE_NETINET_IN6_H */ #define HAVE_NETINET_IN_H 1 @@ -153,7 +153,6 @@ /* #undef HAVE_NGHTTP3_NGHTTP3_H */ /* #undef HAVE_NGTCP2_NGTCP2_CRYPTO_H */ /* #undef HAVE_NGTCP2_NGTCP2_H */ -/* #undef HAVE_OLD_GSSMIT */ #define HAVE_OPENDIR 1 /* #undef HAVE_OPENSSL_CRYPTO_H */ /* #undef HAVE_OPENSSL_ERR_H */ @@ -161,14 +160,12 @@ /* #undef HAVE_OPENSSL_RSA_H */ /* #undef HAVE_OPENSSL_SRP */ /* #undef HAVE_OPENSSL_SSL_H */ -/* #undef HAVE_OPENSSL_X509_H */ #define HAVE_PIPE 1 #define HAVE_PIPE2 1 #define HAVE_POLL 1 #define HAVE_POLL_H 1 #define HAVE_POSIX_STRERROR_R 1 /* #undef HAVE_PROTO_BSDSOCKET_H */ -#define HAVE_PTHREAD_H 1 #define HAVE_PWD_H 1 /* #undef HAVE_QUICHE_CONN_SET_QLOG_FD */ /* #undef HAVE_QUICHE_H */ @@ -181,13 +178,11 @@ #define HAVE_SENDMMSG 1 #define HAVE_SENDMSG 1 #define HAVE_SETLOCALE 1 -/* #undef HAVE_SETMODE */ #define HAVE_SETRLIMIT 1 #define HAVE_SIGACTION 1 #define HAVE_SIGINTERRUPT 1 #define HAVE_SIGNAL 1 #define HAVE_SIGSETJMP 1 -#define HAVE_SNPRINTF 1 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 #define HAVE_SOCKET 1 #define HAVE_SOCKETPAIR 1 @@ -202,7 +197,6 @@ #define HAVE_STDLIB_H 1 #define HAVE_STRCASECMP 1 /* #undef HAVE_STRCMPI */ -#define HAVE_STRDUP 1 #define HAVE_STRERROR_R 1 /* #undef HAVE_STRICMP */ #define HAVE_STRINGS_H 1 @@ -218,16 +212,15 @@ #define HAVE_SYS_POLL_H 1 #define HAVE_SYS_RESOURCE_H 1 #define HAVE_SYS_SELECT_H 1 -#define HAVE_SYS_SOCKET_H 1 /* #undef HAVE_SYS_SOCKIO_H */ #define HAVE_SYS_STAT_H 1 -#define HAVE_SYS_TIME_H 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_UN_H 1 /* #undef HAVE_SYS_UTIME_H */ #define HAVE_SYS_XATTR_H 1 #define HAVE_TERMIOS_H 1 /* #undef HAVE_TERMIO_H */ +#define HAVE_THREADS_POSIX 1 /* #undef HAVE_TIME_T_UNSIGNED */ /* #undef HAVE_UNICODE_UIDNA_H */ #define HAVE_UNISTD_H 1 @@ -235,18 +228,16 @@ #define HAVE_UTIMES 1 #define HAVE_UTIME_H 1 /* #undef HAVE_UV_H */ -/* #undef HAVE_WOLFSSH_SSH_H */ +/* #undef HAVE_WC_DES_ECBENCRYPT */ /* #undef HAVE_WOLFSSL_BIO_NEW */ /* #undef HAVE_WOLFSSL_BIO_SET_SHUTDOWN */ /* #undef HAVE_WOLFSSL_CTX_GENERATEECHCONFIG */ -/* #undef HAVE_WOLFSSL_DES_ECB_ENCRYPT */ /* #undef HAVE_WOLFSSL_GET_PEER_CERTIFICATE */ /* #undef HAVE_WOLFSSL_SET_QUIC_USE_LEGACY_CODEPOINT */ /* #undef HAVE_WOLFSSL_USEALPN */ #define HAVE_WRITABLE_ARGV 1 /* #undef HAVE_ZSTD */ /* #undef HAVE_ZSTD_H */ -/* #undef HAVE__SETMODE */ #define LT_OBJDIR ".libs/" /* #undef NEED_LBER_H */ /* #undef NEED_REENTRANT */ @@ -263,14 +254,15 @@ #define SIZEOF_CURL_SOCKET_T 4 #define SIZEOF_INT 4 /* probe SIZEOF_LONG */ -/* #undef SIZEOF_LONG_LONG */ #define SIZEOF_OFF_T 8 /* probe SIZEOF_SIZE_T */ /* probe SIZEOF_TIME_T */ #define STDC_HEADERS 1 /* #undef USE_AMISSL */ /* #undef USE_APPLE_IDN */ +/* #undef USE_APPLE_SECTRUST */ /* #undef USE_ARES */ +/* #undef USE_BACKTRACE */ #define USE_BEARSSL 1 /* #undef USE_ECH */ /* #undef USE_GNUTLS */ @@ -278,34 +270,28 @@ /* #undef USE_HTTPSRR */ #define USE_IPV6 1 /* #undef USE_LIBPSL */ -/* #undef USE_LIBRTMP */ /* #undef USE_LIBSSH */ /* #undef USE_LIBSSH2 */ /* #undef USE_LIBUV */ /* #undef USE_MBEDTLS */ -/* #undef USE_MSH3 */ /* #undef USE_NGHTTP2 */ /* #undef USE_NGHTTP3 */ /* #undef USE_NGTCP2 */ /* #undef USE_OPENLDAP */ /* #undef USE_OPENSSL */ -/* #undef USE_OPENSSL_QUIC */ /* #undef USE_QUICHE */ +/* #undef USE_RESOLV_ARES */ +#define USE_RESOLV_THREADED 1 /* #undef USE_RUSTLS */ /* #undef USE_SCHANNEL */ -/* #undef USE_SECTRANSP */ /* #undef USE_SSLS_EXPORT */ -#define USE_THREADS_POSIX 1 -/* #undef USE_THREADS_WIN32 */ /* #undef USE_TLS_SRP */ #define USE_UNIX_SOCKETS 1 /* #undef USE_WATT32 */ /* #undef USE_WIN32_CRYPTO */ /* #undef USE_WIN32_IDN */ -/* #undef USE_WIN32_LARGE_FILES */ /* #undef USE_WIN32_LDAP */ /* #undef USE_WINDOWS_SSPI */ -/* #undef USE_WOLFSSH */ /* #undef USE_WOLFSSL */ #define VERSION "-" #ifndef _ALL_SOURCE diff --git a/pkg/curl/gen.lua b/pkg/curl/gen.lua @@ -45,10 +45,12 @@ lib('libcurl.a', [[ asyn-thrdd.c bufq.c bufref.c + cf-dns.c cf-h1-proxy.c cf-h2-proxy.c cf-haproxy.c cf-https-connect.c + cf-ip-happy.c cf-socket.c cfilters.c conncache.c @@ -57,24 +59,25 @@ lib('libcurl.a', [[ cookie.c cshutdn.c curl_addrinfo.c - curl_des.c curl_endian.c curl_fnmatch.c + curl_fopen.c curl_get_line.c curl_gethostname.c curl_gssapi.c curl_memrchr.c curl_ntlm_core.c curl_range.c - curl_rtmp.c curl_sasl.c curl_sha512_256.c + curl_share.c curl_sspi.c curl_threads.c curl_trc.c cw-out.c cw-pause.c dict.c + dnscache.c doh.c dynhds.c easy.c @@ -84,7 +87,6 @@ lib('libcurl.a', [[ fake_addrinfo.c file.c fileinfo.c - fopen.c formdata.c ftp.c ftplistparser.c @@ -111,8 +113,6 @@ lib('libcurl.a', [[ idn.c if2ip.c imap.c - inet_ntop.c - krb5.c ldap.c llist.c macos.c @@ -124,6 +124,7 @@ lib('libcurl.a', [[ mqtt.c multi.c multi_ev.c + multi_ntfy.c netrc.c noproxy.c openldap.c @@ -131,16 +132,16 @@ lib('libcurl.a', [[ pingpong.c pop3.c progress.c + protocol.c psl.c rand.c - rename.c + ratelimit.c request.c rtsp.c select.c sendf.c setopt.c sha256.c - share.c slist.c smb.c smtp.c @@ -148,15 +149,15 @@ lib('libcurl.a', [[ socks.c socks_gssapi.c socks_sspi.c - speedcheck.c splay.c strcase.c - strdup.c strequal.c strerror.c system_win32.c telnet.c tftp.c + thrdpool.c + thrdqueue.c transfer.c uint-bset.c uint-hash.c @@ -168,14 +169,22 @@ lib('libcurl.a', [[ ws.c curlx/( base64.c + basename.c dynbuf.c + fopen.c + inet_ntop.c inet_pton.c multibyte.c nonblock.c + snprintf.c + strcopy.c + strdup.c + strerr.c strparse.c timediff.c timeval.c version_win32.c + wait.c warnless.c winapi.c ) @@ -195,18 +204,17 @@ lib('libcurl.a', [[ vauth.c ) vtls/( + apple.c bearssl.c cipher_suite.c gtls.c hostcheck.c keylog.c mbedtls.c - mbedtls_threadlock.c openssl.c rustls.c schannel.c schannel_verify.c - sectransp.c vtls.c vtls_scache.c vtls_spack.c @@ -214,9 +222,7 @@ lib('libcurl.a', [[ x509asn1.c ) vquic/( - curl_msh3.c curl_ngtcp2.c - curl_osslq.c curl_quiche.c vquic.c vquic-tls.c @@ -224,8 +230,7 @@ lib('libcurl.a', [[ vssh/( libssh.c libssh2.c - curl_path.c - wolfssh.c + vssh.c ) ) $builddir/pkg/bearssl/libbearssl.a @@ -238,7 +243,6 @@ exe('curl', [[ config2setopts.c slist_wc.c terminal.c - tool_bname.c tool_cb_dbg.c tool_cb_hdr.c tool_cb_prg.c @@ -268,10 +272,8 @@ exe('curl', [[ tool_parsecfg.c tool_progress.c tool_setopt.c - tool_sleep.c tool_ssls.c tool_stderr.c - tool_strdup.c tool_urlglob.c tool_util.c tool_vms.c @@ -279,10 +281,11 @@ exe('curl', [[ tool_writeout_json.c tool_xattr.c var.c + toolx/(tool_time.c) ) libcurl.a.d ]]) file('bin/curl', '755', '$outdir/curl') -fetch 'curl' +fetch 'git' diff --git a/pkg/curl/patch/0001-bearssl-Remove-unnecessary-CA-blob-length-check.patch b/pkg/curl/patch/0001-bearssl-Remove-unnecessary-CA-blob-length-check.patch @@ -1,29 +0,0 @@ -From e81451b1773b64d19392a4802b178b7b0f325b2a Mon Sep 17 00:00:00 2001 -From: Michael Forney <mforney@mforney.org> -Date: Mon, 15 Nov 2021 13:10:02 -0800 -Subject: [PATCH] bearssl: Remove unnecessary CA blob length check - -BearSSL APIs take a size_t length parameter, so unlike OpenSSL, -there is no conversion to int and no reason to check that it's less -than INT_MAX. ---- - lib/vtls/bearssl.c | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/lib/vtls/bearssl.c b/lib/vtls/bearssl.c -index 4b65244..0590d91 100644 ---- a/lib/vtls/bearssl.c -+++ b/lib/vtls/bearssl.c -@@ -135,9 +135,6 @@ static CURLcode load_cafile(struct cafile_source *source, - return CURLE_SSL_CACERT_BADFILE; - } - -- if(source->type == CAFILE_SOURCE_BLOB && source->len > (size_t)INT_MAX) -- return CURLE_SSL_CACERT_BADFILE; -- - ca.err = CURLE_OK; - ca.in_cert = FALSE; - ca.anchors = NULL; --- -2.49.0 - diff --git a/pkg/curl/sha256 b/pkg/curl/sha256 @@ -1 +0,0 @@ -6766ada7101d292b42b8b15681120acd68effa4a9660935853cf6d61f0d984d4 curl-8.14.1.tar.gz diff --git a/pkg/curl/src b/pkg/curl/src @@ -0,0 +1 @@ +Subproject commit e47c93992c1d517477c7304cb48d23d6a79b3b0c diff --git a/pkg/curl/url b/pkg/curl/url @@ -1 +0,0 @@ -url = "https://curl.se/download/curl-8.14.1.tar.gz" diff --git a/pkg/curl/ver b/pkg/curl/ver @@ -1 +1 @@ -8.14.1 r1 +8.20.0