<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-apple/Sources/WireGuardKit, branch am/develop</title>
<subtitle>iOS and macOS apps for WireGuard</subtitle>
<id>https://git.zx2c4.com/wireguard-apple/atom/Sources/WireGuardKit?h=am%2Fdevelop</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-apple/atom/Sources/WireGuardKit?h=am%2Fdevelop'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/'/>
<updated>2022-02-21T14:54:49Z</updated>
<entry>
<title>Kit: make it possible to opt-out from automatically raising the reasserting flag.</title>
<updated>2022-02-21T14:54:49Z</updated>
<author>
<name>Andrej Mihajlov</name>
<email>and@mullvad.net</email>
</author>
<published>2022-02-21T14:29:02Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=b7f344968dfe80aae19c1b56ead5a281ad238824'/>
<id>urn:sha1:b7f344968dfe80aae19c1b56ead5a281ad238824</id>
<content type='text'>
Signed-off-by: Andrej Mihajlov &lt;and@mullvad.net&gt;
</content>
</entry>
<entry>
<title>Kit: Adapter: ignore error when updating tunnel settings in offline</title>
<updated>2021-12-20T15:21:34Z</updated>
<author>
<name>Andrej Mihajlov</name>
<email>and@mullvad.net</email>
</author>
<published>2021-12-20T11:19:17Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=7dea71898d7d11495c7bb9a0b4f8215ae2efe53f'/>
<id>urn:sha1:7dea71898d7d11495c7bb9a0b4f8215ae2efe53f</id>
<content type='text'>
Since around iOS 15.1, calling `setNetworkSettings()` when in
airplane mode, throws an unknown error:

Error Domain=NEAgentErrorDomain Code=1

Signed-off-by: Andrej Mihajlov &lt;and@mullvad.net&gt;
</content>
</entry>
<entry>
<title>Global: bump copyright year</title>
<updated>2021-06-17T14:56:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2021-06-17T14:56:46Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=13b720442d47b67a18d6841aa34569633a22b458'/>
<id>urn:sha1:13b720442d47b67a18d6841aa34569633a22b458</id>
<content type='text'>
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>Kit: add missing import for WireGuardKitC</title>
<updated>2021-06-17T13:15:41Z</updated>
<author>
<name>Andrej Mihajlov</name>
<email>and@mullvad.net</email>
</author>
<published>2021-06-17T11:23:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=c1f509d65bba1c00c6b6ef93826f658ff36a0761'/>
<id>urn:sha1:c1f509d65bba1c00c6b6ef93826f658ff36a0761</id>
<content type='text'>
Signed-off-by: Andrej Mihajlov &lt;and@mullvad.net&gt;
</content>
</entry>
<entry>
<title>Kit: Adapter: use more reliable utun detection technique</title>
<updated>2021-06-16T15:40:12Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2021-06-16T15:09:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=23bf3cfccb5a6fa9faf85c35ca24ec4c3e29c3fe'/>
<id>urn:sha1:23bf3cfccb5a6fa9faf85c35ca24ec4c3e29c3fe</id>
<content type='text'>
Rather than hoping that the AF_SYSTEM fd is of type utun, and then
calling "2" on it to get the name -- which could be defined as something
else for a different AF_SYSTEM socket type -- instead simply query the
AF_SYSTEM control socket ID with getpeername. This has one catch, which
is that the ID is dynamically allocated, so we resolve it using the
qualified name. Normally we'd make a new AF_SYSTEM socket for this, but
since that's not allowed in the sandbox, we reuse the AF_SYSTEM socket
that we're checking. At this point in the flow, we know that it's a
proper AF_SYSTEM one, based on the first sockaddr member; we just don't
know that it's a utun variety.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>Kit: Adapter: iterate through all FDs to find UTUN</title>
<updated>2021-06-16T13:56:21Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2021-06-16T13:56:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=7f5ad3e503f231893dc5d298f703c4b72b83bdb9'/>
<id>urn:sha1:7f5ad3e503f231893dc5d298f703c4b72b83bdb9</id>
<content type='text'>
This is a bit of a kludge, until I find something better. We simply
iterate through all FDs, and call getsockopt on each one until we find
the utun FD. This works, and completes rather quickly (fd is usually 6
or 7). Rather than maintain the old path for older kernels, just use
this for all versions, to get more coverage. Other techniques involve
undocumented APIs; this one has the advantage of using nothing
undocumented.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>SPM: update exclude rules</title>
<updated>2021-06-16T13:23:11Z</updated>
<author>
<name>Andrej Mihajlov</name>
<email>and@mullvad.net</email>
</author>
<published>2021-06-15T13:18:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=820fa55380b529704945b32e5d990f690c03b2e2'/>
<id>urn:sha1:820fa55380b529704945b32e5d990f690c03b2e2</id>
<content type='text'>
Fixes missing excluded file warning in Xcode. api-ios.go was renamed to api-apple.go.

Signed-off-by: Andrej Mihajlov &lt;and@mullvad.net&gt;
</content>
</entry>
<entry>
<title>Kit: Go: bump to latest API</title>
<updated>2021-03-09T16:10:04Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2021-03-08T19:29:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=b7f69d20b6c6560b6cdced961bed428e68c66719'/>
<id>urn:sha1:b7f69d20b6c6560b6cdced961bed428e68c66719</id>
<content type='text'>
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>Kit: netcfg: add explicit IP mask routes</title>
<updated>2021-01-01T17:28:14Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2021-01-01T17:26:49Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=7b5b564a6ee3d3be90cdb56472cd404e8a0eaa18'/>
<id>urn:sha1:7b5b564a6ee3d3be90cdb56472cd404e8a0eaa18</id>
<content type='text'>
macOS will use the wrong source address unless we add explicit routes
that mention the self-pointing gateway. Actually, it won't add any
implicit routes on its own, so in order to route the masks of the
addresses, we have to add our own routes explicitly.

However, this still doesn't fix the problem while inside of the network
extension, even though it works outside it.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>Kit: do not crash on [abcd::] with missing port</title>
<updated>2020-12-23T13:06:26Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2020-12-23T13:06:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-apple/commit/?id=b67acaccff1b587717c1fc444179307da4919c12'/>
<id>urn:sha1:b67acaccff1b587717c1fc444179307da4919c12</id>
<content type='text'>
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
</feed>
