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

Papa charlie/master #441

Closed
wants to merge 4 commits into from
Closed

Papa charlie/master #441

wants to merge 4 commits into from

Conversation

dragonsinth
Copy link
Member

No description provided.

This change should be relatively straightforward. It is a noop outside of the
context of xDS (as demonstrated by the fact that the tests all pass), but it
enables xDS-provided certificates (i.e. the ones that would be
provided/specified in GRPC_XDS_BOOTSTRAP). See proposal
[A29](https://github.com/grpc/proposal/blob/master/A29-xds-tls-security.md#go)
for additional detail.
grpcurl.go Outdated
Comment on lines 710 to 714

func (c *errSignalingCreds) UsesXDS() bool {
xc, ok := c.TransportCredentials.(interface{ UsesXDS() bool })
return ok && xc.UsesXDS()
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is necessary. I checked through it with a debugger, errSignalingCreds will implement UsesXDS as long as the TransportCredentials does

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you remove ths thunk, TestXdsWrapping will fail.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nevermind, you are totally right, you do need to explicitly implement the interface. The part I don't like about this in general though is that that is completely hidden in the code. It feels strange that that's how it's wired in. In the later versions of grpc-go, are there new interfaces like this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No clue. See my other comment tho-- it looks to me like grpclib only cares about UsesXDS on the server side transport. We're only using client, so I think we could just rip this out. But you'd need to test it for me.

@PapaCharlie
Copy link
Contributor

Oh also, it seems the UsesXDS interface disappeared in HEAD of go-grpc anyway, so this is totally moot!

@dragonsinth
Copy link
Member Author

Oh also, it seems the UsesXDS interface disappeared in HEAD of go-grpc anyway, so this is totally moot!

So we're on 1.59.0. I scanned through the gRPC lib and it looks like all of the existing uses even in that version are server-side only. So I think maybe we don't need this on the client at all. Can you try it out without:?

@dragonsinth dragonsinth deleted the PapaCharlie/master branch February 12, 2024 18:49
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.

2 participants