# Find the native UUID include file and library.
find_package(PkgConfig)
-pkg_check_modules(PKG_HINT uuid)
+pkg_check_modules(PC_UUID uuid)
-if (APPLE)
- set(APPLE_UUID_INCLUDE_DIR "/usr/include/uuid")
- set(UUID_LIBRARY_NAME "System")
+if (PC_UUID_FOUND)
+ set(UUID_LIBRARY_NAME ${PC_UUID_LIBRARIES})
else()
- set(APPLE_INCLUDE_DIR "")
set(UUID_LIBRARY_NAME "uuid")
endif()
find_path (UUID_INCLUDE_DIR
NAMES uuid.h
- HINTS ${UUID_INCLUDE_DIR_HINT} ${PKG_HINT_INCLUDE_DIRS} ${APPLE_UUID_INCLUDE_DIR}
+ HINTS ${UUID_INCLUDE_DIR_HINT} ${PC_UUID_INCLUDEDIR} ${PC_UUID_INCLUDE_DIRS}
+ PATH_SUFFIXES uuid
)
-if (UUID_INCLUDE_DIR)
+if (UUID_LIBRARY_NAME)
find_library(UUID_LIBRARY
NAMES ${UUID_LIBRARY_NAME}
- HINTS ${UUID_LIBRARIES_DIR_HINT} ${PKG_HINT_LIBRARY_DIRS}
+ HINTS ${UUID_LIBRARIES_DIR_HINT} ${PC_UUID_LIBDIR} ${PC_UUID_LIBRARY_DIRS}
)
+ set(REQUIRED_UUID_LIBRARY "UUID_LIBRARY")
else()
- set(UUID_INCLUDE_DIR "")
+ set(REQUIRED_UUID_LIBRARY "")
endif()
-if (UUID_LIBRARY)
- set(HAVE_UUID "1")
-
- include(FindPackageHandleStandardArgs)
-
- find_package_handle_standard_args(UUID
- UUID_INCLUDE_DIR UUID_LIBRARY
- )
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(
+ UUID
+ REQUIRED_VARS
+ UUID_INCLUDE_DIR ${REQUIRED_UUID_LIBRARY}
+)
- mark_as_advanced(UUID_INCLUDE_DIR UUID_LIBRARY)
-else()
- set(UUID_LIBRARY "")
-endif()
+mark_as_advanced(
+ UUID_INCLUDE_DIR
+ UUID_LIBRARY
+)
if (SAFEC_FOUND)
check_library_exists (${SAFEC_LIBRARIES} printf_s "" HAVE_SAFEC)
endif()
+
+if (UUID_FOUND)
+ check_library_exists ("${UUID_LIBRARY}" uuid_parse "" HAVE_UUID)
+endif()
TEST_GROUP(file_connector_module)
{
- void setup() override
- {
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- }
-
- void teardown() override
- {
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(file_connector_module, test)
using namespace snort;
extern const BaseApi* file_connector;
-ConnectorApi* fc_api = nullptr;
+const ConnectorApi* fc_api = nullptr;
FileConnectorConfig connector_tx_text_config;
FileConnectorConfig connector_rx_text_config;
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- fc_api = (ConnectorApi*)file_connector;
+ fc_api = (const ConnectorApi*) file_connector;
connector_tx_text_config.direction = Connector::CONN_TRANSMIT;
connector_tx_text_config.connector_name = "tx_t";
connector_tx_text_config.name = "tx_t";
connector_rx_binary_config.name = "rx_t";
connector_rx_binary_config.text_format = false;
}
-
- void teardown() override
- {
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(file_connector, mod_ctor_dtor)
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- fc_api = (ConnectorApi*)file_connector;
+ fc_api = (const ConnectorApi*) file_connector;
connector_tx_text_config.direction = Connector::CONN_TRANSMIT;
connector_tx_text_config.connector_name = "tx_t";
connector_tx_text_config.name = "tx_t";
fc_api->tterm(connector_rb);
fc_api->dtor(connector_common);
file_connector->mod_dtor(mod);
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- fc_api = (ConnectorApi*)file_connector;
+ fc_api = (const ConnectorApi*) file_connector;
connector_tx_text_config.direction = Connector::CONN_TRANSMIT;
connector_tx_text_config.connector_name = "tx_t";
connector_tx_text_config.name = "tx_t";
connector_rx_text_config.text_format = true;
CHECK(file_connector != nullptr);
}
-
- void teardown() override
- {
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(file_connector_text, alloc_transmit_rename_receive_discard)
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- fc_api = (ConnectorApi*)file_connector;
+ fc_api = (const ConnectorApi*) file_connector;
connector_tx_binary_config.direction = Connector::CONN_TRANSMIT;
connector_tx_binary_config.connector_name = "tx_b";
connector_tx_binary_config.name = "tx_b";
connector_rx_binary_config.text_format = false;
CHECK(file_connector != nullptr);
}
-
- void teardown() override
- {
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(file_connector_binary, alloc_transmit_rename_receive_discard)
TEST_GROUP(file_connector_msg_handle)
{
- void setup() override
- {
- }
-
- void teardown() override
- {
- }
};
TEST(file_connector_msg_handle, test)
TEST_GROUP(tcp_connector_module)
{
- void setup() override
- {
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- }
-
- void teardown() override
- {
- MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(tcp_connector_module, test_call)
using namespace snort;
extern const BaseApi* tcp_connector;
-ConnectorApi* tcpc_api = nullptr;
+const ConnectorApi* tcpc_api = nullptr;
static unsigned s_instance = 0;
static unsigned char* s_rec_message = nullptr;
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
connector_config.direction = Connector::CONN_DUPLEX;
connector_config.connector_name = "tcp";
connector_config.address = "127.0.0.1";
connector_config.setup = TcpConnectorConfig::Setup::CALL;
connector_config.async_receive = false;
}
-
- void teardown() override
- {
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST(tcp_connector, mod_ctor_dtor)
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
connector_config.connector_name = "tcp";
CHECK(connector == nullptr);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
TEST_GROUP(tcp_connector_call_other)
{
- void setup() override
- {
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- }
-
- void teardown() override
- {
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
- }
};
TEST_GROUP(tcp_connector_answer_error)
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
connector_config.connector_name = "tcp-a";
tcpc_api->tterm(connector);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
TEST(tcp_connector_call_other, bad_setup)
{
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
s_instance = 0;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
void setup() override
{
// FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
+ tcpc_api = (const ConnectorApi*) tcp_connector;
s_instance = 0;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
tcpc_api->tterm(connector);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
+ MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
s_instance = 0;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
tcpc_api->tterm(connector);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
s_instance = 0;
set_normal_status();
connector_config.direction = Connector::CONN_DUPLEX;
tcpc_api->tterm(connector);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
{
void setup() override
{
- // FIXIT-RC workaround for CppUTest mem leak detector issue
- //MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
s_instance = 0;
set_normal_status();
- tcpc_api = (ConnectorApi*)tcp_connector;
+ tcpc_api = (const ConnectorApi*) tcp_connector;
connector_config.direction = Connector::CONN_DUPLEX;
connector_config.connector_name = "tcp-a";
connector_config.base_port = 20000;
tcpc_api->tterm(connector);
tcpc_api->dtor(connector_common);
tcp_connector->mod_dtor(mod);
- //MemoryLeakWarningPlugin::turnOnNewDeleteOverloads();
}
};
TEST_GROUP(tcp_connector_msg_handle)
{
- void setup() override
- {
- }
-
- void teardown() override
- {
- }
};
TEST(tcp_connector_msg_handle, test)
int main(int argc, char** argv)
{
- MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
int return_value = CommandLineTestRunner::RunAllTests(argc, argv);
return return_value;
}
0,
10
},
- 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
+ { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }
};
TEST_GROUP(flow_ha_state_test)
{
- void setup() override { }
- void teardown() override { }
};
TEST(flow_ha_state_test, timing_test)
public:
DummySession(Flow* f) : Session(f) { }
void clear() override { }
- ~DummySession() { }
+ ~DummySession() override = default;
};
//-------------------------------------------------------------------------
}
};
-void try_reload_prune(bool is_not_locked)
+static void try_reload_prune(bool is_not_locked)
{
if ( is_not_locked )
{
int main(int argc, char** argv)
{
- // Use this if you want to turn off memory checks entirely:
- // MemoryLeakWarningPlugin::turnOffNewDeleteOverloads();
-
return CommandLineTestRunner::RunAllTests(argc, argv);
}
}
mod->end(ips_regex->name, 0, nullptr);
- IpsApi* api = (IpsApi*)ips_regex;
+ const IpsApi* api = (const IpsApi*) ips_regex;
IpsOption* opt = api->ctor(mod, nullptr);
return opt;
TEST(ips_regex_base, ips_option)
{
- const IpsApi* ips_api = (IpsApi*)ips_regex;
+ const IpsApi* ips_api = (const IpsApi*) ips_regex;
CHECK(ips_api->ctor);
CHECK(ips_api->dtor);
}
void teardown() override
{
- IpsApi* api = (IpsApi*)ips_regex;
+ const IpsApi* api = (const IpsApi*) ips_regex;
api->dtor(opt);
if ( do_cleanup )
scratcher->cleanup(snort_conf);
do_cleanup = scratcher->setup(snort_conf);
- IpsApi* api = (IpsApi*)ips_regex;
+ const IpsApi* api = (const IpsApi*) ips_regex;
api->dtor(opt2);
}
do_cleanup = scratcher->setup(snort_conf);
- IpsApi* api = (IpsApi*)ips_regex;
+ const IpsApi* api = (const IpsApi*) ips_regex;
api->dtor(opt2);
}
do_cleanup = scratcher->setup(snort_conf);
Packet pkt;
- pkt.data = (uint8_t*)"* foo stew *";
- pkt.dsize = strlen((char*)pkt.data);
+ pkt.data = (const uint8_t*) "* foo stew *";
+ pkt.dsize = strlen((const char*) pkt.data);
Cursor c(&pkt);
CHECK(opt->eval(c, &pkt) == IpsOption::MATCH);
- CHECK(!strcmp((char*)c.start(), " stew *"));
+ CHECK(!strcmp((const char*) c.start(), " stew *"));
CHECK(opt->retry(c));
}
do_cleanup = scratcher->setup(snort_conf);
Packet pkt;
- pkt.data = (uint8_t*)"* foo stew *";
- pkt.dsize = strlen((char*)pkt.data);
+ pkt.data = (const uint8_t*) "* foo stew *";
+ pkt.dsize = strlen((const char*) pkt.data);
Cursor c(&pkt);
c.set_delta(3);
}
void teardown() override
{
- IpsApi* api = (IpsApi*)ips_regex;
+ const IpsApi* api = (const IpsApi*) ips_regex;
api->dtor(opt);
if ( do_cleanup )
scratcher->cleanup(snort_conf);
do_cleanup = scratcher->setup(snort_conf);
Packet pkt;
- pkt.data = (uint8_t*)"* foo stew *";
- pkt.dsize = strlen((char*)pkt.data);
+ pkt.data = (const uint8_t*)"* foo stew *";
+ pkt.dsize = strlen((const char*) pkt.data);
Cursor c(&pkt);
c.add_pos(3);
RetryQueue(unsigned interval_ms)
{
assert(interval_ms > 0);
- interval = { interval_ms / 1000, (interval_ms % 1000) * 1000 };
+ interval = { interval_ms / 1000, static_cast<suseconds_t>((interval_ms % 1000) * 1000) };
}
~RetryQueue()
struct timeval now, increment;
unsigned int timeout = SnortConfig::get_conf()->daq_config->timeout;
packet_gettimeofday(&now);
- increment = { timeout / 1000, (timeout % 1000) * 1000 };
+ increment = { timeout / 1000, static_cast<suseconds_t>((timeout % 1000) * 1000) };
timeradd(&now, &increment, &now);
packet_time_update(&now);
RulePtr(const Module* m, const RuleMap* r) : mod(m), rule(r) { }
- bool operator< (RulePtr& rhs) const
+ bool operator< (const RulePtr& rhs) const
{
if ( mod->get_gid() != rhs.mod->get_gid() )
return mod->get_gid() < rhs.mod->get_gid();
path = url + host_len;
}
- patterns[0].pattern = (uint8_t*)host;
+ patterns[0].pattern = (const uint8_t*)host;
patterns[0].patternSize = host_len;
patterns[1].pattern = (const uint8_t*)path;
patterns[1].patternSize = path_len;
#include "service_inspectors/http_inspect/http_msg_header.h"
class Inspector;
-struct ThirdPartyAppIdContext;
+class ThirdPartyAppIdContext;
ThirdPartyAppIdContext* tp_appid_ctxt = nullptr;
// Stubs for service_plugins/service_discovery.h
int ServiceDiscovery::incompatible_data(AppIdSession&, const Packet*, AppidSessionDirection, ServiceDetector*)
{
- return 0;
+ return 0;
}
int ServiceDiscovery::fail_service(AppIdSession&, const Packet*, AppidSessionDirection, ServiceDetector*, ServiceDiscoveryState*)
{
- return 0;
+ return 0;
}
-void mock_init_appid_pegs()
+inline void mock_init_appid_pegs()
{
AppIdPegCounts::init_pegs();
}
-void mock_cleanup_appid_pegs()
+inline void mock_cleanup_appid_pegs()
{
AppIdPegCounts::cleanup_pegs();
AppIdPegCounts::cleanup_peg_info();
public:
MockAppIdDnsSession()
{
- host = (char*)APPID_ID_UT_DNS_HOST;
+ host = (const char*) APPID_ID_UT_DNS_HOST;
host_offset = APPID_UT_DNS_HOST_OFFSET;
record_type = APPID_UT_DNS_PATTERN_CNAME_REC;
response_type = APPID_UT_DNS_NOERROR;
cerr << WhereMacro << endl;
}
- ~ThirdPartyAppIdContextImpl()
+ ~ThirdPartyAppIdContextImpl() override
{
cerr << WhereMacro << endl;
}
#include "catch/snort_catch.h"
#endif
+// FIXIT-M workaround for OS X, logger should be using sfip anyway
+#ifndef s6_addr32
+#define s6_addr32 __u6_addr.__u6_addr32
+#endif
+
using namespace snort;
bool RnaLogger::log(uint16_t type, uint16_t subtype, const Packet* p, RnaTracker* ht,
{
const SfIp* src = p->ptrs.ip_api.get_src();
const SfIp* dst = p->ptrs.ip_api.get_dst();
- if ( !src->is_set() and IN6_IS_ADDR_MULTICAST(dst->get_ip6_ptr()) and
+ // FIXIT-M this code checking the v6 address unconditionally is almost certainly wrong,
+ // especially since it's looking for an IPv4-specific protocol
+ if ( !src->is_set() and ((const uint8_t *) dst->get_ip6_ptr())[0] == 0XFF and
p->ptrs.sp == 68 and p->ptrs.dp == 67 )
return false; // skip BOOTP
}
void RnaPnd::discover_network_udp(const Packet* p)
{
const auto& ip_api = p->ptrs.ip_api;
- if ( IN6_IS_ADDR_MULTICAST(ip_api.get_dst()->get_ip6_ptr()) )
+ // FIXIT-L this used to be IN6_IS_ADDR_MULTICAST(), SfIp should implement something comparable
+ if ( ((const uint8_t *) ip_api.get_dst()->get_ip6_ptr())[0] == 0XFF )
discover_network(p, 0);
else
discover_network(p, ip_api.ttl());
TEST(mpse_hs_base, mpse)
{
- const MpseApi* mpse_api = (MpseApi*)se_hyperscan;
+ const MpseApi* mpse_api = (const MpseApi*)se_hyperscan;
CHECK(mpse_api->flags == (MPSE_REGEX | MPSE_MTBLD));
CHECK(mpse_api->ctor);
Module* mod = nullptr;
Mpse* hs = nullptr;
bool do_cleanup = false;
- const MpseApi* mpse_api = (MpseApi*)se_hyperscan;
+ const MpseApi* mpse_api = (const MpseApi*)se_hyperscan;
void setup() override
{
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo", 3, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)"foo", 3, match, nullptr, &state) == 0);
CHECK(hits == 0);
}
{
Mpse::PatternDescriptor desc;
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"foo", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"foo", 3, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 1);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo", 3, match, nullptr, &state) == 1);
+ CHECK(hs->search((const uint8_t*)"foo", 3, match, nullptr, &state) == 1);
CHECK(hits == 1);
}
{
Mpse::PatternDescriptor desc(true, true, false);
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"foo", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"foo", 3, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 1);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo", 3, match, nullptr, &state) == 1);
- CHECK(hs->search((uint8_t*)"fOo", 3, match, nullptr, &state) == 1);
+ CHECK(hs->search((const uint8_t*)"foo", 3, match, nullptr, &state) == 1);
+ CHECK(hs->search((const uint8_t*)"fOo", 3, match, nullptr, &state) == 1);
CHECK(hits == 2);
}
{
Mpse::PatternDescriptor desc(false, true, false);
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"foo", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"foo", 3, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 1);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo", 3, match, nullptr, &state) == 1);
- CHECK(hs->search((uint8_t*)"fOo", 3, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)"foo", 3, match, nullptr, &state) == 1);
+ CHECK(hs->search((const uint8_t*)"fOo", 3, match, nullptr, &state) == 0);
CHECK(hits == 1);
}
{
Mpse::PatternDescriptor desc;
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"foo", 3, desc, s_user) == 0);
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"bar", 3, desc, s_user) == 0);
- CHECK(hs->add_pattern(nullptr, (uint8_t*)"baz", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"foo", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"bar", 3, desc, s_user) == 0);
+ CHECK(hs->add_pattern(nullptr, (const uint8_t*)"baz", 3, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 3);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo bar baz", 11, match, nullptr, &state) == 3);
+ CHECK(hs->search((const uint8_t*)"foo bar baz", 11, match, nullptr, &state) == 3);
CHECK(hits == 3);
}
Mpse::PatternDescriptor desc;
CHECK(hs->add_pattern(
- nullptr, (uint8_t*)"(foo)|(bar)|(baz)", 17, desc, s_user) == 0);
+ nullptr, (const uint8_t*)"(foo)|(bar)|(baz)", 17, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 1);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)"foo bar baz", 11, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)"foo bar baz", 11, match, nullptr, &state) == 0);
CHECK(hits == 3);
}
// from sid 23286
CHECK(hs->add_pattern(
- nullptr, (uint8_t*)"\\.definition\\s*\\(", 21, desc, s_user) == 0);
+ nullptr, (const uint8_t*)"\\.definition\\s*\\(", 21, desc, s_user) == 0);
CHECK(hs->prep_patterns(snort_conf) == 0);
CHECK(hs->get_pattern_count() == 1);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs->search((uint8_t*)":definition(", 12, match, nullptr, &state) == 0);
- CHECK(hs->search((uint8_t*)".definition(", 12, match, nullptr, &state) == 0);
- CHECK(hs->search((uint8_t*)".definition (", 13, match, nullptr, &state) == 0);
- CHECK(hs->search((uint8_t*)".definition\r\n(", 16, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)":definition(", 12, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)".definition(", 12, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)".definition (", 13, match, nullptr, &state) == 0);
+ CHECK(hs->search((const uint8_t*)".definition\r\n(", 16, match, nullptr, &state) == 0);
CHECK(hits == 4);
}
#endif
Mpse* hs1 = nullptr;
Mpse* hs2 = nullptr;
bool do_cleanup = false;
- const MpseApi* mpse_api = (MpseApi*)se_hyperscan;
+ const MpseApi* mpse_api = (const MpseApi*)se_hyperscan;
void setup() override
{
{
Mpse::PatternDescriptor desc;
- CHECK(hs1->add_pattern(nullptr, (uint8_t*)"uba", 3, desc, s_user) == 0);
- CHECK(hs2->add_pattern(nullptr, (uint8_t*)"tuba", 4, desc, s_user) == 0);
+ CHECK(hs1->add_pattern(nullptr, (const uint8_t*)"uba", 3, desc, s_user) == 0);
+ CHECK(hs2->add_pattern(nullptr, (const uint8_t*)"tuba", 4, desc, s_user) == 0);
CHECK(hs1->prep_patterns(snort_conf) == 0);
CHECK(hs2->prep_patterns(snort_conf) == 0);
do_cleanup = scratcher->setup(snort_conf);
int state = 0;
- CHECK(hs1->search((uint8_t*)"fubar", 5, match, nullptr, &state) == 1 );
+ CHECK(hs1->search((const uint8_t*)"fubar", 5, match, nullptr, &state) == 1 );
CHECK(hits == 1);
- CHECK(hs2->search((uint8_t*)"fubar", 5, match, nullptr, &state) == 0);
+ CHECK(hs2->search((const uint8_t*)"fubar", 5, match, nullptr, &state) == 0);
CHECK(hits == 1);
- CHECK(hs1->search((uint8_t*)"snafu", 5, match, nullptr, &state) == 0);
+ CHECK(hs1->search((const uint8_t*)"snafu", 5, match, nullptr, &state) == 0);
CHECK(hits == 1);
}
{ return 0; }
void LogValue(const char*, const char*, FILE*) { }
-SO_PUBLIC void LogMessage(const char*, ...) { }
+void LogMessage(const char*, ...) { }
[[noreturn]] void FatalError(const char*,...) { exit(1); }
void LogCount(char const*, uint64_t, FILE*) { }
void LogStat(const char*, double, FILE*) { }
const MpseApi* api;
if ( !strcmp(type, "ac_bnfa") )
- api = (MpseApi*)se_ac_bnfa;
+ api = (const MpseApi*) se_ac_bnfa;
else if ( !strcmp(type, "ac_full") )
- api = (MpseApi*)se_ac_full;
+ api = (const MpseApi*) se_ac_full;
else
return nullptr;
size_t str_to_hash(unsigned char const*, size_t) { return 0; }
}
-THREAD_LOCAL PegCount HttpModule::peg_counts[1];
+THREAD_LOCAL PegCount HttpModule::peg_counts[PEG_COUNT_MAX] = { };
class HttpUnitTestSetup
{
class SipSplitterUT
{
public:
- SipSplitterUT(const SipSplitter& ss) : ss(ss) { };
+ SipSplitterUT(const SipSplitter& ss) : ss(ss) { }
bool splitter_is_paf()
{