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

feat: add support for SOCKS5 proxy #1063

Merged
merged 42 commits into from
Nov 21, 2024
Merged

Conversation

JoshuaMoelans
Copy link
Member

@JoshuaMoelans JoshuaMoelans commented Oct 29, 2024

Fixes #1030

Todo

  • Add SOCKS5 proxy option
  • Handle transport when SOCKS5 proxy is given
    -> currently checked for MacOS using Curl transport
  • also check for Linux transport
  • Add Proxy integration tests
    -> using mitmproxy
  • Add CI step to install mitmproxy
    -> replaced by adding it to requirements.txt
  • Merge Crashpad PR
  • Update changelog
  • Update docs
    -> especially about socks5 being circumvented if proxy is unavailable on mac
    -> similar story on Windows with Autoproxy circumventing the proxy if a connection is possible
    -> ❗️ this only manifested in the capture test, NOT in the crash test -> ToDo: reason about why crashpad doesn't autoproxy?
    -> document which transports/platforms don't support it (e.g. winhttp)

Copy link

codecov bot commented Oct 29, 2024

Codecov Report

Attention: Patch coverage is 50.00000% with 11 lines in your changes missing coverage. Please review.

Project coverage is 82.43%. Comparing base (d431ab9) to head (37d075c).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1063      +/-   ##
==========================================
+ Coverage   82.38%   82.43%   +0.04%     
==========================================
  Files          53       53              
  Lines        7751     7760       +9     
  Branches     1216     1215       -1     
==========================================
+ Hits         6386     6397      +11     
  Misses       1253     1253              
+ Partials      112      110       -2     
---- 🚨 Try these New Features:

@JoshuaMoelans JoshuaMoelans changed the title Added socks5_proxy to options feat: add support for SOCKS5 proxy Oct 30, 2024
@getsentry getsentry deleted a comment from github-actions bot Oct 30, 2024
Copy link

github-actions bot commented Oct 30, 2024

Messages
📖 Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 37d075c

@JoshuaMoelans JoshuaMoelans marked this pull request as ready for review November 14, 2024 16:10
Copy link
Collaborator

@supervacuus supervacuus left a comment

Choose a reason for hiding this comment

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

This looks great, thanks! Just a few minor changes and questions.

CHANGELOG.md Outdated Show resolved Hide resolved
examples/example.c Show resolved Hide resolved
include/sentry.h Outdated Show resolved Hide resolved
src/backends/sentry_backend_crashpad.cpp Outdated Show resolved Hide resolved
src/transports/sentry_transport_curl.c Outdated Show resolved Hide resolved
tests/test_integration_http.py Outdated Show resolved Hide resolved
Copy link
Collaborator

@supervacuus supervacuus left a comment

Choose a reason for hiding this comment

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

Thanks! I know this was quite the odyssey, but the resulting integration tests alone are worth the pain ❤️.

include/sentry.h Outdated Show resolved Hide resolved
CONTRIBUTING.md Outdated Show resolved Hide resolved
@JoshuaMoelans JoshuaMoelans merged commit 99b1539 into master Nov 21, 2024
24 checks passed
@JoshuaMoelans JoshuaMoelans deleted the feat/socks5_proxy_joshua branch November 21, 2024 15:14
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.

Need support for socks5proxy for sentry-native
2 participants