Skip to content

Commit 6ad24ca

Browse files
committed
Merge branch 'master' into osquery_plugin
2 parents ca78404 + 2f39ee6 commit 6ad24ca

File tree

227 files changed

+16859
-6510
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

227 files changed

+16859
-6510
lines changed

.github/workflows/c-cpp.yml

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: C/C++ CI
1+
name: Build and Checks
22

33
on:
44
push:
@@ -13,19 +13,32 @@ jobs:
1313

1414
steps:
1515
- uses: actions/checkout@v2
16+
with:
17+
submodules: recursive
1618
- name: Install dependencies
1719
run: |
1820
sudo apt-get update
19-
sudo apt-get -y install git build-essential autoconf libtool libpcap-dev pkg-config libxml2-dev
21+
sudo apt-get -y install git build-essential autoconf libtool libpcap-dev pkg-config libxml2-dev libunwind-dev
2022
( git clone --depth 1 https://github.com/CESNET/nemea-framework /tmp/nemea-framework; cd /tmp/nemea-framework; ./bootstrap.sh &&./configure --bindir=/usr/bin/nemea/ -q &&make -j10 && sudo make install; sudo ldconfig)
2123
( git clone --depth 1 https://github.com/CESNET/nemea-modules /tmp/nemea-modules; cd /tmp/nemea-modules; ./bootstrap.sh &&./configure --bindir=/usr/bin/nemea/ -q &&make -j10 && sudo make install; )
2224
- name: autoreconf
2325
run: autoreconf -i
2426
- name: configure
25-
run: ./configure --with-nemea
27+
run: ./configure --with-raw --with-pcap --with-nemea --with-gtest
2628
- name: make
2729
run: make
2830
- name: make check
2931
run: make check
3032
- name: make distcheck
3133
run: make distcheck
34+
- name: configure with debug
35+
run: ./configure --with-raw --with-pcap --with-nemea --with-gtest --enable-debug CXXFLAGS=-coverage CFLAGS=-coverage LDFLAGS=-lgcov
36+
- name: rebuild and check
37+
run: make clean; make check
38+
- uses: codecov/codecov-action@v1
39+
with:
40+
flags: tests # optional
41+
name: ipfixprobe # optional
42+
fail_ci_if_error: true # optional (default = false)
43+
verbose: true # optional (default = false)
44+
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: "CodeQL"
2+
3+
on:
4+
push:
5+
branches: [ master ]
6+
pull_request:
7+
# The branches below must be a subset of the branches above
8+
branches: [ master ]
9+
schedule:
10+
- cron: '33 12 * * 6'
11+
12+
jobs:
13+
analyze:
14+
name: Analyze
15+
runs-on: ubuntu-latest
16+
permissions:
17+
actions: read
18+
contents: read
19+
security-events: write
20+
21+
strategy:
22+
fail-fast: false
23+
matrix:
24+
language: [ 'cpp' ]
25+
26+
steps:
27+
- name: Checkout repository
28+
uses: actions/checkout@v2
29+
30+
- name: Install dependencies
31+
run: |
32+
sudo apt-get update
33+
sudo apt-get -y install git build-essential autoconf libtool libpcap-dev pkg-config libxml2-dev
34+
( git clone --depth 1 https://github.com/CESNET/nemea-framework /tmp/nemea-framework; cd /tmp/nemea-framework; ./bootstrap.sh &&./configure --bindir=/usr/bin/nemea/ -q &&make -j10 && sudo make install; sudo ldconfig)
35+
# Initializes the CodeQL tools for scanning.
36+
- name: Initialize CodeQL
37+
uses: github/codeql-action/init@v1
38+
with:
39+
languages: ${{ matrix.language }}
40+
# If you wish to specify custom queries, you can do so here or in a config file.
41+
# By default, queries listed here will override any specified in a config file.
42+
# Prefix the list here with "+" to use these queries and those in the config file.
43+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
44+
45+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
46+
# If this step fails, then you should remove it and run the build manually (see below)
47+
#- name: Autobuild
48+
# uses: github/codeql-action/autobuild@v1
49+
50+
# ℹ️ Command-line programs to run using the OS shell.
51+
# 📚 https://git.io/JvXDl
52+
53+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
54+
# and modify them (or add more) to build your code if your project
55+
# uses a compiled language
56+
57+
#- run: |
58+
# make bootstrap
59+
# make release
60+
- name: Build
61+
run: |
62+
autoreconf -i
63+
./configure --with-nemea
64+
make
65+
66+
- name: Perform CodeQL Analysis
67+
uses: github/codeql-action/analyze@v1

.github/workflows/coverity.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: coverity
2+
3+
on:
4+
push:
5+
branches: 'coverity'
6+
pull_request:
7+
branches: 'master'
8+
9+
jobs:
10+
build:
11+
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v2
16+
- name: Install dependencies
17+
run: |
18+
sudo apt-get update
19+
sudo apt-get -y install git build-essential autoconf libtool libpcap-dev pkg-config libxml2-dev
20+
( git clone --depth 1 https://github.com/CESNET/nemea-framework /tmp/nemea-framework; cd /tmp/nemea-framework; ./bootstrap.sh &&./configure --bindir=/usr/bin/nemea/ -q &&make -j10 && sudo make install; sudo ldconfig)
21+
( git clone --depth 1 https://github.com/CESNET/nemea-modules /tmp/nemea-modules; cd /tmp/nemea-modules; ./bootstrap.sh &&./configure --bindir=/usr/bin/nemea/ -q &&make -j10 && sudo make install; )
22+
- name: autoreconf
23+
run: autoreconf -i
24+
- name: configure
25+
run: ./configure --with-nemea
26+
- name: Download Coverity Build Tool
27+
run: |
28+
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=CESNET%2Fipfixprobe" -O cov-analysis-linux64.tar.gz
29+
mkdir cov-analysis-linux64
30+
tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64
31+
env:
32+
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
33+
- name: Fixed world writable dirs
34+
run: |
35+
chmod go-w $HOME
36+
sudo chmod -R go-w /usr/share
37+
- name: Build with cov-build
38+
run: |
39+
export PATH=`pwd`/cov-analysis-linux64/bin:$PATH
40+
cov-build --dir cov-int make
41+
- name: Submit the result to Coverity Scan
42+
run: |
43+
tar czvf project.tgz cov-int
44+
curl \
45+
--form project=CESNET%2Fipfixprobe \
46+
--form token=$TOKEN \
47+
48+
49+
--form version=trunk \
50+
--form description="ipfixprobe build" \
51+
https://scan.coverity.com/builds?project=CESNET%2Fipfixprobe
52+
env:
53+
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
54+

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,12 @@ libtool
9494
fields.c
9595
fields.h
9696
ipfixprobe-nemea.*
97-
ipfixprobe
97+
./ipfixprobe
9898
ipfixprobe-*.tar.gz
9999

100100
# Test Outputs
101101
tests/*.log
102102
tests/*.trs
103-
tests/test_output/
103+
tests/output/
104104

105105

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "googletest"]
2+
path = googletest
3+
url = https://github.com/google/googletest.git

ChangeLog

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,39 @@
1+
2021-08-18 ipfixprobe-3.2.1
2+
* bugfix parser overflows due bug in old version of libpcap
3+
4+
2021-07-28 ipfixprobe-3.2.0
5+
* improved code doc
6+
* tlsplugin: fixed out of bounds write to an array
7+
* ipfix: Minor changes
8+
9+
2021-07-23 ipfixprobe-3.1.1
10+
* systemd: added restart on failure
11+
* added stacktrace print on segmentation fault
12+
* added export of flowEndReason IPFIX field
13+
* rpm: packages are compiled with libunwind
14+
15+
2021-07-21 ipfixprobe-3.1.0
16+
* http: updated HTTP IPFIX element identifiers
17+
* ghactions: add coverity and codecov
18+
* improved systemd service
19+
* build: fixed errors on turris and tplink
20+
21+
2021-06-08 ipfixprobe-3.0.0
22+
* added multi-thread version of ipfixprobe
23+
* added wireguard plugin
24+
* support cygwin compatibility
25+
* bugfixes: RTSP plugin, build, memory
26+
* updated tests - test for WireGuard plugin
27+
28+
2021-02-27 ipfixprobe-2.19.0
29+
* added phist plugin - histograms of packets
30+
* added bstats plugin - burst characteristics of flows
31+
* added netbios support
32+
* improved basic fields
33+
* bugfixes: build, payload size
34+
* maintenance: improved IPFIX basiclist representation
35+
* updated tests - new timestamp precision
36+
137
2020-11-01 ipfixprobe-2.18.0
238
* add IDPContent plugin (initial data from packet payload)
339
* updated create_plugin.sh

0 commit comments

Comments
 (0)