<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wg-dynamic, branch tg/client</title>
<subtitle>Dynamic configuration daemons for WireGuard</subtitle>
<id>https://git.zx2c4.com/wg-dynamic/atom/?h=tg%2Fclient</id>
<link rel='self' href='https://git.zx2c4.com/wg-dynamic/atom/?h=tg%2Fclient'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/'/>
<updated>2019-09-14T17:47:23Z</updated>
<entry>
<title>WIP2</title>
<updated>2019-09-14T17:47:23Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-09-14T17:43:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=9a9c3eaf6fedb23f26ea4ceb95d124a66c3c9d29'/>
<id>urn:sha1:9a9c3eaf6fedb23f26ea4ceb95d124a66c3c9d29</id>
<content type='text'>
</content>
</entry>
<entry>
<title>WIP1</title>
<updated>2019-09-14T17:47:14Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-09-14T17:42:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=40afab3754947ea2dcd5ae9c802ba9690ca3821d'/>
<id>urn:sha1:40afab3754947ea2dcd5ae9c802ba9690ca3821d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Do check for malloc =&gt; NULL</title>
<updated>2019-09-10T11:46:26Z</updated>
<author>
<name>Linus Nordberg</name>
<email>linus@nordberg.se</email>
</author>
<published>2019-09-10T11:46:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=51ce138f3bc8e2e8c4171fdc18aa12be256568d8'/>
<id>urn:sha1:51ce138f3bc8e2e8c4171fdc18aa12be256568d8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix incorrect use of pubkey ptr in new_lease()</title>
<updated>2019-09-10T03:56:18Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-09-10T03:20:53Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=2e03c617ba769bcbf0b8d1005b9df87f4e7a8c9c'/>
<id>urn:sha1:2e03c617ba769bcbf0b8d1005b9df87f4e7a8c9c</id>
<content type='text'>
Before this, leases_ht would store the (temporary) pointer to pubkey
that's given to new_lease() directly. The memory it's pointing to is
overwritten as soon as a new connection comes in however and thus
breaking the hashtable.

Instead make our own copy of the pubkey and store the pointer to that.
</content>
</entry>
<entry>
<title>Fix build issue that occurs on gcc debian 6.3.0-18</title>
<updated>2019-08-20T22:26:10Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-08-20T18:37:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=6e7066b57b792abd2dcba149643eadf8cb706118'/>
<id>urn:sha1:6e7066b57b792abd2dcba149643eadf8cb706118</id>
<content type='text'>
  CC      lease.o
In file included from /usr/include/arpa/inet.h:22:0,
                 from lease.c:3:
lease.c: In function 'new_lease':
lease.c:93:30: error: 'const struct in6_addr' has no member named 's6_addr32'
  bool wants_ipv6 = !ipv6 || !IN6_IS_ADDR_UNSPECIFIED(ipv6);
                              ^
lease.c:93:30: error: 'const struct in6_addr' has no member named 's6_addr32'
  bool wants_ipv6 = !ipv6 || !IN6_IS_ADDR_UNSPECIFIED(ipv6);
                              ^
lease.c:93:30: error: 'const struct in6_addr' has no member named 's6_addr32'
  bool wants_ipv6 = !ipv6 || !IN6_IS_ADDR_UNSPECIFIED(ipv6);
                              ^
lease.c:93:30: error: 'const struct in6_addr' has no member named 's6_addr32'
  bool wants_ipv6 = !ipv6 || !IN6_IS_ADDR_UNSPECIFIED(ipv6);
                              ^
lease.c: In function 'leases_refresh':
lease.c:213:10: error: 'const struct in6_addr' has no member named 's6_addr32'
     if (!IN6_IS_ADDR_UNSPECIFIED(ipv6))
          ^
lease.c:213:10: error: 'const struct in6_addr' has no member named 's6_addr32'
     if (!IN6_IS_ADDR_UNSPECIFIED(ipv6))
          ^
lease.c:213:10: error: 'const struct in6_addr' has no member named 's6_addr32'
     if (!IN6_IS_ADDR_UNSPECIFIED(ipv6))
          ^
lease.c:213:10: error: 'const struct in6_addr' has no member named 's6_addr32'
     if (!IN6_IS_ADDR_UNSPECIFIED(ipv6))
          ^
&lt;builtin&gt;: recipe for target 'lease.o' failed
make: *** [lease.o] Error 1
</content>
</entry>
<entry>
<title>Improve error handling and serialization</title>
<updated>2019-08-20T00:57:00Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-08-20T00:28:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=6694bb6db78a8b37a4689f31bf8cf24d16e0ddaf'/>
<id>urn:sha1:6694bb6db78a8b37a4689f31bf8cf24d16e0ddaf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't build wg-dynamic-client until it's fixed</title>
<updated>2019-08-20T00:30:42Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-08-20T00:30:04Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=3ecfa3130710fac0ca6fc9ff7fe0ba11c628fd1f'/>
<id>urn:sha1:3ecfa3130710fac0ca6fc9ff7fe0ba11c628fd1f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Initialize pools from routes via netlink</title>
<updated>2019-08-17T17:31:31Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-08-03T02:30:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=2ac97d672f753c8e4a77542e51dcc963eba94279'/>
<id>urn:sha1:2ac97d672f753c8e4a77542e51dcc963eba94279</id>
<content type='text'>
</content>
</entry>
<entry>
<title>radix-trie: implement pool shadowing</title>
<updated>2019-08-02T19:49:15Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-07-28T01:25:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=f7aae442151c3f18cd542b8260601759658ca460'/>
<id>urn:sha1:f7aae442151c3f18cd542b8260601759658ca460</id>
<content type='text'>
Pools are created from routes which can overlap. Consider the following:

ip route add 192.168.4.0/28
ip route add 192.168.4.0/24
sleep 3600
ip route del 192.168.4.0/24

Here, the pool created from the first route is being shadowed by the
pool from the second route. However, since the second pool is later
removed again we cannot simply combine them. So instead this commit
shadows them, to avoid them being double counted.
</content>
</entry>
<entry>
<title>Move counting logic from lease.c to radix-trie.c</title>
<updated>2019-07-18T13:14:46Z</updated>
<author>
<name>Thomas Gschwantner</name>
<email>tharre3@gmail.com</email>
</author>
<published>2019-07-18T00:49:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wg-dynamic/commit/?id=f302fdecb5492fd43b647f0f60ca35427bf2987e'/>
<id>urn:sha1:f302fdecb5492fd43b647f0f60ca35427bf2987e</id>
<content type='text'>
</content>
</entry>
</feed>
