no bart for cidr

This commit is contained in:
JackDoan committed 2026-09-30 12:24:01 -05:00
1 parent f3b76703ae
commit 9aab46c1ad
4 files changed
+65 -27

No files matched your search

+6 -8
View File
@@ -288,15 +288,13 @@ func (rr *remoteRules) add(r rule) {
}
if r.cidr.IsValid() {
if rr.CIDR == nil {
rr.CIDR = new(bart.Table[*localRules])
prefix := r.cidr.Masked()
i := slices.IndexFunc(rr.CIDR, func(cr cidrRule) bool { return cr.Prefix == prefix })
if i < 0 {
i = len(rr.CIDR)
rr.CIDR = append(rr.CIDR, cidrRule{Prefix: prefix, LocalCIDR: &localRules{}})
}
lr, ok := rr.CIDR.Get(r.cidr)
if !ok {
lr = &localRules{}
rr.CIDR.Insert(r.cidr, lr)
}
lr.add(r)
rr.CIDR[i].LocalCIDR.add(r)
}
}