1. 07 Apr, 2016 2 commits
  2. 06 Apr, 2016 3 commits
    • Ondřej Zajíček's avatar
      IO: Avoid multiple event cycles in one loop cycle. · bd22d7f4
      Ondřej Zajíček authored
      Event cycle may took too much time and trigger next timer events, so
      avoid cycling between timer and event cycles inside the loop cycle.
      bd22d7f4
    • Ondřej Zajíček's avatar
      IO: Replace RX priority heuristic with explicit mark · 9e7b3ebd
      Ondřej Zajíček authored
      In BIRD, RX has lower priority than TX with the exception of RX from
      control socket. The patch replaces heuristic based on socket type with
      explicit mark and uses it for both control socket and BGP session waiting
      to be established.
      
      This should avoid an issue when during heavy load, outgoing connection
      could connect (TX event), send open, but then failed to receive OPEN /
      establish in time, not sending notifications between and therefore
      got hold timer expired error from the neighbor immediately after it
      finally established the connection.
      9e7b3ebd
    • Ondřej Zajíček's avatar
      KRT: Fix route learn scan when route changed · e86cfd41
      Ondřej Zajíček authored
      When a kernel route changed, function krt_learn_scan() noticed that and
      replaced the route in internal kernel FIB, but after that, function
      krt_learn_prune() failed to propagate the new route to the nest, because
      it confused the new route with the (removed) old best route and decided
      that the best route did not changed.
      
      Wow, the original code (and the bug) is almost 17 years old.
      e86cfd41
  3. 30 Mar, 2016 1 commit
  4. 23 Mar, 2016 5 commits
  5. 22 Mar, 2016 1 commit
  6. 18 Mar, 2016 1 commit
  7. 17 Mar, 2016 2 commits
  8. 15 Mar, 2016 1 commit
  9. 11 Mar, 2016 1 commit
  10. 25 Feb, 2016 3 commits
  11. 16 Feb, 2016 1 commit
  12. 11 Feb, 2016 2 commits
    • Ondřej Zajíček's avatar
      Unix: Fix bug in syslog name handling · c2106b67
      Ondřej Zajíček authored
      Pointer to current_log_name has to be changed even if the name is the
      same, because the old one will be invalid/freed after reconfiguration.
      c2106b67
    • Ondřej Zajíček's avatar
      BGP: Fix bug in incoming connection handling · 487c6961
      Ondřej Zajíček authored
      When a BGP session was established by an outgoing connection with
      Graceful Restart behavior negotiated, a pending incoming connection in
      OpenSent state, and another incoming connection was received, then the
      outgoing connection (and whole BGP session) was closed, but the old
      incoming connection was just overwritten by the new one. That later
      caused a crash when the hold timer from the old connection fired.
      487c6961
  13. 25 Nov, 2015 1 commit
  14. 24 Nov, 2015 5 commits
  15. 23 Nov, 2015 2 commits
  16. 13 Nov, 2015 4 commits
  17. 11 Nov, 2015 2 commits
  18. 09 Nov, 2015 2 commits
    • Ondřej Zajíček's avatar
      Nest: Fixes bug in missing cleanup during table removal · 86b4e170
      Ondřej Zajíček authored
      When a table is removed during reconfiguration, a reference was not
      cleared in the old configuration, which breaks undo.
      86b4e170
    • Ondřej Zajíček's avatar
      Conf: Fixes bug in symbol lookup during reconfiguration · 9b9a7143
      Ondřej Zajíček authored
      Symbol lookup by cf_find_symbol() not only did the lookup but also added
      new void symbols allocated from cfg_mem linpool, which gets broken when
      lookups are done outside of config parsing, which may lead to crashes
      during reconfiguration.
      
      The patch separates lookup-only cf_find_symbol() and config-modifying
      cf_get_symbol(), while the later is called only during parsing. Also
      new_config and cfg_mem global variables are NULLed outside of parsing.
      9b9a7143
  19. 03 Nov, 2015 1 commit