From 48a620a916b08a1ed882f536fdc508a60c2ade94 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Wed, 9 Oct 2024 18:00:16 +0200 Subject: [PATCH 1/4] Fix typo in documentation --- doc/bird.sgml | 1 - 1 file changed, 1 deletion(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index e04f8d0e..6857452d 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -1946,7 +1946,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 Date: Tue, 15 Oct 2024 16:56:48 +0200 Subject: [PATCH 2/4] Doc: Improve readability of the operator documentation Minor changes by committer. --- doc/bird.sgml | 40 +++++++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index 6857452d..b254da4a 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -1897,21 +1897,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 From cb40a666b9e093399c72af0cb3913be6be3a6088 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Tue, 15 Oct 2024 17:14:57 +0200 Subject: [PATCH 3/4] Doc: Fix code blocks Code blocks should not be indented, as the indendation is passed to the output, --- doc/bird.sgml | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index b254da4a..a543b8fb 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 @@ -1725,17 +1725,14 @@ in the foot). in case of compound expressions, they require parentheses around them. E.g. - - 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 From a70ecadefe93d6b7ed11e42c85d87fe2f02f328a Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Tue, 15 Oct 2024 17:19:42 +0200 Subject: [PATCH 4/4] Doc: Minor fixes --- doc/bird.sgml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index a543b8fb..e964ff06 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -1599,9 +1599,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