User Details
- User Since
- Jun 4 2014, 7:25 AM (556 w, 1 d)
Fri, Jan 24
Thu, Jan 23
IMHO, we need to fix this behaviour. First PINNED route should have priority and second attempt to add the same route on $if2 should fail with EEXIST. But then the test will fail, because after address deletion from $if1 there will not be any PINNED routes.
Tue, Jan 21
Sat, Jan 11
Dec 24 2024
Dec 23 2024
Dec 13 2024
I didn't test the patch, so if it is works for you I have no objection. :-)
I think this patch should do what you need.
Dec 12 2024
Dec 11 2024
Dec 4 2024
Dec 3 2024
IMHO when we already have an interface route, we should fail on trying to add the same route on different interface. And I think this should fail even before adding route, when an IP address will be configured.
If you want to test the case that was fixed in D47534 you need to add some static route, then configure interface route that will replace this static route, because interface route has higher priority.
I just tested these commands from PR:
ifconfig tun0 create ifconfig tun0 10.10.10.10 20.20.20.20 route -n delete -host 20.20.20.20 -interface tun0
with this patch:
--- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -1010,8 +1010,9 @@ rtnl_handle_delroute(struct nlmsghdr *hdr, struct nlpcb *nlp, return (EINVAL); }
I don't like the idea that you can easily remove PINNED route, but it seems it always worked before.
However as I see, route(8) should pass RTF_PINNED flag to netlink via attrs.rta_rtflags. At least we should reduce use of RTM_F_FORCE only for case when RTF_PINNED was sent from userland.
Dec 2 2024
Nov 26 2024
Nov 25 2024
Nov 23 2024
Nov 13 2024
Sep 26 2024
You probably can directly call similar to bpf_ifdetach() function from if_vmove(). It is called from ioctl context, so you can make detaching synchronously.
Sep 25 2024
Sep 5 2024
Sep 4 2024
Probably for network related code ENOBUFS is better than ENOMEM.
I think you need to modify IFF_CANTCHANGE in sys/net/if.h
Aug 1 2024
- Document some features, also reduce the diff.
- Fix bug in mac:radix table: lookup addr doesn't work due to wrong args order in memcpy
Jul 30 2024
- Document some features, also reduce the diff.
Jul 3 2024
Maybe it would be better implement such feature via named flag, like ignore_source is implemented? Also if_gre(4) has the same problem.
Jul 2 2024
Jun 28 2024
I think it is firewall problem when it can not handle some unexpected data. Pfil hook expects that mbus has M_PKTHDR and m->m_pkthdr.len in this case should not be 0, even when m_len is 0. Thus, I think if doesn't work properly, it should be fixed in firewall.
May 20 2024
Mar 5 2024
Probably you can simplify some similar checks in in6_src.c too, e.g. IP6PO_VALID_PKTINFO and IP6PO_VALID_NHINFO. Not sure how it impacts your cache misses measurements.
Feb 26 2024
Probably we should increase esps_notdb or esps_invalid counter here.
Feb 19 2024
Dec 15 2023
I think https://reviews.freebsd.org/D32811, https://reviews.freebsd.org/D33064 also are related.
Dec 14 2023
Isn't IPv6 part affected too?
Dec 11 2023
Nov 21 2023
Nov 14 2023
Nov 1 2023
Oct 30 2023
Oct 17 2023
Looks similar to what linux does.
Sep 14 2023
Sep 13 2023
Sep 4 2023
Sep 1 2023
Aug 8 2023
Aug 3 2023
Aug 2 2023
Jul 24 2023
Jul 11 2023
I don't like adding extra printfs on fast path processing. This can easily make your system unresponsive.
Jun 28 2023
Jun 27 2023
I think previous logic was correct and derived from code before IPsec overhaul.
Jun 25 2023
Jun 7 2023
Jun 5 2023
May 29 2023
LGTM. Do you plan to implement NAT_T_FRAG in kernel somehow?
Apr 3 2023
LGTM.
Jan 23 2023
Jan 22 2023
Jan 18 2023
Jan 17 2023
Jan 10 2023
we can't recover why would we ever have identical 4-tuples in the hash