Bug 2144277

Summary: curl: (92) HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
Product: [Fedora] Fedora Reporter: Rolf Fokkens <rolf>
Component: curlAssignee: Kamil Dudka <kdudka>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 36CC: kdudka, lzaoral, msekleta, paul, rjones, svashisht
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: curl-7.85.0-4.fc37 curl-7.82.0-11.fc36 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-11-28 01:15:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 910269    

Description Rolf Fokkens 2022-11-20 13:17:58 UTC
Description of problem:
curl-7.85.0-2.fc37.x86_64 fails to access HTTP/2 sites previously accessible in Fedora 36


Version-Release number of selected component (if applicable):
curl-7.85.0-2.fc37.x86_64

How reproducible:
100%

Steps to Reproduce:
1. curl https://www.phaitality.ai/

Actual results:
curl: (92) HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)

Expected results:
HTML contents

Additional info:
This also impacts yum repo's hosted this way

Comment 1 Kamil Dudka 2022-11-21 12:24:08 UTC
Thank you for reporting it!  I will backport the upstream fix...

Comment 2 Kamil Dudka 2022-11-21 13:05:32 UTC
Upstream issue 9171 was fixed with https://github.com/curl/curl/commit/b9b6148c45a00d675d5bb261bf4cbb45468ad807 (which is already included in curl-7.85.0) whereas the bug in question seems to be fixed with https://github.com/curl/curl/commit/eafc2b14ac9e40377168b46cab3f1d90c3f32f45

I will pick both the fixes for f36 and the latter for f37 only.

Comment 3 Kamil Dudka 2022-11-21 13:32:15 UTC
Unfortunately, the fix only takes an effect if libcurl is built against nghttp2-1.50.0 or newer.  So we need to update nghttp2 first...

Comment 4 Fedora Update System 2022-11-21 13:53:06 UTC
FEDORA-2022-888dfc8170 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-888dfc8170

Comment 5 Fedora Update System 2022-11-21 13:53:06 UTC
FEDORA-2022-cc6a27bd2c has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-cc6a27bd2c

Comment 6 Kamil Dudka 2022-11-21 13:56:20 UTC
Let's wait until the new builds of nghttp2 stabilize.  Then I will proceed with the fixed builds of curl.

Comment 7 amatej 2022-11-21 14:02:36 UTC
*** Bug 2144279 has been marked as a duplicate of this bug. ***

Comment 8 Fedora Update System 2022-11-22 02:28:23 UTC
FEDORA-2022-888dfc8170 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-888dfc8170`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-888dfc8170

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2022-11-22 02:30:31 UTC
FEDORA-2022-cc6a27bd2c has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-cc6a27bd2c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-cc6a27bd2c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2022-11-24 01:25:54 UTC
FEDORA-2022-888dfc8170 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 11 Fedora Update System 2022-11-24 01:32:20 UTC
FEDORA-2022-cc6a27bd2c has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 14 Fedora Update System 2022-11-24 13:23:57 UTC
FEDORA-2022-74d54d2fe1 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-74d54d2fe1

Comment 15 Fedora Update System 2022-11-24 13:23:58 UTC
FEDORA-2022-9f0823bd26 has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-9f0823bd26

Comment 16 Richard W.M. Jones 2022-11-24 14:51:34 UTC
Be careful about upgrading to this package alone because it breaks
lots of stuff, eg:

$ sudo dnf help
Traceback (most recent call last):
  File "/usr/bin/dnf", line 61, in <module>
    from dnf.cli import main
  File "/usr/lib/python3.11/site-packages/dnf/__init__.py", line 30, in <module>
    import dnf.base
  File "/usr/lib/python3.11/site-packages/dnf/base.py", line 29, in <module>
    import libdnf.transaction
  File "/usr/lib64/python3.11/site-packages/libdnf/__init__.py", line 12, in <module>
    from . import conf
  File "/usr/lib64/python3.11/site-packages/libdnf/conf.py", line 13, in <module>
    from . import _conf
ImportError: /lib64/libcurl.so.4: undefined symbol: nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation

If upgrading a dependent package is required, please add appropriate
Requires: to the package!

Comment 17 Richard W.M. Jones 2022-11-24 14:53:57 UTC
*** Bug 2148179 has been marked as a duplicate of this bug. ***

Comment 18 Richard W.M. Jones 2022-11-24 14:55:36 UTC
The error in comment 16 can be fixed using:

# wget https://kojipkgs.fedoraproject.org//packages/nghttp2/1.51.0/1.fc37/x86_64/libnghttp2-1.51.0-1.fc37.x86_64.rpm
# rpm -Uvh libnghttp2-1.51.0-1.fc37.x86_64.rpm

Comment 19 Kamil Dudka 2022-11-24 15:22:04 UTC
(In reply to Richard W.M. Jones from comment #16)
> If upgrading a dependent package is required, please add appropriate
> Requires: to the package!

Will do.  Thank you for letting me know!

Comment 21 Fedora Update System 2022-11-25 02:15:03 UTC
FEDORA-2022-74d54d2fe1 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-74d54d2fe1`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-74d54d2fe1

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 22 Fedora Update System 2022-11-25 02:33:36 UTC
FEDORA-2022-9f0823bd26 has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-9f0823bd26`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-9f0823bd26

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 23 Fedora Update System 2022-11-26 01:12:56 UTC
FEDORA-2022-9f0823bd26 has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-9f0823bd26`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-9f0823bd26

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 24 Fedora Update System 2022-11-28 01:15:22 UTC
FEDORA-2022-74d54d2fe1 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 25 Fedora Update System 2022-11-29 01:27:59 UTC
FEDORA-2022-9f0823bd26 has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.