--ji4+VmRTS2Z5zr+4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Package: libcurl4t64
Version: 8.7.1-2
Severity: important
Tags: upstream patch
Forwarded:
https://github.com/curl/curl/issues/13269
Dear Maintainer,
curl 8.7 no longer fills in the request_size field. This has been
reported upstream in the following issue:
https://github.com/curl/curl/issues/13269
This causes at least ruby-ethon, a Ruby library that wraps libcurl via
FFI, to fail its test suite (after fixing it to not hardcode libcurl4 as
a dependency), like this:
----------------8<----------------8<----------------8<----------------- Failures:
1) Ethon::Easy::Informations#request_size returns 53
Failure/Error: expect(easy.request_size).to eq(53)
expected: 53
got: 0
(compared using ==)
# ./spec/ethon/easy/informations_spec.rb:92:in `block (3 levels) in <top (required)>'
Finished in 5.06 seconds (files took 0.80166 seconds to load)
578 examples, 1 failure, 2 pending
Failed examples:
rspec ./spec/ethon/easy/informations_spec.rb:91 # Ethon::Easy::Informations#request_size returns 53
----------------8<----------------8<----------------8<-----------------
(the same test suite passes just fine against libcurl4 8.6.0-3 from testing.)
I have tested the patch in
https://github.com/curl/curl/pull/13275 and
it indeed fixes this. I'm including a patch against the Debian package
in the archive that includes this patch in debian/patches, with the
fuzzyness already removed, and updates debian/patches/series accordingly.
-- System Information:
Debian Release: trixie/sid
APT prefers testing
APT policy: (900, 'testing'), (500, 'stable-security'), (500, 'unstable'), (1, 'experimental')
Architecture: arm64 (aarch64)
Kernel: Linux 6.6.15-arm64 (SMP w/32 CPU threads)
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages libcurl4t64 depends on:
ii libbrotli1 1.1.0-2+b3
ii libc6 2.37-15
ii libgssapi-krb5-2 1.20.1-5+b1
ii libidn2-0 2.3.7-2
ii libldap-2.5-0 2.5.13+dfsg-5+b3
ii libnghttp2-14 1.59.0-1
pn libpsl5t64 <none>
ii librtmp1 2.4+20151223.gitfa8646d.1-2+b2
pn libssh2-1t64 <none>
pn libssl3t64 <none>
ii libzstd1 1.5.5+dfsg2-2
ii zlib1g 1:1.3.dfsg-3+b1
Versions of packages libcurl4t64 recommends:
ii ca-certificates 20240203
libcurl4t64 suggests no packages.
--ji4+VmRTS2Z5zr+4
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="curl.diff" Content-Transfer-Encoding: quoted-printable
diff -Nru curl-8.7.1/debian/patches/Fix_CURLINFO_REQUEST_SIZE.patch curl-8.7.1/debian/patches/Fix_CURLINFO_REQUEST_SIZE.patch
--- curl-8.7.1/debian/patches/Fix_CURLINFO_REQUEST_SIZE.patch 1970-01-01 00:00:00.000000000 +0000
+++ curl-8.7.1/debian/patches/Fix_CURLINFO_REQUEST_SIZE.patch 2024-04-19 13:18:39.000000000 +0000
@@ -0,0 +1,210 @@
+From 2793acbfc5e89fb130b1d4e045cb6cd7b6549412 Mon Sep 17 00:00:00 2001
+From: Stefan Eissing <
stefan@eissing.org>
+Date: Thu, 4 Apr 2024 11:06:06 +0200
+Subject: [PATCH] Fix CURLINFO_REQUEST_SIZE, add tests for transfer infos
+ reported
+
+- refs #13269
+- tests for 'size_request' and other stats reported, for
+ presence and consistency
+---
+ lib/transfer.c | 3 +
+ tests/http/test_16_info.py | 162 ++++++++++++++++++++++++++++++++++++
+ tests/http/testenv/httpd.py | 1 +
+ 3 files changed, 166 insertions(+)
+ create mode 100644 tests/http/test_16_info.py
+
+Index: curl-8.7.1/lib/transfer.c +===================================================================
+--- curl-8.7.1.orig/lib/transfer.c
++++ curl-8.7.1/lib/transfer.c
+@@ -1221,6 +1221,9 @@ CURLcode Cur