From: Shravan Rangarajuvenkata (shrarang) Date: Thu, 16 Jan 2020 20:40:53 +0000 (+0000) Subject: Merge pull request #1944 in SNORT/snort3 from ~SHRARANG/snort3:appid_nuke_tp_compile_... X-Git-Tag: 3.0.0-268~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b342cb2a38758723ac349b91d3ccb390043e7086;p=thirdparty%2Fsnort3.git Merge pull request #1944 in SNORT/snort3 from ~SHRARANG/snort3:appid_nuke_tp_compile_flag to master Squashed commit of the following: commit a8822d9513a9a5783c4e9eed53bc4d0e1a4a670f Author: Shravan Rangaraju Date: Wed Jan 15 13:28:50 2020 -0500 appid: get rid of ENABLE_APPID_THIRD_PARTY flag --- diff --git a/cmake/create_options.cmake b/cmake/create_options.cmake index 9f0a83c98..9c563d99a 100644 --- a/cmake/create_options.cmake +++ b/cmake/create_options.cmake @@ -16,7 +16,6 @@ option ( ENABLE_STATIC_DAQ "link static DAQ modules" ON ) # features option ( ENABLE_SHELL "enable shell support" OFF ) -option ( ENABLE_APPID_THIRD_PARTY "enable third party appid" OFF ) option ( ENABLE_UNIT_TESTS "enable unit tests" OFF ) option ( ENABLE_PIGLET "enable piglet test harness" OFF ) diff --git a/cmake/create_pkg_config.cmake b/cmake/create_pkg_config.cmake index 2faf7b965..b97ed5299 100644 --- a/cmake/create_pkg_config.cmake +++ b/cmake/create_pkg_config.cmake @@ -28,10 +28,6 @@ if(DNET_INCLUDE_DIR) set(DNET_CPPFLAGS "-I${DNET_INCLUDE_DIR}") endif() -if(ENABLE_APPID_THIRD_PARTY) - set(TP_APPID_CPPFLAGS "-DENABLE_APPID_THIRD_PARTY") -endif() - if(ENABLE_DEEP_PROFILING) set(DEEP_PROFILING_CPPFLAGS "-DDEEP_PROFILING") endif() diff --git a/config.cmake.h.in b/config.cmake.h.in index a4e20b6c3..c355f4aa4 100644 --- a/config.cmake.h.in +++ b/config.cmake.h.in @@ -61,9 +61,6 @@ /* include internal inspectors in binary */ #cmakedefine STATIC_SEARCH_ENGINES 1 -/* enable third party appid */ -#cmakedefine ENABLE_APPID_THIRD_PARTY 1 - /* enable unit tests */ #cmakedefine UNIT_TEST 1 diff --git a/src/network_inspectors/appid/CMakeLists.txt b/src/network_inspectors/appid/CMakeLists.txt index 001dc3ab8..84a220004 100644 --- a/src/network_inspectors/appid/CMakeLists.txt +++ b/src/network_inspectors/appid/CMakeLists.txt @@ -1,13 +1,3 @@ -if ( ENABLE_APPID_THIRD_PARTY ) - set (APPID_TP_INCLUDES - tp_appid_module_api.h - tp_appid_session_api.h - tp_appid_types.h - http_xff_fields.h - ) -endif() - - set (APPID_INCLUDES appid_api.h appid_dns_session.h @@ -16,7 +6,9 @@ set (APPID_INCLUDES appid_types.h application_ids.h http_xff_fields.h - ${APPID_TP_INCLUDES} + tp_appid_module_api.h + tp_appid_session_api.h + tp_appid_types.h ) set ( APPID_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} ) @@ -152,15 +144,6 @@ set ( UTIL_APPID_SOURCES appid_utils/sf_multi_mpse.h ) -if ( ENABLE_APPID_THIRD_PARTY ) - set( APPID_TP_SOURCES - tp_lib_handler.cc - tp_appid_utils.cc - tp_lib_handler.h - tp_appid_types.h - ) -endif() - set ( APPID_SOURCES app_forecast.cc app_forecast.h @@ -212,7 +195,10 @@ set ( APPID_SOURCES service_state.cc service_state.h http_xff_fields.h - ${APPID_TP_SOURCES} + tp_appid_utils.cc + tp_lib_handler.cc + tp_lib_handler.h + tp_appid_types.h ) #if (STATIC_INSPECTORS) diff --git a/src/network_inspectors/appid/appid_api.cc b/src/network_inspectors/appid/appid_api.cc index 67b3206d4..ebdc1b19a 100644 --- a/src/network_inspectors/appid/appid_api.cc +++ b/src/network_inspectors/appid/appid_api.cc @@ -33,9 +33,7 @@ #include "appid_session_api.h" #include "app_info_table.h" #include "service_plugins/service_ssl.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_appid_session_api.h" -#endif using namespace snort; @@ -155,10 +153,8 @@ uint32_t AppIdApi::consume_ha_state(Flow& flow, const uint8_t* buf, uint8_t, IpP asd->service_disco_state = APPID_DISCO_STATE_FINISHED; asd->client_disco_state = APPID_DISCO_STATE_FINISHED; -#ifdef ENABLE_APPID_THIRD_PARTY if (asd->tpsession) asd->tpsession->set_state(TP_STATE_HA); -#endif } } @@ -169,9 +165,7 @@ uint32_t AppIdApi::consume_ha_state(Flow& flow, const uint8_t* buf, uint8_t, IpP if((appHA->flags & APPID_HA_FLAGS_TP_DONE) && asd->tpsession) { -#ifdef ENABLE_APPID_THIRD_PARTY asd->tpsession->set_state(TP_STATE_TERMINATED); -#endif asd->set_session_flags(APPID_SESSION_NO_TPI); } diff --git a/src/network_inspectors/appid/appid_config.cc b/src/network_inspectors/appid/appid_config.cc index 79a7d7714..aa09a70f5 100644 --- a/src/network_inspectors/appid/appid_config.cc +++ b/src/network_inspectors/appid/appid_config.cc @@ -42,10 +42,8 @@ #include "service_plugins/service_ssl.h" #include "detector_plugins/detector_dns.h" #include "target_based/snort_protocols.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_appid_utils.h" #include "tp_lib_handler.h" -#endif using namespace snort; @@ -53,9 +51,7 @@ SnortProtocolId snortId_for_unsynchronized; SnortProtocolId snortId_for_ftp_data; SnortProtocolId snortId_for_http2; -#ifdef ENABLE_APPID_THIRD_PARTY ThirdPartyAppIdContext* AppIdContext::tp_appid_ctxt = nullptr; -#endif OdpContext* AppIdContext::odp_ctxt = nullptr; static void map_app_names_to_snort_ids(SnortConfig* sc) @@ -114,21 +110,18 @@ bool AppIdContext::init_appid(SnortConfig* sc) once = true; } -#ifdef ENABLE_APPID_THIRD_PARTY // do not reload third party on reload_config() if (!tp_appid_ctxt) tp_appid_ctxt = TPLibHandler::create_tp_appid_ctxt(*config, *odp_ctxt); -#endif + map_app_names_to_snort_ids(sc); return true; } -#ifdef ENABLE_APPID_THIRD_PARTY void AppIdContext::create_tp_appid_ctxt() { tp_appid_ctxt = TPLibHandler::create_tp_appid_ctxt(*config, *odp_ctxt); } -#endif AppId AppIdContext::get_port_service_id(IpProtocol proto, uint16_t port) { diff --git a/src/network_inspectors/appid/appid_config.h b/src/network_inspectors/appid/appid_config.h index f23a3f03c..8bf22e5b4 100644 --- a/src/network_inspectors/appid/appid_config.h +++ b/src/network_inspectors/appid/appid_config.h @@ -32,9 +32,7 @@ #include "sfip/sf_ip.h" #include "target_based/snort_protocols.h" #include "utils/sflsq.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_appid_module_api.h" -#endif #include "application_ids.h" #include "host_port_app_cache.h" @@ -135,11 +133,8 @@ public: ~AppIdContext() { } OdpContext& get_odp_ctxt() const - { - return *odp_ctxt; - } + { return *odp_ctxt; } -#ifdef ENABLE_APPID_THIRD_PARTY ThirdPartyAppIdContext* get_tp_appid_ctxt() const { return tp_appid_ctxt; } @@ -147,8 +142,6 @@ public: { delete tp_appid_ctxt; } void create_tp_appid_ctxt(); -#endif - bool init_appid(snort::SnortConfig*); static void pterm(); void show(); @@ -170,9 +163,7 @@ private: // removed from AppIdContext::pterm static AppInfoManager& app_info_mgr; static OdpContext* odp_ctxt; -#ifdef ENABLE_APPID_THIRD_PARTY static ThirdPartyAppIdContext* tp_appid_ctxt; -#endif }; #endif diff --git a/src/network_inspectors/appid/appid_discovery.cc b/src/network_inspectors/appid/appid_discovery.cc index 634b7e65f..cfaf896c3 100644 --- a/src/network_inspectors/appid/appid_discovery.cc +++ b/src/network_inspectors/appid/appid_discovery.cc @@ -45,10 +45,8 @@ #include "detector_plugins/http_url_patterns.h" #include "host_port_app_cache.h" #include "service_plugins/service_discovery.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_lib_handler.h" #include "tp_appid_utils.h" -#endif using namespace snort; AppIdDiscovery::AppIdDiscovery() @@ -136,12 +134,8 @@ int AppIdDiscovery::add_service_port(AppIdDetector*, const ServiceDetectorPort&) return APPID_EINVALID; } -#ifdef ENABLE_APPID_THIRD_PARTY void AppIdDiscovery::do_application_discovery(Packet* p, AppIdInspector& inspector, ThirdPartyAppIdContext* tp_appid_ctxt) -#else - void AppIdDiscovery::do_application_discovery(Packet* p, AppIdInspector& inspector) -#endif { IpProtocol protocol = IpProtocol::PROTO_NOT_SET; AppidSessionDirection direction = APP_ID_FROM_INITIATOR; @@ -155,13 +149,8 @@ void AppIdDiscovery::do_application_discovery(Packet* p, AppIdInspector& inspect AppId payload_id = APP_ID_NONE; AppId misc_id = APP_ID_NONE; AppidChangeBits change_bits; -#ifdef ENABLE_APPID_THIRD_PARTY bool is_discovery_done = do_discovery(p, *asd, protocol, direction, service_id, client_id, payload_id, misc_id, change_bits, tp_appid_ctxt); -#else - bool is_discovery_done = do_discovery(p, *asd, protocol, direction, service_id, - client_id, payload_id, misc_id, change_bits); -#endif do_post_discovery(p, *asd, direction, is_discovery_done, service_id, client_id, payload_id, misc_id, change_bits); @@ -739,10 +728,8 @@ bool AppIdDiscovery::do_host_port_based_discovery(Packet* p, AppIdSession& asd, asd.service_disco_state = APPID_DISCO_STATE_FINISHED; asd.client_disco_state = APPID_DISCO_STATE_FINISHED; asd.set_session_flags(APPID_SESSION_SERVICE_DETECTED); -#ifdef ENABLE_APPID_THIRD_PARTY if (asd.tpsession) asd.tpsession->reset(); -#endif if ( asd.payload.get_id() == APP_ID_NONE) asd.payload.set_id(APP_ID_UNKNOWN); } @@ -787,16 +774,10 @@ static inline bool is_check_host_cache_valid(AppIdSession& asd, AppId service_id return false; } -#ifdef ENABLE_APPID_THIRD_PARTY bool AppIdDiscovery::do_discovery(Packet* p, AppIdSession& asd, IpProtocol protocol, AppidSessionDirection direction, AppId& service_id, AppId& client_id, AppId& payload_id, AppId& misc_id, AppidChangeBits& change_bits, ThirdPartyAppIdContext* tp_appid_ctxt) -#else -bool AppIdDiscovery::do_discovery(Packet* p, AppIdSession& asd, - IpProtocol protocol, AppidSessionDirection direction, AppId& service_id, AppId& client_id, - AppId& payload_id, AppId& misc_id, AppidChangeBits& change_bits) -#endif { bool is_discovery_done = false; @@ -827,7 +808,6 @@ bool AppIdDiscovery::do_discovery(Packet* p, AppIdSession& asd, } // Third party detection -#ifdef ENABLE_APPID_THIRD_PARTY if (tp_appid_ctxt) { // Skip third-party inspection for sessions using old config @@ -835,7 +815,6 @@ bool AppIdDiscovery::do_discovery(Packet* p, AppIdSession& asd, is_discovery_done = do_tp_discovery(*tp_appid_ctxt, asd, protocol, p, direction, change_bits); } -#endif // Port-based service detection do_port_based_discovery(p, asd, protocol, direction); @@ -986,7 +965,6 @@ void AppIdDiscovery::do_post_discovery(Packet* p, AppIdSession& asd, } } -#ifdef ENABLE_APPID_THIRD_PARTY if (asd.get_session_flags(APPID_SESSION_OOO_CHECK_TP) and asd.tpsession and (asd.scan_flags & SCAN_HOST_PORT_FLAG) and (service_id or payload_id)) { @@ -999,7 +977,6 @@ void AppIdDiscovery::do_post_discovery(Packet* p, AppIdSession& asd, appidDebug->get_debug_session()); } } -#endif asd.set_application_ids(service_id, client_id, payload_id, misc_id, change_bits); publish_appid_event(change_bits, p->flow); diff --git a/src/network_inspectors/appid/appid_discovery.h b/src/network_inspectors/appid/appid_discovery.h index 4dc0e877f..02e4cd7ab 100644 --- a/src/network_inspectors/appid/appid_discovery.h +++ b/src/network_inspectors/appid/appid_discovery.h @@ -112,12 +112,8 @@ public: int position, unsigned nocase); virtual int add_service_port(AppIdDetector*, const ServiceDetectorPort&); -#ifdef ENABLE_APPID_THIRD_PARTY static void do_application_discovery(snort::Packet* p, AppIdInspector&, ThirdPartyAppIdContext*); -#else - static void do_application_discovery(snort::Packet* p, AppIdInspector&); -#endif static void publish_appid_event(AppidChangeBits&, snort::Flow*); AppIdDetectors* get_tcp_detectors() @@ -142,16 +138,10 @@ protected: private: static bool do_pre_discovery(snort::Packet* p, AppIdSession** p_asd, AppIdInspector& inspector, IpProtocol& protocol, AppidSessionDirection& direction); -#ifdef ENABLE_APPID_THIRD_PARTY static bool do_discovery(snort::Packet* p, AppIdSession& asd, IpProtocol protocol, AppidSessionDirection direction, AppId& service_id, AppId& client_id, AppId& payload_id, AppId& misc_id, AppidChangeBits& change_bits, ThirdPartyAppIdContext* tp_appid_ctxt); -#else - static bool do_discovery(snort::Packet* p, AppIdSession& asd, - IpProtocol protocol, AppidSessionDirection direction, AppId& service_id, AppId& client_id, - AppId& payload_id, AppId& misc_id, AppidChangeBits& change_bits); -#endif static void do_post_discovery(snort::Packet* p, AppIdSession& asd, AppidSessionDirection direction, bool is_discovery_done, AppId service_id, AppId client_id, AppId payload_id, AppId misc_id, AppidChangeBits& change_bits); diff --git a/src/network_inspectors/appid/appid_http_session.cc b/src/network_inspectors/appid/appid_http_session.cc index db8130567..3e42e2c12 100644 --- a/src/network_inspectors/appid/appid_http_session.cc +++ b/src/network_inspectors/appid/appid_http_session.cc @@ -33,9 +33,7 @@ #include "appid_session.h" #include "detector_plugins/http_url_patterns.h" #include "http_xff_fields.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_lib_handler.h" -#endif #define PORT_MAX 65535 using namespace snort; @@ -225,10 +223,8 @@ int AppIdHttpSession::initial_chp_sweep(ChpMatchDescriptor& cmd) && !asd.get_session_flags(APPID_SESSION_SPDY_SESSION)) { asd.clear_session_flags(APPID_SESSION_CHP_INSPECTING); -#ifdef ENABLE_APPID_THIRD_PARTY if (asd.tpsession) asd.tpsession->clear_attr(TP_ATTR_CONTINUE_MONITORING); -#endif } } chp_candidate = cah->appIdInstance; @@ -236,7 +232,6 @@ int AppIdHttpSession::initial_chp_sweep(ChpMatchDescriptor& cmd) num_matches = cah->num_matches; num_scans = cah->num_scans; -#ifdef ENABLE_APPID_THIRD_PARTY if (asd.tpsession) { if ((ptype_scan_counts[RSP_CONTENT_TYPE_FID])) @@ -254,7 +249,6 @@ int AppIdHttpSession::initial_chp_sweep(ChpMatchDescriptor& cmd) else asd.tpsession->clear_attr(TP_ATTR_COPY_RESPONSE_BODY); } -#endif return 1; } diff --git a/src/network_inspectors/appid/appid_inspector.cc b/src/network_inspectors/appid/appid_inspector.cc index 7699b0aef..116cb7a9e 100644 --- a/src/network_inspectors/appid/appid_inspector.cc +++ b/src/network_inspectors/appid/appid_inspector.cc @@ -49,15 +49,11 @@ #include "lua_detector_module.h" #include "service_plugins/service_discovery.h" #include "service_plugins/service_ssl.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_appid_module_api.h" #include "tp_lib_handler.h" -#endif using namespace snort; -#ifdef ENABLE_APPID_THIRD_PARTY THREAD_LOCAL ThirdPartyAppIdContext* tp_appid_thread_ctxt = nullptr; -#endif static THREAD_LOCAL PacketTracer::TracerMute appid_mute; // FIXIT-L - appid cleans up openssl now as it is the primary (only) user... eventually this @@ -119,9 +115,7 @@ bool AppIdInspector::configure(SnortConfig* sc) ctxt->init_appid(sc); -#ifdef ENABLE_APPID_THIRD_PARTY if (!ctxt->get_tp_appid_ctxt()) -#endif { DataBus::subscribe_global(HTTP_REQUEST_HEADER_EVENT_KEY, new HttpEventHandler( HttpEventHandler::REQUEST_EVENT), sc); @@ -171,11 +165,9 @@ void AppIdInspector::tterm() AppIdServiceState::clean(); delete appidDebug; appidDebug = nullptr; -#ifdef ENABLE_APPID_THIRD_PARTY ThirdPartyAppIdContext* tp_appid_ctxt = ctxt->get_tp_appid_ctxt(); if (tp_appid_ctxt) tp_appid_ctxt->tfini(); -#endif } void AppIdInspector::eval(Packet* p) @@ -183,7 +175,6 @@ void AppIdInspector::eval(Packet* p) Profile profile(appid_perf_stats); appid_stats.packets++; -#ifdef ENABLE_APPID_THIRD_PARTY ThirdPartyAppIdContext* tp_appid_ctxt = ctxt->get_tp_appid_ctxt(); if (tp_appid_thread_ctxt != tp_appid_ctxt) { @@ -197,15 +188,10 @@ void AppIdInspector::eval(Packet* p) tp_appid_ctxt->tinit(); tp_appid_thread_ctxt = tp_appid_ctxt; } -#endif if (p->flow) { -#ifdef ENABLE_APPID_THIRD_PARTY AppIdDiscovery::do_application_discovery(p, *this, tp_appid_thread_ctxt); -#else - AppIdDiscovery::do_application_discovery(p, *this); -#endif // FIXIT-L tag verdict reason as appid for daq if (PacketTracer::is_active()) add_appid_to_packet_trace(*p->flow); @@ -231,9 +217,7 @@ static void mod_dtor(Module* m) static void appid_inspector_pinit() { AppIdSession::init(); -#ifdef ENABLE_APPID_THIRD_PARTY TPLibHandler::get(); -#endif } static void appid_inspector_pterm() @@ -248,9 +232,7 @@ static void appid_inspector_pterm() AppIdContext::pterm(); //end of 'FIXIT-M: RELOAD' comment above openssl_cleanup(); -#ifdef ENABLE_APPID_THIRD_PARTY TPLibHandler::pfini(); -#endif } static void appid_inspector_tinit() @@ -260,9 +242,7 @@ static void appid_inspector_tinit() static void appid_inspector_tterm() { -#ifdef ENABLE_APPID_THIRD_PARTY TPLibHandler::tfini(); -#endif AppIdPegCounts::cleanup_pegs(); } diff --git a/src/network_inspectors/appid/appid_inspector.h b/src/network_inspectors/appid/appid_inspector.h index d2640332b..482dc6abe 100644 --- a/src/network_inspectors/appid/appid_inspector.h +++ b/src/network_inspectors/appid/appid_inspector.h @@ -60,9 +60,7 @@ private: }; -#ifdef ENABLE_APPID_THIRD_PARTY extern THREAD_LOCAL ThirdPartyAppIdContext* tp_appid_thread_ctxt; -#endif #endif diff --git a/src/network_inspectors/appid/appid_module.cc b/src/network_inspectors/appid/appid_module.cc index b554aa801..58efc1c85 100644 --- a/src/network_inspectors/appid/appid_module.cc +++ b/src/network_inspectors/appid/appid_module.cc @@ -172,7 +172,6 @@ static int disable_debug(lua_State*) static int reload_third_party(lua_State*) { -#ifdef ENABLE_APPID_THIRD_PARTY if (Swapper::get_reload_in_progress()) { LogMessage("== reload pending; retry\n"); @@ -191,9 +190,6 @@ static int reload_third_party(lua_State*) Swapper::set_reload_in_progress(false); LogMessage("== reload third-party complete\n"); } -#else - LogMessage("== third party is not enabled\n"); -#endif return 0; } diff --git a/src/network_inspectors/appid/appid_session.cc b/src/network_inspectors/appid/appid_session.cc index 49b54d475..de70e974f 100644 --- a/src/network_inspectors/appid/appid_session.cc +++ b/src/network_inspectors/appid/appid_session.cc @@ -46,9 +46,7 @@ #include "appid_stats.h" #include "lua_detector_api.h" #include "service_plugins/service_ssl.h" -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_lib_handler.h" -#endif using namespace snort; @@ -137,7 +135,6 @@ AppIdSession::~AppIdSession() } } -#ifdef ENABLE_APPID_THIRD_PARTY if (tpsession) { if (tpsession->get_ctxt() == tp_appid_thread_ctxt) @@ -145,7 +142,6 @@ AppIdSession::~AppIdSession() else delete tpsession; } -#endif delete_session_data(); free_flow_data(); @@ -253,11 +249,9 @@ void AppIdSession::reinit_session_data(AppidChangeBits& change_bits) client_disco_state = APPID_DISCO_STATE_NONE; free_flow_data_by_mask(APPID_SESSION_DATA_CLIENT_MODSTATE_BIT); -#ifdef ENABLE_APPID_THIRD_PARTY //3rd party cleaning if (tpsession) tpsession->reset(); -#endif init_tpPackets = 0; resp_tpPackets = 0; @@ -880,10 +874,8 @@ void AppIdSession::reset_session_data() tp_payload_app_id = APP_ID_UNKNOWN; tp_app_id = APP_ID_UNKNOWN; -#ifdef ENABLE_APPID_THIRD_PARTY if (this->tpsession) this->tpsession->reset(); -#endif } bool AppIdSession::is_payload_appid_set() @@ -896,10 +888,8 @@ void AppIdSession::clear_http_flags() if (!get_session_flags(APPID_SESSION_SPDY_SESSION)) { clear_session_flags(APPID_SESSION_CHP_INSPECTING); -#ifdef ENABLE_APPID_THIRD_PARTY if (this->tpsession) this->tpsession->clear_attr(TP_ATTR_CONTINUE_MONITORING); -#endif } } @@ -926,7 +916,6 @@ AppIdDnsSession* AppIdSession::get_dns_session() bool AppIdSession::is_tp_appid_done() const { -#ifdef ENABLE_APPID_THIRD_PARTY if (ctxt->get_tp_appid_ctxt()) { if (!tpsession) @@ -936,26 +925,22 @@ bool AppIdSession::is_tp_appid_done() const return (state == TP_STATE_CLASSIFIED || state == TP_STATE_TERMINATED || state == TP_STATE_HA); } -#endif return true; } bool AppIdSession::is_tp_processing_done() const { -#ifdef ENABLE_APPID_THIRD_PARTY if (!get_session_flags(APPID_SESSION_NO_TPI) && (!is_tp_appid_done() || get_session_flags(APPID_SESSION_APP_REINSPECT | APPID_SESSION_APP_REINSPECT_SSL))) return false; -#endif return true; } bool AppIdSession::is_tp_appid_available() const { -#ifdef ENABLE_APPID_THIRD_PARTY if (ctxt->get_tp_appid_ctxt()) { if (!tpsession) @@ -966,7 +951,6 @@ bool AppIdSession::is_tp_appid_available() const return (state == TP_STATE_CLASSIFIED || state == TP_STATE_TERMINATED || state == TP_STATE_MONITORING); } -#endif return true; } diff --git a/src/network_inspectors/appid/service_plugins/service_discovery.cc b/src/network_inspectors/appid/service_plugins/service_discovery.cc index 67ad7f070..1001aa954 100644 --- a/src/network_inspectors/appid/service_plugins/service_discovery.cc +++ b/src/network_inspectors/appid/service_plugins/service_discovery.cc @@ -80,9 +80,7 @@ #include "service_regtest.h" #endif -#ifdef ENABLE_APPID_THIRD_PARTY #include "tp_appid_session_api.h" -#endif using namespace snort; @@ -674,9 +672,7 @@ bool ServiceDiscovery::do_service_discovery(AppIdSession& asd, Packet* p, asd.service_disco_state = APPID_DISCO_STATE_FINISHED; // - Shut down TP. -#ifdef ENABLE_APPID_THIRD_PARTY asd.tpsession->set_state(TP_STATE_TERMINATED); -#endif // - Just ignore everything from now on. asd.set_session_flags(APPID_SESSION_IGNORE_FLOW); } diff --git a/src/network_inspectors/appid/test/CMakeLists.txt b/src/network_inspectors/appid/test/CMakeLists.txt index a421447f6..dbe838878 100644 --- a/src/network_inspectors/appid/test/CMakeLists.txt +++ b/src/network_inspectors/appid/test/CMakeLists.txt @@ -45,25 +45,22 @@ add_cpputest( appid_http_session_test SOURCES $ ) -if ( ENABLE_APPID_THIRD_PARTY ) - - add_cpputest( tp_lib_handler_test - SOURCES - tp_lib_handler_test.cc - ../tp_lib_handler.cc - LIBS - dl - ) +add_cpputest( tp_lib_handler_test + SOURCES + tp_lib_handler_test.cc + ../tp_lib_handler.cc + LIBS + dl +) - if ( ENABLE_UNIT_TESTS ) - add_library(tp_mock MODULE EXCLUDE_FROM_ALL tp_mock.cc) - set_property(TARGET tp_mock PROPERTY ENABLE_EXPORTS 1) - add_dependencies(tp_lib_handler_test tp_mock) - endif ( ENABLE_UNIT_TESTS ) +if ( ENABLE_UNIT_TESTS ) + add_library(tp_mock MODULE EXCLUDE_FROM_ALL tp_mock.cc) + set_property(TARGET tp_mock PROPERTY ENABLE_EXPORTS 1) + add_dependencies(tp_lib_handler_test tp_mock) +endif ( ENABLE_UNIT_TESTS ) - add_cpputest( tp_appid_types_test - SOURCES tp_appid_types_test.cc - ) +add_cpputest( tp_appid_types_test + SOURCES tp_appid_types_test.cc +) -endif() diff --git a/src/network_inspectors/appid/test/appid_discovery_test.cc b/src/network_inspectors/appid/test/appid_discovery_test.cc index a6c752c69..762e609cf 100644 --- a/src/network_inspectors/appid/test/appid_discovery_test.cc +++ b/src/network_inspectors/appid/test/appid_discovery_test.cc @@ -337,11 +337,7 @@ TEST(appid_discovery_tests, event_published_when_ignoring_flow) asd->common.initiator_ip.set("1.2.3.4"); asd->set_session_flags(APPID_SESSION_IGNORE_FLOW); -#ifdef ENABLE_APPID_THIRD_PARTY AppIdDiscovery::do_application_discovery(&p, ins, nullptr); -#else - AppIdDiscovery::do_application_discovery(&p, ins); -#endif // Detect changes in service, client, payload, and misc appid CHECK_EQUAL(databus_publish_called, true); @@ -372,11 +368,7 @@ TEST(appid_discovery_tests, event_published_when_processing_flow) asd->common.initiator_port = 21; asd->common.initiator_ip.set("1.2.3.4"); -#ifdef ENABLE_APPID_THIRD_PARTY AppIdDiscovery::do_application_discovery(&p, ins, nullptr); -#else - AppIdDiscovery::do_application_discovery(&p, ins); -#endif // Detect changes in service, client, payload, and misc appid CHECK_EQUAL(databus_publish_called, true); @@ -437,11 +429,7 @@ TEST(appid_discovery_tests, change_bits_for_non_http_appid) asd->client.set_id(APP_ID_CURL); asd->service.set_id(APP_ID_FTP); -#ifdef ENABLE_APPID_THIRD_PARTY AppIdDiscovery::do_application_discovery(&p, ins, nullptr); -#else - AppIdDiscovery::do_application_discovery(&p, ins); -#endif // Detect event for FTP service and CURL client CHECK_EQUAL(databus_publish_called, true); @@ -454,11 +442,7 @@ TEST(appid_discovery_tests, change_bits_for_non_http_appid) asd->payload.set_id(APP_ID_NONE); asd->client.set_id(APP_ID_NONE); asd->service.set_id(APP_ID_DNS); -#ifdef ENABLE_APPID_THIRD_PARTY AppIdDiscovery::do_application_discovery(&p, ins, nullptr); -#else - AppIdDiscovery::do_application_discovery(&p, ins); -#endif // Detect event for DNS service CHECK_EQUAL(databus_publish_called, true); diff --git a/src/network_inspectors/appid/test/tp_lib_handler_test.cc b/src/network_inspectors/appid/test/tp_lib_handler_test.cc index 2fc023323..f75ab9ff8 100644 --- a/src/network_inspectors/appid/test/tp_lib_handler_test.cc +++ b/src/network_inspectors/appid/test/tp_lib_handler_test.cc @@ -42,10 +42,7 @@ static AppIdConfig config; static AppIdContext ctxt(&config); static OdpContext odpctxt; OdpContext* AppIdContext::odp_ctxt = &odpctxt; - -#ifdef ENABLE_APPID_THIRD_PARTY ThirdPartyAppIdContext* AppIdContext::tp_appid_ctxt = nullptr; -#endif AppIdConfig::~AppIdConfig() { } diff --git a/src/network_inspectors/appid/tp_appid_utils.cc b/src/network_inspectors/appid/tp_appid_utils.cc index a87449865..637d29f85 100644 --- a/src/network_inspectors/appid/tp_appid_utils.cc +++ b/src/network_inspectors/appid/tp_appid_utils.cc @@ -27,6 +27,7 @@ #include #include "log/messages.h" +#include "main/snort_debug.h" #include "profiler/profiler.h" #include "protocols/packet.h" #include "stream/stream.h" @@ -38,15 +39,8 @@ #include "appid_inspector.h" #include "detector_plugins/http_url_patterns.h" #include "service_plugins/service_ssl.h" -#include "protocols/packet.h" -#include "main/snort_debug.h" -#include "log/messages.h" -#include "profiler/profiler.h" -#include "stream/stream.h" -#ifdef ENABLE_APPID_THIRD_PARTY -#include "tp_lib_handler.h" #include "tp_appid_utils.h" -#endif +#include "tp_lib_handler.h" using namespace std; using namespace snort; @@ -669,7 +663,10 @@ bool do_tp_discovery(ThirdPartyAppIdContext& tp_appid_ctxt, AppIdSession& asd, I const TPLibHandler* tph = TPLibHandler::get(); TpAppIdCreateSession tpsf = tph->tpsession_factory(); if ( !(asd.tpsession = tpsf(tp_appid_ctxt)) ) + { ErrorMessage("Could not allocate asd.tpsession data"); + return false; + } } TPState current_tp_state = asd.tpsession->process(*p, direction,