From 4515bdba4f56b298e62150ffe24608ba1a42e7da Mon Sep 17 00:00:00 2001 From: Pavel Machek Date: Thu, 11 Nov 1999 13:55:39 +0000 Subject: Fixed order of arguments for function call. Enumeration types should work once CF_ENUM() is ready. Created test.conf for testing of filters. (I'm currently thinking about ./tests in root directory which will just fire all available tests...) --- filter/test.conf | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 filter/test.conf (limited to 'filter/test.conf') diff --git a/filter/test.conf b/filter/test.conf new file mode 100644 index 0000000..6f102a8 --- /dev/null +++ b/filter/test.conf @@ -0,0 +1,78 @@ +/* + * This is an example configuration file. + */ + +# Yet another comment + +router id 62.168.0.1; + +define xyzzy = 120+10; + +function callme ( int arg1; int arg2 ) +int local1; +int local2; +int i; +{ + print "Ok"; + print "Function callme called arguments " arg1 " and " arg2; + i = arg2; + + case arg1 { + 2: print "dva"; print "jeste jednou dva"; + 3 .. 5: print "tri az pet"; + else: print "neco jineho"; + } +} + +function startup () +int i; +prefix px; +ip p; +{ + print "Testing filter language:"; + i = 4; + i = 1230 + i; + i = ( i + 0 ); + print " arithmetics: 1234 = " i; + printn " if statements "; + if i = 4 then { print "*** FAIL: if 0"; quitbird; } else printn "."; + if 1234 = i then printn "."; else { print "*** FAIL: if 1 else"; } + if 1 <= 1 then printn "."; else { print "*** FAIL: test 3"; } + if 1234 < 1234 then { print "*** FAIL: test 4"; quitbird; } else print "ok"; + print " data types; must be true: " 1.2.3.4 = 1.2.3.4 "," 1 ~ [1,2,3] "," 5 ~ [1..20] "," 2 ~ [ 1, 2, 3 ] "," 5 ~ [ 4 .. 7 ] "," 1.2.3.4 ~ [ 1.2.3.3..1.2.3.5 ] "," 1.2.3.4 ~ 1.2.3.4/8 "," 1.2.3.4/8 ~ 1.2.3.4/8 "," 1.2.3.4/8 ~ [ 1.2.3.4/8+ ] "," 1.2.3.4/16 ~ [ 1.2.3.4/8{ 15 , 16 } ] "," defined(1) "," defined(1.2.3.4); + print " data types: must be false: " 1 ~ [ 2, 3, 4 ] "," 5 ~ [ 2, 3, 4, 7..11 ] "," 1.2.3.4 ~ [ 1.2.3.3, 1.2.3.5 ] "," (1,2) > (2,2) "," (1,1) > (1,1) "," 1.2.3.4/8 ~ [ 1.2.3.4/8- ] "," 1.2.3.4/17 ~ [ 1.2.3.4/8{ 15 , 16 } ]; + + px = 1.2.3.4/18; + print "Testing prefixes: 1.2.3.4/18 = " px; + p = 127.1.2.3; + print "Testing mask : 127.0.0.0 = " p.mask(8); + print "Testing pairs: (1,2) = " (1,2); +# + + print "What will this do? " [ 1, 2, 1, 1, 1, 3, 4, 1, 1, 1, 5 ]; + + print "Testing functions..."; +# callme ( 1, 2 ); + callme ( 2, 2 ); + callme ( 2, 2 ); + callme ( 3, 2 ); + callme ( 4, 2 ); + callme ( 7, 2 ); + + print "done"; + quitbird; +# print "*** FAIL: this is unreachable"; +} + +filter testf +int j; +{ + print "Heya, filtering route to " rta.net.ip " prefixlen " rta.net.len; + print "This route was from " rta.from; + j = 7; + j = 17; + if rta.rip_metric > 15 then + print "RIP Metric is more than infinity"; + + accept; +} -- cgit v1.2.3