On Mon, Nov 18, 2013 at 12:20:42PM +0100, Ondrej Zajicek wrote: > On Fri, Nov 08, 2013 at 01:37:49PM +0100, Milan Kocian wrote: > > hi, > > > > I tried set up private 4b AS number (4200000000-4294967294). And I've > > discovered > > that my filters using int datatype doesn't work with these numbers. The > > reason > > is 'int' size (from -2000000000 to +2000000000). > > Hello > > It kind of works. Although arithmetic operations and print handles such > numbers as signed, they are read as unsigned and could be used and > compared without much problems. Numbers higher than 2147483647 are just > mapped (overflow) to negative numbers. > > Therefore expressions like these works: > > i = 4200001234; > if bgp_path.last = i then ... > if bgp_path.last >= 4200000000 && bgp_path.last <= 4294967294 then ... > > Although users have to be a bit careful (e.g. 4000000000 < 1 returns true). >
yes, when I revise my conditions, it works. May be some note about this 'feature' in the documentation would be great ... :-) regards, -- Milan Kocian
