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

CMux doesn't match Vanilla Java gRPC client #22

Closed
aramadia opened this issue Apr 12, 2016 · 1 comment
Closed

CMux doesn't match Vanilla Java gRPC client #22

aramadia opened this issue Apr 12, 2016 · 1 comment

Comments

@aramadia
Copy link

I created a cmux server as described in the example to match the application/grpc content-type HTTP2 header tag. It successfully matches against C++ and Go gRPC clients.

However, the Java client from https://github.com/grpc/grpc-java is not matched. The implementation of matchHTTP2Field blocks on framer.ReadFrame(). It reads a SETTINGS and WINDOWS_UPDATE frame, but doesn't get to the HEADER frame. Perhaps it needs to negotiate the http2 connection before it gets to the HEADER frame?

soheilhy added a commit that referenced this issue Apr 15, 2016
As reported in issue #22 reports that Java gRPC clients cannot
handshake with cmux'ed gRPC server, since the client does not
immediately send a header with the content-type field. The reason
is that the java client, block on receiving the first SETTING
frame.

Add MatchWriter that can match and write on the connection. Implement
a MatchWriter that writes a SETTING frame once it receives a SETTING
frame.
soheilhy added a commit that referenced this issue Apr 24, 2016
As reported in issue #22 reports that Java gRPC clients cannot
handshake with cmux'ed gRPC server, since the client does not
immediately send a header with the content-type field. The reason
is that the java client, block on receiving the first SETTING
frame.

Add MatchWriter that can match and write on the connection. Implement
a MatchWriter that writes a SETTING frame once it receives a SETTING
frame.
@soheilhy
Copy link
Owner

Thanks for reporting the issue. It should be fixed with the new API.

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

No branches or pull requests

2 participants