Commit Graph

126 Commits

Author SHA1 Message Date
Gabi
ff7f2de7d9 connlib: improve logging and detect channel close earlier (#1964)
This detects earlier when a channel disconnects and closes the peer but
more importantly it prints periodically some stats about the tunnel that
will make debugging easier.
2023-08-29 17:17:53 +00:00
Jamil
ce11fa29f0 fix(clients): SHA256 external_id to normalize before sending to portal (#1949)
* Normalizes very long or very short device IDs to a predictable length
* Ensures uniform distribution for the DB index
* Provides some basic level of privacy preservation
2023-08-29 03:24:01 +00:00
dependabot[bot]
79021a7f25 build(deps): Bump prometheus-client from 0.21.1 to 0.21.2 in /rust (#1957)
Bumps [prometheus-client](https://github.com/prometheus/client_rust)
from 0.21.1 to 0.21.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/prometheus/client_rust/releases">prometheus-client's
releases</a>.</em></p>
<blockquote>
<h2>v0.21.2</h2>
<p>See <a
href="https://github.com/prometheus/client_rust/blob/HEAD/CHANGELOG.md">changelog</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/prometheus/client_rust/blob/master/CHANGELOG.md">prometheus-client's
changelog</a>.</em></p>
<blockquote>
<h2>[0.21.2]</h2>
<h3>Added</h3>
<ul>
<li>Added <code>sub_registry_with_labels</code> method to
<code>Registry</code>.
See <a
href="https://redirect.github.com/prometheus/client_rust/pull/145">PR
145</a>.</li>
<li>Added <code>with_labels</code> and
<code>with_prefix_and_labels</code> constructors to
<code>Registry</code>.
See <a
href="https://redirect.github.com/prometheus/client_rust/pull/147">PR
147</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="97d8de8fdd"><code>97d8de8</code></a>
feat(registry): add <code>with_prefix_and_labels</code> constructor (<a
href="https://redirect.github.com/prometheus/client_rust/issues/147">#147</a>)</li>
<li><a
href="6c3c2f014b"><code>6c3c2f0</code></a>
feat(registry): add <code>sub_registry_with_labels</code> (<a
href="https://redirect.github.com/prometheus/client_rust/issues/145">#145</a>)</li>
<li><a
href="9c56d673f7"><code>9c56d67</code></a>
build(deps): update pyo3 requirement from 0.18 to 0.19 (<a
href="https://redirect.github.com/prometheus/client_rust/issues/148">#148</a>)</li>
<li><a
href="d001ba002d"><code>d001ba0</code></a>
build(deps): update criterion requirement from 0.4 to 0.5 (<a
href="https://redirect.github.com/prometheus/client_rust/issues/142">#142</a>)</li>
<li>See full diff in <a
href="https://github.com/prometheus/client_rust/compare/v0.21.1...v0.21.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=prometheus-client&package-manager=cargo&previous-version=0.21.1&new-version=0.21.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 23:51:43 +00:00
dependabot[bot]
35b8f4539a build(deps): Bump netlink-packet-core from 0.5.0 to 0.7.0 in /rust (#1959)
Bumps
[netlink-packet-core](https://github.com/rust-netlink/netlink-packet-core)
from 0.5.0 to 0.7.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-netlink/netlink-packet-core/releases">netlink-packet-core's
releases</a>.</em></p>
<blockquote>
<h2>New release 0.7.0</h2>
<h3>Breaking changes</h3>
<ul>
<li><code>NetlinkPayload::Ack</code> removed and replaced by
<code>NetlinkPayload::Error</code> where
<code>ErrorMessage.code</code> is set to None. (52732b3)</li>
</ul>
<h3>New features</h3>
<ul>
<li>Derive <code>Default</code> for <code>ErrorMessage</code>.
(3514766)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>N/A</li>
</ul>
<h2>New release 0.6.0</h2>
<h3>Breaking changes</h3>
<ul>
<li><code>NetlinkPayload::Done</code> changed to
<code>NetlinkPayload::Done(DoneMessage)</code>.
(0c75fb5)</li>
</ul>
<h3>New features</h3>
<ul>
<li>Support full done message. (0c75fb5)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>N/A</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-netlink/netlink-packet-core/blob/main/CHANGELOG">netlink-packet-core's
changelog</a>.</em></p>
<blockquote>
<h2>[0.7.0] - 2023-07-09</h2>
<h3>Breaking changes</h3>
<ul>
<li><code>NetlinkPayload::Ack</code> removed and replaced by
<code>NetlinkPayload::Error</code> where
<code>ErrorMessage.code</code> is set to None. (52732b3)</li>
</ul>
<h3>New features</h3>
<ul>
<li>Derive <code>Default</code> for <code>ErrorMessage</code>.
(3514766)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>N/A</li>
</ul>
<h2>[0.6.0] - 2023-06-26</h2>
<h3>Breaking changes</h3>
<ul>
<li><code>NetlinkPayload::Done</code> changed to
<code>NetlinkPayload::Done(DoneMessage)</code>.
(0c75fb5)</li>
</ul>
<h3>New features</h3>
<ul>
<li>Support full done message. (0c75fb5)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>N/A</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="91e71b69fe"><code>91e71b6</code></a>
New release 0.7.0</li>
<li><a
href="2c88cc3a80"><code>2c88cc3</code></a>
Revert &quot;Revert &quot;Merge
<code>NetlinkPayload::{Ack,Error}</code>&quot;&quot;</li>
<li><a
href="0e486c32b3"><code>0e486c3</code></a>
Revert &quot;Merge <code>NetlinkPayload::{Ack,Error}</code>&quot;</li>
<li><a
href="52732b3fc4"><code>52732b3</code></a>
Merge <code>NetlinkPayload::{Ack,Error}</code></li>
<li><a
href="3514766a44"><code>3514766</code></a>
Derive <code>Default</code> for <code>ErrorMessage</code></li>
<li><a
href="4de9f72fdd"><code>4de9f72</code></a>
New release 0.6.0</li>
<li><a
href="3603eb6877"><code>3603eb6</code></a>
Fix cargo clippy</li>
<li><a
href="0c75fb5fd2"><code>0c75fb5</code></a>
Support full done message</li>
<li>See full diff in <a
href="https://github.com/rust-netlink/netlink-packet-core/compare/v0.5.0...v0.7.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=netlink-packet-core&package-manager=cargo&previous-version=0.5.0&new-version=0.7.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 23:51:23 +00:00
dependabot[bot]
eabf44188a build(deps): Bump base64 from 0.21.2 to 0.21.3 in /rust (#1960)
Bumps [base64](https://github.com/marshallpierce/rust-base64) from
0.21.2 to 0.21.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md">base64's
changelog</a>.</em></p>
<blockquote>
<h1>0.21.3</h1>
<ul>
<li>Implement <code>source</code> instead of <code>cause</code> on Error
types</li>
<li>Roll back MSRV to 1.48.0 so Debian can continue to live in a time
warp</li>
<li>Slightly faster chunked encoding for short inputs</li>
<li>Decrease binary size</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6f9f734815"><code>6f9f734</code></a>
v0.21.3</li>
<li><a
href="a7e1f473d8"><code>a7e1f47</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/224">#224</a>
from marshallpierce/mina86-a</li>
<li><a
href="96b29d848e"><code>96b29d8</code></a>
Improve comments and increase test paranoia.</li>
<li><a
href="2b5112fcc5"><code>2b5112f</code></a>
Merge branch 'master' into mina86-a</li>
<li><a
href="a3f692b4ec"><code>a3f692b</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/250">#250</a>
from marshallpierce/mp/esw-test</li>
<li><a
href="a589c62cb0"><code>a589c62</code></a>
Add a test to EncoderStringWriter</li>
<li><a
href="70d2b53781"><code>70d2b53</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/249">#249</a>
from marshallpierce/mp/cleanup</li>
<li><a
href="f2a06ddf4b"><code>f2a06dd</code></a>
Misc cleanups</li>
<li><a
href="b00174920a"><code>b001749</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/246">#246</a>
from tcharding/08-09-roll-back-msrv</li>
<li><a
href="d2e75a4dc0"><code>d2e75a4</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/241">#241</a>
from EFanZh/optimize-generic-functions</li>
<li>Additional commits viewable in <a
href="https://github.com/marshallpierce/rust-base64/compare/v0.21.2...v0.21.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=base64&package-manager=cargo&previous-version=0.21.2&new-version=0.21.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-28 23:51:06 +00:00
Gabi
7d0e0acfe9 fix(connlib): assorted fixes (#1953)
* single stack ipv6/ipv4
* set mtu for linux connlib
* add iperf3 resource on dev docker-compose

---------

Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-08-28 23:47:00 +00:00
Jamil
4d84e1f12e chore(connlib): Add external ID to FFI, return fd in on_set_interface_config (#1945)
(Supersedes #1944)

* Fixes https://github.com/firezone/product/issues/649
* Passes `dns_fallback_strategy` over FFI (these are hardcoded for now)
* Incorporates @conectado 's #1944 and cleans up a few places `fd` was
still passed

Draft for now until I can test it more tomorrow

---------

Co-authored-by: conectado <gabrielalejandro7@gmail.com>
2023-08-25 15:44:08 -07:00
Jamil
d1de8eac22 feat(connlib): implement name() and mtu() for android (#1943)
Implement `name()` to retrieve the tunnel name via `TUNGETIFF`, then use
that to retrieve the mtu via `SIOCGIFMTU`.

Verified to be working:

```
2023-08-23 20:25:50.211  4830-4928  connlib                 dev.firezone.android                 D  firezone_tunnel::tun: MTU for tun0 is 1280
```

Will update the `log::debug!` calls to tracing in the next PR.
2023-08-25 05:42:08 +00:00
Gabi
e216a9e69f relay: fix stale nonce error code (#1942)
In the gateway/client we were looking at an error that looked like:

```
firezone-client-1  | 2023-08-23T20:58:50.456400Z ERROR turn::client::relay_conn: fail to refresh permissions: CreatePermission error response (error 401: Unauthorized)    
firezone-client-1  | 2023-08-23T20:58:50.456413Z  WARN turn::client::relay_conn: refresh permissions failed    
```

This was due to a slightly non-compliant behavior on the relay part
where it was responding with a 401 instead of a 438 when a nonce was
stale which is the behavior described by [RFC
5389](https://datatracker.ietf.org/doc/html/rfc5389#section-10.2.2)

This PR should fix this and we should no longer see that refresh
permissions error.
2023-08-24 16:50:54 +00:00
Jamil
3316d9098a fix(android): Fix auth flow and callback thread safety, and pass fd through FFI (#1930)
* Refactor sharedPreferences to only save the AccountId
* Update TeamId -> AccountId to match naming elsewhere
* Update JWT -> Token to avoid confusion; this token is **not** a valid
JWT and should be treated as an opaque token
* Update FFI `connect` to accept an optional file descriptor (int32) as
a first argument. This seemed to be the most straightforward way to pass
it to the tunnel stack. Retrieving it via callback is another option,
but retrieving return vars with the `jni` was more complex. We could
have used a similar approach that we did in the Apple client
(enumerating all fd's in the `new()` function until we found ours) but
this approach is [explicitly
documented/recommended](https://developer.android.com/reference/android/net/VpnService.Builder#establish())
by the Android docs so I figured it's not likely to break.

Additionally, there was a thread safety bug in the recent JNI callback
implementation that consistently crashed the VM with `JNI DETECTED ERROR
IN APPLICATION: use of invalid jobject...`. The fix was to use
`GlobalRef` which has the explicit purpose of outliving the `JNIEnv`
lifetime so that no `static` lifetimes need to be used.

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: Pratik Velani <pratikvelani@gmail.com>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-08-23 14:13:55 -07:00
dependabot[bot]
bf95d0480b build(deps): Bump clap from 4.3.21 to 4.3.23 in /rust (#1931)
Bumps [clap](https://github.com/clap-rs/clap) from 4.3.21 to 4.3.23.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/releases">clap's
releases</a>.</em></p>
<blockquote>
<h2>v4.3.23</h2>
<h2>[4.3.23] - 2023-08-18</h2>
<h3>Fixes</h3>
<ul>
<li>Fixed <code>UnknownArgumentValueParser</code> to not error on flag's
absence</li>
</ul>
<h2>v4.3.22</h2>
<h2>[4.3.22] - 2023-08-17</h2>
<h3>Features</h3>
<ul>
<li>Add <code>UnknownArgumentValueParser</code> for injecting errors for
improving the experience with errors</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
changelog</a>.</em></p>
<blockquote>
<h2>[4.3.23] - 2023-08-18</h2>
<h3>Fixes</h3>
<ul>
<li>Fixed <code>UnknownArgumentValueParser</code> to not error on flag's
absence</li>
</ul>
<h2>[4.3.22] - 2023-08-17</h2>
<h3>Features</h3>
<ul>
<li>Add <code>UnknownArgumentValueParser</code> for injecting errors for
improving the experience with errors</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b9df80c2ce"><code>b9df80c</code></a>
chore: Release</li>
<li><a
href="e46e12b7eb"><code>e46e12b</code></a>
docs: Update changelog</li>
<li><a
href="c9923119d4"><code>c992311</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5080">#5080</a>
from epage/unknown</li>
<li><a
href="56135f3ff3"><code>56135f3</code></a>
fix(builder): UnknownValueParser shouldn't error on flag absense</li>
<li><a
href="6720240577"><code>6720240</code></a>
feat(parser): Report source to value parsers</li>
<li><a
href="b55ebc9f7f"><code>b55ebc9</code></a>
test(parser): Show bad Unknown bug on flags</li>
<li><a
href="df337de701"><code>df337de</code></a>
chore: Release</li>
<li><a
href="fb8a12a739"><code>fb8a12a</code></a>
docs: Update changelog</li>
<li><a
href="b87ca2ff2c"><code>b87ca2f</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5075">#5075</a>
from epage/err</li>
<li><a
href="9f65eb0c9a"><code>9f65eb0</code></a>
refactor(error): Give caller control over suggestion</li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/v4.3.21...v4.3.23">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.3.21&new-version=4.3.23)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-23 01:31:57 +00:00
Gabi
8621953fe6 connlib: fix how we handle disconnect (#1923)
Basically we were having a panic inside a panic before, when I tried to
drop the runtime in `on_disconnect` since you can't drop a runtime
within a runtime. This PR spawns a new thread that listen for
disconnection and stops the runtime right there.

This also fixes the timer for reconnections.

Note: That I first stop it and the drop it which is redundant but I
rather be safe :)
2023-08-23 00:35:11 +00:00
dependabot[bot]
08343ef5a1 build(deps): Bump async-trait from 0.1.72 to 0.1.73 in /rust (#1932)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.72
to 0.1.73.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/async-trait/releases">async-trait's
releases</a>.</em></p>
<blockquote>
<h2>0.1.73</h2>
<ul>
<li>Prevent generated code from triggering ignored_unit_patterns
pedantic clippy lint</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f07c856870"><code>f07c856</code></a>
Release 0.1.73</li>
<li><a
href="f12f3717e6"><code>f12f371</code></a>
Resolve ignored_unit_patterns pedantic clippy lint in test suite</li>
<li><a
href="a71e0664c2"><code>a71e066</code></a>
Resolve ignored_unit_patterns pedantic clippy lint in generated
code</li>
<li><a
href="7d4e192c7d"><code>7d4e192</code></a>
Update ui test suite to nightly-2023-08-10</li>
<li><a
href="47565d9ff6"><code>47565d9</code></a>
Revert &quot;Temporarily disable -Zrandomize-layout due to rustc
ICE&quot;</li>
<li><a
href="72bd72b000"><code>72bd72b</code></a>
Temporarily disable -Zrandomize-layout due to rustc ICE</li>
<li>See full diff in <a
href="https://github.com/dtolnay/async-trait/compare/0.1.72...0.1.73">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-trait&package-manager=cargo&previous-version=0.1.72&new-version=0.1.73)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-22 22:04:16 +00:00
dependabot[bot]
186dfb95a9 build(deps): Bump anyhow from 1.0.72 to 1.0.75 in /rust (#1934)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.72 to 1.0.75.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/anyhow/releases">anyhow's
releases</a>.</em></p>
<blockquote>
<h2>1.0.75</h2>
<ul>
<li>Partially work around rust-analyzer bug (<a
href="https://redirect.github.com/rust-lang/rust-analyzer/issues/9911">rust-lang/rust-analyzer#9911</a>)</li>
</ul>
<h2>1.0.74</h2>
<ul>
<li>Add bootstrap workaround to allow rustc to depend on anyhow (<a
href="https://redirect.github.com/dtolnay/anyhow/issues/320">#320</a>,
thanks <a
href="https://github.com/RalfJung"><code>@​RalfJung</code></a>)</li>
</ul>
<h2>1.0.73</h2>
<ul>
<li>Update backtrace support to nightly's new Error::provide API (<a
href="https://redirect.github.com/rust-lang/rust/pull/113464">rust-lang/rust#113464</a>,
<a
href="https://redirect.github.com/dtolnay/anyhow/issues/319">#319</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6485caebde"><code>6485cae</code></a>
Release 1.0.75</li>
<li><a
href="238223af99"><code>238223a</code></a>
Work around ridiculous rust-analyzer behavior</li>
<li><a
href="cbade7d00a"><code>cbade7d</code></a>
Release 1.0.74</li>
<li><a
href="0798a9a635"><code>0798a9a</code></a>
Reword bootstrap comment</li>
<li><a
href="61d86763da"><code>61d8676</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/320">#320</a>
from RalfJung/bootstrap</li>
<li><a
href="663c6633e3"><code>663c663</code></a>
don't run build probes in rustc bootstrap</li>
<li><a
href="e471b2b650"><code>e471b2b</code></a>
Release 1.0.73</li>
<li><a
href="8cf1d150f7"><code>8cf1d15</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/319">#319</a>
from dtolnay/errorprovide</li>
<li><a
href="31c8dff2cd"><code>31c8dff</code></a>
Update to nightly's new Error::provide API</li>
<li><a
href="496b9584c4"><code>496b958</code></a>
Ignore ignored_unit_patterns pedantic clippy lint in test suite</li>
<li>Additional commits viewable in <a
href="https://github.com/dtolnay/anyhow/compare/1.0.72...1.0.75">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=anyhow&package-manager=cargo&previous-version=1.0.72&new-version=1.0.75)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-22 22:02:30 +00:00
dependabot[bot]
54dd780a60 build(deps): Bump thiserror from 1.0.44 to 1.0.47 in /rust (#1935)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.44 to
1.0.47.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/thiserror/releases">thiserror's
releases</a>.</em></p>
<blockquote>
<h2>1.0.47</h2>
<ul>
<li>Work around rust-analyzer bug (<a
href="https://redirect.github.com/rust-lang/rust-analyzer/issues/9911">rust-lang/rust-analyzer#9911</a>)</li>
</ul>
<h2>1.0.46</h2>
<ul>
<li>Add bootstrap workaround to allow rustc to depend on thiserror (<a
href="https://redirect.github.com/dtolnay/thiserror/issues/248">#248</a>,
thanks <a
href="https://github.com/RalfJung"><code>@​RalfJung</code></a>)</li>
</ul>
<h2>1.0.45</h2>
<ul>
<li>Update backtrace support to nightly's new Error::provide API (<a
href="https://redirect.github.com/rust-lang/rust/pull/113464">rust-lang/rust#113464</a>,
<a
href="https://redirect.github.com/dtolnay/thiserror/issues/246">#246</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0495eaa802"><code>0495eaa</code></a>
Release 1.0.47</li>
<li><a
href="2d9425c374"><code>2d9425c</code></a>
Work around ridiculous rust-analyzer behavior</li>
<li><a
href="5ada5d5198"><code>5ada5d5</code></a>
Release 1.0.46</li>
<li><a
href="f51271a0d5"><code>f51271a</code></a>
Reword bootstrap comment</li>
<li><a
href="1f02cdfcdd"><code>1f02cdf</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/248">#248</a>
from RalfJung/bootstrap</li>
<li><a
href="fa637828ae"><code>fa63782</code></a>
don't run build probes in rustc bootstrap</li>
<li><a
href="2fd79cd52a"><code>2fd79cd</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/247">#247</a>
from dtolnay/errorprovide</li>
<li><a
href="78e0ffed90"><code>78e0ffe</code></a>
Pull in anyhow's new Error::provide support</li>
<li><a
href="06f1895832"><code>06f1895</code></a>
Release 1.0.45</li>
<li><a
href="a11330f7fb"><code>a11330f</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/246">#246</a>
from dtolnay/errorprovide</li>
<li>Additional commits viewable in <a
href="https://github.com/dtolnay/thiserror/compare/1.0.44...1.0.47">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=thiserror&package-manager=cargo&previous-version=1.0.44&new-version=1.0.47)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-22 22:02:12 +00:00
dependabot[bot]
d71635c651 build(deps): Bump rustls-webpki from 0.100.1 to 0.100.2 in /rust (#1941)
Bumps [rustls-webpki](https://github.com/rustls/webpki) from 0.100.1 to
0.100.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rustls/webpki/releases">rustls-webpki's
releases</a>.</em></p>
<blockquote>
<h2>v/0.100.2</h2>
<h2>Release notes</h2>
<ul>
<li>certificate path building and verification is now capped at 100
signature validation operations to avoid the risk of CPU usage
denial-of-service attack when validating crafted certificate chains
producing quadratic runtime. This risk affected both clients, as well as
servers that verified client certificates.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>v0.100.2 prep by <a
href="https://github.com/cpu"><code>@​cpu</code></a> in <a
href="https://redirect.github.com/rustls/webpki/pull/154">rustls/webpki#154</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2">https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c8b821450b"><code>c8b8214</code></a>
Bump MSRV to 1.60</li>
<li><a
href="855752292e"><code>8557522</code></a>
Avoid testing MSRV of dev-dependencies</li>
<li><a
href="73a7f0c7d7"><code>73a7f0c</code></a>
Cargo: version 0.100.1 -&gt; 0.100.2</li>
<li><a
href="4ea052366f"><code>4ea0523</code></a>
verify_cert: enforce maximum number of signatures.</li>
<li>See full diff in <a
href="https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustls-webpki&package-manager=cargo&previous-version=0.100.1&new-version=0.100.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/firezone/firezone/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-22 22:01:58 +00:00
Jamil
54e1a79a50 fix(ios): portal connectivity and tunnel setup (#1927)
This PR fixes issues with the iOS client connecting to the portal and
setting up the tunnel.

- portal IPv6 unique-local prefix typo
- Use `rustls-webpki-roots` instead of `rustls-native-roots` for tokio
tungstenite since the latter [only supports macOS, Linux, and
Windows](https://github.com/rustls/rustls-native-certs) while the former
seems to work on all platforms(?)
- Remove Multipath TCP entitlement for iOS since it's not relevant for
us.

@conectado After this is merged, we _almost_ have a working tunnel on
iOS. I believe the error we're hitting now is the 4-byte address family
header that we need to add and strip from each packet written to / read
from the tunnel. See below log for sample output when attempting to
connect to the `HTTPbin` resource:

```
dev.firezone.firezone.network-extension	packet-tunnel	debug	16:10:13.401705-0700	FirezoneNetworkExtensioniOS	Adapter state changed to: tunnelReady
dev.firezone.firezone.network-extension	packet-tunnel	debug	16:10:13.401731-0700	FirezoneNetworkExtensioniOS	Beginning path monitoring
com.apple.network	path	default	16:10:13.402211-0700	FirezoneNetworkExtensioniOS	nw_path_evaluator_start [1ACDE975-615B-4557-BF7C-678F3594452E <NULL> generic, multipath service: 1, attribution: developer]
	path: satisfied (Path is satisfied), interface: en0[802.11], scoped, ipv4, ipv6, dns
com.apple.network	path	info	16:10:13.402235-0700	FirezoneNetworkExtensioniOS	nw_path_evaluator_call_update_handler [1ACDE975-615B-4557-BF7C-678F3594452E] scheduling update
com.apple.network	path	info	16:10:13.402261-0700	FirezoneNetworkExtensioniOS	nw_path_evaluator_call_update_handler_block_invoke [1ACDE975-615B-4557-BF7C-678F3594452E] delivering update
com.apple.network		debug	16:10:13.402286-0700	FirezoneNetworkExtensioniOS	nw_path_copy_interface_with_generation Cache miss for interface for index 3 (generation 4574)
com.apple.network		debug	16:10:13.402312-0700	FirezoneNetworkExtensioniOS	nw_path_copy_interface_with_generation Cache miss for interface for index 31 (generation 141)
dev.firezone.firezone.network-extension	packet-tunnel	debug	16:10:13.402363-0700	FirezoneNetworkExtensioniOS	Suppressing calls to disableSomeRoamingForBrokenMobileSemantics() and bumpSockets()
dev.firezone.firezone	connlib	debug	16:10:14.368105-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:15.369018-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:16.095618-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:16.370908-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:17.372035-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:18.373423-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:20.402863-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:24.381581-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:32.374566-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:10:38.137437-0700	FirezoneNetworkExtensioniOS	Text("{\"ref\":null,\"topic\":\"phoenix\",\"event\":\"phx_reply\",\"payload\":{\"status\":\"ok\",\"response\":{}}}")
dev.firezone.firezone	connlib	debug	16:10:38.137757-0700	FirezoneNetworkExtensioniOS	Phoenix status message
dev.firezone.firezone	connlib	debug	16:10:48.376339-0700	FirezoneNetworkExtensioniOS	Reading from iface 76 bytes
dev.firezone.firezone	connlib	debug	16:11:08.148369-0700	FirezoneNetworkExtensioniOS	Text("{\"ref\":null,\"topic\":\"phoenix\",\"event\":\"phx_reply\",\"payload\":{\"status\":\"ok\",\"response\":{}}}")
dev.firezone.firezone	connlib	debug	16:11:08.148654-0700	FirezoneNetworkExtensioniOS	Phoenix status message
```
2023-08-21 20:48:30 -07:00
Jamil
6638049f3a Apply @thomaseizinger's docs feedback (#1926)
For completeness, this updates the Rust doc for `Server` to be more
end-user friendly for self-hosting the Relay down the line.
2023-08-18 14:08:41 -07:00
Jamil
bf2d794064 feat(relay): allow configuration for lowest and highest allocation port (#1921)
This PR allows the TURN allocation binding to be optionally configured
by `TURN_LOWEST_PORT` and `TURN_HIGHEST_PORT` environment variables.

This will allow client app developers to test their apps against a
fully-working local development cluster in Docker Desktop for
Linux/macOS/Windows, allowing us to remove the PortalMock, Connlib Mock,
and SwiftMock codepaths entirely.

cc @roop @pratikvelani
2023-08-18 13:04:26 -07:00
Thomas Eizinger
79a24ca9cf feat(relay): remove LISTEN_IPX_ADDR parameters (#1922)
Previously, we required the user to specify a `LISTEN_IP4_ADDR` and/or a
`LISTEN_IP6_ADDR` parameter. This is cumbersome because dynamically
fetching the address of the local interface is not trivial in all
environments.

We remove this parameter in exchange for listening on all interfaces.
This is a trade-off. The relay will now listen on all interfaces, even
the ones not exposed to the public internet. This is true for the main
socket on port 3478 and for all created allocations. Actually relaying
data relies on the 4-tuple of a "connection", i.e. the source and
destination address and port. Technically, I think it is possible with
this change to send traffic to a relay via an interface that was not
intended to be used for that. I think this will still require spoofing
the source address which is a known and accepted problem.

It is still recommended that operators put appropriate firewall rules in
place to not allow ingress traffic on any interface other than the one
intended for relaying.

I've tested locally that we are correctly using the `IPV6_ONLY` flag. In
other words, a relay listening on the `0.0.0.0` wildcard interface will
not accept IPv6 traffic and vice versa.

Resolves #1886.
2023-08-18 09:44:41 +00:00
Gabi
d1537b0839 connlib: different backoff strategy for gateway/client (#1910)
With this PR we will keep retrying reconnection forever for the gateway
after it disconnects.
2023-08-16 22:05:48 +00:00
Gabi
577ce43942 Gabi/fix relay expected message size (#1911)
This PR should fix the way we handle the `length` field in the
`DataChannel` messages, previous to this fix relaying data (using the
`webrtc-rs` crate) was impossible)

The new way to handle this is if the actual message is bigger than what
this data field says we ignore the extra bytes (which I think is the
correct way to do it according to spec)

Also, I added an integration test to verify relay messages using
`iptables`, not the cleanest way to do it but the easiest, in this vein
I tried to fix the caching for rust containers since 2 integration test
in our current state would take ~20 minutes each.
2023-08-16 20:29:51 +00:00
dependabot[bot]
67147aa33a build(deps): Bump clap from 4.3.19 to 4.3.21 in /rust (#1907)
Bumps [clap](https://github.com/clap-rs/clap) from 4.3.19 to 4.3.21.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/releases">clap's
releases</a>.</em></p>
<blockquote>
<h2>v4.3.21</h2>
<h2>[4.3.21] - 2023-08-08</h2>
<h3>Features</h3>
<ul>
<li>Expose <code>TryMapValueParser</code> so the type can be named</li>
</ul>
<h2>v4.3.20</h2>
<h2>[4.3.20] - 2023-08-08</h2>
<h3>Features</h3>
<ul>
<li>Expose <code>TryMapValueParser</code> so the type can be named</li>
<li><code>Command::mut_args</code> for modifying all arguments en
masse</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
changelog</a>.</em></p>
<blockquote>
<h2>[4.3.21] - 2023-08-08</h2>
<h3>Features</h3>
<ul>
<li>Expose <code>TryMapValueParser</code> so the type can be named</li>
</ul>
<h2>[4.3.20] - 2023-08-08</h2>
<h3>Features</h3>
<ul>
<li><code>Command::mut_args</code> for modifying all arguments en
masse</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ee1388c0a3"><code>ee1388c</code></a>
chore: Release</li>
<li><a
href="390436681a"><code>3904366</code></a>
docs: Update changelog</li>
<li><a
href="3156e1a35c"><code>3156e1a</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5066">#5066</a>
from 9999years/export-trymapvalueparser</li>
<li><a
href="da19141560"><code>da19141</code></a>
chore: Release</li>
<li><a
href="b96cbafcbe"><code>b96cbaf</code></a>
chore: Release</li>
<li><a
href="174f12c7f8"><code>174f12c</code></a>
docs: Update changelog</li>
<li><a
href="fe04b3cc4e"><code>fe04b3c</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5056">#5056</a>
from ModProg/dynamic-completions-help</li>
<li><a
href="aa3f47c239"><code>aa3f47c</code></a>
test(complete): Help for possible value</li>
<li><a
href="65b9c2b37d"><code>65b9c2b</code></a>
test(complete): Helper for asserting dynamic completions</li>
<li><a
href="c86172e891"><code>c86172e</code></a>
feat: Export <code>builder::TryMapValueParser</code></li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/v4.3.19...v4.3.21">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.3.19&new-version=4.3.21)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 19:49:50 +00:00
dependabot[bot]
0d42028d7e build(deps): Bump redis from 0.23.0 to 0.23.2 in /rust (#1906)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.23.0 to
0.23.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/redis-rs/redis-rs/releases">redis's
releases</a>.</em></p>
<blockquote>
<h2>v0.23.2</h2>
<p>0.23.2 (2023-08-10)</p>
<h4>Fixes</h4>
<ul>
<li>Fix sentinel tests flakiness (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/912">#912</a>)</li>
<li>Rustls: Remove usage of deprecated method (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/921">#921</a>)</li>
<li>Fix compiling with sentinel feature, without aio feature (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/923">#922</a>
<a href="https://github.com/brocaar"><code>@​brocaar</code></a>)</li>
<li>Add timeouts to tests github action (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/911">#911</a>)</li>
</ul>
<h2>v0.23.1</h2>
<h3>0.23.1 (2023-07-28)</h3>
<h4>Features</h4>
<ul>
<li>Add basic Sentinel functionality (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/836">#836</a>
<a href="https://github.com/felipou"><code>@​felipou</code></a>)</li>
<li>Enable keep alive on tcp connections via feature (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/886">#886</a>
<a
href="https://github.com/DoumanAsh"><code>@​DoumanAsh</code></a>)</li>
<li>Support fan-out commands in cluster-async (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/843">#843</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>connection_manager: retry and backoff on reconnect (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/804">#804</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
</ul>
<h4>Changes</h4>
<ul>
<li>Tests: Wait for all servers (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/901">#901</a>
<a href="https://github.com/barshaul"><code>@​barshaul</code></a>)</li>
<li>Pin <code>tempfile</code> dependency (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/902">#902</a>)</li>
<li>Update routing data for commands. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/887">#887</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Add basic benchmark reporting to CI (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/880">#880</a>)</li>
<li>Add <code>set_options</code> cmd (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/879">#879</a>
<a
href="https://github.com/RokasVaitkevicius"><code>@​RokasVaitkevicius</code></a>)</li>
<li>Move random connection creation to when needed. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/882">#882</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Clean up existing benchmarks (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/881">#881</a>)</li>
<li>Improve async cluster client performance. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/877">#877</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Allow configuration of cluster retry wait duration (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/859">#859</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Fix async connect when ns resolved to multi ip (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/872">#872</a>
<a
href="https://github.com/hugefiver"><code>@​hugefiver</code></a>)</li>
<li>Reduce the number of unnecessary clones. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/874">#874</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Remove connection checking on every request. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/873">#873</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>cluster_async: Wrap internal state with Arc. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/864">#864</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Fix redirect routing on request with no route. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/870">#870</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Amend README for macOS users (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/869">#869</a>
<a href="https://github.com/sarisssa"><code>@​sarisssa</code></a>)</li>
<li>Improved redirection error handling (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/857">#857</a>)</li>
<li>Fix minor async client bug. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/862">#862</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Split aio.rs to separate files. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/821">#821</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Add time feature to tokio dependency (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/855">#855</a>
<a href="https://github.com/robjtede"><code>@​robjtede</code></a>)</li>
<li>Refactor cluster error handling (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/844">#844</a>)</li>
<li>Fix unnecessarily mutable variable (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/849">#849</a>
<a href="https://github.com/kamulos"><code>@​kamulos</code></a>)</li>
<li>Newtype SlotMap (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/845">#845</a>)</li>
<li>Bump MSRV to 1.60 (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/846">#846</a>)</li>
<li>Improve error logging. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/838">#838</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
<li>Improve documentation, add references to <code>redis-macros</code>
(<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/769">#769</a>
<a
href="https://github.com/daniel7grant"><code>@​daniel7grant</code></a>)</li>
<li>Allow creating Cmd with capacity. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/817">#817</a>
<a href="https://github.com/nihohit"><code>@​nihohit</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fe2a7df986"><code>fe2a7df</code></a>
Release redis 0.23.2 / redis-test 0.2.2 (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/924">#924</a>)</li>
<li><a
href="bd3cef5aac"><code>bd3cef5</code></a>
add timeouts to tests github action. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/911">#911</a>)</li>
<li><a
href="e5727a1505"><code>e5727a1</code></a>
Fix AsyncConnection usage in sentinel if aio feature is not used. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/923">#923</a>)</li>
<li><a
href="e7a733af25"><code>e7a733a</code></a>
Rustls: Remove usage of deprecated method.</li>
<li><a
href="ed44bad0d6"><code>ed44bad</code></a>
log pushing existing replica.</li>
<li><a
href="e4dfc8650e"><code>e4dfc86</code></a>
Remove tuple casting on command result.</li>
<li><a
href="cbe47c6724"><code>cbe47c6</code></a>
Release redis 0.23.1 / redis-test 0.2.1 (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/907">#907</a>)</li>
<li><a
href="a6b4c74d7b"><code>a6b4c74</code></a>
Tests: Wait for all servers (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/901">#901</a>)</li>
<li><a
href="dfacf67649"><code>dfacf67</code></a>
Additional cluster-async benchmarks (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/903">#903</a>)</li>
<li><a
href="80a4a3873a"><code>80a4a38</code></a>
Add basic Sentinel functionality (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/836">#836</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/redis-rs/redis-rs/compare/redis-0.23.0...redis-0.23.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=redis&package-manager=cargo&previous-version=0.23.0&new-version=0.23.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 19:49:38 +00:00
dependabot[bot]
ae9a619703 build(deps): Bump pnet_packet from 0.33.0 to 0.34.0 in /rust (#1905)
Bumps [pnet_packet](https://github.com/libpnet/libpnet) from 0.33.0 to
0.34.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/libpnet/libpnet/releases">pnet_packet's
releases</a>.</em></p>
<blockquote>
<h2>v0.34.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Add blanket impls of Packet for Box<!-- raw HTML omitted --> and
&amp;T. by <a href="https://github.com/landhb"><code>@​landhb</code></a>
in <a
href="https://redirect.github.com/libpnet/libpnet/pull/606">libpnet/libpnet#606</a></li>
<li>GitHub actions updates by <a
href="https://github.com/mrmonday"><code>@​mrmonday</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/608">libpnet/libpnet#608</a></li>
<li>Fix typos by <a
href="https://github.com/darxriggs"><code>@​darxriggs</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/609">libpnet/libpnet#609</a></li>
<li>Update pnet_macros to use syn v2 by <a
href="https://github.com/james-jra"><code>@​james-jra</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/627">libpnet/libpnet#627</a></li>
<li>Spell check with <code>typos</code>. Add <code>spell-check</code> CI
job by <a href="https://github.com/vvv"><code>@​vvv</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/621">libpnet/libpnet#621</a></li>
<li>Add LINKTYPE_LINUX_SLL2 support and fix link to SLL by <a
href="https://github.com/reticulis"><code>@​reticulis</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/619">libpnet/libpnet#619</a></li>
<li>TCP header remove NS flag by <a
href="https://github.com/rikonaka"><code>@​rikonaka</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/625">libpnet/libpnet#625</a></li>
<li>Assorted cleanup by <a
href="https://github.com/mrmonday"><code>@​mrmonday</code></a> in <a
href="https://redirect.github.com/libpnet/libpnet/pull/630">libpnet/libpnet#630</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/james-jra"><code>@​james-jra</code></a>
made their first contribution in <a
href="https://redirect.github.com/libpnet/libpnet/pull/627">libpnet/libpnet#627</a></li>
<li><a href="https://github.com/vvv"><code>@​vvv</code></a> made their
first contribution in <a
href="https://redirect.github.com/libpnet/libpnet/pull/621">libpnet/libpnet#621</a></li>
<li><a href="https://github.com/reticulis"><code>@​reticulis</code></a>
made their first contribution in <a
href="https://redirect.github.com/libpnet/libpnet/pull/619">libpnet/libpnet#619</a></li>
<li><a href="https://github.com/rikonaka"><code>@​rikonaka</code></a>
made their first contribution in <a
href="https://redirect.github.com/libpnet/libpnet/pull/625">libpnet/libpnet#625</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/libpnet/libpnet/compare/v0.33.0...v0.34.0">https://github.com/libpnet/libpnet/compare/v0.33.0...v0.34.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9bd20d82c0"><code>9bd20d8</code></a>
Release v0.34.0</li>
<li><a
href="b8bd8e031e"><code>b8bd8e0</code></a>
Merge pull request <a
href="https://redirect.github.com/libpnet/libpnet/issues/630">#630</a>
from mrmonday/fix-build-warnings</li>
<li><a
href="47ae47de30"><code>47ae47d</code></a>
Assorted cleanup</li>
<li><a
href="c32d9db6ec"><code>c32d9db</code></a>
Merge pull request <a
href="https://redirect.github.com/libpnet/libpnet/issues/625">#625</a>
from rikonaka/master</li>
<li><a
href="391b133ef7"><code>391b133</code></a>
Merge pull request <a
href="https://redirect.github.com/libpnet/libpnet/issues/619">#619</a>
from reticulis/sll2</li>
<li><a
href="12636deb8a"><code>12636de</code></a>
Merge pull request <a
href="https://redirect.github.com/libpnet/libpnet/issues/621">#621</a>
from vvv/spell-check</li>
<li><a
href="d29848e39b"><code>d29848e</code></a>
Merge pull request <a
href="https://redirect.github.com/libpnet/libpnet/issues/627">#627</a>
from james-jra/syn-2</li>
<li><a
href="08622c53c9"><code>08622c5</code></a>
Fix compile test stderr for correct rustc version</li>
<li><a
href="431ced23f8"><code>431ced2</code></a>
add more compilation error tests for #[construct_with]</li>
<li><a
href="b46f7f36b0"><code>b46f7f3</code></a>
Update compile fail test error messages</li>
<li>Additional commits viewable in <a
href="https://github.com/libpnet/libpnet/compare/v0.33.0...v0.34.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pnet_packet&package-manager=cargo&previous-version=0.33.0&new-version=0.34.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 19:49:25 +00:00
dependabot[bot]
9d13a6001b build(deps): Bump android_logger from 0.13.1 to 0.13.3 in /rust (#1904)
Bumps [android_logger](https://github.com/rust-mobile/android_logger-rs)
from 0.13.1 to 0.13.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-mobile/android_logger-rs/blob/master/CHANGELOG.md">android_logger's
changelog</a>.</em></p>
<blockquote>
<h1><code>android_logger</code> changelog</h1>
<p>All user visible changes to this project will be documented in this
file. This project uses [Semantic Versioning 2.0.0].</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/rust-mobile/android_logger-rs/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=android_logger&package-manager=cargo&previous-version=0.13.1&new-version=0.13.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 19:48:46 +00:00
dependabot[bot]
66e78c5e72 build(deps): Bump log from 0.4.19 to 0.4.20 in /rust (#1903)
Bumps [log](https://github.com/rust-lang/log) from 0.4.19 to 0.4.20.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/log/blob/master/CHANGELOG.md">log's
changelog</a>.</em></p>
<blockquote>
<h2>[0.4.20] - 2023-07-11</h2>
<ul>
<li>Remove rustversion dev-dependency by <a
href="https://github.com/Thomasdezeeuw"><code>@​Thomasdezeeuw</code></a>
in <a
href="https://redirect.github.com/rust-lang/log/pull/568">rust-lang/log#568</a></li>
<li>Remove <code>local_inner_macros</code> usage by <a
href="https://github.com/EFanZh"><code>@​EFanZh</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/570">rust-lang/log#570</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4708f1484c"><code>4708f14</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/574">#574</a>
from chrysn-pull-requests/doc-log-to-defmt</li>
<li><a
href="6de3cccc36"><code>6de3ccc</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/571">#571</a>
from rust-lang/cargo/0.4.20</li>
<li><a
href="838920cf18"><code>838920c</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/575">#575</a>
from EFanZh/group-target-module-path-and-file</li>
<li><a
href="3985711f74"><code>3985711</code></a>
Group <code>target</code>, <code>module_path</code> and
<code>file</code> arguments</li>
<li><a
href="3f534d00e4"><code>3f534d0</code></a>
Move private APIs into a single module</li>
<li><a
href="f5ab686e9b"><code>f5ab686</code></a>
doc: Add log-to-defmt to other-facilities section</li>
<li><a
href="6d173bf941"><code>6d173bf</code></a>
prepare for 0.4.20 release</li>
<li><a
href="cab10885de"><code>cab1088</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/570">#570</a>
from EFanZh/remove-local-inner-macros</li>
<li><a
href="9d052b17d3"><code>9d052b1</code></a>
Remove <code>local_inner_macros</code> usage</li>
<li><a
href="e9123d6d9a"><code>e9123d6</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/568">#568</a>
from Thomasdezeeuw/remove-rustversion-dep</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/log/compare/0.4.19...0.4.20">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=log&package-manager=cargo&previous-version=0.4.19&new-version=0.4.20)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 19:48:32 +00:00
Jamil
ded6a6558d Add android build output to docker ignore (#1894) 2023-08-12 23:24:58 -05:00
Gabi
721d2ffc45 Fix/webrtc failure (#1896) 2023-08-11 17:15:42 -05:00
Jamil
e9c0729b98 Use public Logger from FirezoneKit (#1888)
Enables the NetworkExtension to use the Logger helpers so that its
bundle id is used for the logging subsystem
2023-08-11 13:33:29 -05:00
Jamil
d0a472b8c1 Build for iphonesimulator (#1890)
Fixes the iphonesimulator build.
2023-08-11 13:33:04 -05:00
Gabi
eebf98510e relay: fix sent ip to the portal (#1892) 2023-08-11 13:13:54 -05:00
Andrew Dryga
c0844dfdb0 Fix discovery for listen address and make it optional 2023-08-11 12:20:58 -05:00
Jamil
3a79f4c0aa apple: refactor portal_url to be opaque (#1881)
* Remove JWT to be an opaque token and update variable names accordingly
* Use new `actor_name` param from the portal instead of user info from
old JWT
* Log attempted portal URL from connlib
* Remove account slug/id from portal_url before sending to connlib

@roop The token from the portal is a Phoenix.Token, not a valid JWT, so
this was causing a JWTDecodeError. Discussed with @AndrewDryga and
concluded this should be an opaque token. Expiry and other invalid token
scenarios will be bubbled up from connlib via an `onError` callback (or
perhaps a dedicated `onTokenInvalid` callback). For now connlib doesn't
handle this specifically.
2023-08-11 06:17:44 -05:00
Gabi
744b4b12cb connlib: enable TLS support for websocket (#1882) 2023-08-10 23:03:16 +00:00
Gabi
a0a5acd542 connlib: correct checksum for all handled protocols (#1880)
Signed-off-by: conectado <gabrielalejandro7@gmail.com>
2023-08-10 21:58:28 +00:00
Thomas Eizinger
1c643593c4 feat(relay): log message if we are in standalone mode (#1874)
Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-08-10 21:32:20 +00:00
Thomas Eizinger
92f4ec3cc1 fix(relay): only join relay room in portal WS connection once (#1877) 2023-08-10 12:42:15 -05:00
Gabi
90289e3a38 connlib: update the url scheme for http/https (#1879)
This just updates the portal's url scheme based on what we discussed
with @jamilbk
2023-08-10 12:41:26 -05:00
Andrew Dryga
3a5877eaa3 Update protocol to reuse gateway connections (#1825)
This is a result of our discussion with @conectado, this PR will add a
new message type which will allow reusing existing connections to the
gateway to access a new resource. We will also change the LB strategy to
be aware of the current device connection so that we will not pick a
different one if we have a connected gateway that can serve a new
resource.

---------

Co-authored-by: conectado <gabrielalejandro7@gmail.com>
2023-08-10 12:41:06 -05:00
Jamil
9b538e92d4 apple: Tunnel stack (#1876)
This PR adds the remaining bits of the Apple tunnel stack for macOS and
iOS devices.

- [x] Find file descriptor corresponding to NE-managed tunnel interface
- [ ] Testing

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: conectado <gabrielalejandro7@gmail.com>
2023-08-10 12:40:46 -05:00
Jamil
01906ba507 android: Update auth URLs to follow convention; Fix JNI callback method signatures (#1870) 2023-08-09 06:47:25 -05:00
Andrew Dryga
9e17352fd6 Deploy relays (#1706)
Will finish once #1705 is merged and stable.

cc @thomaseizinger
2023-08-08 17:15:33 -05:00
dependabot[bot]
bb9110b1d0 build(deps): Bump async-trait from 0.1.71 to 0.1.72 in /rust (#1861)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.71
to 0.1.72.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/async-trait/releases">async-trait's
releases</a>.</em></p>
<blockquote>
<h2>0.1.72</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a01e5d4fb6"><code>a01e5d4</code></a>
Release 0.1.72</li>
<li><a
href="a38d35acfb"><code>a38d35a</code></a>
Opt in to generate-link-to-definition when building on docs.rs</li>
<li><a
href="036a373ab4"><code>036a373</code></a>
Update ui tests with 2021-edition diagnostics</li>
<li><a
href="059aafd8cc"><code>059aafd</code></a>
Update to 2021 edition</li>
<li>See full diff in <a
href="https://github.com/dtolnay/async-trait/compare/0.1.71...0.1.72">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-trait&package-manager=cargo&previous-version=0.1.71&new-version=0.1.72)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 17:27:47 +00:00
dependabot[bot]
2d21de7035 build(deps): Bump axum from 0.6.18 to 0.6.20 in /rust (#1863)
Bumps [axum](https://github.com/tokio-rs/axum) from 0.6.18 to 0.6.20.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/axum/releases">axum's
releases</a>.</em></p>
<blockquote>
<h2>axum - v0.6.20</h2>
<ul>
<li><strong>added:</strong>
<code>WebSocketUpgrade::write_buffer_size</code> and
<code>WebSocketUpgrade::max_write_buffer_size</code></li>
<li><strong>changed:</strong> Deprecate
<code>WebSocketUpgrade::max_send_queue</code></li>
<li><strong>change:</strong> Update tokio-tungstenite to 0.20</li>
<li><strong>added:</strong> Implement <code>Handler</code> for <code>T:
IntoResponse</code> (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2140">#2140</a>)</li>
</ul>
<p><a
href="https://redirect.github.com/tokio-rs/axum/issues/2140">#2140</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2140">tokio-rs/axum#2140</a></p>
<h2>axum - v0.6.19</h2>
<ul>
<li><strong>added:</strong> Add
<code>axum::extract::Query::try_from_uri</code> (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2058">#2058</a>)</li>
<li><strong>added:</strong> Implement <code>IntoResponse</code> for
<code>Box&lt;str&gt;</code> and <code>Box&lt;[u8]&gt;</code> (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2035">#2035</a>)</li>
<li><strong>fixed:</strong> Fix bugs around merging routers with nested
fallbacks (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2096">#2096</a>)</li>
<li><strong>fixed:</strong> Fix <code>.source()</code> of composite
rejections (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2030">#2030</a>)</li>
<li><strong>fixed:</strong> Allow unreachable code in
<code>#[debug_handler]</code> (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2014">#2014</a>)</li>
<li><strong>change:</strong> Update tokio-tungstenite to 0.19 (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2021">#2021</a>)</li>
<li><strong>change:</strong> axum's MSRV is now 1.63 (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2021">#2021</a>)</li>
</ul>
<p><a
href="https://redirect.github.com/tokio-rs/axum/issues/2014">#2014</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2014">tokio-rs/axum#2014</a>
<a
href="https://redirect.github.com/tokio-rs/axum/issues/2021">#2021</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2021">tokio-rs/axum#2021</a>
<a
href="https://redirect.github.com/tokio-rs/axum/issues/2030">#2030</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2030">tokio-rs/axum#2030</a>
<a
href="https://redirect.github.com/tokio-rs/axum/issues/2035">#2035</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2035">tokio-rs/axum#2035</a>
<a
href="https://redirect.github.com/tokio-rs/axum/issues/2058">#2058</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2058">tokio-rs/axum#2058</a>
<a
href="https://redirect.github.com/tokio-rs/axum/issues/2096">#2096</a>:
<a
href="https://redirect.github.com/tokio-rs/axum/pull/2096">tokio-rs/axum#2096</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3b92cd7593"><code>3b92cd7</code></a>
Release axum and axum-extra (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2145">#2145</a>)</li>
<li><a
href="68333b2fcf"><code>68333b2</code></a>
Backport changes from main to v0.6.x (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2141">#2141</a>)</li>
<li><a
href="a25ed293d7"><code>a25ed29</code></a>
axum-extra 0.7.6 (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2139">#2139</a>)</li>
<li><a
href="990cbb8126"><code>990cbb8</code></a>
Update tokio-tungstenite 0.20 (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2123">#2123</a>)</li>
<li><a
href="a2916318dd"><code>a291631</code></a>
axum-extra: Remove unused tower-http dependency (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2135">#2135</a>)</li>
<li><a
href="67f6494383"><code>67f6494</code></a>
Release axum 0.6.19 (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2102">#2102</a>)</li>
<li><a
href="2d4bd9e853"><code>2d4bd9e</code></a>
Update to latest sqlx in example (<a
href="https://redirect.github.com/tokio-rs/axum/issues/2099">#2099</a>)</li>
<li><a
href="e881bf0aec"><code>e881bf0</code></a>
Update UI tests</li>
<li><a
href="5d9f41edf3"><code>5d9f41e</code></a>
Fix deny.toml</li>
<li><a
href="19ddc12e4e"><code>19ddc12</code></a>
Remove sessions example</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/axum/compare/axum-v0.6.18...axum-v0.6.20">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=axum&package-manager=cargo&previous-version=0.6.18&new-version=0.6.20)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 17:27:06 +00:00
dependabot[bot]
b409f191f9 build(deps): Bump serde from 1.0.179 to 1.0.183 in /rust (#1864)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.179 to
1.0.183.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/serde/releases">serde's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.183</h2>
<ul>
<li>Support deserializing <code>Box&lt;OsStr&gt;</code> with an
equivalent representation as <code>OsString</code> (<a
href="https://redirect.github.com/serde-rs/serde/issues/2556">#2556</a>,
thanks <a
href="https://github.com/DBLouis"><code>@​DBLouis</code></a>)</li>
</ul>
<h2>v1.0.182</h2>
<ul>
<li>Render field aliases in sorted order in error messages (<a
href="https://redirect.github.com/serde-rs/serde/issues/2458">#2458</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
<li>Support <code>serde(default)</code> on tuple structs (<a
href="https://redirect.github.com/serde-rs/serde/issues/2553">#2553</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
</ul>
<h2>v1.0.181</h2>
<ul>
<li>Make <code>serde(alias)</code> work in combination with
<code>flatten</code> when using in-place deserialization (<a
href="https://redirect.github.com/serde-rs/serde/issues/2443">#2443</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
<li>Improve the representation of adjacently tagged enums in formats
where enum tags are serialized by index, as opposed to by string name
(<a
href="https://redirect.github.com/serde-rs/serde/issues/2505">#2505</a>,
<a
href="https://redirect.github.com/serde-rs/serde/issues/2496">#2496</a>,
thanks <a
href="https://github.com/Baptistemontan"><code>@​Baptistemontan</code></a>)</li>
</ul>
<h2>v1.0.180</h2>
<ul>
<li>Update to 2018 edition</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="05a5b7e3c6"><code>05a5b7e</code></a>
Release 1.0.183</li>
<li><a
href="3bff326fb3"><code>3bff326</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2555">#2555</a>
from Mingun/field</li>
<li><a
href="aaadd93878"><code>aaadd93</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2556">#2556</a>
from DBLouis/master</li>
<li><a
href="9c864f0b02"><code>9c864f0</code></a>
Add forward impl for OsStr</li>
<li><a
href="070cce0d9c"><code>070cce0</code></a>
Get rid of temporary variable</li>
<li><a
href="b58e8bac12"><code>b58e8ba</code></a>
Replace <code>if let Some(...) = ...</code> to Option::map</li>
<li><a
href="ada50b077e"><code>ada50b0</code></a>
ignore_variant variable is always None, let's take this into
account</li>
<li><a
href="5e313a7330"><code>5e313a7</code></a>
Move generiс code out-of-function, create more specialized and simple
code</li>
<li><a
href="2a36d11238"><code>2a36d11</code></a>
Introduce a dedicated function for generating Field enum</li>
<li><a
href="b6685cf9dd"><code>b6685cf</code></a>
Release 1.0.182</li>
<li>Additional commits viewable in <a
href="https://github.com/serde-rs/serde/compare/v1.0.179...v1.0.183">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde&package-manager=cargo&previous-version=1.0.179&new-version=1.0.183)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 17:26:51 +00:00
Thomas Eizinger
b1c324a01e relay: remove --allow-insecure-ws flag (#1871)
Previously, I thought it might be helpful to refuse a insecure
connections to the portal unless the user explicitly opts-in to this. In
our CI and testing environment, this however proved to cause more
headaches than it helps.

This PR removes this flag and assumes that users are smart enough that
they should protect self-hosted portals with transport-level encryption.
2023-08-08 16:45:02 +00:00
Francesca Lovebloom
bc3a5d9e54 connlib: JNI bridge (#1848)
The biggest internal change is that all the methods on `Callbacks` (on
the Rust side!) return a `Result` now, so errors from the bridge or even
the client callbacks will be handled.

@roop there's nothing for you to review here, but note:

- the `bool` return values you've asked about in the past are gone now
- the route string for `onAddRoute`/`onRemoveRoute` no longer has the
extra quotes (it's no longer JSON)

---------

Signed-off-by: Francesca Lovebloom <franlovebloom@gmail.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-08-07 19:03:28 -05:00
Roopesh Chander
e591b92ec9 apple: Set network settings using data from connlib (#1846)
This PR sets the network settings, split-DNS, and macOS UI resources
using the data from connlib callbacks.

This should enable connlib to be developed / tested in Apple platforms
(Caveat: There's no UI to see resources in iOS yet).

Some assumptions being made are:
- It's ok to call disconnect() before onTunnelReady(), but after
connect()
- CIDR addresses don't include enclosing quotes (they currently include
the quotes, like: `"8.8.4.4/32"`)
- CIDR addresses in routes always end with “/n”
- Connlib calls can be made from a queue (non-main thread)

---------

Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-08-07 06:50:05 +00:00
Gabi
44e4295a4e connlib: fix DNS PTR record query (#1854)
Some programs(such as `ping`) after resolving the dns name do a reverse
dns lookup using PTR, if this doesn't respond the program hangs making
performance slower.

This PR fixes it by handling PTR queries.

---------

Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Francesca Lovebloom <franlovebloom@gmail.com>
Co-authored-by: Jamil Bou Kheir <jamilbk@users.noreply.github.com>
2023-08-04 19:08:34 +00:00