Skip to content

Update proxy-aware samples with new proxy options #274

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

Merged
merged 4 commits into from
May 18, 2021
Merged

Update proxy-aware samples with new proxy options #274

merged 4 commits into from
May 18, 2021

Conversation

bretambrose
Copy link
Contributor

  • Update crt to 0.13.7 to pull in some bugfixes
  • Update mqtt samples to also support direct mqtt connections via an http proxy

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Copy link
Contributor

@justinboswell justinboswell left a comment

Choose a reason for hiding this comment

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

Fix-or-dont-and-ship!

@bretambrose bretambrose merged commit 57ded00 into main May 18, 2021
@bretambrose bretambrose deleted the Proxy2 branch May 18, 2021 19:35
@schoy
Copy link

schoy commented Jul 12, 2021

@bretambrose Can you give me some high-level description on how the SDK v2 support HTTP proxy from protocol perspectives? In the previous SDK, the code connected with any targeted endpoint to negotiate TLS and then MQTT protocols with socket in TCP, and typical HTTP proxy doesn't support that, unless the mqtt client support SOCKS (If the proxy also support so). What was the solution to bypass the challenge from HTTP proxy? Thanks.

@bretambrose
Copy link
Contributor Author

Not sure what you mean by challenge in that context. An http proxy can act as an arbitrary tcp-level proxy in a way not much different than SOCKS. Our proxy support (in the v2 SDK) can chain to either http or mqtt protocol-wise, but at the C level, it could really go to any protocol: https://github.com/awslabs/aws-c-http/blob/main/include/aws/http/proxy.h#L500 as once the proxy negotiation has finished, you've got a basic io channel that you could attach any kind of protocol handler to.

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.

4 participants