diff --git a/doc/bird.sgml b/doc/bird.sgml index c5ebc142..c8bf273f 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -125,11 +125,11 @@ Anyway, it will probably work well also on older systems. and Perl, installing BIRD should be as easy as: - ./configure - make - make install - vi /usr/local/etc/bird.conf - bird +./configure +make +make install +vi /usr/local/etc/bird.conf +bird

You can use ./configure --help to get a list of configure @@ -1651,9 +1651,9 @@ in the foot). a shell pattern (represented also as a string). - This is a sequences of arbitrary bytes. There are no ways to modify - bytestrings in filters. You can pass them between function, assign - them to variables of type - define one=1; - define myas=64500; - int set odds; - pair set ps; - ec set es; + +define one=1; +define myas=64500; - odds = [ one, (2+1), (6-one), (2*2*2-1), 9, 11 ]; - ps = [ (1,one+one), (3,4)..(4,8), (5,*), (6,3..6), (7..9,*) ]; - es = [ (rt, myas, 3*10), (rt, myas+one, 0..16*16*16-1), (ro, myas+2, *) ]; - +int set odds = [ one, (2+1), (6-one), (2*2*2-1), 9, 11 ]; +pair set ps = [ (1,one+one), (3,4)..(4,8), (5,*), (6,3..6), (7..9,*) ]; +ec set es = [ (rt, myas, *), (rt, myas+2, 0..16*16*16-1) ]; + Sets of prefixes are special: their literals does not allow ranges, but allows prefix patterns that are written @@ -1949,21 +1946,31 @@ in the foot).

The filter language supports common integer operators (+,-,*,/), -parentheses + +

Logical operations include unary not ( + +

Special operators include ( + element and set of elements of the same type (returning true if + element is contained in the given set) + two strings (returning true if the first string matches a shell-like + pattern stored in the second string) + IP and prefix (returning true if IP is within the range defined by + that prefix) + prefix and prefix (returning true if the first prefix is more specific + than the second one) + bgppath and bgpmask (returning true if the path matches the mask) + number and bgppath (returning true if the number is in the path) + bgppath and int (number) set (returning true if any ASN from the + path is in the set) + pair/quad and clist (returning true if the pair/quad is element of + the clist) + clist and pair/quad set (returning true if there is an element of the + clist that is also a member of the pair/quad set). +

There is one operator related to ROA infrastructure - route origin validation for a @@ -1998,7 +2005,6 @@ and name is used). In both cases, it must have the same type as elements.

The case is similar to case from Pascal. Syntax is case . - The expression after case can be of any type that could be a member of a set, while the