Files
firezone/rust/connlib
Gabi 559b3bd591 connlib: limit the number of relays used per-connection (#2514)
Fixes #2499 

@AndrewDryga This should be accompanied by a portal-side PR that:
* Sorts gateway somehow
* Stop sending STUN servers: we only need TURN URLs since webrtc already
fall back onto STUN URLs when it fails to allocate.

Right now, if we merge this without removing TURN URLs we might not get
a connection where TURN is needed.

I think we should leave the `Stun` type in the message, for hole-punched
only connections that we want to implement in the function. Which from
connlib's side shouldn't need any change if we lave it like this, the
portal should only send STUN urls in that case.

---------

Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Andrew Dryga <andrew@dryga.com>
2023-10-27 17:48:26 +00:00
..
2023-10-20 02:50:29 -03:00
2023-07-03 18:48:55 +00:00

Connlib

Firezone's connectivity library shared by all clients.

🚧 Disclaimer 🚧

NOTE: This repository is undergoing heavy construction. You could say we're Building In The Open™ in true open source spirit. Do not attempt to use anything released here until this notice is removed. You have been warned.

Building Connlib

Setting the CONNLIB_MOCK environment variable when packaging for Apple or Android will activate the mock feature flag, replacing connlib's normal connection logic with a mock for testing purposes.

  1. You'll need a Rust toolchain installed if you don't have one already. We recommend following the instructions at https://rustup.rs.
  2. rustup show will install all needed targets since they are added to rust-toolchain.toml.
  3. Follow the relevant instructions for your platform:
  4. Apple
  5. Android
  6. Linux
  7. Windows

Apple

Connlib should build successfully with recent macOS and Xcode versions assuming you have Rust installed. If not, open a PR with the notes you found.

Android

Linux

Windows