[Bro-Dev] #608: broctl print times out if the table is too big

Bro Tracker bro at tracker.bro-ids.org
Fri Dec 9 22:12:50 PST 2011

#608: broctl print times out if the table is too big
  Reporter:  aashish  |      Owner:
      Type:  Problem  |     Status:  new
  Priority:  Normal   |  Milestone:  Bro2.0
 Component:  Bro      |    Version:  git/master
Resolution:           |   Keywords:

Comment (by seth):

 A table with 5000 addresses didn't work.  Here are the scripts I used, you
 need to run them from the build/ directory (and have the ruby bindings
 built).  I suppose it could be a bug in the python bindings even?  Maybe
 someone should port the ruby script to python to see if it breaks there.

 @load frameworks/control/controllee

 redef Communication::nodes = {
         # We're waiting for connections from this host for control.
         ["control"] = [$host=,

 global large_table: table[count] of addr = set();

 function build_table(i: count)
         large_table[i] =;
         if ( i < 5000 )

 event bro_init()
         print large_table;

 $LOAD_PATH << "aux/broccoli/bindings/broccoli-ruby/"
 $LOAD_PATH << "../aux/broccoli/bindings/broccoli-ruby/lib"
 require 'broccoli'

 bc = Broccoli::Connection.new("")
 bc.event_handler_for "Control::id_value_response" do |id, val|
         puts val

 puts "Trying to connect..."
 if bc.connect
   puts "connected."
   while true
     ev = Broccoli::Event.new("Control::id_value_request")
     ev.insert("large_table", :string)
     puts "sending event"
     sleep 1
     puts "processing input"


Ticket URL: <http://tracker.bro-ids.org/bro/ticket/608#comment:10>
Bro Tracker <http://tracker.bro-ids.org/bro>
Bro Issue Tracker

More information about the bro-dev mailing list