mirror of
https://github.com/falcosecurity/falco.git
synced 2025-08-18 22:27:52 +00:00
tests: remove deprecated assertions
Signed-off-by: Andrea Terzolo <andreaterzolo3@gmail.com>
This commit is contained in:
parent
99781f7936
commit
76ab28ff59
@ -19,10 +19,10 @@ limitations under the License.
|
|||||||
#include "falco_test_var.h"
|
#include "falco_test_var.h"
|
||||||
|
|
||||||
#ifndef __EMSCRIPTEN__
|
#ifndef __EMSCRIPTEN__
|
||||||
TEST(ActionLoadConfig, check_engine_config_is_correctly_parsed)
|
TEST(ActionLoadConfig, check_kmod_engine_config)
|
||||||
{
|
{
|
||||||
falco::app::state s = {};
|
falco::app::state s = {};
|
||||||
s.options.conf_filename = NEW_ENGINE_CONFIG_CHANGED;
|
s.options.conf_filename = TEST_ENGINE_KMOD_CONFIG;
|
||||||
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
||||||
|
|
||||||
// Check that the engine is the kmod
|
// Check that the engine is the kmod
|
||||||
@ -45,105 +45,26 @@ TEST(ActionLoadConfig, check_engine_config_is_correctly_parsed)
|
|||||||
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
||||||
|
|
||||||
// Check that deprecated configs are always set since
|
|
||||||
EXPECT_EQ(s.config->m_syscall_buf_size_preset, 6);
|
|
||||||
EXPECT_EQ(s.config->m_cpus_for_each_syscall_buffer, 7);
|
|
||||||
EXPECT_TRUE(s.config->m_syscall_drop_failed_exit);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Equal to the one above but checks that the command line options are not parsed
|
TEST(ActionLoadConfig, check_modern_engine_config)
|
||||||
TEST(ActionLoadConfig, check_command_line_options_are_not_used)
|
|
||||||
{
|
{
|
||||||
falco::app::state s;
|
falco::app::state s = {};
|
||||||
s.options.modern_bpf = true;
|
s.options.conf_filename = TEST_ENGINE_MODERN_CONFIG;
|
||||||
s.options.conf_filename = NEW_ENGINE_CONFIG_CHANGED;
|
|
||||||
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
||||||
|
|
||||||
// Check that the engine is the kmod
|
// Check that the engine is the modern ebpf
|
||||||
EXPECT_TRUE(s.config->m_engine_mode == engine_kind_t::KMOD);
|
EXPECT_TRUE(s.config->m_engine_mode == engine_kind_t::MODERN_EBPF);
|
||||||
|
|
||||||
// Check that kmod params are the ones specified in the config
|
// Check that modern ebpf params are the ones specified in the config
|
||||||
EXPECT_EQ(s.config->m_kmod.m_buf_size_preset, 2);
|
EXPECT_EQ(s.config->m_modern_ebpf.m_cpus_for_each_buffer, 1);
|
||||||
EXPECT_FALSE(s.config->m_kmod.m_drop_failed_exit);
|
EXPECT_EQ(s.config->m_modern_ebpf.m_buf_size_preset, 4);
|
||||||
|
|
||||||
// Check that all other engine params are empty
|
|
||||||
EXPECT_TRUE(s.config->m_ebpf.m_probe_path.empty());
|
|
||||||
EXPECT_EQ(s.config->m_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_cpus_for_each_buffer, 0);
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_modern_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_replay.m_capture_file.empty());
|
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
|
||||||
|
|
||||||
// Check that deprecated configs are always set since
|
|
||||||
EXPECT_EQ(s.config->m_syscall_buf_size_preset, 6);
|
|
||||||
EXPECT_EQ(s.config->m_cpus_for_each_syscall_buffer, 7);
|
|
||||||
EXPECT_TRUE(s.config->m_syscall_drop_failed_exit);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST(ActionLoadConfig, check_kmod_with_syscall_configs)
|
|
||||||
{
|
|
||||||
falco::app::state s;
|
|
||||||
s.options.conf_filename = NEW_ENGINE_CONFIG_UNCHANGED;
|
|
||||||
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
|
||||||
|
|
||||||
// Check that the engine is the kmod
|
|
||||||
EXPECT_TRUE(s.config->m_engine_mode == engine_kind_t::KMOD);
|
|
||||||
|
|
||||||
// Kmod params should be populated with the syscall configs
|
|
||||||
// since the `engine` block is untouched.
|
|
||||||
EXPECT_EQ(s.config->m_kmod.m_buf_size_preset, 6);
|
|
||||||
EXPECT_TRUE(s.config->m_kmod.m_drop_failed_exit);
|
|
||||||
|
|
||||||
// Check that all other engine params are empty
|
|
||||||
EXPECT_TRUE(s.config->m_ebpf.m_probe_path.empty());
|
|
||||||
EXPECT_EQ(s.config->m_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_cpus_for_each_buffer, 0);
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_modern_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_replay.m_capture_file.empty());
|
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
|
||||||
|
|
||||||
// Check that deprecated configs are populated
|
|
||||||
EXPECT_EQ(s.config->m_syscall_buf_size_preset, 6);
|
|
||||||
EXPECT_EQ(s.config->m_cpus_for_each_syscall_buffer, 3);
|
|
||||||
EXPECT_TRUE(s.config->m_syscall_drop_failed_exit);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST(ActionLoadConfig, check_override_command_line_modern)
|
|
||||||
{
|
|
||||||
falco::app::state s;
|
|
||||||
// The command line options should be correctly applied since the
|
|
||||||
// config is unchanged
|
|
||||||
s.options.modern_bpf = true;
|
|
||||||
s.options.conf_filename = NEW_ENGINE_CONFIG_UNCHANGED;
|
|
||||||
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
|
||||||
|
|
||||||
// Check that the engine is the kmod
|
|
||||||
EXPECT_TRUE(s.is_modern_ebpf());
|
|
||||||
|
|
||||||
// Check that the modern ebpf engine uses the default syscall configs
|
|
||||||
// and not the ones in the `engine` block
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_cpus_for_each_buffer, 3);
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_buf_size_preset, 6);
|
|
||||||
EXPECT_TRUE(s.config->m_modern_ebpf.m_drop_failed_exit);
|
EXPECT_TRUE(s.config->m_modern_ebpf.m_drop_failed_exit);
|
||||||
|
|
||||||
// Kmod params should be always populated since the kmod is the default
|
|
||||||
EXPECT_EQ(s.config->m_kmod.m_buf_size_preset, 6);
|
|
||||||
EXPECT_TRUE(s.config->m_kmod.m_drop_failed_exit);
|
|
||||||
|
|
||||||
// Check that all other engine params are empty
|
// Check that all other engine params are empty
|
||||||
|
EXPECT_EQ(s.config->m_kmod.m_buf_size_preset, 0);
|
||||||
|
EXPECT_FALSE(s.config->m_kmod.m_drop_failed_exit);
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_ebpf.m_probe_path.empty());
|
EXPECT_TRUE(s.config->m_ebpf.m_probe_path.empty());
|
||||||
EXPECT_EQ(s.config->m_ebpf.m_buf_size_preset, 0);
|
EXPECT_EQ(s.config->m_ebpf.m_buf_size_preset, 0);
|
||||||
EXPECT_FALSE(s.config->m_ebpf.m_drop_failed_exit);
|
EXPECT_FALSE(s.config->m_ebpf.m_drop_failed_exit);
|
||||||
@ -152,45 +73,6 @@ TEST(ActionLoadConfig, check_override_command_line_modern)
|
|||||||
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
EXPECT_TRUE(s.config->m_gvisor.m_config.empty());
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
||||||
|
|
||||||
// Check that deprecated configs are populated
|
|
||||||
EXPECT_EQ(s.config->m_syscall_buf_size_preset, 6);
|
|
||||||
EXPECT_EQ(s.config->m_cpus_for_each_syscall_buffer, 3);
|
|
||||||
EXPECT_TRUE(s.config->m_syscall_drop_failed_exit);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(ActionLoadConfig, check_override_command_line_gvisor)
|
|
||||||
{
|
|
||||||
falco::app::state s;
|
|
||||||
// The command line options should be correctly applied since the
|
|
||||||
// config is unchanged
|
|
||||||
s.options.gvisor_config = "config";
|
|
||||||
s.options.conf_filename = NEW_ENGINE_CONFIG_UNCHANGED;
|
|
||||||
EXPECT_ACTION_OK(falco::app::actions::load_config(s));
|
|
||||||
|
|
||||||
// Check that the engine is the kmod
|
|
||||||
EXPECT_TRUE(s.is_gvisor());
|
|
||||||
EXPECT_EQ(s.config->m_gvisor.m_config, "config");
|
|
||||||
EXPECT_TRUE(s.config->m_gvisor.m_root.empty());
|
|
||||||
|
|
||||||
// Kmod params should be always populated since the kmod is the default
|
|
||||||
EXPECT_EQ(s.config->m_kmod.m_buf_size_preset, 6);
|
|
||||||
EXPECT_TRUE(s.config->m_kmod.m_drop_failed_exit);
|
|
||||||
|
|
||||||
// Check that all other engine params are empty
|
|
||||||
EXPECT_TRUE(s.config->m_ebpf.m_probe_path.empty());
|
|
||||||
EXPECT_EQ(s.config->m_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_cpus_for_each_buffer, 0);
|
|
||||||
EXPECT_EQ(s.config->m_modern_ebpf.m_buf_size_preset, 0);
|
|
||||||
EXPECT_FALSE(s.config->m_modern_ebpf.m_drop_failed_exit);
|
|
||||||
|
|
||||||
EXPECT_TRUE(s.config->m_replay.m_capture_file.empty());
|
|
||||||
|
|
||||||
// Check that deprecated configs are populated
|
|
||||||
EXPECT_EQ(s.config->m_syscall_buf_size_preset, 6);
|
|
||||||
EXPECT_EQ(s.config->m_cpus_for_each_syscall_buffer, 3);
|
|
||||||
EXPECT_TRUE(s.config->m_syscall_drop_failed_exit);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -20,16 +20,15 @@
|
|||||||
# Falco engine #
|
# Falco engine #
|
||||||
################
|
################
|
||||||
|
|
||||||
# Unchanged
|
|
||||||
engine:
|
engine:
|
||||||
kind: kmod
|
kind: kmod
|
||||||
kmod:
|
kmod:
|
||||||
buf_size_preset: 4
|
buf_size_preset: 2
|
||||||
drop_failed_exit: false
|
drop_failed_exit: false
|
||||||
ebpf:
|
ebpf:
|
||||||
probe: /path/to/probe.o
|
probe: /path/to/probe.o
|
||||||
buf_size_preset: 4
|
buf_size_preset: 7
|
||||||
drop_failed_exit: false
|
drop_failed_exit: true
|
||||||
modern_ebpf:
|
modern_ebpf:
|
||||||
cpus_for_each_buffer: 2
|
cpus_for_each_buffer: 2
|
||||||
buf_size_preset: 4
|
buf_size_preset: 4
|
||||||
@ -39,15 +38,3 @@ engine:
|
|||||||
gvisor:
|
gvisor:
|
||||||
config: /path/to/gvisor_config.yaml
|
config: /path/to/gvisor_config.yaml
|
||||||
root: ""
|
root: ""
|
||||||
|
|
||||||
#######################################
|
|
||||||
# Falco performance tuning (advanced) #
|
|
||||||
#######################################
|
|
||||||
|
|
||||||
# The `engine` config is unchanged so these configs are used
|
|
||||||
syscall_buf_size_preset: 6
|
|
||||||
|
|
||||||
syscall_drop_failed_exit: true
|
|
||||||
|
|
||||||
modern_bpf:
|
|
||||||
cpus_for_each_syscall_buffer: 3
|
|
@ -21,32 +21,20 @@
|
|||||||
################
|
################
|
||||||
|
|
||||||
engine:
|
engine:
|
||||||
kind: kmod
|
kind: modern_ebpf
|
||||||
kmod:
|
kmod:
|
||||||
buf_size_preset: 2 # changed default value
|
buf_size_preset: 1
|
||||||
drop_failed_exit: false
|
drop_failed_exit: true
|
||||||
ebpf:
|
ebpf:
|
||||||
probe: /path/to/probe.o
|
probe: /path/to/probe.o
|
||||||
buf_size_preset: 4
|
buf_size_preset: 4
|
||||||
drop_failed_exit: false
|
drop_failed_exit: false
|
||||||
modern_ebpf:
|
modern_ebpf:
|
||||||
cpus_for_each_buffer: 2
|
cpus_for_each_buffer: 1
|
||||||
buf_size_preset: 4
|
# missing `buf_size_preset` should be defaulted
|
||||||
drop_failed_exit: false
|
drop_failed_exit: true
|
||||||
replay:
|
replay:
|
||||||
capture_file: /path/to/file.scap
|
capture_file: /path/to/file.scap
|
||||||
gvisor:
|
gvisor:
|
||||||
config: /path/to/gvisor_config.yaml
|
config: /path/to/gvisor_config.yaml
|
||||||
root: ""
|
root: ""
|
||||||
|
|
||||||
#######################################
|
|
||||||
# Falco performance tuning (advanced) #
|
|
||||||
#######################################
|
|
||||||
|
|
||||||
# These configs should be ignored since we have changed the `engine` config
|
|
||||||
syscall_buf_size_preset: 6
|
|
||||||
|
|
||||||
syscall_drop_failed_exit: true
|
|
||||||
|
|
||||||
modern_bpf:
|
|
||||||
cpus_for_each_syscall_buffer: 7
|
|
@ -1,4 +1,4 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define NEW_ENGINE_CONFIG_CHANGED "${CMAKE_SOURCE_DIR}/unit_tests/falco/test_configs/new_engine_config_changed.yaml"
|
#define TEST_ENGINE_KMOD_CONFIG "${CMAKE_SOURCE_DIR}/unit_tests/falco/test_configs/engine_kmod_config.yaml"
|
||||||
#define NEW_ENGINE_CONFIG_UNCHANGED "${CMAKE_SOURCE_DIR}/unit_tests/falco/test_configs/new_engine_config_unchanged.yaml"
|
#define TEST_ENGINE_MODERN_CONFIG "${CMAKE_SOURCE_DIR}/unit_tests/falco/test_configs/engine_modern_config.yaml"
|
||||||
|
Loading…
Reference in New Issue
Block a user