Skip to content

Conversation

@pushkar2017
Copy link
Owner

Setting up the intercept in trampoline code so far.

@@ -0,0 +1,408 @@
/** @file

Choose a reason for hiding this comment

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

This seems like a bad idea - this isn't going to be a different proxy server.

starting to accept on them.

*/
struct L4RProxyAcceptor {

Choose a reason for hiding this comment

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

This should go in to "iocore/net" along with the other accept logic.

Choose a reason for hiding this comment

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

Although, really, you shouldn't need a separate Acceptor at all. For example, if the inbound connection is TLS the determination to L4 proxy it can't be made until after the Client Hello packet has been recieved, which is long after all the accept logic.

Copy link
Owner Author

Choose a reason for hiding this comment

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

I implemented a L7 interceptor (after the SSL handshake) because I thought we will need this one as well for the case: non secure incoming connection -> outgoing secure connection

I was going to implement the SSL case after that.

Choose a reason for hiding this comment

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

The Layer 4 proxying must be able to run on the same ports as other traffic, it can't require dedicate proxy ports or executables.

Copy link
Owner Author

Choose a reason for hiding this comment

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

Understood. But I thought for non SSL in, non SSL out case we will have to make the decision based on the port number.

@SolidWallOfCode
Copy link

I thought you were going to start with looking at a protocol super class for HttpSM.

@pushkar2017
Copy link
Owner Author

I didn't get that far to implement HttpSM.

@SolidWallOfCode
Copy link

I think it's a better place to start.

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.

3 participants