1 Commits

Author SHA256 Message Date
747c44eab3 Sync changes to SLFO-1.2 branch 2025-08-20 09:11:02 +02:00
7 changed files with 164 additions and 109 deletions

BIN
curl-8.14.1.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

11
curl-8.14.1.tar.xz.asc Normal file
View File

@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEJ+3q8i86vOtQ25oSXMkI/bceEsIFAmg/3PcACgkQXMkI/bce
EsJqDAf/Q6bzaPr1MlnbF3yFwzpMNY4ZH6SXWvmztLaFksrNFM8fuby00yNQ02pi
4kfyIWgR4SRpHq2rmM//JudwRO5vObEctrtw/bQWR9IQ/rkrt2RtwDfFXLOtq2k/
aHmmnZmQNeVJYQUpGlsehtXMCO0wIpvRK4yecHZC4ueq+UCJjrp2rJVpaKm+KOVY
2DxPA5OyBKVKV/hJXD8+7V06HnsbojyxGf4Wg2XuXz1pa7z6lxWaf3ACf9gi+BzX
4uPRT4ZChWCqUvLBl2C95ulY0/rmem7ffJuhBC0hBDk3qpqV8tv9TyS9xoTEVVkh
sK20aPD0vcHjnTM0u/IfVVhfliNC+Q==
=mjWb
-----END PGP SIGNATURE-----

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6cd0a8a5b126ddfda61c94dc2c3fc53481ba7a35461cf7c5ab66aa9d6775b609
size 2773156

View File

@@ -1,11 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEJ+3q8i86vOtQ25oSXMkI/bceEsIFAmh3RWkACgkQXMkI/bce
EsINTwgAuJntXF2reoflyZwl6AswQzQM8O42IkHnokH5V3rAt//lWxEcIiq/tvVP
JBJb2kfd7Vq6x5W9C6EYDAbfyQCn1cnIcQLi+/RNhMELOcBmS3LR7Fjrcgx8BtSv
cxpcwpSYUQtZwLNVFUKchdeQP2NfFeixiOTJdeAu2e+e1cXVmahJR+B3GizMfhsQ
p3muyF2HZJedLLIZQc4hA9C/rdUkF1jZUumlON+Lr4ukhP8gJ0U3Dck1h8GbbVgt
eHO+Bqxzt/Y4l3L+Qaqll+3OGzjgsMK4Kx7fflcRYnX/Cr00jQluIHdCN8ghfeew
pw1ArqrWyFp/VIQaEZYSX26yb7L23g==
=tIqr
-----END PGP SIGNATURE-----

147
curl-fix--ftp-pasv.patch Normal file
View File

@@ -0,0 +1,147 @@
From 5f805eec1149c218145097ec2a24ac7fb7d46f25 Mon Sep 17 00:00:00 2001
From: Dan Fandrich <dan@coneharvesters.com>
Date: Fri, 6 Jun 2025 10:21:09 -0700
Subject: [PATCH] tool_getparam: fix --ftp-pasv
This boolean option was moved to the wrong handling function. Make it
an ARG_NONE and move it to the correct handler and add a test to
verify that the option works.
Follow-up to 698491f44
Reported-by: fjaell on github
Fixes #17545
Closes #17547
---
docs/cmdline-opts/ftp-pasv.md | 3 +-
src/tool_getparam.c | 8 ++---
tests/data/Makefile.am | 2 +-
tests/data/test1547 | 59 +++++++++++++++++++++++++++++++++++
4 files changed, 66 insertions(+), 6 deletions(-)
create mode 100644 tests/data/test1547
diff --git a/docs/cmdline-opts/ftp-pasv.md b/docs/cmdline-opts/ftp-pasv.md
index 964f9769ae59..02deee30ded8 100644
--- a/docs/cmdline-opts/ftp-pasv.md
+++ b/docs/cmdline-opts/ftp-pasv.md
@@ -6,7 +6,8 @@ Help: Send PASV/EPSV instead of PORT
Protocols: FTP
Added: 7.11.0
Category: ftp
-Multi: boolean
+Multi: mutex
+Mutexed: ftp-port
See-also:
- disable-epsv
Example:
diff --git a/src/tool_getparam.c b/src/tool_getparam.c
index 51156e46b97e..6d7020987d0a 100644
--- a/src/tool_getparam.c
+++ b/src/tool_getparam.c
@@ -153,7 +153,7 @@ static const struct LongShort aliases[]= {
{"ftp-alternative-to-user", ARG_STRG, ' ', C_FTP_ALTERNATIVE_TO_USER},
{"ftp-create-dirs", ARG_BOOL, ' ', C_FTP_CREATE_DIRS},
{"ftp-method", ARG_STRG, ' ', C_FTP_METHOD},
- {"ftp-pasv", ARG_BOOL, ' ', C_FTP_PASV},
+ {"ftp-pasv", ARG_NONE, ' ', C_FTP_PASV},
{"ftp-port", ARG_STRG, 'P', C_FTP_PORT},
{"ftp-pret", ARG_BOOL, ' ', C_FTP_PRET},
{"ftp-skip-pasv-ip", ARG_BOOL, ' ', C_FTP_SKIP_PASV_IP},
@@ -1703,6 +1703,9 @@ static ParameterError opt_none(struct GlobalConfig *global,
break;
case C_DUMP_CA_EMBED: /* --dump-ca-embed */
return PARAM_CA_EMBED_REQUESTED;
+ case C_FTP_PASV: /* --ftp-pasv */
+ tool_safefree(config->ftpport);
+ break;
case C_HTTP1_0: /* --http1.0 */
/* HTTP version 1.0 */
@@ -2293,9 +2296,6 @@ static ParameterError opt_filestring(struct GlobalConfig *global,
case C_URL: /* --url */
err = parse_url(global, config, nextarg);
break;
- case C_FTP_PASV: /* --ftp-pasv */
- tool_safefree(config->ftpport);
- break;
case C_SOCKS5: /* --socks5 */
/* socks5 proxy to use, and resolves the name locally and passes on the
resolved address */
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 1ef85cd3a2da..446674605835 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -203,7 +203,7 @@ test1508 test1509 test1510 test1511 test1512 test1513 test1514 test1515 \
test1516 test1517 test1518 test1519 test1520 test1521 test1522 test1523 \
test1524 test1525 test1526 test1527 test1528 test1529 test1530 test1531 \
test1532 test1533 test1534 test1535 test1536 test1537 test1538 test1539 \
-test1540 test1541 test1542 test1543 test1544 test1545 test1546 \
+test1540 test1541 test1542 test1543 test1544 test1545 test1546 test1547 \
\
test1550 test1551 test1552 test1553 test1554 test1555 test1556 test1557 \
test1558 test1559 test1560 test1561 test1562 test1563 test1564 test1565 \
diff --git a/tests/data/test1547 b/tests/data/test1547
new file mode 100644
index 000000000000..244151a5abd1
--- /dev/null
+++ b/tests/data/test1547
@@ -0,0 +1,59 @@
+<testcase>
+# Based on test100 & test101
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data mode="text">
+total 20
+drwxr-xr-x 8 98 98 512 Oct 22 13:06 .
+drwxr-xr-x 8 98 98 512 Oct 22 13:06 ..
+drwxr-xr-x 2 98 98 512 May 2 1996 curl-releases
+-r--r--r-- 1 0 1 35 Jul 16 1996 README
+lrwxrwxrwx 1 0 1 7 Dec 9 1999 bin -> usr/bin
+dr-xr-xr-x 2 0 1 512 Oct 1 1997 dev
+drwxrwxrwx 2 98 98 512 May 29 16:04 download.html
+dr-xr-xr-x 2 0 1 512 Nov 30 1995 etc
+drwxrwxrwx 2 98 1 512 Oct 30 14:33 pub
+dr-xr-xr-x 5 0 1 512 Oct 1 1997 usr
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP dir list PASV overriding PORT
+</name>
+<command>
+ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/ -P %CLIENTIP --ftp-pasv
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+QUIT
+</strip>
+<protocol>
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD test-%TESTNUMBER
+EPSV
+TYPE A
+LIST
+QUIT
+</protocol>
+</verify>
+</testcase>

View File

@@ -1,53 +1,3 @@
-------------------------------------------------------------------
Mon Jul 21 08:16:16 UTC 2025 - Pedro Monreal <pmonreal@suse.com>
- Update to 8.15.0:
* Changes:
- TLS: remove support for Secure Transport and BearSSL
* Bugfixes:
- cf-socket: make socket data_pending a nop
- configure: order LDAP after the SSL libraries
- curl: improve non-blocking STDIN performance
- curl_get_line: make sure lines end with newline
- curl_path: make SFTP handle a path like /~ properly.
- curlinfo: provide the 'digest' feature
- digest: fix build with disabled digest auth
- docs: note SSLS-EXPORT feature in -ssl-sessions doc
- docs: reflect that delimiter-separated capath is only OpenSSL
- docs: sync -tls-earlydata support w/ CURLOPT_SSL_OPTIONS
- http/3: report handshake with version and cipher as for TCP connections
- http2: do not delay RST send on aborted transfer
- http_ntlm: protect against null deref
- ldap: initial support for --with-ldap option
- lib: address singleuse issues
- lib: avoid reusing unclean connection
- lib: drop two interim macros in favor of native libcurl API calls
- lib: stop 'time()' debug overrides at the end of source in altsvc, hsts
- lib: unify recv/send function signatures
- memdebug.h: #undef 'fclose' before defining it
- openssl: enable readahead
- openssl: error on SSL_ERROR_SYSCALL
- openssl: fix handling of buffered data
- openssl: fix openssl engine use
- openssl: fix pkcs11 provider available check
- quic: implement CURLINFO_TLS_SSL_PTR
- schannel: allow partial chains for manual peer verification
- SCP/SFTP: avoid busy loop after EAGAIN
- socks: fix query when filter context is null
- tls: remove Curl_ssl false_start
- tool_getparam: fix --ftp-pasv
- tool_operate: fix return code when --retry is used but not triggered
- top-complexity: lower max allowed complexity threshold to 90
- url: fix NULL deref with bad password when no user is provided
- urlapi: use uppercase hex encoding
- vtls: change send/recv signatures of tls backends
- vtls: prefer ciphersuite to cipher in msgs
- vtls: prefer rustls-ffi ciphersuite name API
- xfer: manage pause bits
* Remove patches upstream:
- curl-fix--ftp-pasv.patch
- fix-return-code-with-retry.patch
-------------------------------------------------------------------
Mon Jul 14 08:29:01 UTC 2025 - Pedro Monreal <pmonreal@suse.com>
@@ -55,28 +5,11 @@ Mon Jul 14 08:29:01 UTC 2025 - Pedro Monreal <pmonreal@suse.com>
* tool_getparam: fix --ftp-pasv [5f805ee]
* Add curl-fix--ftp-pasv.patch
-------------------------------------------------------------------
Wed Jul 2 20:12:07 UTC 2025 - Dirk Müller <dmueller@suse.com>
- add fix-return-code-with-retry.patch to fix return code
being successful even on failures when using -f --retry
-------------------------------------------------------------------
Mon Jun 30 09:38:09 UTC 2025 - Pedro Monreal <pmonreal@suse.com>
- Disable insecure NTLM authentication support [bsc#1245491, jsc#PED-12960]
-------------------------------------------------------------------
Mon Jun 23 09:12:46 UTC 2025 - Dirk Müller <dmueller@suse.com>
- split wcurl into a subpackage so that upgrade works (wcurl
used to be a separate package)
-------------------------------------------------------------------
Fri Jun 20 18:54:44 UTC 2025 - Georg Pfuetzenreuter <mail+rpm@georg-pfuetzenreuter.net>
- Build with experimental OpenSSL based QUIC support to enable --http3
-------------------------------------------------------------------
Fri Jun 6 08:26:03 UTC 2025 - Pedro Monreal <pmonreal@suse.com>

View File

@@ -29,14 +29,8 @@
%global psuffix %{nil}
%endif
%if 0%{?suse_version} > 1600
%bcond_without quic
%else
%bcond_with quic
%endif
Name: curl%{?psuffix}
Version: 8.15.0
Version: 8.14.1
Release: 0
Summary: A Tool for Transferring Data from URLs
License: curl
@@ -51,6 +45,8 @@ Patch1: dont-mess-with-rpmoptflags.patch
Patch2: curl-secure-getenv.patch
# PATCH-FIX-OPENSUSE bsc#1076446 protocol redirection not supported or disabled
Patch3: curl-disabled-redirect-protocol-message.patch
# PATCH-FIX-UPSTREAM bsc#1246197 Fix the --ftp-pasv option in curl v8.14.1
Patch4: curl-fix--ftp-pasv.patch
BuildRequires: groff
BuildRequires: libtool
BuildRequires: pkgconfig
@@ -58,9 +54,6 @@ BuildRequires: pkgconfig(libidn2)
# Disable metalink [bsc#1188218, CVE-2021-22923][bsc#1188217, CVE-2021-22922]
# BuildRequires: pkgconfig(libmetalink)
BuildRequires: pkgconfig(libnghttp2)
%if %{with quic}
BuildRequires: pkgconfig(libnghttp3)
%endif
BuildRequires: pkgconfig(libpsl)
BuildRequires: pkgconfig(libzstd)
BuildRequires: pkgconfig(zlib)
@@ -138,17 +131,6 @@ BuildArch: noarch
%description zsh-completion
ZSH command line completion support for %name.
%package -n wcurl
Summary: simple wrapper around curl to easily download files
Requires: curl >= %{version}
Obsoletes: wcurl >= 2025
%description -n wcurl
A simple curl wrapper which lets you use curl to download files
without having to remember any parameters.
Simply call wcurl with a list of URLs you want to download and
wcurl will pick sane defaults.
%endif
%prep
@@ -181,10 +163,6 @@ sed -i 's/\(link_all_deplibs=\)unknown/\1no/' configure
%endif
--with-libidn2 \
--with-nghttp2 \
%if %{with quic}
--with-nghttp3 \
--with-openssl-quic \
%endif
--enable-docs \
%if %{with mini}
--disable-dict \
@@ -264,9 +242,6 @@ popd
%doc docs/{BUGS.md,FAQ,FEATURES.md,TODO,TheArtOfHttpScripting.md}
%{_bindir}/curl
%{_mandir}/man1/curl.1%{?ext_man}
%files -n wcurl
%license COPYING
%{_bindir}/wcurl
%{_mandir}/man1/wcurl.1%{?ext_man}