From 978bdb433bd6bdf173ae8c8b0464f2e97f988909 Mon Sep 17 00:00:00 2001 From: Sascha Grunert Date: Mon, 5 Aug 2019 10:10:14 +0200 Subject: [PATCH] Use HTTP2MatchHeaderFieldSendSettings for incoming gRPC connections gRPC clients which wait until they receive a `SETTINGS` frame may not be able to connect to CRI-O because of a limitation to cmux: - https://github.com/soheilhy/cmux#limitations The issue seems not yet solved and causes impossible connection when upgrading cri-tools to the latest version of gRPC. A possible workaround is to export the environment variable: `GRPC_GO_REQUIRE_HANDSHAKE=off`. Reference: https://github.com/grpc/grpc-go/issues/2636 Signed-off-by: Sascha Grunert --- cmd/crio/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/crio/main.go b/cmd/crio/main.go index 89d3b1683bb..45c00c80138 100644 --- a/cmd/crio/main.go +++ b/cmd/crio/main.go @@ -673,7 +673,7 @@ func main() { } m := cmux.New(lis) - grpcL := m.Match(cmux.HTTP2HeaderField("content-type", "application/grpc")) + grpcL := m.MatchWithWriters(cmux.HTTP2MatchHeaderFieldSendSettings("content-type", "application/grpc")) httpL := m.Match(cmux.HTTP1Fast()) infoMux := service.GetInfoMux()