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

https+tcp+sni listener support #784

Merged
merged 1 commit into from
Sep 3, 2020

Conversation

nathanejohnson
Copy link
Member

@nathanejohnson nathanejohnson commented Aug 28, 2020

Adds support for the https+tcp+sni listener. Any host routes that are marked with
proto=tcp or have a scheme tcp:// will be matched for TCP SNI steering. Failing
any matches there, fallthrough will be to https matching. This resolves: #783.

clean up error handling on 'use of closed network connection' case

fix makefile tag finding stuff

fix logic for https+tcp+sni matching so that only explicit proto=tcp matches

@nathanejohnson nathanejohnson force-pushed the feature/httpstcpsni branch 2 times, most recently from 259b023 to 9f92192 Compare August 28, 2020 20:47
@nathanejohnson nathanejohnson added this to the 1.5.14 milestone Aug 28, 2020
@nathanejohnson nathanejohnson force-pushed the feature/httpstcpsni branch 6 times, most recently from 7f1f8f2 to 0cbf12c Compare August 30, 2020 17:14
@nathanejohnson
Copy link
Member Author

nathanejohnson commented Aug 31, 2020

I'll give this a few days, failing any negative reviews I'm merging this. So deadline is September 2 to voice concerns

Copy link
Contributor

@dcarbone dcarbone left a comment

Choose a reason for hiding this comment

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

lgtm, only actual problem i see is unbuffered errChan in .Close(), unless there is a reason for it to be unbuffered that i'm unaware of.

proxy/inetaf_tcpproxy.go Outdated Show resolved Hide resolved
proxy/inetaf_tcpproxy.go Show resolved Hide resolved
proxy/inetaf_tcpproxy.go Show resolved Hide resolved
proxy/inetaf_tcpproxy_integration_test.go Show resolved Hide resolved
.travis.yml Show resolved Hide resolved
Adds support for the https+tcp+sni listener.  Any routes that are marked with
proto=tcp or have a scheme tcp:// will be matched for TCP steering.  Failing
any matches there, fallthrough will be to https matching.  This resolves: fabiolb#783.

clean up error handling on 'use of closed network connection' case

fix makefile tag finding stuff

fix logic for https+tcp+sni matching so that only explicit proto=tcp matches

Adding an integration test

make sure proxy is listening before starting test

add buffered err chan to Close() per dcarbone

add 1.14 and 1.15 to travis tests
Copy link
Contributor

@dcarbone dcarbone left a comment

Choose a reason for hiding this comment

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

lgtm 👍

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.

Add support for HTTPS+TCP+SNI on the same listener
2 participants