1. 09 Nov, 2015 1 commit
    • 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.
  2. 08 Jun, 2015 1 commit
  3. 02 Mar, 2015 1 commit
  4. 21 Feb, 2015 1 commit
  5. 02 Oct, 2014 1 commit
  6. 25 Mar, 2014 1 commit
  7. 20 Mar, 2014 1 commit
    • Ondřej Zajíček's avatar
      BGP graceful restart support. · 0c791f87
      Ondřej Zajíček authored
      Also significant core protocol state changes needed for that,
      global graceful restart recovery state and kernel proto support
      for recovery.
  8. 25 Jul, 2013 1 commit
  9. 27 Dec, 2012 1 commit
    • Ondřej Zajíček's avatar
      Implements interface masks for choosing router id. · 79b4e12e
      Ondřej Zajíček authored
      Router ID could be automatically determined based of subset of
      ifaces/addresses specified by 'router id from' option. The patch also
      does some minor changes related to router ID reconfiguration.
      Thanks to Alexander V. Chernikov for most of the work.
  10. 26 Dec, 2012 1 commit
  11. 18 Jul, 2012 1 commit
  12. 18 Mar, 2012 1 commit
    • Ondřej Zajíček's avatar
      Route Origin Authorization basics. · af582c48
      Ondřej Zajíček authored
       - ROA tables, which are used as a basic part for RPKI.
       - Commands for examining and modifying ROA tables.
       - Filter operators based on ROA tables consistent with RFC 6483.
  13. 07 Nov, 2011 1 commit
    • Ondřej Zajíček's avatar
      Implements protocol templates. · a7f23f58
      Ondřej Zajíček authored
      Based on the patch from Alexander V. Chernikov.
      Extended to support almost all protocols.
      Uses 'protocol bgp NAME from TEMPLATE { ... }' syntax.
  14. 10 Oct, 2011 1 commit
  15. 11 Sep, 2011 1 commit
  16. 07 Apr, 2010 1 commit
  17. 03 Feb, 2010 1 commit
  18. 03 Jan, 2010 1 commit
  19. 23 Jun, 2009 1 commit
  20. 19 Jun, 2009 1 commit
  21. 18 Jun, 2009 1 commit
  22. 25 Dec, 2008 1 commit
    • Ondřej Zajíček's avatar
      fixes some 64-bit related bugs. · 083c43e2
      Ondřej Zajíček authored
      Filter code used 'aux' integer field of 'symbol' struct to store ptr
      to next symbol and both 'aux2' and 'def' fields for value.
      Changed to just 'def' for value and 'aux2' for ptr to next symbol.
      Also another minor bugfix.
  23. 04 Jun, 2000 1 commit
    • Martin Mareš's avatar
      Nested scopes could never have worked. My fault I wrote such a buggy code, · 04dc62a0
      Martin Mareš authored
      Pavel's fault that he's never tested shadowing of declarations in the filters.
      cf_define_symbol() has been modified to check the scope of the symbol it's
      given and it if it's an already defined symbol, but in a different scope,
      a copy is created in the current scope and redefined to the new meaning,
      the consequence being that it cf_define_symbol() now returns the new symbol
      you need to use when assigning aux and aux2.
  24. 03 Jun, 2000 1 commit
  25. 30 May, 2000 1 commit
  26. 15 May, 2000 1 commit
    • Martin Mareš's avatar
      Cleanup of configuration. · e3f2d5fc
      Martin Mareš authored
      o  Use `expr' instead of `NUM' and `ipa' instead of `IPA',
         so that defined symbols work everywhere.
      o  `define' now accepts both numbers and IP addresses.
      o  Renamed `ipa' in filters to `fipa'.
      Pavel, please update filters to accept define'd symbols as well.
  27. 12 Mar, 2000 1 commit
  28. 07 Mar, 2000 1 commit
  29. 19 Jan, 2000 1 commit
  30. 17 Jan, 2000 1 commit
    • Martin Mareš's avatar
      Separated `official protocol names' used in status dumps from name templates · d272fe22
      Martin Mareš authored
      used for automatic generation of instance names.
      	protocol->name is the official name
      	protocol->template is the name template (usually "name%d"),
      		should be all lowercase.
      Updated all protocols to define the templates, checked that their configuration
      grammar includes proto_name which generates the name and interns it in the
      symbol table.
  31. 16 Jan, 2000 2 commits
  32. 06 Dec, 1999 1 commit
  33. 30 Nov, 1999 1 commit
  34. 15 Nov, 1999 1 commit
  35. 04 Nov, 1999 2 commits
  36. 31 Oct, 1999 1 commit
    • Martin Mareš's avatar
      Parse CLI commands. We use the same parser as for configuration files (because · bc2fb680
      Martin Mareš authored
      we want to allow filter and similar complex constructs to be used in commands
      and we should avoid code duplication), only with CLI_MARKER token prepended
      before the whole input.
      Defined macro CF_CLI(cmd, args, help) for defining CLI commands in .Y files.
      The first argument specifies the command itself, the remaining two arguments
      are copied to the help file (er, will be copied after the help file starts
      to exist). This macro automatically creates a skeleton rule for the command,
      you only need to append arguments as in:
      	CF_CLI(STEAL MONEY, <$>, [[Steal <$> US dollars or equivalent in any other currency]]): NUM {
      		cli_msg(0, "%d$ stolen", $3);
      	} ;
      Also don't forget to reset lexer state between inputs.
  37. 01 Jul, 1999 1 commit
  38. 17 May, 1999 1 commit
    • Martin Mareš's avatar
      Implemented two new symbol handling functions: · 4107df1d
      Martin Mareš authored
        o  cf_define_symbol() -- it assigns a meaning to a symbol, bailing
           out if it already has one.
        o  cf_find_symbol() -- finds symbol by name and creates it if not found.
      Also modified filter/config.Y to make use of the first function.