drop ECN support for this release

This commit is contained in:
JackDoan
2026-07-31 13:42:15 -05:00
parent 549de9fd29
commit ddb90ad4b7
3 changed files with 12 additions and 21 deletions
-1
View File
@@ -260,7 +260,6 @@ func Main(c *config.C, configTest bool, buildVersion string, l *slog.Logger, dev
ifce.reloadDisconnectInvalid(c) ifce.reloadDisconnectInvalid(c)
ifce.reloadSendRecvError(c) ifce.reloadSendRecvError(c)
ifce.reloadAcceptRecvError(c) ifce.reloadAcceptRecvError(c)
ifce.reloadEcn(c)
handshakeManager.f = ifce handshakeManager.f = ifce
go handshakeManager.Run(ctx) go handshakeManager.Run(ctx)
+1 -1
View File
@@ -125,7 +125,7 @@ func (m *MultiCoalescer) Commit(pkt []byte) error {
if m.udp != nil { if m.udp != nil {
info, ok := parseUDP(pkt) info, ok := parseUDP(pkt)
if !ok { if !ok {
m.udp.addPassthrough(pkt) //we could also m.pt.Commit() here I guess? m.udp.addPassthrough(pkt)
return nil return nil
} }
return m.udp.commitParsed(pkt, info) return m.udp.commitParsed(pkt, info)
+11 -19
View File
@@ -25,18 +25,17 @@ import (
) )
type tun struct { type tun struct {
readers tio.QueueSet readers tio.QueueSet
closeLock sync.Mutex closeLock sync.Mutex
Device string Device string
vpnNetworks []netip.Prefix vpnNetworks []netip.Prefix
MaxMTU int MaxMTU int
DefaultMTU int DefaultMTU int
TXQueueLen int TXQueueLen int
deviceIndex int deviceIndex int
ioctlFd uintptr ioctlFd uintptr
vnetHdr bool vnetHdr bool
offloadFlags uint offloadFlags uint
routeFeatureECN bool
Routes atomic.Pointer[[]Route] Routes atomic.Pointer[[]Route]
routeTree atomic.Pointer[bart.Table[routing.Gateways]] routeTree atomic.Pointer[bart.Table[routing.Gateways]]
@@ -223,7 +222,6 @@ func newTunGeneric(c *config.C, l *slog.Logger, fd int, vnetHdr bool, offloadFla
TXQueueLen: c.GetInt("tun.tx_queue", 500), TXQueueLen: c.GetInt("tun.tx_queue", 500),
useSystemRoutes: c.GetBool("tun.use_system_route_table", false), useSystemRoutes: c.GetBool("tun.use_system_route_table", false),
useSystemRoutesBufferSize: c.GetInt("tun.use_system_route_table_buffer_size", 0), useSystemRoutesBufferSize: c.GetInt("tun.use_system_route_table_buffer_size", 0),
routeFeatureECN: c.GetBool("tunnels.ecn", true), //todo!!!
routesFromSystem: map[netip.Prefix]routing.Gateways{}, routesFromSystem: map[netip.Prefix]routing.Gateways{},
l: l, l: l,
} }
@@ -534,9 +532,6 @@ func (t *tun) setDefaultRoute(cidr netip.Prefix) error {
if cidr.Addr().Is6() { if cidr.Addr().Is6() {
nr.Priority = 256 nr.Priority = 256
} }
if t.routeFeatureECN {
nr.Features |= unix.RTAX_FEATURE_ECN
}
err := netlink.RouteReplace(&nr) err := netlink.RouteReplace(&nr)
if err != nil { if err != nil {
t.l.Warn("Failed to set default route MTU, retrying", "error", err, "cidr", cidr) t.l.Warn("Failed to set default route MTU, retrying", "error", err, "cidr", cidr)
@@ -586,9 +581,6 @@ func (t *tun) addRoutes(logErrors bool) error {
if r.Metric > 0 { if r.Metric > 0 {
nr.Priority = r.Metric nr.Priority = r.Metric
} }
if t.routeFeatureECN {
nr.Features |= unix.RTAX_FEATURE_ECN
}
err := netlink.RouteReplace(&nr) err := netlink.RouteReplace(&nr)
if err != nil { if err != nil {