question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Cannot connect to yahoo.com, receiving a ProtocolError on Stream 0 after connection

See original GitHub issue

Couple of issues here: we’re not raising an exception after receiving a ProtocolError from HTTP/2 when connecting to yahoo.com. We should be bubbling that exception up to users.

The second issue is is we don’t know why yahoo is giving us this error, we have to figure that out as I’m sure it’ll impact more than just them.

I found this by running interop tests against Alexa 1000 websites.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:13 (13 by maintainers)

github_iconTop GitHub Comments

2reactions
sethmlarsoncommented, Aug 20, 2019

Certainly! Here’s the Alexa Top 1M: alexa-1m.txt.gz

1reaction
sethmlarsoncommented, Sep 2, 2019

So I discovered the issue!

We’re setting 0x8 (SETTINGS_ENABLE_CONNECT_PROTOCOL) which isn’t defined in the original standard for HTTP/2 so Yahoo is breaking the RFC for HTTP/2:

[RFC 7540 Section 6.5.2] An endpoint that receives a SETTINGS frame with any unknown or unsupported identifier MUST ignore that setting.

If you change the initial settings frame to not send that setting Yahoo doesn’t send a GOAWAY with PROTOCOL_ERROR but still doesn’t respond to us. To get a response we need to not send an empty DATA frame with end_stream=True, we need to have the end_stream=True on the HEADERS frame. 😕 Just seems like Yahoo’s implementation of HTTP/2 isn’t great but they’re also in the Alexa top 20 so we’ll probably be running into this a lot more?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Network Connection Failure received on mobile devices for ...
Learn how to connect to your Yahoo account if you receive a connection-related error when trying to access from a mobile device.
Read more >
12 Common Yahoo Issues and Errors You Can Tackle Today
12 Common Yahoo issues are resolved in our troubleshooting guide. Get back into your account, and back to sending emails today.
Read more >
How to Fix ERR_SSL_PROTOCOL_ERROR on Google Chrome
A quick guide on how to fix ERR_SSL_PROTOCOL_ERROR, Google Chrome's "This site can't provide a secure connection" message.
Read more >
Setting up Gmail for POP3 and SMTP - InMotion Hosting
In this guide, you will learn how to set up Gmail to use POP3 and SMTP, so you can send and receive messages...
Read more >
Python handling socket.error: [Errno 104] Connection reset by ...
So my server side application was just denying new connection attempts by resetting the connection after approximately 50 CLOSE_WAIT hung ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found