[RFC PATCH 00/20] Context typed filters

Asbjørn Sloth Tønnesen ast at 2e8.dk
Mon Dec 30 17:56:26 CET 2019


This RFC patch series is a first stab, at adding some syntactic sugar
making it more plessant to implement non-trivial dual-stack configurations,
like https://bgpfilterguide.nlnog.net/

I'm not completely happy with the naming at this stage, but I want to
get this series out before 36C3 ends.

Looking forward to your feedback.

Asbjørn Sloth Tønnesen (20):
  add NET_ANY
  make symbol types maskable
  add new symbol flags for typed symbols
  add support for defining typed symbols
  show symbols: don't show typed symbols
  add initial FI_TYPED_CONSTANT instruction
  add generic pseudo filter check function
  add f_has_typed_symbols helper function
  use net_type when looking up symbols in SYM_FLAG_SAME check
  show symbol flags in dump filter all
  check if functions need to be adapted
  force consistent number of function arguments
  use FI_TYPED_CONSTANT for typed constants
  adapt infrastructure
  adapt protocol filters
  adapt sh route filters
  adapt mrt filters
  allow typed definitions
  add typed test config
  add typed documentation

 conf/cf-lex.l    |  75 ++++++++++++++++++++----
 conf/conf.h      |  58 +++++++++++++-----
 conf/confbase.Y  |   6 +-
 doc/bird.sgml    |  10 ++++
 filter/Makefile  |   2 +-
 filter/adapt.c   | 150 +++++++++++++++++++++++++++++++++++++++++++++++
 filter/config.Y  |  28 +++++++--
 filter/decl.m4   |  77 +++++++++++++++++++++---
 filter/f-inst.c  |  42 ++++++++++++-
 filter/filter.c  |  29 +++++----
 filter/filter.h  |  16 +++++
 filter/test.conf |  41 +++++++++++++
 lib/net.c        |   1 +
 lib/net.h        |   1 +
 nest/cmds.c      |   3 +
 nest/config.Y    |   8 ++-
 nest/route.h     |   1 +
 nest/rt-show.c   |   9 ++-
 proto/mrt/mrt.c  |  17 +++++-
 proto/mrt/mrt.h  |   2 +
 20 files changed, 519 insertions(+), 57 deletions(-)
 create mode 100644 filter/adapt.c

-- 
2.24.0



More information about the Bird-users mailing list