Commit graph

19 commits

Author SHA1 Message Date
Jett Chen
261f24d9ef add makefile 2023-12-17 01:26:37 +08:00
Jett Chen
94233874e6 checkpoint 2023-12-17 01:23:42 +08:00
Jett Chen
6339b6bc4b add makefile 2023-12-17 01:20:56 +08:00
Jett Chen
759311e4f4 remove continuation from BurrowIPC
This removes usage of continuation from BurrowIPC by
moving it to NWConnections.
2023-10-23 12:22:02 +08:00
Jett Chen
c9f104e523 Generate NetworkSettings with IPC
This generates and applies NetworkSettings object with unix socket IPC.

- domain socket, json-rpc based communication
- switches to anyhow for burrow crate
- adds support for starting daemons on macos
2023-10-14 10:25:24 -07:00
Jett Chen
3ef13b09a3 Add C Swift Bindings
This adds C Swift bindings for burrow via compiling burrow
with a matching header file.
2023-08-16 13:28:20 -04:00
Conrad Kramer
32e4e9d1d7 Refactored MenuView into MenuItemToggleView
This change fixes some subtle state bugs in the switch handling by
making isOn a direct function of the Tunnel.
2023-06-23 20:29:52 -04:00
SerenityUX
5438542284 Added initial menu bar to macOS 2023-06-23 20:29:52 -04:00
Conrad Kramer
101470d17c Fix requesting VPN permission on macOS
The protocol configuration is copied when set, so it should be set
after it is configured
2023-05-13 13:15:41 -04:00
Conrad Kramer
3c30a4b336 Enable SwiftLint inside of Xcode
This commit also fixes all linter warnings and errors.
2023-05-09 23:01:36 -04:00
Conrad Kramer
941d465570 Document the Rust Xcode build script
The Bash source is a little hard to read.
2023-05-09 23:01:36 -04:00
Conrad Kramer
c1507ba37f Fix SwiftUI view model updating
The reflection data is needed by SwiftUI in order to operate correctly.
2023-05-09 23:01:36 -04:00
Conrad Kramer
b3a540fc48 Add support for starting and stopping the tunnel
This commit introduces the Tunnel view model object which has
support for asking for permission, starting and stopping the
tunnel. It automatically updates its state and publishes
changes as an ObservableObject.
2023-05-09 23:01:36 -04:00
Conrad Kramer
eeb0130156 Add Swift module for libburrow
This commit also renames the app target to App.
2023-05-09 23:01:36 -04:00
Conrad Kramer
4b0965b846 Build burrow library into iOS and macOS app
This commit adds a build script, build-rust.sh, which compiles the
burrow crate from inside of Xcode. The network extension then links
against this crate.
2023-04-29 16:46:23 -04:00
Conrad Kramer
d966c0ff77 Add packet tunnel provider entitlement
This entitlement is required to communicate with the VPN API on iOS and
macOS.
2023-04-29 16:46:23 -04:00
Conrad Kramer
4bf0fb639c Switch to the Hack Club development team
This change switches the project over to the Hack Club developer team in
the Hack Club developer account. This is needed to get the app in
TestFlight.
2023-04-29 16:46:23 -04:00
Conrad Kramer
1ffa01df5b Commit Xcode schemes to version control
This commit adds the Burrow and NetworkExtension schemes to version
control so that they can be shared across developers.
2023-04-29 16:46:23 -04:00
Conrad Kramer
c1e7415871 Initial commit 2023-04-10 16:49:23 -04:00