diff options
author | Matt Dunwoodie <ncon@noconroy.net> | 2021-03-17 15:32:52 +1100 |
---|---|---|
committer | Matt Dunwoodie <ncon@noconroy.net> | 2021-04-04 16:21:40 +1000 |
commit | abadd29965b91267ce013c13fd21dacd3c2b3973 (patch) | |
tree | d1d9ebbba95c084aa88b40d51988bf0e103e9845 /Makefile.cross | |
parent | Count all handshake packets (diff) | |
download | wireguard-openbsd-abadd29965b91267ce013c13fd21dacd3c2b3973.tar.xz wireguard-openbsd-abadd29965b91267ce013c13fd21dacd3c2b3973.zip |
Replace wg_tag with wg_packet
I'll be the first to admit (but not the first to complain) about the
wg_tag situation. It made it very difficult to manage mbufs (that may be
reallocated with functions such as m_pullup). It was also not clear
where allocation was occuring. This also gets rid of the ring buffers in
wg_softc, which added no performance in this situation. They also used
memory unnecessarily and increased the complexity.
I also used this opportunity to get rid of the confusing t_mbuf/t_done
situation and revert to a more understandable UNCRYPTED/CRYPTED/DEAD
packet state. I don't believe there were any issues with the old style,
but to improve readability is always a welcome addition.
With these changes we can start encrypting packets in place (rather than
copying to a new mbuf), which should increase performance. This also
simplifies length calculations by using m_* functions and reading the
pkthdr length.
Diffstat (limited to 'Makefile.cross')
0 files changed, 0 insertions, 0 deletions