SHA256
8
0
forked from pool/curl

2 Commits

Author SHA256 Message Date
751f239008 Accepting request 1294773 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1294773
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/curl?expand=0&rev=218
2025-07-22 10:54:04 +00:00
b6b0cf9ac0 - 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

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/curl?expand=0&rev=412
2025-07-21 09:36:38 +00:00
8 changed files with 65 additions and 290 deletions

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

Binary file not shown.

View File

@@ -1,11 +0,0 @@
-----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-----

3
curl-8.15.0.tar.xz Normal file
View File

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

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

@@ -0,0 +1,11 @@
-----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-----

View File

@@ -1,147 +0,0 @@
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,3 +1,53 @@
-------------------------------------------------------------------
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>

View File

@@ -36,7 +36,7 @@
%endif
Name: curl%{?psuffix}
Version: 8.14.1
Version: 8.15.0
Release: 0
Summary: A Tool for Transferring Data from URLs
License: curl
@@ -51,10 +51,6 @@ 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 fix return code with --fail when --retry is used
Patch4: fix-return-code-with-retry.patch
# PATCH-FIX-UPSTREAM bsc#1246197 Fix the --ftp-pasv option in curl v8.14.1
Patch5: curl-fix--ftp-pasv.patch
BuildRequires: groff
BuildRequires: libtool
BuildRequires: pkgconfig

View File

@@ -1,124 +0,0 @@
From b42776b4f4a6e9c9f5e3ff49d7bf610ad99c45c9 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Mon, 9 Jun 2025 08:37:49 +0200
Subject: [PATCH] tool_operate: fix return code when --retry is used but not
triggered
Verify with test 752
Reported-by: fjaell on github
Fixes #17554
Closes #17559
---
src/tool_operate.c | 3 +-
tests/data/Makefile.am | 2 +-
tests/data/test752 | 72 ++++++++++++++++++++++++++++++++++++++++++
3 files changed, 75 insertions(+), 2 deletions(-)
create mode 100644 tests/data/test752
diff --git a/src/tool_operate.c b/src/tool_operate.c
index 24e79e6f61fa..2397de1686d9 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -548,8 +548,9 @@ static CURLcode retrycheck(struct OperationConfig *config,
*retryp = TRUE;
per->num_retries++;
*delayms = sleeptime;
+ result = CURLE_OK;
}
- return CURLE_OK;
+ return result;
}
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 446674605835..ab21e0e220be 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -107,7 +107,7 @@ test709 test710 test711 test712 test713 test714 test715 test716 test717 \
test718 test719 test720 test721 test722 test723 test724 test725 test726 \
test727 test728 test729 test730 test731 test732 test733 test734 test735 \
test736 test737 test738 test739 test740 test741 test742 test743 test744 \
-test745 test746 test747 test748 test749 test750 test751 \
+test745 test746 test747 test748 test749 test750 test751 test752 \
\
test780 test781 test782 test783 test784 test785 test786 test787 test788 \
test789 test790 test791 \
diff --git a/tests/data/test752 b/tests/data/test752
new file mode 100644
index 000000000000..00f14909d125
--- /dev/null
+++ b/tests/data/test752
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-f
+--retry
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data crlf="yes">
+HTTP/1.1 404 nopes
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+
+<datacheck crlf="yes">
+HTTP/1.1 404 nopes
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+--retry and -f on a HTTP 404 response
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER -f --retry 1
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol crlf="yes">
+GET /%TESTNUMBER HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+User-Agent: curl/%VERSION
+Accept: */*
+
+</protocol>
+<errorcode>
+22
+</errorcode>
+</verify>
+</testcase>