Skip to content

Support for h2 over UDS #442

New issue

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

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

Already on GitHub? # to your account

Closed
gila opened this issue Jan 18, 2020 · 4 comments
Closed

Support for h2 over UDS #442

gila opened this issue Jan 18, 2020 · 4 comments

Comments

@gila
Copy link

gila commented Jan 18, 2020

When using tonic/h2 over UDS, I think it should be possible to allow the '/' in the authority header. This looks related to #345 where Jan is also mentioning potential issues might arise once h2 would be used over UDS.

From RFC-3986:

For example, the "file" URI  scheme is defined so that no authority, 
an empty host, and "localhost"  all mean the end-user's machine, 
whereas the "http"  scheme considers a missing authority or
empty host invalid.

A longer description of the issue can be found at hyperium/tonic#243

Perhaps it would be possible to support file:// (and then also perhaps the unix:// scheme) and depending on that, determine if the authority header is valid for the current scheme?

@saschagrunert
Copy link

Hey, any update on this one? I think the addition would make sense, wouldn't it?

@nox
Copy link
Contributor

nox commented May 4, 2021

AFAICT grpc-go stopped sending a malformed authority so I'm closing this.

@nox nox closed this as completed May 4, 2021
@nightkr
Copy link

nightkr commented Nov 23, 2021

For what it's worth, I'm still getting this with grpc-go v1.38.0, which was released on 2021-05-19 (a few weeks after your comment):

2021-11-23T22:02:25.675177Z DEBUG Connection{peer=Server}: h2::server: malformed headers: malformed authority (b"/foo/bar.sock"): invalid uri character

I'll try to reproduce with grpc-go v1.42.0 (the current latest release).

@nightkr
Copy link

nightkr commented Nov 23, 2021

Same issue with grpc-go v1.42.0.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants