Skip to content
This repository has been archived by the owner on Jul 5, 2023. It is now read-only.

Commit

Permalink
add connlib rust logic.
Browse files Browse the repository at this point in the history
This commit convert this repo into a rust workspace.
Divides into 2 types of crates, libs/clients.
Clients are thin wrappers used directly by native clients.
Libs implement the logic.
We have 4 logic crates:
- Gateway: Gateway-specific logic.
- Clients: Client-specific logic.
- Tunnel: General logic for wireguard/ice tunnels.
- Common: Types shared by all crates.
  • Loading branch information
conectado committed May 24, 2023
1 parent 4eb5658 commit 7bdf40f
Show file tree
Hide file tree
Showing 75 changed files with 2,746 additions and 1,423 deletions.
16 changes: 6 additions & 10 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
### Rust ###
/target
target/
# Libraries shouldn't lock their dependencies
/Cargo.lock
Cargo.lock

### Android ###
# Gradle files
.gradle/
build/
android/target/

# Local configuration file (sdk path, etc)
local.properties
Expand Down Expand Up @@ -101,11 +100,10 @@ proguard/
# Log Files

# Android Studio
/*/build/
build/
/*/local.properties
/*/out
/*/*/build
/*/*/production
out/
production/
.navigation/
*.ipr
*~
Expand All @@ -126,7 +124,6 @@ obj/

# IntelliJ IDEA
*.iws
/out/

# User-specific configurations
.idea/caches/
Expand Down Expand Up @@ -172,9 +169,8 @@ fabric.properties
### Apple ###
.DS_Store
.build/
build/
DerivedData/
xcuserdata/
**/*.xcuserstate
*.xcuserstate

Firezone/Developer.xcconfig
35 changes: 11 additions & 24 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,24 +1,11 @@
[package]
name = "firezone-connlib"
version = "0.1.6"
edition = "2021"

[dependencies]
# Apple tunnel dependencies
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]
boringtun = { git = "https://github.com/cloudflare/boringtun", rev = "878385f", features = ["device"] }

# Linux tunnel dependencies
[target.'cfg(target_os = "linux")'.dependencies]
boringtun = { git = "https://github.com/cloudflare/boringtun", rev = "878385f", features = ["device"] }

# Android tunnel dependencies
[target.'cfg(target_os = "android")'.dependencies]
boringtun = { git = "https://github.com/cloudflare/boringtun", rev = "878385f", features = ["jni-bindings"] }
android_logger = "0.13"
log = "0.4.14"

# Windows tunnel dependencies
[target.'cfg(target_os = "windows")'.dependencies]
boringtun = { git = "https://github.com/cloudflare/boringtun", rev = "878385f" }
wintun = "0.2.1"
[workspace]
members = [
"clients/android",
"clients/apple",
"libs/tunnel",
"libs/client",
"libs/gateway",
"libs/common",
"gateway",
"macros",
]
Binary file removed android/gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
Loading

0 comments on commit 7bdf40f

Please sign in to comment.