Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[curl] only use HTTP2 with SSL #18577

Merged
merged 1 commit into from Oct 17, 2020
Merged

Conversation

wsnipex
Copy link
Member

@wsnipex wsnipex commented Oct 16, 2020

Description

Cloudflare decided in it's infinite wisdom not to follow standards
that allow HTTP2 requests without encryption.
This changes curl to only use HTTP2 with SSL.

Motivation and Context

Numerous reports of TMDB scrapers failing, IPTV issues..

How Has This Been Tested?

not yet. Please test on all platforms but windows, which is not affected

Screenshots (if appropriate):

Types of change

  • Bug fix (non-breaking change which fixes an issue)
  • Clean up (non-breaking change which removes non-working, unmaintained functionality)
  • Improvement (non-breaking change which improves existing functionality)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that will cause existing functionality to change)
  • Cosmetic change (non-breaking change that doesn't touch code)
  • None of the above (please explain below)

Checklist:

  • My code follows the Code Guidelines of this project
  • My change requires a change to the documentation, either Doxygen or wiki
  • I have updated the documentation accordingly
  • I have read the Contributing document
  • I have added tests to cover my change
  • All new and existing tests passed

Cloudflare decided in it's infinite wisdom not to follow standards
that allow HTTP2 requests without encryption.
@wsnipex wsnipex added Type: Fix non-breaking change which fixes an issue Type: Improvement non-breaking change which improves existing functionality Component: Network v19 Matrix labels Oct 16, 2020
@wsnipex wsnipex added this to the Matrix 19.0-alpha 3 milestone Oct 16, 2020
@wsnipex wsnipex mentioned this pull request Oct 16, 2020
5 tasks
@sy6sy2
Copy link
Member

sy6sy2 commented Oct 16, 2020

I will try iOS, tvOS and macOS.

@sy6sy2
Copy link
Member

sy6sy2 commented Oct 16, 2020

The Gismeteo issue remains on macOS with the current Jenkins build.
Debug log with CURL log enable --> https://paste.kodi.tv/zudoxeruyi.kodi

Edit: As yol says, this error seems to be addon related and different from what this PR fix.

@nunojsa
Copy link

nunojsa commented Oct 16, 2020

Can say that this worked for me on Linux (Ubuntu Mate 20.04)

@arnova
Copy link
Member

arnova commented Oct 16, 2020

@wsnipex : Obviously there's the risk of regressions with this. An alternative could be first trying plain HTTP2 and if it fails HTTP2 with TLS (or perhaps the other way around is better anyway?). But maybe we should just see how your PR works out and keep this in mind in case issues surface.

@sy6sy2
Copy link
Member

sy6sy2 commented Oct 16, 2020

Tested with HDHomeRun guide (without this fix TV guide is empty):

  • macOS : Ok
  • tvOS : Ok
  • iOS : Ok

@wsnipex
Copy link
Member Author

wsnipex commented Oct 16, 2020

@arnova I don't see a real risk, since that setting is the curl default and behaves like all modern browsers

@KarellenX
Copy link
Member

Is there a build for this somewhere? I would like the member using FreeBSD to test this out...
https://forum.kodi.tv/showthread.php?tid=357709&pid=2982366#pid2982366

@arnova
Copy link
Member

arnova commented Oct 17, 2020

@arnova I don't see a real risk, since that setting is the curl default and behaves like all modern browsers

Ah yes, that's right ofc. Then I think we're good :-)

@wsnipex
Copy link
Member Author

wsnipex commented Oct 17, 2020

@KarellenX we don't provide freebsd builds, he would have to compile himself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backport: Done Component: Network Type: Fix non-breaking change which fixes an issue Type: Improvement non-breaking change which improves existing functionality v19 Matrix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants