mirror of
https://github.com/tailscale/tailscale.git
synced 2025-06-30 12:08:46 +00:00
wgengine/magicsock: set Geneve header protocol for WireGuard (#16350)
Otherwise receives interpret as naked WireGuard. Updates tailscale/corp#27502 Signed-off-by: Jordan Whited <jordan@tailscale.com>
This commit is contained in:
parent
61958f531c
commit
0905936c45
@ -114,6 +114,7 @@ func (c *linuxBatchingConn) coalesceMessages(addr *net.UDPAddr, vni virtualNetwo
|
|||||||
vniIsSet := vni.isSet()
|
vniIsSet := vni.isSet()
|
||||||
var gh packet.GeneveHeader
|
var gh packet.GeneveHeader
|
||||||
if vniIsSet {
|
if vniIsSet {
|
||||||
|
gh.Protocol = packet.GeneveProtocolWireGuard
|
||||||
gh.VNI = vni.get()
|
gh.VNI = vni.get()
|
||||||
}
|
}
|
||||||
for i, buff := range buffs {
|
for i, buff := range buffs {
|
||||||
@ -202,6 +203,7 @@ retry:
|
|||||||
vniIsSet := addr.vni.isSet()
|
vniIsSet := addr.vni.isSet()
|
||||||
var gh packet.GeneveHeader
|
var gh packet.GeneveHeader
|
||||||
if vniIsSet {
|
if vniIsSet {
|
||||||
|
gh.Protocol = packet.GeneveProtocolWireGuard
|
||||||
gh.VNI = addr.vni.get()
|
gh.VNI = addr.vni.get()
|
||||||
offset -= packet.GeneveFixedHeaderLength
|
offset -= packet.GeneveFixedHeaderLength
|
||||||
}
|
}
|
||||||
|
@ -85,7 +85,8 @@ func (c *RebindingUDPConn) WriteBatchTo(buffs [][]byte, addr epAddr, offset int)
|
|||||||
var gh packet.GeneveHeader
|
var gh packet.GeneveHeader
|
||||||
if vniIsSet {
|
if vniIsSet {
|
||||||
gh = packet.GeneveHeader{
|
gh = packet.GeneveHeader{
|
||||||
VNI: addr.vni.get(),
|
Protocol: packet.GeneveProtocolWireGuard,
|
||||||
|
VNI: addr.vni.get(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for _, buf := range buffs {
|
for _, buf := range buffs {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user