<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/sys/netinet, branch master</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/sys/netinet?h=master</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/sys/netinet?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2021-03-30T08:37:10Z</updated>
<entry>
<title>[ICMP] IP options lead to malformed reply</title>
<updated>2021-03-30T08:37:10Z</updated>
<author>
<name>sashan</name>
<email>sashan@openbsd.org</email>
</author>
<published>2021-03-30T08:37:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=4a2fbec54cbc0da51823e722a2b9133608b077ae'/>
<id>urn:sha1:4a2fbec54cbc0da51823e722a2b9133608b077ae</id>
<content type='text'>
icmp_send() must update IP header length if IP optaions are appended.
Such packet also has to be dispatched with IP_RAWOUTPUT flags.

Bug reported and fix co-designed by Dominik Schreilechner _at_ siemens _dot_ com

OK bluhm@
</content>
</entry>
<entry>
<title>use m_dup_pkthdr in ip_fragment to copy pkthdr info to fragments.</title>
<updated>2021-03-20T01:15:28Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2021-03-20T01:15:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=2a78f6c46e4a7f777fd4f7fb86bcab2b86c07636'/>
<id>urn:sha1:2a78f6c46e4a7f777fd4f7fb86bcab2b86c07636</id>
<content type='text'>
this ensures more stuff is copied, in particular the flowid
information. this is also how v6 does it, which makes things more
consistent.

ok bluhm@
</content>
</entry>
<entry>
<title>spelling</title>
<updated>2021-03-10T10:21:47Z</updated>
<author>
<name>jsg</name>
<email>jsg@openbsd.org</email>
</author>
<published>2021-03-10T10:21:47Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=678831be5eff0bcb5217b54d0dcfb6698acf8411'/>
<id>urn:sha1:678831be5eff0bcb5217b54d0dcfb6698acf8411</id>
<content type='text'>
ok gnezdo@ semarie@ mpi@
</content>
</entry>
<entry>
<title>use uint64_t ethernet addresses for compares in carp.</title>
<updated>2021-03-07T06:02:32Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2021-03-07T06:02:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=3d877566ccf3785fee7d0aefa9abb0ab070a9bde'/>
<id>urn:sha1:3d877566ccf3785fee7d0aefa9abb0ab070a9bde</id>
<content type='text'>
pass the uint64_t that ether_input has already converted from a
real ethernet address into carp_input so it can use it without
having to do its own conversion.

tested by hrvoje popovski
tested by me on amd64 and sparc64
ok patrick@ jmatthew@
</content>
</entry>
<entry>
<title>pass the uint64_t dst ethernet address from ether_input to bridges.</title>
<updated>2021-03-05T06:44:09Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2021-03-05T06:44:09Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=4e0e716093605df15aec0a8b3e8fe5fb40a5c36a'/>
<id>urn:sha1:4e0e716093605df15aec0a8b3e8fe5fb40a5c36a</id>
<content type='text'>
tested on amd64 and sparc64.
</content>
</entry>
<entry>
<title>Refactor ip_fragment() and ip6_fragment().  Use a mbuf list to</title>
<updated>2021-03-01T11:05:42Z</updated>
<author>
<name>bluhm</name>
<email>bluhm@openbsd.org</email>
</author>
<published>2021-03-01T11:05:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=2818ef99e36cb3e1aa903761b5b1dde22c59b89f'/>
<id>urn:sha1:2818ef99e36cb3e1aa903761b5b1dde22c59b89f</id>
<content type='text'>
simplify the handling of the fragment list.  Now the functions
ip_fragment() and ip6_fragment() always consume the mbuf.  They
free the mbuf and mbuf list in case of an error and take care about
the counter.  Adjust the code a bit to make v4 and v6 look similar.
Fixes a potential mbuf leak when pf_route6() called pf_refragment6()
and it failed.  Now the mbuf is always freed by ip6_fragment().
OK dlg@ mvs@
</content>
</entry>
<entry>
<title>add some helpers for working with ethernet addresses as uint64_t</title>
<updated>2021-02-26T01:12:37Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2021-02-26T01:12:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=cf89a71d9e248649a2adb23d76cc1cef5a7a7bba'/>
<id>urn:sha1:cf89a71d9e248649a2adb23d76cc1cef5a7a7bba</id>
<content type='text'>
the main bits are ether_addr_to_e64 and ether_e64_to addr for loading
an ethernet address into a uin64_t and visa versa. there's also
some macros for testing if an address in a uint64_t is multicast,
broadcast, anyaddr, or if it's an 802.1q reserved multicast group
address.

the reason for this functionality is once you have an ethernet
address as a uint64_t, operations like compares, bit tests, and
so on are fast and easy.

tested on amd64 and sparc64
</content>
</entry>
<entry>
<title>we don't have to cast to caddr_t when calling m_copydata anymore.</title>
<updated>2021-02-25T02:48:19Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2021-02-25T02:48:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=5c7fed39bd376c774afa6b5ea3c41fd50de48416'/>
<id>urn:sha1:5c7fed39bd376c774afa6b5ea3c41fd50de48416</id>
<content type='text'>
the first cut of this diff was made with coccinelle using this spatch:

@rule@
type caddr_t;
expression m, off, len, cp;
@@
-m_copydata(m, off, len, (caddr_t)cp)
+m_copydata(m, off, len, cp)

i had fix it's opinionated idea of formatting by hand though, so
i'm not sure it was worth it.

ok deraadt@ bluhm@
</content>
</entry>
<entry>
<title>Use pool to allocate tdbs.</title>
<updated>2021-02-23T19:43:54Z</updated>
<author>
<name>tobhe</name>
<email>tobhe@openbsd.org</email>
</author>
<published>2021-02-23T19:43:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=8e1757562d0ee54169e420ffea4956978899739c'/>
<id>urn:sha1:8e1757562d0ee54169e420ffea4956978899739c</id>
<content type='text'>
ok patrick@ bluhm@
</content>
</entry>
<entry>
<title>As ip_insertoptions() may prepend a mbuf, "goto bad" has to free</title>
<updated>2021-02-23T12:14:10Z</updated>
<author>
<name>bluhm</name>
<email>bluhm@openbsd.org</email>
</author>
<published>2021-02-23T12:14:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=77dfdc871d4cc806522f434a4d2465decc752610'/>
<id>urn:sha1:77dfdc871d4cc806522f434a4d2465decc752610</id>
<content type='text'>
the new chain.  This fixes a potential memory leak in ip_output().
Also simplify a bunch of "goto done".
OK kn@ mvs@
</content>
</entry>
</feed>
