* 'master' of https://github.com/chungmin99/bro:
Renamed verify-run to verify_run
Minor edits due to typo and field changes
Added coverage to .PHONY in Makefile due to testing/coverage
Fixing up `make html` target
Refactoring, making error messages nicer, & lcov
Add code coverage for bro source files after btest test suite
This updates the "lookup_location" and "lookup_asn" BIFs to use
libmaxminddb. The motivation for this is that MaxMind is discontinuing
GeoLite Legacy databases: no updates after April 1, 2018, no downloads
after January 2, 2019. It's also noted that all GeoIP Legacy databases
may be discontinued as they are superseded by GeoIP2.
Adds --enable-coverage flag to configure Bro with gcov.
A new directory named /testing/bro-code-coverage/ contains a new
coverage target that as part of `make coverage` in /testing/.
This coverage option creates coverage.log of all important directories in /src/ and
places all generated .gcov files alongside the corresponding source file.
* Add --toolchain= configure option
* Add --with-bifcl= configure option
* Change --with-binpac= configure option to mean "path to binpac
executable"
* Add an example of how to use the above options for cross compiling
Bro to the docs
This just provides a convient way of indicating that ccache should
be used as compiler-wrapper during builds. e.g. when I want dev/debug
builds that (re)compile quickly, I do:
./configure --build-type=debug --generator=Ninja --ccache
We do no longer need to define BROKER_PYTHON_HOME, because as of
5bae0ee6f202038ad6ed74c1c2fdf1c07c81, broker uses PY_MOD_INSTALL_DIR as
the install location, which is already set.
Please note that this means that now the broker python bindings will be
installed to /lib/broctl instead of /lib/python.
Addresses BIT-1667
* origin/topic/dnthayer/ticket1645:
Disable broker by default
I added the --disable-broker back to configure (as a no-op), to not
break the build for everyone that is currently doing that in their build
scripts.
BIT-1645 #merged
This means CAF is now a required dependency. For now, I'm keeping a
switch --disable-broker to turn it off, but I'm thinking that
eventually we should remove that as well.
The new --enable-broker flag can be used to toggle the use of Broker,
which also implies building with -std=c++11, though nothing makes
use of these features at the moment.
--logdir: logs produced at run time
--spooldir: other data produced at run time
--localstatedir: contains spool or log dirs if those options aren't set
Addresses BIT-1166.
* origin/fastpath:
Don't build broccoli ruby bindings by default, use --enable-ruby to do so.
Revert "Fix race condition in unit test."
Fix race condition in unit test.
Change percent_lost in capture-loss from a string to a double.
--enable-perftools must now explicity be supplied to ./configure on
non-Linux systems to link against the tcmalloc library that a
gperftools installation provides. Linux systems still automatically
link it if it's found. The rationale is that gperftools was developed
and most throroughly tested on Linux so it's safer there.
There especially seems to be potential problems with gperftools on OS X
(e.g. see http://code.google.com/p/gperftools/issues/detail?id=413),
and Bro currently doesn't work with gpertools there using clang or gcc.
Updated the list of required and optional libraries and tools.
Rewrote the paragraph about the "aux" tools to more accurately
describe what actually gets installed.
* origin/topic/dnthayer/bug801:
Added an option to specify the 'etc' directory
Closes#801.
Note, I've adapted the code in configure a bit to make it independent
of the argument order (same for an older option). Hope that works ...
- Accessible at script-layer through 'mobile_ipv6_message' event.
- All Mobile IPv6 analysis now enabled through --enable-mobile-ipv6
configure-time option, otherwise the mobility header, routing type 2,
and Home Address Destination option are ignored.
I copied the code over manually, no merging, because (1) it needed to
be adapted to the new threading API, and (2) there's more stuff in the
branch that I haven't ported yet.
The DS output generally seems to work, but it has seen no further
testing yet.
Not unit tests yet either.
Also renaming --enable-perftools to --enable-perftool-debug to
indicate that the switch is only relevant for debugging the heap. It's
not needed to pick up tcmalloc for better performance.
--with-perftools can still (and always) be used to give a hint where
to find the libraries.
With the threading, using tcmalloc improves memory usage on FreeBSD
significantly when running on a trace. If it fixes the live problems,
remains to be seen ...