1. 03 Mar, 2020 2 commits
    • Ondřej Zajíček's avatar
      Flowspec: Fix tests · e6746da6
      Ondřej Zajíček authored
      Missing dst no longer generates error.
    • Ondřej Zajíček's avatar
      BGP: Handle flowspec rules without dst part · 78e4a123
      Ondřej Zajíček authored
      The RFC 5575 does not explicitly reject flowspec rules without dst part,
      it just requires dst part in validation procedure for feasibility, which
      we do not implement anyway. Thus flow without dst prefix is syntactically
      valid, but unfeasible (if feasibilty testing is done).
      Thanks to Alex D. for the bugreport.
  2. 27 Feb, 2020 1 commit
  3. 09 Dec, 2019 1 commit
  4. 26 Nov, 2019 2 commits
    • Ondřej Zajíček's avatar
      Nest: Use bitmaps to keep track of exported routes · 5ea39eaa
      Ondřej Zajíček authored
      Use a hierarchical bitmap in a routing table to assign ids to routes, and
      then use bitmaps (indexed by route id) in channels to keep track whether
      routes were exported. This avoids unreliable and inefficient re-evaluation
      of filters for old routes in order to determine whether they were exported.
    • Ondřej Zajíček's avatar
      Lib: Basic and hierarchical bitmaps · af02b83b
      Ondřej Zajíček authored
      Basic bitmap is obvious. Hierarchical bitmap is structure of several
      bitmaps, where higher levels are conjunctions of intervals on level
      below, allowing for efficient lookup of first unset bit.
  5. 18 Nov, 2019 1 commit
    • Ondřej Zajíček's avatar
      BGP: Fix processing of IPv6 Flowspec · 0f882002
      Ondřej Zajíček authored
      During NLRI parsing of IPv6 Flowspec, dst prefix was not properly
      extracted from NLRI, therefore a received flow was stored in a different
      position in flowspec routing table, and was not reachable by command
      'show route <flow>'.
      Add proper prefix part accessors to flowspec code and use them from BGP
      NLRI parsing code.
      Thanks to Alex D. for the bugreport.
  6. 03 Nov, 2019 1 commit
  7. 09 Oct, 2019 1 commit
  8. 21 Aug, 2019 1 commit
  9. 20 Aug, 2019 1 commit
  10. 12 Aug, 2019 1 commit
  11. 23 Jul, 2019 1 commit
  12. 18 Jul, 2019 2 commits
  13. 15 Jul, 2019 1 commit
  14. 08 Jul, 2019 1 commit
  15. 02 Jul, 2019 1 commit
  16. 13 Jun, 2019 1 commit
  17. 23 May, 2019 1 commit
  18. 25 Feb, 2019 1 commit
  19. 20 Feb, 2019 2 commits
    • Maria Matejka's avatar
      GDB pretty printers: f_inst and f_val. · 71365879
      Maria Matejka authored
    • Maria Matejka's avatar
      Filter refactoring: dropped the recursion from the interpreter · 4c553c5a
      Maria Matejka authored
      This is a major change of how the filters are interpreted. If everything
      works how it should, it should not affect you unless you are hacking the
      filters themselves.
      Anyway, this change should make a huge improvement in the filter performance
      as previous benchmarks showed that our major problem lies in the
      recursion itself.
      There are also some changes in nest and protocols, related mostly to
      spreading const declarations throughout the whole BIRD and also to
      refactored dynamic attribute definitions. The need of these came up
      during the whole work and it is too difficult to split out these
      not-so-related changes.
  20. 24 Jan, 2019 1 commit
  21. 14 Dec, 2018 1 commit
  22. 04 Dec, 2018 2 commits
  23. 20 Nov, 2018 1 commit
    • Ondřej Zajíček's avatar
      The MRT protocol · 863ecfc7
      Ondřej Zajíček authored
      The new MRT protocol is responsible for periodic RIB table dumps in the
      MRT format (RFC 6396). Also the existing code for BGP4MP MRT dumps is
      refactored and splitted between BGP to MRT protocols, will be more
      integrated into MRT in the future.
      protocol mrt {
              table "*";
              filename "%N_%F_%T.mrt";
              period 60;
      It is partially based on the old MRT code from Pavel Tvrdik.
  24. 25 Oct, 2018 1 commit
  25. 01 Oct, 2018 1 commit
  26. 18 Sep, 2018 1 commit
    • Jan Maria Matejka's avatar
      No more warnings ... · d4cebc6b
      Jan Maria Matejka authored
      no more warnings
      No more warnings over me
      And while it is being compiled all the log is black and white
      Release BIRD now and then let it flee
      (use the melody of well-known Oh Freedom!)
  27. 22 Aug, 2018 1 commit
    • Jan Maria Matejka's avatar
      Lib: recursive printf · 64c5ad58
      Jan Maria Matejka authored
      Use like this:
      void func(const char *msg, va_list args) {
        bvsnprintf(buf, len, "file %s, line %d: %V (foo %d, bar %d)", file, line, msg, &args, foo, bar);
  28. 28 Jul, 2018 1 commit
    • Ondřej Zajíček's avatar
      BSD: Use MSG_DONTROUTE for unicast packets on FreeBSD · 318acb0f
      Ondřej Zajíček authored
      BSD systems cannot use SO_DONTROUTE, because it does not work properly
      with multicast packets (perhaps it tries to find iface based on multicast
      group address). But we can use MSG_DONTROUTE sendmsg() flag for unicast
      packets. Works on FreeBSD, is ignored on OpenBSD and is broken on NetBSD
      (i guess due to integrated routing table and ARP table).
  29. 27 Jun, 2018 1 commit
  30. 26 Jun, 2018 1 commit
  31. 29 May, 2018 1 commit
  32. 16 May, 2018 1 commit
  33. 13 Feb, 2018 1 commit
    • Ondřej Zajíček's avatar
      Add support for source-specific IPv6 routes to BIRD core · be17805c
      Ondřej Zajíček authored
      This patch adds support for source-specific IPv6 routes to BIRD core.
      This is based on Dean Luga's original patch, with the review comments
      addressed. SADR support is added to network address parsing in confbase.Y
      and to the kernel protocol on Linux.
      Currently there is no way to mix source-specific and non-source-specific
      routes (i.e., SADR tables cannot be connected to non-SADR tables).
      Thanks to Toke Hoiland-Jorgensen for the original patch.
      Minor changes by Ondrej Santiago Zajicek.
  34. 07 Feb, 2018 1 commit
  35. 10 Jan, 2018 1 commit