]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Merge commit 'v2.13.1-189-g105e50f6' into thread-next
authorMaria Matejka <mq@ucw.cz>
Sun, 28 Jan 2024 13:42:36 +0000 (14:42 +0100)
committerMaria Matejka <mq@ucw.cz>
Sun, 28 Jan 2024 13:42:36 +0000 (14:42 +0100)
1  2 
doc/bird.sgml
sysdep/linux/netlink.c
sysdep/unix/krt.Y
sysdep/unix/krt.c
sysdep/unix/krt.h

diff --cc doc/bird.sgml
Simple merge
Simple merge
index 92fc192037aae445e4eb7e6bd5f474a272f703ff,90297d3ff663b5e5c0fa05c20e12e83a1eef1251..7b58c657422df57d43a9af0ce108fb9ff3e1a502
@@@ -29,9 -29,10 +29,10 @@@ kif_set_preferred(ip_addr ip
  
  CF_DECLS
  
 -CF_KEYWORDS(KERNEL, PERSIST, SCAN, TIME, LEARN, DEVICE, ROUTES, GRACEFUL, RESTART, KRT_SOURCE, KRT_METRIC, MERGE, PATHS)
 +CF_KEYWORDS(KERNEL, PERSIST, SCAN, TIME, LEARN, DEVICE, ROUTES, GRACEFUL, RESTART, MERGE, PATHS)
  CF_KEYWORDS(INTERFACE, PREFERRED)
  
+ %type <i> kern_learn
  %type <i> kern_mp_limit
  %type <cc> kern_channel
  
index 54be8b059eb2866ef93535aea11b2b243dcf1724,3a4b24dceb050fce31d06eb3ec922d0e026b1048..6231824128a4ed3adcdf02679e38c4c23b261f57
@@@ -446,15 -639,14 +446,19 @@@ krt_got_route(struct krt_proto *p, rte 
  #ifdef KRT_ALLOW_LEARN
    switch (src)
      {
-     case KRT_SRC_KERNEL:
-       krt_trace_in(p, e, "ignored");
-       return;
      case KRT_SRC_REDIRECT:
 -      goto delete;
 +      krt_trace_in(p, e, "deleting");
 +      krt_replace_rte(p, e->net, NULL, e);
 +      return;
  
 -        goto ignore;
+     case KRT_SRC_KERNEL:
+       if (KRT_CF->learn != KRT_LEARN_ALL)
++      {
++      krt_trace_in(p, e, "ignored");
++      return;
++      }
+       /* fallthrough */
      case  KRT_SRC_ALIEN:
        if (KRT_CF->learn)
        krt_learn_scan(p, e);
Simple merge