mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Add Cirrus CI config
This commit is contained in:
parent
92c2074193
commit
cd9fec7bdb
82 changed files with 692 additions and 149 deletions
126
.cirrus.yml
Normal file
126
.cirrus.yml
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
cpus: &CPUS 8
|
||||||
|
btest_jobs: &BTEST_JOBS 8
|
||||||
|
memory: &MEMORY 8GB
|
||||||
|
|
||||||
|
config: &CONFIG --build-type=release --enable-cpp-tests
|
||||||
|
leak_config: &LEAK_CONFIG --build-type=debug --enable-perftools-debug
|
||||||
|
|
||||||
|
resources_template: &RESOURCES_TEMPLATE
|
||||||
|
cpu: *CPUS
|
||||||
|
memory: *MEMORY
|
||||||
|
|
||||||
|
ci_template: &CI_TEMPLATE
|
||||||
|
only_if: >
|
||||||
|
$CIRRUS_PR != '' ||
|
||||||
|
$CIRRUS_BRANCH == 'master' ||
|
||||||
|
$CIRRUS_BRANCH =~ 'release/.*'
|
||||||
|
|
||||||
|
# Default timeout is 60 minutes, Cirrus hard limit is 120 minutes for free
|
||||||
|
# tasks. This leakcheck one can tend to run long, but see no downside
|
||||||
|
# to universally asking for the maximum.
|
||||||
|
timeout_in: 120m
|
||||||
|
|
||||||
|
sync_submodules_script: git submodule update --recursive --init
|
||||||
|
|
||||||
|
get_external_pcaps_cache:
|
||||||
|
folder: testing/external/zeek-testing-traces
|
||||||
|
fingerprint_script: echo zeek-testing-traces
|
||||||
|
populate_script: ./ci/init-external-repos.sh
|
||||||
|
init_external_repos_script: ./ci/init-external-repos.sh
|
||||||
|
|
||||||
|
build_script: ./ci/build.sh
|
||||||
|
test_script: ./ci/test.sh
|
||||||
|
|
||||||
|
on_failure:
|
||||||
|
upload_btest_tmp_dir_artifacts:
|
||||||
|
path: "testing/**/tmp.tar.gz"
|
||||||
|
always:
|
||||||
|
upload_btest_xml_results_artifacts:
|
||||||
|
path: "testing/**/btest-results.xml"
|
||||||
|
type: text/xml
|
||||||
|
format: junit
|
||||||
|
upload_btest_html_results_artifacts:
|
||||||
|
path: "testing/**/btest-results.html"
|
||||||
|
type: text/html
|
||||||
|
|
||||||
|
env:
|
||||||
|
CIRRUS_WORKING_DIR: /zeek
|
||||||
|
ZEEK_CI_CPUS: *CPUS
|
||||||
|
ZEEK_CI_BTEST_JOBS: *BTEST_JOBS
|
||||||
|
ZEEK_CI_CONFIGURE_FLAGS: *CONFIG
|
||||||
|
# This is a single-use, read-only GitHub deploy key (SSH private key) for the
|
||||||
|
# zeek-testing-private repository.
|
||||||
|
ZEEK_TESTING_PRIVATE_SSH_KEY: ENCRYPTED[4d924499a9b7428fc5c2faf72c86315c9dd8685561f597a009b935ca8dc102af8fc7e397eacc91bc224315d79cc09158]
|
||||||
|
|
||||||
|
# Linux EOL timelines: https://linuxlifecycle.com/
|
||||||
|
# Fedora (~13 months): https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle
|
||||||
|
|
||||||
|
fedora30_task:
|
||||||
|
container:
|
||||||
|
# Fedora 30 EOL: Around June 2020
|
||||||
|
dockerfile: ci/fedora-30/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
centos7_task:
|
||||||
|
container:
|
||||||
|
# CentOS 7 EOL: June 30, 2024
|
||||||
|
dockerfile: ci/centos-7/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
debian9_task:
|
||||||
|
container:
|
||||||
|
# Debian 9 EOL: June 2022
|
||||||
|
dockerfile: ci/debian-9/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
ubuntu18_task:
|
||||||
|
container:
|
||||||
|
# Ubuntu 18.04 EOL: April 2023
|
||||||
|
dockerfile: ci/ubuntu-18.04/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
ubuntu16_task:
|
||||||
|
container:
|
||||||
|
# Ubuntu 16.04 EOL: April 2021
|
||||||
|
dockerfile: ci/ubuntu-16.04/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
# Apple doesn't publish official long-term support timelines, so easiest
|
||||||
|
# option is to only support the latest macOS release or whatever latest
|
||||||
|
# image is available.
|
||||||
|
macos_task:
|
||||||
|
osx_instance:
|
||||||
|
image: mojave-base
|
||||||
|
prepare_script: ./ci/macos/prepare.sh
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
env:
|
||||||
|
# Currently only available as 2 core / 4 thread (and 8GB) instances.
|
||||||
|
ZEEK_CI_CPUS: 4
|
||||||
|
ZEEK_CI_BTEST_JOBS: 4
|
||||||
|
# No permission to write to default location of /zeek
|
||||||
|
CIRRUS_WORKING_DIR: /tmp/zeek
|
||||||
|
|
||||||
|
# FreeBSD EOL timelines: https://www.freebsd.org/security/security.html#sup
|
||||||
|
freebsd_task:
|
||||||
|
freebsd_instance:
|
||||||
|
# FreeBSD 12 EOL: June 30, 2024
|
||||||
|
image_family: freebsd-12-1
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
prepare_script: ./ci/freebsd/prepare.sh
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
|
||||||
|
leakcheck_task:
|
||||||
|
container:
|
||||||
|
# Just uses a recent/common distro to run leak checks.
|
||||||
|
dockerfile: ci/ubuntu-18.04/Dockerfile
|
||||||
|
<< : *RESOURCES_TEMPLATE
|
||||||
|
<< : *CI_TEMPLATE
|
||||||
|
env:
|
||||||
|
ZEEK_CI_LEAK_CHECK: true
|
||||||
|
ZEEK_CI_CONFIGURE_FLAGS: *LEAK_CONFIG
|
||||||
|
ZEEK_CI_BTEST_JOBS: 7
|
|
@ -31,8 +31,8 @@ env:
|
||||||
- distro: ubuntu_18.04
|
- distro: ubuntu_18.04
|
||||||
- distro: ubuntu_18.04_leaktest
|
- distro: ubuntu_18.04_leaktest
|
||||||
|
|
||||||
install: sh testing/scripts/travis-job install $distro
|
install: sh ci/travis-job install $distro
|
||||||
|
|
||||||
before_script: sh testing/scripts/travis-job build $distro
|
before_script: sh ci/travis-job build $distro
|
||||||
|
|
||||||
script: sh testing/scripts/travis-job run $distro
|
script: sh ci/travis-job run $distro
|
||||||
|
|
7
ci/build.sh
Executable file
7
ci/build.sh
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#! /usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
./configure ${ZEEK_CI_CONFIGURE_FLAGS}
|
||||||
|
make -j ${ZEEK_CI_CPUS}
|
54
ci/centos-7/Dockerfile
Normal file
54
ci/centos-7/Dockerfile
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
FROM centos:7
|
||||||
|
|
||||||
|
# The version of git in the standard repos is 1.8 and CI needs 2.3+
|
||||||
|
# for the use of GIT_SSH_COMMAND when cloning private repos.
|
||||||
|
RUN yum -y install \
|
||||||
|
https://repo.ius.io/ius-release-el7.rpm \
|
||||||
|
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \
|
||||||
|
&& yum -y install git2u \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
RUN yum -y install \
|
||||||
|
epel-release \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
RUN yum -y install \
|
||||||
|
centos-release-scl \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
RUN yum -y install \
|
||||||
|
devtoolset-7 \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
RUN yum -y install \
|
||||||
|
cmake3 \
|
||||||
|
make \
|
||||||
|
flex \
|
||||||
|
bison \
|
||||||
|
swig \
|
||||||
|
openssl \
|
||||||
|
openssl-devel \
|
||||||
|
libpcap-devel \
|
||||||
|
python3 \
|
||||||
|
python3-devel \
|
||||||
|
python3-pip\
|
||||||
|
zlib-devel \
|
||||||
|
sqlite \
|
||||||
|
findutils \
|
||||||
|
which \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
# Many distros adhere to PEP 394's recommendation for `python` = `python2` so
|
||||||
|
# this is a simple workaround until we drop Python 2 support and explicitly
|
||||||
|
# use `python3` for all invocations (e.g. in shebangs).
|
||||||
|
RUN ln -sf /usr/bin/python3 /usr/local/bin/python
|
||||||
|
RUN ln -sf /usr/bin/pip3 /usr/local/bin/pip
|
||||||
|
|
||||||
|
RUN pip install junit2html
|
||||||
|
|
||||||
|
RUN echo 'unset BASH_ENV PROMPT_COMMAND ENV' > /usr/bin/zeek-ci-env && \
|
||||||
|
echo 'source /opt/rh/devtoolset-7/enable' >> /usr/bin/zeek-ci-env
|
||||||
|
|
||||||
|
ENV BASH_ENV="/usr/bin/zeek-ci-env" \
|
||||||
|
ENV="/usr/bin/zeek-ci-env" \
|
||||||
|
PROMPT_COMMAND=". /usr/bin/zeek-ci-env"
|
40
ci/debian-9/Dockerfile
Normal file
40
ci/debian-9/Dockerfile
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
FROM debian:9
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get -y install \
|
||||||
|
git \
|
||||||
|
cmake \
|
||||||
|
make \
|
||||||
|
gcc \
|
||||||
|
g++ \
|
||||||
|
flex \
|
||||||
|
bison \
|
||||||
|
libpcap-dev \
|
||||||
|
libssl-dev \
|
||||||
|
python3 \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip\
|
||||||
|
swig \
|
||||||
|
zlib1g-dev \
|
||||||
|
libkrb5-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
sqlite3 \
|
||||||
|
curl \
|
||||||
|
wget \
|
||||||
|
xz-utils \
|
||||||
|
clang-7 \
|
||||||
|
libc++-7-dev \
|
||||||
|
libc++abi-7-dev \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN update-alternatives --install /usr/bin/cc cc /usr/bin/clang-7 100
|
||||||
|
RUN update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-7 100
|
||||||
|
|
||||||
|
# Many distros adhere to PEP 394's recommendation for `python` = `python2` so
|
||||||
|
# this is a simple workaround until we drop Python 2 support and explicitly
|
||||||
|
# use `python3` for all invocations (e.g. in shebangs).
|
||||||
|
RUN ln -sf /usr/bin/python3 /usr/local/bin/python
|
||||||
|
RUN ln -sf /usr/bin/pip3 /usr/local/bin/pip
|
||||||
|
|
||||||
|
RUN pip install junit2html
|
||||||
|
|
||||||
|
ENV CXXFLAGS=-stdlib=libc++
|
30
ci/fedora-30/Dockerfile
Normal file
30
ci/fedora-30/Dockerfile
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
FROM fedora:30
|
||||||
|
|
||||||
|
RUN yum -y install \
|
||||||
|
git \
|
||||||
|
cmake \
|
||||||
|
make \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
flex \
|
||||||
|
bison \
|
||||||
|
swig \
|
||||||
|
openssl \
|
||||||
|
openssl-devel \
|
||||||
|
libpcap-devel \
|
||||||
|
python3 \
|
||||||
|
python3-devel \
|
||||||
|
python3-pip\
|
||||||
|
zlib-devel \
|
||||||
|
sqlite \
|
||||||
|
findutils \
|
||||||
|
which \
|
||||||
|
&& yum clean all && rm -rf /var/cache/yum
|
||||||
|
|
||||||
|
# Many distros adhere to PEP 394's recommendation for `python` = `python2` so
|
||||||
|
# this is a simple workaround until we drop Python 2 support and explicitly
|
||||||
|
# use `python3` for all invocations (e.g. in shebangs).
|
||||||
|
RUN ln -sf /usr/bin/python3 /usr/local/bin/python
|
||||||
|
RUN ln -sf /usr/bin/pip3 /usr/local/bin/pip
|
||||||
|
|
||||||
|
RUN pip install junit2html
|
11
ci/freebsd/prepare.sh
Executable file
11
ci/freebsd/prepare.sh
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "Preparing FreeBSD environment"
|
||||||
|
sysctl hw.model hw.machine hw.ncpu
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
env ASSUME_ALWAYS_YES=YES pkg bootstrap
|
||||||
|
pkg install -y bash git cmake swig30 bison python3 py36-sqlite3 py36-pip base64
|
||||||
|
( cd && mkdir -p ./bin && ln -s /usr/local/bin/python3 ./bin/python )
|
||||||
|
pip install junit2html
|
66
ci/init-external-repos.sh
Executable file
66
ci/init-external-repos.sh
Executable file
|
@ -0,0 +1,66 @@
|
||||||
|
#! /usr/bin/env bash
|
||||||
|
|
||||||
|
function banner
|
||||||
|
{
|
||||||
|
local msg="${1}"
|
||||||
|
printf "+--------------------------------------------------------------+\n"
|
||||||
|
printf "| %-60s |\n" "$(date)"
|
||||||
|
printf "| %-60s |\n" "${msg}"
|
||||||
|
printf "+--------------------------------------------------------------+\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
cd testing/external
|
||||||
|
[[ ! -d zeek-testing ]] && make init
|
||||||
|
cd zeek-testing
|
||||||
|
git checkout -q $(cat ../commit-hash.zeek-testing)
|
||||||
|
|
||||||
|
if [[ -n "${CIRRUS_CI}" ]]; then
|
||||||
|
if [[ -d ../zeek-testing-traces ]]; then
|
||||||
|
banner "Use existing/cached zeek-testing traces"
|
||||||
|
else
|
||||||
|
banner "Create cache directory for zeek-testing traces"
|
||||||
|
mkdir ../zeek-testing-traces
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -rf Traces
|
||||||
|
ln -s ../zeek-testing-traces Traces
|
||||||
|
fi
|
||||||
|
|
||||||
|
make update-traces
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
# Note that this script is also called when populating the public cache, so
|
||||||
|
# the zeek-testing-private dir could have been created/populated already.
|
||||||
|
if [[ -n "${CIRRUS_CI}" ]] && [[ ! -d zeek-testing-private ]]; then
|
||||||
|
# If we're running this on Cirrus, the SSH key won't be available to PRs,
|
||||||
|
# so don't make any of this fail the task in that case. (But technically,
|
||||||
|
# the key is also available in PRs for people with write access to the
|
||||||
|
# repo, so we can still try for those cases).
|
||||||
|
if [[ -n "${CIRRUS_PR}" ]]; then
|
||||||
|
set +e
|
||||||
|
else
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
|
||||||
|
banner "Trying to clone zeek-testing-private git repo"
|
||||||
|
echo "${ZEEK_TESTING_PRIVATE_SSH_KEY}" > cirrus_key.b64
|
||||||
|
base64 --decode cirrus_key.b64 > cirrus_key
|
||||||
|
rm cirrus_key.b64
|
||||||
|
chmod 600 cirrus_key
|
||||||
|
git --version
|
||||||
|
# Note: GIT_SSH_COMMAND requires git 2.3.0+
|
||||||
|
export GIT_SSH_COMMAND="ssh -i cirrus_key -F /dev/null -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
|
||||||
|
git clone git@github.com:zeek/zeek-testing-private
|
||||||
|
rm cirrus_key
|
||||||
|
fi
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
if [[ -d zeek-testing-private ]]; then
|
||||||
|
# Note that we never cache private pcaps.
|
||||||
|
banner "Update zeek-testing-private traces"
|
||||||
|
cd zeek-testing-private
|
||||||
|
make update-traces
|
||||||
|
fi
|
8
ci/macos/prepare.sh
Executable file
8
ci/macos/prepare.sh
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "Preparing macOS environment"
|
||||||
|
sysctl hw.model hw.machine hw.ncpu hw.physicalcpu hw.logicalcpu
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
brew install cmake swig openssl bison
|
158
ci/test.sh
Executable file
158
ci/test.sh
Executable file
|
@ -0,0 +1,158 @@
|
||||||
|
#! /usr/bin/env bash
|
||||||
|
|
||||||
|
# It's possible to use this script locally from the zeek repo's root dir.
|
||||||
|
# The parallelism level when running tests locally is $1 if provided, else
|
||||||
|
# the value of `nproc` if available, otherwise just a single core. Run with
|
||||||
|
# ZEEK_CI_LEAK_CHECK set to do just the leak checks.
|
||||||
|
|
||||||
|
result=0
|
||||||
|
BTEST=$(pwd)/aux/btest/btest
|
||||||
|
|
||||||
|
if [[ -z "${CIRRUS_CI}" ]]; then
|
||||||
|
# Set default values to use in place of env. variables set by Cirrus CI.
|
||||||
|
ZEEK_CI_CPUS=1
|
||||||
|
[[ $(which nproc) ]] && ZEEK_CI_CPUS=$(nproc)
|
||||||
|
[[ -n "${1}" ]] && ZEEK_CI_CPUS=${1}
|
||||||
|
ZEEK_CI_BTEST_JOBS=${ZEEK_CI_CPUS}
|
||||||
|
fi
|
||||||
|
|
||||||
|
function pushd
|
||||||
|
{
|
||||||
|
command pushd "$@" > /dev/null || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function popd
|
||||||
|
{
|
||||||
|
command popd "$@" > /dev/null || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function banner
|
||||||
|
{
|
||||||
|
local msg="${1}"
|
||||||
|
printf "+--------------------------------------------------------------+\n"
|
||||||
|
printf "| %-60s |\n" "$(date)"
|
||||||
|
printf "| %-60s |\n" "${msg}"
|
||||||
|
printf "+--------------------------------------------------------------+\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
function run_unit_tests
|
||||||
|
{
|
||||||
|
banner "Running unit tests"
|
||||||
|
|
||||||
|
pushd build
|
||||||
|
( . ./zeek-path-dev.sh && zeek --test ) || result=1
|
||||||
|
popd
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
function prep_artifacts
|
||||||
|
{
|
||||||
|
banner "Prepare artifacts"
|
||||||
|
[[ -d .tmp ]] && rm -rf .tmp/script-coverage && tar -czf tmp.tar.gz .tmp
|
||||||
|
junit2html btest-results.xml btest-results.html
|
||||||
|
}
|
||||||
|
|
||||||
|
function run_btests
|
||||||
|
{
|
||||||
|
banner "Running baseline tests: zeek"
|
||||||
|
|
||||||
|
pushd testing/btest
|
||||||
|
${BTEST} -d -b -x btest-results.xml -j ${ZEEK_CI_BTEST_JOBS} || result=1
|
||||||
|
make coverage
|
||||||
|
prep_artifacts
|
||||||
|
popd
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
function run_external_btests
|
||||||
|
{
|
||||||
|
local zeek_testing_pid=""
|
||||||
|
local zeek_testing_pid_private=""
|
||||||
|
pushd testing/external/zeek-testing
|
||||||
|
${BTEST} -d -b -x btest-results.xml -j ${ZEEK_CI_BTEST_JOBS} >btest.out 2>&1 &
|
||||||
|
zeek_testing_pid=$!
|
||||||
|
popd
|
||||||
|
|
||||||
|
if [[ -d testing/external/zeek-testing-private ]]; then
|
||||||
|
pushd testing/external/zeek-testing-private
|
||||||
|
# Note that we don't use btest's "-d" flag or generate/upload any
|
||||||
|
# artifacts to prevent leaking information about the private pcaps.
|
||||||
|
${BTEST} -b -j ${ZEEK_CI_BTEST_JOBS} >btest.out 2>&1 &
|
||||||
|
zeek_testing_private_pid=$!
|
||||||
|
popd
|
||||||
|
fi
|
||||||
|
|
||||||
|
banner "Running baseline tests: external/zeek-testing"
|
||||||
|
wait ${zeek_testing_pid} || result=1
|
||||||
|
pushd testing/external/zeek-testing
|
||||||
|
cat btest.out
|
||||||
|
make coverage
|
||||||
|
prep_artifacts
|
||||||
|
popd
|
||||||
|
|
||||||
|
if [[ -n "${zeek_testing_private_pid}" ]]; then
|
||||||
|
banner "Running baseline tests: external/zeek-testing-private"
|
||||||
|
wait ${zeek_testing_private_pid} || result=1
|
||||||
|
pushd testing/external/zeek-testing-private
|
||||||
|
make coverage
|
||||||
|
cat btest.out
|
||||||
|
popd
|
||||||
|
else
|
||||||
|
banner "Skipping private tests (not available for PRs)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function run_leak_tests
|
||||||
|
{
|
||||||
|
local zeek_testing_pid=""
|
||||||
|
local zeek_testing_pid_private=""
|
||||||
|
banner "Running memory leak tests: zeek"
|
||||||
|
|
||||||
|
pushd testing/btest
|
||||||
|
${BTEST} -d -b -x btest-results.xml -j ${ZEEK_CI_BTEST_JOBS} -g leaks || result=1
|
||||||
|
prep_artifacts
|
||||||
|
popd
|
||||||
|
|
||||||
|
pushd testing/external/zeek-testing
|
||||||
|
${BTEST} -d -b -x btest-results.xml -j ${ZEEK_CI_BTEST_JOBS} -g leaks >btest.out 2>&1 &
|
||||||
|
zeek_testing_pid=$!
|
||||||
|
popd
|
||||||
|
|
||||||
|
if [[ -d testing/external/zeek-testing-private ]]; then
|
||||||
|
pushd testing/external/zeek-testing-private
|
||||||
|
# Note that we don't use btest's "-d" flag or generate/upload any
|
||||||
|
# artifacts to prevent leaking information about the private pcaps.
|
||||||
|
${BTEST} -b -j ${ZEEK_CI_BTEST_JOBS} -g leaks >btest.out 2>&1 &
|
||||||
|
zeek_testing_private_pid=$!
|
||||||
|
popd
|
||||||
|
fi
|
||||||
|
|
||||||
|
banner "Running memory leak tests: external/zeek-testing"
|
||||||
|
wait ${zeek_testing_pid} || result=1
|
||||||
|
pushd testing/external/zeek-testing
|
||||||
|
cat btest.out
|
||||||
|
prep_artifacts
|
||||||
|
popd
|
||||||
|
|
||||||
|
if [[ -n "${zeek_testing_private_pid}" ]]; then
|
||||||
|
banner "Running memory leak tests: external/zeek-testing-private"
|
||||||
|
wait ${zeek_testing_private_pid} || result=1
|
||||||
|
cat testing/external/zeek-testing-private/btest.out
|
||||||
|
else
|
||||||
|
banner "Skipping private tests (not available for PRs)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
banner "Start tests: ${ZEEK_CI_CPUS} cpus, ${ZEEK_CI_BTEST_JOBS} btest jobs"
|
||||||
|
|
||||||
|
if [[ -n "${ZEEK_CI_LEAK_CHECK}" ]]; then
|
||||||
|
run_leak_tests
|
||||||
|
else
|
||||||
|
run_unit_tests
|
||||||
|
run_btests
|
||||||
|
run_external_btests
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit ${result}
|
6
testing/scripts/travis-job → ci/travis-job
Normal file → Executable file
6
testing/scripts/travis-job → ci/travis-job
Normal file → Executable file
|
@ -125,7 +125,7 @@ build_in_docker() {
|
||||||
|
|
||||||
# Pass the distro as a different environment variable name to docker since
|
# Pass the distro as a different environment variable name to docker since
|
||||||
# the script will set $distro to "travis" as part of the invocation.
|
# the script will set $distro to "travis" as part of the invocation.
|
||||||
docker exec -e COV_TOKEN -e BUILD_DISTRO=${distro} zeektest sh testing/scripts/travis-job build ${recursed_distro}
|
docker exec -e COV_TOKEN -e BUILD_DISTRO=${distro} zeektest sh ci/travis-job build ${recursed_distro}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ run_in_docker() {
|
||||||
|
|
||||||
# Pass the distro as a different environment variable name to docker since
|
# Pass the distro as a different environment variable name to docker since
|
||||||
# the script will set $distro to "travis" as part of the invocation.
|
# the script will set $distro to "travis" as part of the invocation.
|
||||||
docker exec -t -e TRAVIS -e TRAVIS_PULL_REQUEST -e TESTING_PRIVATE_DEPLOYKEY -e COV_TOKEN -e BUILD_DISTRO=${distro} zeektest sh testing/scripts/travis-job run ${recursed_distro}
|
docker exec -t -e TRAVIS -e TRAVIS_PULL_REQUEST -e TESTING_PRIVATE_DEPLOYKEY -e COV_TOKEN -e BUILD_DISTRO=${distro} zeektest sh ci/travis-job run ${recursed_distro}
|
||||||
}
|
}
|
||||||
|
|
||||||
update_env() {
|
update_env() {
|
||||||
|
@ -352,7 +352,7 @@ remove_container() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f testing/scripts/travis-job ]; then
|
if [ ! -f ci/travis-job ]; then
|
||||||
echo "Error: must change directory to root of zeek source tree before running this script."
|
echo "Error: must change directory to root of zeek source tree before running this script."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
41
ci/ubuntu-16.04/Dockerfile
Normal file
41
ci/ubuntu-16.04/Dockerfile
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
FROM ubuntu:16.04
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get -y install \
|
||||||
|
git \
|
||||||
|
cmake \
|
||||||
|
make \
|
||||||
|
gcc \
|
||||||
|
g++ \
|
||||||
|
flex \
|
||||||
|
bison \
|
||||||
|
libpcap-dev \
|
||||||
|
libssl-dev \
|
||||||
|
python3 \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip\
|
||||||
|
swig \
|
||||||
|
zlib1g-dev \
|
||||||
|
libkrb5-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
sqlite3 \
|
||||||
|
curl \
|
||||||
|
wget \
|
||||||
|
xz-utils \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN wget -q https://releases.llvm.org/9.0.0/clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
|
RUN mkdir /clang-9
|
||||||
|
RUN tar --strip-components=1 -C /clang-9 -xvf clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
|
RUN update-alternatives --install /usr/bin/cc cc /clang-9/bin/clang 100
|
||||||
|
RUN update-alternatives --install /usr/bin/c++ c++ /clang-9/bin/clang++ 100
|
||||||
|
|
||||||
|
# Many distros adhere to PEP 394's recommendation for `python` = `python2` so
|
||||||
|
# this is a simple workaround until we drop Python 2 support and explicitly
|
||||||
|
# use `python3` for all invocations (e.g. in shebangs).
|
||||||
|
RUN ln -sf /usr/bin/python3 /usr/local/bin/python
|
||||||
|
RUN ln -sf /usr/bin/pip3 /usr/local/bin/pip
|
||||||
|
|
||||||
|
RUN pip install junit2html
|
||||||
|
|
||||||
|
ENV CXXFLAGS=-stdlib=libc++
|
||||||
|
ENV LD_LIBRARY_PATH=/clang-9/lib
|
34
ci/ubuntu-18.04/Dockerfile
Normal file
34
ci/ubuntu-18.04/Dockerfile
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
FROM ubuntu:18.04
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get -y install \
|
||||||
|
git \
|
||||||
|
cmake \
|
||||||
|
make \
|
||||||
|
gcc \
|
||||||
|
g++ \
|
||||||
|
flex \
|
||||||
|
bison \
|
||||||
|
libpcap-dev \
|
||||||
|
libssl-dev \
|
||||||
|
python3 \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip\
|
||||||
|
swig \
|
||||||
|
zlib1g-dev \
|
||||||
|
libkrb5-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
sqlite3 \
|
||||||
|
curl \
|
||||||
|
wget \
|
||||||
|
google-perftools \
|
||||||
|
libgoogle-perftools4 \
|
||||||
|
libgoogle-perftools-dev \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Many distros adhere to PEP 394's recommendation for `python` = `python2` so
|
||||||
|
# this is a simple workaround until we drop Python 2 support and explicitly
|
||||||
|
# use `python3` for all invocations (e.g. in shebangs).
|
||||||
|
RUN ln -sf /usr/bin/python3 /usr/local/bin/python
|
||||||
|
RUN ln -sf /usr/bin/pip3 /usr/local/bin/pip
|
||||||
|
|
||||||
|
RUN pip install junit2html
|
|
@ -3,7 +3,7 @@
|
||||||
# @TEST-EXEC: btest-bg-run recv "zeek -B broker -b ../recv.zeek >recv.out"
|
# @TEST-EXEC: btest-bg-run recv "zeek -B broker -b ../recv.zeek >recv.out"
|
||||||
# @TEST-EXEC: btest-bg-run send "zeek -B broker -b ../send.zeek >send.out"
|
# @TEST-EXEC: btest-bg-run send "zeek -B broker -b ../send.zeek >send.out"
|
||||||
|
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-pid $(cat recv/.pid) 45 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file send/lost 45 || (btest-bg-wait -k 1 && false)
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-run recv2 "zeek -B broker -b ../recv.zeek >recv2.out"
|
# @TEST-EXEC: btest-bg-run recv2 "zeek -B broker -b ../recv.zeek >recv2.out"
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 45
|
||||||
|
@ -33,6 +33,7 @@ event zeek_init()
|
||||||
event Broker::peer_lost(endpoint: Broker::EndpointInfo, msg: string)
|
event Broker::peer_lost(endpoint: Broker::EndpointInfo, msg: string)
|
||||||
{
|
{
|
||||||
print "peer lost", msg;
|
print "peer lost", msg;
|
||||||
|
system("touch lost");
|
||||||
|
|
||||||
if ( peers == 2 )
|
if ( peers == 2 )
|
||||||
terminate();
|
terminate();
|
||||||
|
|
|
@ -17,8 +17,6 @@
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
global quit_receiver: event();
|
global quit_receiver: event();
|
||||||
global quit_sender: event();
|
|
||||||
|
|
||||||
|
|
||||||
module Test;
|
module Test;
|
||||||
|
|
||||||
|
@ -52,6 +50,11 @@ event zeek_init() &priority=5
|
||||||
Log::create_stream(Test::LOG, [$columns=Test::Info]);
|
Log::create_stream(Test::LOG, [$columns=Test::Info]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
event Broker::peer_lost(endpoint: Broker::EndpointInfo, msg: string)
|
||||||
|
{
|
||||||
|
terminate();
|
||||||
|
}
|
||||||
|
|
||||||
@TEST-END-FILE
|
@TEST-END-FILE
|
||||||
|
|
||||||
@TEST-START-FILE recv.zeek
|
@TEST-START-FILE recv.zeek
|
||||||
|
@ -73,8 +76,6 @@ event quit_receiver()
|
||||||
|
|
||||||
@TEST-START-FILE send.zeek
|
@TEST-START-FILE send.zeek
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@load ./common
|
@load ./common
|
||||||
|
|
||||||
event zeek_init()
|
event zeek_init()
|
||||||
|
@ -82,11 +83,6 @@ event zeek_init()
|
||||||
Broker::peer("127.0.0.1", to_port(getenv("BROKER_PORT")));
|
Broker::peer("127.0.0.1", to_port(getenv("BROKER_PORT")));
|
||||||
}
|
}
|
||||||
|
|
||||||
event quit_sender()
|
|
||||||
{
|
|
||||||
terminate();
|
|
||||||
}
|
|
||||||
|
|
||||||
function foo(i : count) : string
|
function foo(i : count) : string
|
||||||
{
|
{
|
||||||
if ( i > 0 )
|
if ( i > 0 )
|
||||||
|
@ -122,10 +118,7 @@ event Broker::peer_added(endpoint: Broker::EndpointInfo, msg: string)
|
||||||
$f=foo
|
$f=foo
|
||||||
]);
|
]);
|
||||||
|
|
||||||
local e = Broker::make_event(quit_receiver);
|
Broker::publish("zeek/", quit_receiver);
|
||||||
Broker::publish("zeek/", e);
|
|
||||||
schedule 1sec { quit_sender() };
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@TEST-END-FILE
|
@TEST-END-FILE
|
||||||
|
|
|
@ -6,7 +6,7 @@ global RUN = 0 &redef;
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
global query_timeout = 1sec;
|
global query_timeout = 10sec;
|
||||||
|
|
||||||
global h: opaque of Broker::Store;
|
global h: opaque of Broker::Store;
|
||||||
|
|
||||||
|
|
|
@ -5,4 +5,4 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/ayiya3.trace
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/ayiya3.trace
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
# @TEST-EXEC: btest-bg-run manager-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek -m %INPUT
|
# @TEST-EXEC: btest-bg-run manager-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek -m %INPUT
|
||||||
# @TEST-EXEC: btest-bg-run worker-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek -m %INPUT
|
# @TEST-EXEC: btest-bg-run worker-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek -m %INPUT
|
||||||
# @TEST-EXEC: btest-bg-run worker-2 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-2 zeek -m %INPUT
|
# @TEST-EXEC: btest-bg-run worker-2 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-2 zeek -m %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 120
|
||||||
|
|
||||||
@TEST-START-FILE cluster-layout.zeek
|
@TEST-START-FILE cluster-layout.zeek
|
||||||
redef Cluster::nodes = {
|
redef Cluster::nodes = {
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function test_basic_bloom_filter()
|
function test_basic_bloom_filter()
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run clone "zeek -m -b ../clone.zeek >clone.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run clone "zeek -m -b ../clone.zeek >clone.out"
|
||||||
# @TEST-EXEC: btest-bg-run master "zeek -b ../master.zeek >master.out"
|
# @TEST-EXEC: btest-bg-run master "zeek -b ../master.zeek >master.out"
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff clone/clone.out
|
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff clone/clone.out
|
||||||
|
|
||||||
@TEST-START-FILE master.zeek
|
@TEST-START-FILE master.zeek
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
# @TEST-EXEC: btest-diff zeek/.stdout
|
# @TEST-EXEC: btest-diff zeek/.stdout
|
||||||
|
|
||||||
type bro_set: set[string];
|
type bro_set: set[string];
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
# @TEST-EXEC: btest-diff recv/recv.out
|
# @TEST-EXEC: btest-diff recv/recv.out
|
||||||
# @TEST-EXEC: btest-diff send/send.out
|
# @TEST-EXEC: btest-diff send/send.out
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
# @TEST-EXEC: btest-diff recv/recv.out
|
# @TEST-EXEC: btest-diff recv/recv.out
|
||||||
# @TEST-EXEC: btest-diff recv/test.log
|
# @TEST-EXEC: btest-diff recv/test.log
|
||||||
# @TEST-EXEC: btest-diff send/send.out
|
# @TEST-EXEC: btest-diff send/send.out
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run recv "zeek -m -b ../recv.zeek >recv.out"
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run send "zeek -m -b ../send.zeek >send.out"
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-wait 45
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
# @TEST-EXEC: btest-diff recv/recv.out
|
# @TEST-EXEC: btest-diff recv/recv.out
|
||||||
# @TEST-EXEC: btest-diff send/send.out
|
# @TEST-EXEC: btest-diff send/send.out
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
global did_it = F;
|
global did_it = F;
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
type MyEnum: enum { ENUMME };
|
type MyEnum: enum { ENUMME };
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -C -m -r $TRACES/dnssec/nsec3.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -C -m -r $TRACES/dnssec/nsec3.pcap %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load policy/protocols/dns/auth-addl
|
@load policy/protocols/dns/auth-addl
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/dtls1_0.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/dtls1_0.pcap %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ssl
|
@load base/protocols/ssl
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b ../exectest.zeek
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b ../exectest.zeek
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE exectest.zeek
|
@TEST-START-FILE exectest.zeek
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/http/get.trace $SCRIPTS/file-analysis-test.zeek %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/http/get.trace $SCRIPTS/file-analysis-test.zeek %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef test_file_analysis_source = "HTTP";
|
redef test_file_analysis_source = "HTTP";
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/http/get.trace $SCRIPTS/file-analysis-test.zeek %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/http/get.trace $SCRIPTS/file-analysis-test.zeek %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
# maps a function to a vector
|
# maps a function to a vector
|
||||||
function map_1 (f: function(a: count): count, v: vector of count) : vector of count
|
function map_1 (f: function(a: count): count, v: vector of count) : vector of count
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/globus-url-copy.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/globus-url-copy.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ftp/gridftp
|
@load base/protocols/ftp/gridftp
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/gtp/gtp6_gtp_0x32.pcap %INPUT >out
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/gtp/gtp6_gtp_0x32.pcap %INPUT >out
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
# Some GTPv1 headers have some optional fields totaling to a 4-byte extension
|
# Some GTPv1 headers have some optional fields totaling to a 4-byte extension
|
||||||
# of the mandatory header.
|
# of the mandatory header.
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
# @TEST-EXEC: btest-bg-run manager-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek -m %INPUT
|
# @TEST-EXEC: btest-bg-run manager-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek -m %INPUT
|
||||||
# @TEST-EXEC: btest-bg-run worker-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek -m runnumber=1 %INPUT
|
# @TEST-EXEC: btest-bg-run worker-1 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek -m runnumber=1 %INPUT
|
||||||
# @TEST-EXEC: btest-bg-run worker-2 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-2 zeek -m runnumber=2 %INPUT
|
# @TEST-EXEC: btest-bg-run worker-2 HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-2 zeek -m runnumber=2 %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 120
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: btest-diff manager-1/.stdout
|
# @TEST-EXEC: btest-diff manager-1/.stdout
|
||||||
# @TEST-EXEC: btest-diff worker-1/.stdout
|
# @TEST-EXEC: btest-diff worker-1/.stdout
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
type rec: record {
|
type rec: record {
|
||||||
a: count;
|
a: count;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/http/connect-with-smtp.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/http/connect-with-smtp.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/conn
|
@load base/protocols/conn
|
||||||
@load base/protocols/http
|
@load base/protocols/http
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/chksums/ip4-udp-good-chksum.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/chksums/ip4-udp-good-chksum.pcap %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
type rec: record {
|
type rec: record {
|
||||||
a: count;
|
a: count;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE input.log
|
@TEST-START-FILE input.log
|
||||||
#separator \x09
|
#separator \x09
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE input.log
|
@TEST-START-FILE input.log
|
||||||
#fields e i
|
#fields e i
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE input.log
|
@TEST-START-FILE input.log
|
||||||
#separator \x09
|
#separator \x09
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE input.log
|
@TEST-START-FILE input.log
|
||||||
#separator \x09
|
#separator \x09
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -6,11 +6,11 @@
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: cp input1.log input.log
|
# @TEST-EXEC: cp input1.log input.log
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 60 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 90 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cat input2.log >> input.log
|
# @TEST-EXEC: cat input2.log >> input.log
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got6 15 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got6 30 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cat input3.log >> input.log
|
# @TEST-EXEC: cat input3.log >> input.log
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 120
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -6,15 +6,15 @@
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: cp input1.log input.log
|
# @TEST-EXEC: cp input1.log input.log
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 60 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 90 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cp input2.log input.log
|
# @TEST-EXEC: cp input2.log input.log
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got4 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got4 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cp input3.log input.log
|
# @TEST-EXEC: cp input3.log input.log
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got6 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got6 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cp input4.log input.log
|
# @TEST-EXEC: cp input4.log input.log
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got8 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got8 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: cp input5.log input.log
|
# @TEST-EXEC: cp input5.log input.log
|
||||||
# @TEST-EXEC: btest-bg-wait 120
|
# @TEST-EXEC: btest-bg-wait 150
|
||||||
|
|
||||||
@TEST-START-FILE input1.log
|
@TEST-START-FILE input1.log
|
||||||
#separator \x09
|
#separator \x09
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: cat conn.sql | sqlite3 conn.sqlite
|
# @TEST-EXEC: cat conn.sql | sqlite3 conn.sqlite
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@TEST-START-FILE conn.sql
|
@TEST-START-FILE conn.sql
|
||||||
PRAGMA foreign_keys=OFF;
|
PRAGMA foreign_keys=OFF;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/frameworks/input
|
@load base/frameworks/input
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek1 zeek -m -b -r $TRACES/tunnels/6in6.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek1 zeek -m -b -r $TRACES/tunnels/6in6.pcap %INPUT
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek2 zeek -m -b -r $TRACES/tunnels/6in6in6.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek2 zeek -m -b -r $TRACES/tunnels/6in6in6.pcap %INPUT
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek3 zeek -m -b -r $TRACES/tunnels/6in6-tunnel-change.pcap %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek3 zeek -m -b -r $TRACES/tunnels/6in6-tunnel-change.pcap %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 120
|
||||||
|
|
||||||
event new_connection(c: connection)
|
event new_connection(c: connection)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/ipv6-hbh-routing0.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/ipv6-hbh-routing0.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
# Just check that the event is raised correctly for a packet containing
|
# Just check that the event is raised correctly for a packet containing
|
||||||
# extension headers.
|
# extension headers.
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/irc-dcc-send.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/irc-dcc-send.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
event irc_names_info(c: connection, is_orig: bool, c_type: string, channel: string, users: string_set)
|
event irc_names_info(c: connection, is_orig: bool, c_type: string, channel: string, users: string_set)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,4 +5,4 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/krb/optional-service-name.pcap
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/krb/optional-service-name.pcap
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/krb/kinit.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/krb/kinit.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 30
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/krb
|
@load base/protocols/krb
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
event new_connection(c: connection)
|
event new_connection(c: connection)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/mysql/mysql.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/mysql/mysql.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/mysql
|
@load base/protocols/mysql
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function test_case(msg: string, expect: bool)
|
function test_case(msg: string, expect: bool)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/pe/pe.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/pe/pe.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ftp
|
@load base/protocols/ftp
|
||||||
@load base/files/pe
|
@load base/files/pe
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef Log::print_to_log = Log::REDIRECT_ALL;
|
redef Log::print_to_log = Log::REDIRECT_ALL;
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/radius/radius.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/radius/radius.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/radius
|
@load base/protocols/radius
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: btest-bg-run zeek HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local zeek -m -b %INPUT
|
# @TEST-EXEC: btest-bg-run zeek HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local zeek -m -b %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
redef exit_only_after_terminate = T;
|
redef exit_only_after_terminate = T;
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function test_case(msg: string, expect: bool)
|
function test_case(msg: string, expect: bool)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/sip/wireshark.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/sip/wireshark.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/sip
|
@load base/protocols/sip
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/smtp.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/smtp.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/smtp
|
@load base/protocols/smtp
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/snmp/snmpv1_get.pcap -r $TRACES/snmp/snmpv1_get_short.pcap -r $TRACES/snmp/snmpv1_set.pcap -r $TRACES/snmp/snmpv1_trap.pcap -r $TRACES/snmp/snmpv2_get_bulk.pcap -r $TRACES/snmp/snmpv2_get_next.pcap -r $TRACES/snmp/snmpv2_get.pcap -r $TRACES/snmp/snmpv3_get_next.pcap $SCRIPTS/snmp-test.zeek %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/snmp/snmpv1_get.pcap -r $TRACES/snmp/snmpv1_get_short.pcap -r $TRACES/snmp/snmpv1_set.pcap -r $TRACES/snmp/snmpv1_trap.pcap -r $TRACES/snmp/snmpv2_get_bulk.pcap -r $TRACES/snmp/snmpv2_get_next.pcap -r $TRACES/snmp/snmpv2_get.pcap -r $TRACES/snmp/snmpv3_get_next.pcap $SCRIPTS/snmp-test.zeek %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/snmp
|
@load base/protocols/snmp
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/ssh/ssh.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/ssh/ssh.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ssh
|
@load base/protocols/ssh
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load policy/misc/stats
|
@load policy/misc/stats
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
|
|
||||||
event new_connection(c: connection)
|
event new_connection(c: connection)
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
type MyEnum: enum {
|
type MyEnum: enum {
|
||||||
RED,
|
RED,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-GROUP: leaks
|
# @TEST-GROUP: leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/Teredo.pcap %INPUT >output
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/tunnels/Teredo.pcap %INPUT >output
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function print_teredo(name: string, outer: connection, inner: teredo_hdr)
|
function print_teredo(name: string, outer: connection, inner: teredo_hdr)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,4 +5,4 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/wikipedia.trace test-all-policy
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -r $TRACES/wikipedia.trace test-all-policy
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
type color: enum { Red, White, Blue };
|
type color: enum { Red, White, Blue };
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/wikipedia.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
global did_it = F;
|
global did_it = F;
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
# leaked that memeory.
|
# leaked that memeory.
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/ftp/ipv4.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/ftp/ipv4.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function myfunc(aa: interval, bb: interval): int
|
function myfunc(aa: interval, bb: interval): int
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
|
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -m -b -r $TRACES/http/get.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
function test_noop()
|
function test_noop()
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/ocsp-stapling.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/ocsp-stapling.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ssl
|
@load base/protocols/ssl
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
# @TEST-REQUIRES: zeek --help 2>&1 | grep -q mem-leaks
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/tls-expired-cert.trace %INPUT
|
# @TEST-EXEC: HEAP_CHECK_DUMP_DIRECTORY=. HEAPCHECK=local btest-bg-run zeek zeek -b -m -r $TRACES/tls/tls-expired-cert.trace %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait 60
|
# @TEST-EXEC: btest-bg-wait 90
|
||||||
|
|
||||||
@load base/protocols/ssl
|
@load base/protocols/ssl
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
# @TEST-EXEC: btest-bg-run zeek zeek -b %INPUT
|
# @TEST-EXEC: btest-bg-run zeek zeek -b %INPUT
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got1 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got1 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: mv configfile2 configfile
|
# @TEST-EXEC: mv configfile2 configfile
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got2 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: mv configfile3 configfile
|
# @TEST-EXEC: mv configfile3 configfile
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got3 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file zeek/got3 20 || (btest-bg-wait -k 1 && false)
|
||||||
# @TEST-EXEC: mv configfile4 configfile
|
# @TEST-EXEC: mv configfile4 configfile
|
||||||
# @TEST-EXEC: btest-bg-wait 10
|
# @TEST-EXEC: btest-bg-wait 20
|
||||||
# @TEST-EXEC: btest-diff zeek/config.log
|
# @TEST-EXEC: btest-diff zeek/config.log
|
||||||
|
|
||||||
@load base/frameworks/config
|
@load base/frameworks/config
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
# @TEST-EXEC: btest-bg-run manager-1 ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek %INPUT
|
# @TEST-EXEC: btest-bg-run manager-1 ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=manager-1 zeek %INPUT
|
||||||
# @TEST-EXEC: btest-bg-run worker-1 ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek %INPUT
|
# @TEST-EXEC: btest-bg-run worker-1 ZEEKPATH=$ZEEKPATH:.. CLUSTER_NODE=worker-1 zeek %INPUT
|
||||||
# @TEST-EXEC: btest-bg-wait -k 13
|
# @TEST-EXEC: btest-bg-wait 30
|
||||||
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff manager-1/.stdout
|
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff manager-1/.stdout
|
||||||
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff worker-1/.stdout
|
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-sort btest-diff worker-1/.stdout
|
||||||
# @TEST-EXEC: btest-diff manager-1/intel.log
|
# @TEST-EXEC: btest-diff manager-1/intel.log
|
||||||
|
@ -36,11 +36,9 @@ event test_worker()
|
||||||
Intel::seen([$host=10.10.10.10, $where=Intel::IN_ANYWHERE]);
|
Intel::seen([$host=10.10.10.10, $where=Intel::IN_ANYWHERE]);
|
||||||
}
|
}
|
||||||
|
|
||||||
event Cluster::node_up(name: string, id: string)
|
event ready()
|
||||||
{
|
{
|
||||||
# Insert the data once all workers are connected.
|
# Insert the data once all workers are connected.
|
||||||
if ( Cluster::local_node_type() == Cluster::MANAGER && Cluster::worker_count == 1 )
|
|
||||||
{
|
|
||||||
Intel::insert([$indicator="192.168.0.1", $indicator_type=Intel::ADDR, $meta=[$source="source1"]]);
|
Intel::insert([$indicator="192.168.0.1", $indicator_type=Intel::ADDR, $meta=[$source="source1"]]);
|
||||||
Intel::insert([$indicator="192.168.0.2", $indicator_type=Intel::ADDR, $meta=[$source="source1"]]);
|
Intel::insert([$indicator="192.168.0.2", $indicator_type=Intel::ADDR, $meta=[$source="source1"]]);
|
||||||
Intel::insert([$indicator="192.168.0.2", $indicator_type=Intel::ADDR, $meta=[$source="source2"]]);
|
Intel::insert([$indicator="192.168.0.2", $indicator_type=Intel::ADDR, $meta=[$source="source2"]]);
|
||||||
|
@ -50,6 +48,11 @@ event Cluster::node_up(name: string, id: string)
|
||||||
|
|
||||||
event test_manager();
|
event test_manager();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
event Cluster::node_up(name: string, id: string)
|
||||||
|
{
|
||||||
|
if ( Cluster::node == "worker-1" )
|
||||||
|
Broker::publish(Cluster::manager_topic, ready);
|
||||||
}
|
}
|
||||||
|
|
||||||
global worker_data = 0;
|
global worker_data = 0;
|
||||||
|
@ -74,19 +77,13 @@ event remove_indicator(item: Item)
|
||||||
print fmt("Purging %s.", item$indicator);
|
print fmt("Purging %s.", item$indicator);
|
||||||
}
|
}
|
||||||
|
|
||||||
event die()
|
|
||||||
{
|
|
||||||
terminate();
|
|
||||||
}
|
|
||||||
|
|
||||||
event Intel::log_intel(rec: Intel::Info)
|
event Intel::log_intel(rec: Intel::Info)
|
||||||
{
|
{
|
||||||
print "Logging intel hit!";
|
print "Logging intel hit!";
|
||||||
schedule 2sec { die() };
|
terminate();
|
||||||
}
|
}
|
||||||
|
|
||||||
event Cluster::node_down(name: string, id: string)
|
event Cluster::node_down(name: string, id: string)
|
||||||
{
|
{
|
||||||
# Cascading termination
|
terminate();
|
||||||
schedule 2sec { die() };
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# @TEST-EXEC: btest-bg-run manager-1 "cp ../cluster-layout.zeek . && CLUSTER_NODE=manager-1 zeek %INPUT"
|
# @TEST-EXEC: btest-bg-run manager-1 "cp ../cluster-layout.zeek . && CLUSTER_NODE=manager-1 zeek %INPUT"
|
||||||
# @TEST-EXEC: btest-bg-run worker-1 "cp ../cluster-layout.zeek . && CLUSTER_NODE=worker-1 zeek --pseudo-realtime -C -r $TRACES/tls/ecdhe.pcap %INPUT"
|
# @TEST-EXEC: btest-bg-run worker-1 "cp ../cluster-layout.zeek . && CLUSTER_NODE=worker-1 zeek --pseudo-realtime -C -r $TRACES/tls/ecdhe.pcap %INPUT"
|
||||||
|
|
||||||
# @TEST-EXEC: $SCRIPTS/wait-for-pid $(cat worker-1/.pid) 10 || (btest-bg-wait -k 1 && false)
|
# @TEST-EXEC: $SCRIPTS/wait-for-file manager-1/lost 10 || (btest-bg-wait -k 1 && false)
|
||||||
|
|
||||||
# @TEST-EXEC: btest-bg-run worker-2 "cp ../cluster-layout.zeek . && CLUSTER_NODE=worker-2 zeek --pseudo-realtime -C -r $TRACES/tls/ecdhe.pcap %INPUT"
|
# @TEST-EXEC: btest-bg-run worker-2 "cp ../cluster-layout.zeek . && CLUSTER_NODE=worker-2 zeek --pseudo-realtime -C -r $TRACES/tls/ecdhe.pcap %INPUT"
|
||||||
# @TEST-EXEC: btest-bg-wait 20
|
# @TEST-EXEC: btest-bg-wait 20
|
||||||
|
@ -59,6 +59,7 @@ global peers_lost = 0;
|
||||||
event Broker::peer_lost(endpoint: Broker::EndpointInfo, msg: string)
|
event Broker::peer_lost(endpoint: Broker::EndpointInfo, msg: string)
|
||||||
{
|
{
|
||||||
++peers_lost;
|
++peers_lost;
|
||||||
|
system("touch lost");
|
||||||
|
|
||||||
if ( peers_lost == 2 )
|
if ( peers_lost == 2 )
|
||||||
schedule 2sec { terminate_me() };
|
schedule 2sec { terminate_me() };
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
#! /usr/bin/env bash
|
|
||||||
|
|
||||||
# Sleeps until a process id no longer exists.
|
|
||||||
|
|
||||||
if [[ $# -ne 2 ]]; then
|
|
||||||
>&2 echo "usage: $0 <pid to wait for> <max secs to wait>"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
wait_pid=$1
|
|
||||||
max_wait=$2
|
|
||||||
wait_count=0
|
|
||||||
|
|
||||||
while kill -0 $wait_pid &> /dev/null; do
|
|
||||||
let "wait_count += 1"
|
|
||||||
|
|
||||||
if [[ $wait_count -ge $max_wait ]]; then
|
|
||||||
>&2 echo "error: process $wait_pid still exists after $max_wait seconds"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue