Attention is currently required from: flichtenheld, plaisthos.

cron2 has posted comments on this change. ( 
http://gerrit.openvpn.net/c/openvpn/+/827?usp=email )

Change subject: forward: Fix potential unaligned access in 
drop_if_recursive_routing
......................................................................


Patch Set 3: Code-Review+2

(1 comment)

Patchset:

PS3:
For the record: long discussion on the underlying problem - Linux has a 
different `IN6_ARE_ADDR_EQUAL()` macro than "the rest of the world" - doing 4x 
32bit compares, instead of a `memcmp()` underneath.  Which is faster if 
aligned, and bombs if not.

We could make the header aligned by misaligning the underlying `buf` for the 
TAP case (14/18 byte ethernet header...) but decided that this would be a 
serious undertaking, possibly needing new buffers to get the crypto stuff 
aligned, and there be dragons.

So, just use `memcmp()` for both v4 and v6, on the base pointer, which appeases 
clang.  If the compiler wants to turn this into machine code that does 32 or 64 
bit compares, it can :-)



--
To view, visit http://gerrit.openvpn.net/c/openvpn/+/827?usp=email
To unsubscribe, or for help writing mail filters, visit 
http://gerrit.openvpn.net/settings

Gerrit-Project: openvpn
Gerrit-Branch: master
Gerrit-Change-Id: I74a9eec4954f3f9d208792b6b34357571f76ae4c
Gerrit-Change-Number: 827
Gerrit-PatchSet: 3
Gerrit-Owner: flichtenheld <fr...@lichtenheld.com>
Gerrit-Reviewer: cron2 <g...@greenie.muc.de>
Gerrit-Reviewer: plaisthos <arne-open...@rfc2549.org>
Gerrit-CC: openvpn-devel <openvpn-devel@lists.sourceforge.net>
Gerrit-Attention: plaisthos <arne-open...@rfc2549.org>
Gerrit-Attention: flichtenheld <fr...@lichtenheld.com>
Gerrit-Comment-Date: Wed, 11 Dec 2024 17:13:20 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to