From ea75b22cbab9b813b7a5ec2fe69229f314861749 Mon Sep 17 00:00:00 2001
From: JoshuaMoelans <60878493+JoshuaMoelans@users.noreply.github.com>
Date: Thu, 21 Nov 2024 13:27:15 +0100
Subject: [PATCH 1/3] feat: add proxy support overview

---
 .../platforms/native/configuration/transports.mdx | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/docs/platforms/native/configuration/transports.mdx b/docs/platforms/native/configuration/transports.mdx
index 46346448cf72f..2c159e8fca762 100644
--- a/docs/platforms/native/configuration/transports.mdx
+++ b/docs/platforms/native/configuration/transports.mdx
@@ -49,14 +49,23 @@ The transport is invoked in the same thread as the call to
 `sentry_capture_event`. Consider to offload network communication to a
 background thread or thread pool to avoid blocking execution.
 
-## Using an HTTP Proxy
+## Using a Proxy
 
-The Native SDK allows the configuration of an HTTP proxy through which requests can be tunneled to our backend. This proxy must allow `CONNECT` requests to establish a proxy connection. It can be configured via the following option interface:
+The Native SDK allows the configuration of an HTTP or SOCKS5 proxy through which requests can be tunneled to our backend. This proxy must allow `CONNECT` requests to establish a proxy connection. It can be configured via the following option interface:
 
 ```c
 sentry_options_t *options = sentry_options_new();
-sentry_options_set_http_proxy(options, "http://my.proxy:10010");
+sentry_options_set_proxy(options, "http://my.proxy:10010");
 sentry_init(options);
 
 /* ... */
 ```
+
+
+We support HTTP proxies on all platforms, and SOCKS5 proxies on Linux and macOS. Depending on the platform, the transport provides a fallback in case the proxy is not reachabled. The following table shows the expected behaviour.
+
+| Platform | http-proxy                                          | socks-proxy                                          |
+|----------|-----------------------------------------------------|------------------------------------------------------|
+| Windows  | Internal: fallback <br /> Crashpad: fallback        | N/A                                                  |
+| Linux    | Internal: fallback <br />  Crashpad: fallback       | Internal: no fallback <br />  Crashpad: no fallback  |
+| macOS    | Internal: no fallback <br />  Crashpad: no fallback | Internal: no fallback <br />  Crashpad: fallback     |

From 79be8c270acbef31f17af2921ae88ba849357007 Mon Sep 17 00:00:00 2001
From: JoshuaMoelans <60878493+JoshuaMoelans@users.noreply.github.com>
Date: Thu, 21 Nov 2024 13:35:50 +0100
Subject: [PATCH 2/3] added socks proxy code snippet + cleanup

---
 docs/platforms/native/configuration/transports.mdx | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/docs/platforms/native/configuration/transports.mdx b/docs/platforms/native/configuration/transports.mdx
index 2c159e8fca762..e4b290c3eadfe 100644
--- a/docs/platforms/native/configuration/transports.mdx
+++ b/docs/platforms/native/configuration/transports.mdx
@@ -51,11 +51,19 @@ background thread or thread pool to avoid blocking execution.
 
 ## Using a Proxy
 
-The Native SDK allows the configuration of an HTTP or SOCKS5 proxy through which requests can be tunneled to our backend. This proxy must allow `CONNECT` requests to establish a proxy connection. It can be configured via the following option interface:
+The Native SDK allows the configuration of an HTTP (CONNECT) or SOCKS5 proxy through which requests can be tunneled to our backend. It can be configured via the following option interface:
 
 ```c
 sentry_options_t *options = sentry_options_new();
-sentry_options_set_proxy(options, "http://my.proxy:10010");
+sentry_options_set_proxy(options, "http://my.proxy:8080");
+sentry_init(options);
+
+/* ... */
+```
+The same function can also be used for the SOCKS5 proxy:
+```c
+sentry_options_t *options = sentry_options_new();
+sentry_options_set_proxy(options, "socks5://my.proxy:1080");
 sentry_init(options);
 
 /* ... */

From 7e939c04becbb1ef09ec1c8cba2d6210bb5526a4 Mon Sep 17 00:00:00 2001
From: JoshuaMoelans <60878493+JoshuaMoelans@users.noreply.github.com>
Date: Thu, 21 Nov 2024 13:42:56 +0100
Subject: [PATCH 3/3] chore: add highlighting for technical terms

---
 docs/platforms/native/configuration/transports.mdx | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/docs/platforms/native/configuration/transports.mdx b/docs/platforms/native/configuration/transports.mdx
index e4b290c3eadfe..b82f576170809 100644
--- a/docs/platforms/native/configuration/transports.mdx
+++ b/docs/platforms/native/configuration/transports.mdx
@@ -51,7 +51,7 @@ background thread or thread pool to avoid blocking execution.
 
 ## Using a Proxy
 
-The Native SDK allows the configuration of an HTTP (CONNECT) or SOCKS5 proxy through which requests can be tunneled to our backend. It can be configured via the following option interface:
+The Native SDK allows the configuration of an `HTTP` (`CONNECT`) or `SOCKS5` proxy through which requests can be tunneled to our backend. It can be configured via the following option interface:
 
 ```c
 sentry_options_t *options = sentry_options_new();
@@ -60,7 +60,7 @@ sentry_init(options);
 
 /* ... */
 ```
-The same function can also be used for the SOCKS5 proxy:
+The same function can also be used for the `SOCKS5` proxy:
 ```c
 sentry_options_t *options = sentry_options_new();
 sentry_options_set_proxy(options, "socks5://my.proxy:1080");
@@ -70,7 +70,7 @@ sentry_init(options);
 ```
 
 
-We support HTTP proxies on all platforms, and SOCKS5 proxies on Linux and macOS. Depending on the platform, the transport provides a fallback in case the proxy is not reachabled. The following table shows the expected behaviour.
+We support `HTTP` proxies on all platforms, and `SOCKS5` proxies on Linux and macOS. Depending on the platform, the transport provides a fallback in case the proxy is not reachabled. The following table shows the expected behaviour.
 
 | Platform | http-proxy                                          | socks-proxy                                          |
 |----------|-----------------------------------------------------|------------------------------------------------------|
