Commit Graph
87 Commits
Author SHA1 Message Date
Jason A. Donenfeld 034a1a12f7 Supply missing pieces of path change
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-12 01:11:43 +01:00
Jason A. Donenfeld 63e67a5e13 Revert pure-go network monitoring and add wgSetConfig
This reverts commit 99f0e457c34480f25582d7b4ed509404712c648c and adds a
function too.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-11 22:25:54 +01:00
Jason A. Donenfeld 2fa2f58aad Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-07 23:58:53 +01:00
Jason A. Donenfeld 1eddb2c86d PacketTunnelProvider: Show log timestamp
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-07 23:56:26 +01:00
Jason A. Donenfeld ddccd6da4c wireguard-go-bridge: account for network changes
Everytime the network changes, we need to recreate the UDP socket,
because the ephemeral listen port is tied to the old physical interface.
As well, we need to re-set the IP addresses for each endpoint, so that
they're passed to getaddrinfo and are then resolved using DNS46.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-07 21:50:19 +01:00
Jason A. Donenfeld b7e5638681 Plist: Handle crypto export
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-07 18:52:14 +01:00
Jason A. Donenfeld 66b4aedd08 Make strings consistent
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-12-07 18:52:14 +01:00
Jason A. Donenfeld 9840e94c84 Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-07 17:43:50 +01:00
Jason A. Donenfeld d0ec532bd3 Settings: show build id
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-07 05:45:39 +01:00
Jason A. Donenfeld ff6a293660 Make license consistent
We changed all the files and the README to MIT a long time ago but
forgot to update COPYING.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-07 01:26:32 +01:00
Jason A. Donenfeld c5c536318f Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 20:18:11 +01:00
Jason A. Donenfeld 6e36c72f96 Importing: simplify
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 20:16:40 +01:00
Jason A. Donenfeld e992030569 PacketTunnelProvider: modernize header
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 19:04:53 +01:00
Jason A. Donenfeld 18a21064b2 Not horribly broken
Instead it's just mostly broken. Maybe someday it will only be partially
broken. Then a bit broken. And then maybe not broken at all? Before, of
course, it's broken again.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 19:02:46 +01:00
Jason A. Donenfeld 0a55a284d5 wireguard-go-bridge: take fd instead of fnptr
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 16:27:25 +01:00
Jason A. Donenfeld 02c31c89f6 Xcode: enable more warnings
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-06 16:27:25 +01:00
Jason A. Donenfeld 24575a5cf9 Version bump
We update the build number, not the version number, so that test flight
doesn't need a new review.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 21:44:00 +01:00
Jason A. Donenfeld e228ac9d99 global: convert to Swift 4.2
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 06:31:25 +01:00
Jason A. Donenfeld 8860abc89e TunnelsManager: account for no or many endpoints
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 06:23:26 +01:00
Jason A. Donenfeld 03cce06292 wireguard-go-bridge: work around DWARF generation issue
Golang bug 25148 upstream.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 04:47:11 +01:00
Jason A. Donenfeld a08a9ba4c4 PacketTunnelProvider: clamp v6 addresses to /120
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 03:11:11 +01:00
Jason A. Donenfeld 8ec38e1d2b Settings: account for bottom padding on iPhone X
Reported-by: Jeffrey A. Donenfeld <jad@runblue.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-05 02:09:40 +01:00
Jason A. Donenfeld 4bd1ea63c6 XCode: use old network extension ID
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-04 05:42:25 +01:00
Jason A. Donenfeld fe76d6eed9 wireguard-go-bridge: xcode expects install target
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-04 03:56:15 +01:00
Jason A. Donenfeld 6c40479863 XCode: unify version strings
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-04 03:51:50 +01:00
Jason A. Donenfeld 897c873296 Settings: anchor logo to bottom
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-04 03:37:18 +01:00
Jason A. Donenfeld c4e5bde1d9 Revert "Settings: Swap table view sections"
This reverts commit 1108f8248946f80d29012d8d43658db8461c0fed.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 19:53:04 +01:00
Jason A. Donenfeld e43de890e0 Settings: simplify
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 19:48:10 +01:00
Jason A. Donenfeld 955de09c9e Global: run through swiftlint
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 19:35:25 +01:00
Jason A. Donenfeld 6738ebb356 Settings: limit size of logo
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 19:20:21 +01:00
Jason A. Donenfeld b28a62c114 Settings: use updated wireguard banner logo
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 18:37:51 +01:00
Jason A. Donenfeld 1568ae57e3 TunnelsManager: restore sanity
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 18:20:25 +01:00
Jason A. Donenfeld 4bcfdfa08e Update readme
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 07:25:43 +01:00
Jason A. Donenfeld ec943587fa TunnelsManager: initialize observer on correct thread
Because of the callback recursion, this function needs to always be called from the right thread

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 07:03:23 +01:00
Jason A. Donenfeld 6405b76941 TunnelsManager: do not track currentTunnel
It's error prone and does not give us anything.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 06:22:57 +01:00
Jason A. Donenfeld 9e9898f17d TunnelsManager: do not change back to inactive if we are resolving the endpoint
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 06:09:57 +01:00
Jason A. Donenfeld 5845db4568 TunnelsManager: fix use of arrayslice in addMultiple
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 04:37:56 +01:00
Jason A. Donenfeld f57c40c38b TunnelsManager: get rid of name set
Instead, tunnels itself should be a sorted-set. For now it's a list,
which is probably fine though.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 03:53:08 +01:00
Jason A. Donenfeld 007d6d9c58 TunnelsManager: get rid of index management
No need for premature optimization. There aren't that many tunnels most
of the time, and calling sort on a partially sorted array is fast.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 03:43:09 +01:00
Jason A. Donenfeld 9439e00047 Global: no periods at the end of error messages
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 03:43:09 +01:00
Jason A. Donenfeld 95101dce5c Import: rework addMultiple logic
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-03 03:43:09 +01:00
Jason A. Donenfeld 7fc0e3ee94 DNSResolver: getaddrinfo returns a sockaddr and inet_ntop takes strlen
The way this was written before was totally wrong.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-02 05:34:17 +01:00
Jason A. Donenfeld 6676e557f1 wireguard-go-bridge: use boottime instead of monotonic
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-01 23:39:06 +01:00
Jason A. Donenfeld b21de2e398 NetworkExtension: check isTunnelClosed before packet existence
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-01 22:01:52 +01:00
Jason A. Donenfeld cf569fd0d2 Global: OK over Ok
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-01 21:22:12 +01:00
Jason A. Donenfeld c2d76b9c45 Global: fix up strings
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-01 19:01:43 +01:00
Jason A. Donenfeld c5e35fee1e Export: fix up export format
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-01 17:31:50 +01:00
Jason A. Donenfeld fff1a70ab9 UI: not all subclasses of CopyableLabelTableViewCell have a detailTextLabel, so generalize
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 16:38:05 +01:00
Jason A. Donenfeld ecb6035d36 TunnelManager: bound recursion in startActivation
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 15:58:03 +01:00
Jason A. Donenfeld 9f5612f93f wireguard-go-bridge: extract version for consumption by network extension
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 04:08:13 +01:00
Jason A. Donenfeld 2a9c7e4745 wireguard-go-bridge: simplify logging and remove tags
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 03:22:22 +01:00
Jason A. Donenfeld d2f3a29f45 NetworkExtension: close context before turning off go
The go turnOff code waits for all readers to have completed. In order to
make readers complete, we must send the signal to unblock the request.
Thus, we must reorder these.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 03:03:00 +01:00
Jason A. Donenfeld 3ed88cd858 wireguard-go-bridge: handle errors in makefile
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 02:49:59 +01:00
Jason A. Donenfeld 2e78aecd68 UI: More elegant copy-to-clipboard behavior
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-31 02:17:47 +01:00
Jason A. Donenfeld 935dc9bf4e wireguard-go: pull in recent change
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-30 22:51:05 +01:00
Jason A. Donenfeld 5b6ef1ca38 Global: fix up captialization in headers
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-30 03:57:35 +01:00
Jason A. Donenfeld dd1e800348 Style: simplify remaining headers
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-30 03:55:43 +01:00
Jason A. Donenfeld fc6bee0b8c XCode: fall back to default settings
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-30 03:54:00 +01:00
Jason A. Donenfeld 8bf6ae8729 ZIP: fix linter warnings
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-30 00:50:01 +01:00
Jason A. Donenfeld 95fefbdb39 Allow customizing MTU
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-27 01:03:28 +02:00
Jason A. Donenfeld e1ebe64a47 bridge: go get requires arch paths
So we move it into the build phase. This makes sense, since ostensibly
different archs might have different required modules.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-26 22:40:07 +02:00
Jason A. Donenfeld ac5d2b2a9e MIT license
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-10 22:34:18 +02:00
Jason A. Donenfeld add2b2c09c Use go modules
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-09 19:51:53 +02:00
Jason A. Donenfeld c10532acd9 Remove extra comment cruft
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-03 01:21:59 +02:00
Jason A. Donenfeld cd86ba92ec Rewrite bridge build system
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-02 19:15:03 +02:00
Jason A. Donenfeld 412a5ed445 Keep tabs on memory usage
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-25 02:50:03 +02:00
Jason A. Donenfeld 83def0a52b Prevent signal and wait from racing
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-24 03:15:21 +02:00
Jason A. Donenfeld 2ccbe0eb42 Update go submodule
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-24 01:53:35 +02:00
Jason A. Donenfeld 8a99806257 Truth
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-22 04:14:48 +02:00
Jason A. Donenfeld 99b9a6b80a PacketTunnelProvider: fix locking logic
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-22 04:13:02 +02:00
Jason A. Donenfeld 1c7cf59059 Give team to release
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-17 00:43:46 +02:00
Jason A. Donenfeld e8031be03d Update go snapshot
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-17 00:40:28 +02:00
Jason A. Donenfeld f16260db25 Preallocate buffers so we don't explode limit
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-17 00:40:09 +02:00
Jason A. Donenfeld 477433c9d5 Let XCode mess with stuff
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-15 16:13:50 +02:00
Jason A. Donenfeld e379854dcb Update bundle names
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-15 02:22:10 +02:00
Jason A. Donenfeld c7855a0d27 Remove testing id
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-15 01:33:48 +02:00
Jason A. Donenfeld d520420cc3 Set correct team
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-15 01:32:41 +02:00
Jason A. Donenfeld 721202c65b wireguard-go-bridge: include header for free function
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-08-31 10:29:27 -06:00
Jason A. Donenfeld 388e652315 wireguard-go-bridge: free C strings
Reported-by: Anders Bergh <anders1@gmail.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-08-26 21:11:39 -06:00
Jason A. Donenfeld 9d9307ce03 Import 25519 functions, to be reorganized later
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-08-21 16:14:17 -07:00
Jason A. Donenfeld 76a001dbe0 bridge: don't put on another thread
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-08-12 23:05:21 -07:00
Jason A. Donenfeld 5fa1283466 Fix bizarre name
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-06-23 02:15:43 +02:00
Jason A. Donenfeld 17529b300b Generate fat archive
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-06-13 02:30:12 +02:00
Jason A. Donenfeld b861590195 Correct archive file extension
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-06-13 00:35:15 +02:00
Jason A. Donenfeld 2ec6a90044 Build using c-archive instead
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-06-12 05:19:21 +02:00
Jason A. Donenfeld 831640312c First stab at Go bridge
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-06-09 04:22:11 +02:00
Jason A. Donenfeld 5b6b71c6e8 Initial commit
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-05-20 15:09:03 +02:00