[Click] Bug in latest CVS?

Nicholas Weaver nweaver at ICSI.Berkeley.EDU
Tue Mar 4 13:42:44 EST 2008


Attached is a click file which works fine on a few week old checkout by CVS,
but fails on the latest checkout with:

click: ../include/click/vector.hh:45: T& Vector<T>::operator[](int) [with T = String]: Assertion `i>=0 && i<_n' failed.


The error appears to be in the dasabe lookup:

The GDB backtrace:

(gdb) run flowlist.click
Starting program: /da/nweaver/reset_detect/click/userlevel/click flowlist.click
click: ../include/click/vector.hh:45: T& Vector<T>::operator[](int) [with T = String]: Assertion `i>=0 && i<_n' failed.

Program received signal SIGABRT, Aborted.
0x003187a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
(gdb) bt
#0  0x003187a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00359815 in raise () from /lib/tls/libc.so.6
#2  0x0035b279 in abort () from /lib/tls/libc.so.6
#3  0x00352d91 in __assert_fail () from /lib/tls/libc.so.6
#4  0x081190ef in DynamicNameDB::find (this=0x87e5ee0, name=@0xbfee47f0, create=false) at ../include/click/straccum.hh:300
#5  0x081191ec in DynamicNameDB::query (this=0x0, name=@0xbfee47f0, value=0xbfee4714, vsize=4) at ../lib/nameinfo.cc:225
#6  0x080a9ace in (anonymous namespace)::ServicesNameDB::query (this=0x87dda10, name=@0xbfee47f0, value=0xbfee4714, vsize=4) at ../elements/ip/ipnameinfo.cc:323
#7  0x08118a61 in NameInfo::query (type=67239942, e=0x0, name=@0xbfee47f0, value=0xbfee4714, vsize=4) at ../lib/nameinfo.cc:464
#8  0x080a3ca4 in IPFilter::lookup (this=0x87e61a8, word=
      {_data = 0x87e5858 "1.2.3.4", _length = 7, _memo = 0x87e3eb8, static null_memo = 0x87d9008, static permanent_memo = 0x87d9020, static oom_memo = 0x87d9038, static null_string_p = 0x87d9050, static oom_string_p = 0x87d9060, static oom_string_data = 0 '\0'}, type=0, proto=-1000, data=@0xbfee47ec, errh=0x0) at ../elements/ip/ipfilter.cc:97
#9  0x080a5583 in IPFilter::parse_factor (this=0x87e61a8, words=@0xbfee4bf0, pos=11, tree=@0xbfee4c00, prev_prim=@0xbfee4b80, negated=false, errh=0xbfee4bb0) at ../include/click/atomic.hh:223
#10 0x080a606d in IPFilter::parse_term (this=0x87e61a8, words=@0xbfee4bf0, pos=10, tree=@0xbfee4c00, prev_prim=@0xbfee4b80, errh=0xbfee4bb0) at ../elements/ip/ipfilter.cc:817


The click file itself:



src0 :: FromDump(/home/vern/bulk1/all/all-26.trace, FORCE_IP true, STOP true);
collate :: {input[0] -> output;};
src0 -> [0] collate;
collate -> IPFilter( 0
(host 116.30.83.49 ) or 
 (host 1.2.3.4 and host 5.6.7.8)) -> 
 IPFilter( 0
(host 116.30.83.49 and host 192.150.187.159 ) or 
 (host 1.2.3.4 and host 5.6.7.8)) -> 
ToDump(newrip-26.trace, USE_ENCAP_FROM src0, SNAPLEN 2000);


progress :: ProgressBar(src0.filepos, src0.filesize, UPDATE 0.1, DELAY 2s);
manager :: DriverManager(, pause 1, write progress.mark_done, label stop);
Script(TYPE SIGNAL INT TERM, write manager.goto stop, exit);



-- 
Nicholas C. Weaver                               nweaver at icsi.berkeley.edu
     This message has been ROT-13 encrypted twice for higher security.


More information about the click mailing list