Skip to content

Use HTTP/1.1 for registry requests - #948

Open
danielsyauqi wants to merge 1 commit into
apple:mainfrom
danielsyauqi:fix/registry-http1
Open

danielsyauqi wants to merge 1 commit into
apple:mainfrom
danielsyauqi:fix/registry-http1

Conversation

@danielsyauqi

Copy link
Copy Markdown

Summary

Configure registry and token requests to use HTTP/1.1. A self-hosted registry can sit behind a TLS proxy that advertises HTTP/2 even though the registry backend only speaks HTTP/1.1. Negotiating HTTP/2 in that setup can produce a 421 response or a closed connection before an HTTP response arrives.

Add a TLS regression test whose server advertises both h2 and http/1.1, then checks that the registry ping arrives as an HTTP/1.1 request.

Related: apple/container#2272

Testing

  • swift test --filter RealmRequestTests (6 tests passed)
  • make check
  • make containerization

Registry endpoints can advertise HTTP/2 through a reverse proxy while their backend only supports HTTP/1.1. Configure registry clients for HTTP/1.1 and cover ALPN negotiation with a TLS regression test.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant