From: snorty Date: Sun, 7 Aug 2016 13:15:56 +0000 (-0400) Subject: build NHI options statically by default X-Git-Tag: 3.0.0-233~305 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9cbf5a66417b60cae71280bef43ea72ff34ed412;p=thirdparty%2Fsnort3.git build NHI options statically by default --- diff --git a/src/service_inspectors/nhttp_inspect/Makefile.am b/src/service_inspectors/nhttp_inspect/Makefile.am index 1f49c6640..4ef93641d 100644 --- a/src/service_inspectors/nhttp_inspect/Makefile.am +++ b/src/service_inspectors/nhttp_inspect/Makefile.am @@ -35,14 +35,7 @@ ips_file_list = ips_nhttp.cc ips_nhttp.h if STATIC_INSPECTORS noinst_LIBRARIES = libnhttp_inspect.a -libnhttp_inspect_a_SOURCES = $(file_list) - -# FIXIT-L eliminate this block when OHI retired -optlibdir = $(pkglibdir)/inspectors -optlib_LTLIBRARIES = libnhttp_inspect_opt.la -libnhttp_inspect_opt_la_CXXFLAGS = $(AM_CXXFLAGS) -libnhttp_inspect_opt_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -shared -libnhttp_inspect_opt_la_SOURCES = $(ips_file_list) +libnhttp_inspect_a_SOURCES = $(file_list) $(ips_file_list) else shlibdir = $(pkglibdir)/inspectors diff --git a/src/service_inspectors/nhttp_inspect/ips_nhttp.cc b/src/service_inspectors/nhttp_inspect/ips_nhttp.cc index c7021a678..2d0522d41 100644 --- a/src/service_inspectors/nhttp_inspect/ips_nhttp.cc +++ b/src/service_inspectors/nhttp_inspect/ips_nhttp.cc @@ -1003,41 +1003,19 @@ static const IpsApi raw_status_api = // plugins //------------------------------------------------------------------------- -#ifdef BUILDING_SO -const BaseApi* ips_uri = &uri_api.base; -const BaseApi* ips_client_body = &client_body_api.base; -const BaseApi* ips_method = &method_api.base; -const BaseApi* ips_cookie = &cookie_api.base; -const BaseApi* ips_stat_code = &stat_code_api.base; -const BaseApi* ips_stat_msg = &stat_msg_api.base; -const BaseApi* ips_raw_uri = &raw_uri_api.base; -const BaseApi* ips_raw_header = &raw_header_api.base; -const BaseApi* ips_raw_cookie = &raw_cookie_api.base; -const BaseApi* ips_version = &version_api.base; -const BaseApi* ips_header = &header_api.base; -const BaseApi* ips_trailer = &trailer_api.base; -const BaseApi* ips_raw_trailer = &raw_trailer_api.base; -const BaseApi* ips_raw_request = &raw_request_api.base; -const BaseApi* ips_raw_status = &raw_status_api.base; -#else -SO_PUBLIC const BaseApi* snort_plugins[] = -{ - &uri_api.base, - &client_body_api.base, - &method_api.base, - &cookie_api.base, - &stat_code_api.base, - &stat_msg_api.base, - &raw_uri_api.base, - &raw_header_api.base, - &raw_cookie_api.base, - &version_api.base, - &header_api.base, - &trailer_api.base, - &raw_trailer_api.base, - &raw_request_api.base, - &raw_status_api.base, - nullptr -}; -#endif +const BaseApi* ips_http_uri = &uri_api.base; +const BaseApi* ips_http_client_body = &client_body_api.base; +const BaseApi* ips_http_method = &method_api.base; +const BaseApi* ips_http_cookie = &cookie_api.base; +const BaseApi* ips_http_stat_code = &stat_code_api.base; +const BaseApi* ips_http_stat_msg = &stat_msg_api.base; +const BaseApi* ips_http_raw_uri = &raw_uri_api.base; +const BaseApi* ips_http_raw_header = &raw_header_api.base; +const BaseApi* ips_http_raw_cookie = &raw_cookie_api.base; +const BaseApi* ips_http_version = &version_api.base; +const BaseApi* ips_http_header = &header_api.base; +const BaseApi* ips_http_trailer = &trailer_api.base; +const BaseApi* ips_http_raw_trailer = &raw_trailer_api.base; +const BaseApi* ips_http_raw_request = &raw_request_api.base; +const BaseApi* ips_http_raw_status = &raw_status_api.base; diff --git a/src/service_inspectors/nhttp_inspect/nhttp_api.cc b/src/service_inspectors/nhttp_inspect/nhttp_api.cc index 1d56cc338..388e07b00 100644 --- a/src/service_inspectors/nhttp_inspect/nhttp_api.cc +++ b/src/service_inspectors/nhttp_inspect/nhttp_api.cc @@ -82,40 +82,40 @@ const InspectApi NHttpApi::nhttp_api = }; #ifdef BUILDING_SO -extern const BaseApi* ips_uri; -extern const BaseApi* ips_client_body; -extern const BaseApi* ips_method; -extern const BaseApi* ips_cookie; -extern const BaseApi* ips_stat_code; -extern const BaseApi* ips_stat_msg; -extern const BaseApi* ips_raw_uri; -extern const BaseApi* ips_raw_header; -extern const BaseApi* ips_raw_cookie; -extern const BaseApi* ips_version; -extern const BaseApi* ips_header; -extern const BaseApi* ips_trailer; -extern const BaseApi* ips_raw_trailer; -extern const BaseApi* ips_raw_request; -extern const BaseApi* ips_raw_status; +extern const BaseApi* ips_http_uri; +extern const BaseApi* ips_http_client_body; +extern const BaseApi* ips_http_method; +extern const BaseApi* ips_http_cookie; +extern const BaseApi* ips_http_stat_code; +extern const BaseApi* ips_http_stat_msg; +extern const BaseApi* ips_http_raw_uri; +extern const BaseApi* ips_http_raw_header; +extern const BaseApi* ips_http_raw_cookie; +extern const BaseApi* ips_http_version; +extern const BaseApi* ips_http_header; +extern const BaseApi* ips_http_trailer; +extern const BaseApi* ips_http_raw_trailer; +extern const BaseApi* ips_http_raw_request; +extern const BaseApi* ips_http_raw_status; SO_PUBLIC const BaseApi* snort_plugins[] = { &NHttpApi::nhttp_api.base, - ips_uri, - ips_client_body, - ips_method, - ips_cookie, - ips_stat_code, - ips_stat_msg, - ips_raw_uri, - ips_raw_header, - ips_raw_cookie, - ips_version, - ips_header, - ips_trailer, - ips_raw_trailer, - ips_raw_request, - ips_raw_status, + ips_http_uri, + ips_http_client_body, + ips_http_method, + ips_http_cookie, + ips_http_stat_code, + ips_http_stat_msg, + ips_http_raw_uri, + ips_http_raw_header, + ips_http_raw_cookie, + ips_http_version, + ips_http_header, + ips_http_trailer, + ips_http_raw_trailer, + ips_http_raw_request, + ips_http_raw_status, nullptr }; #else diff --git a/src/service_inspectors/service_inspectors.cc b/src/service_inspectors/service_inspectors.cc index 31d3f3239..461ab14e5 100644 --- a/src/service_inspectors/service_inspectors.cc +++ b/src/service_inspectors/service_inspectors.cc @@ -51,6 +51,24 @@ extern const BaseApi* ips_sip_header; extern const BaseApi* ips_sip_method; extern const BaseApi* ips_sip_stat_code; +// FIXIT-L use snort_plugins aliases for static builds +// so only one extern symbol per library is required +extern const BaseApi* ips_http_uri; +extern const BaseApi* ips_http_client_body; +extern const BaseApi* ips_http_method; +extern const BaseApi* ips_http_cookie; +extern const BaseApi* ips_http_stat_code; +extern const BaseApi* ips_http_stat_msg; +extern const BaseApi* ips_http_raw_uri; +extern const BaseApi* ips_http_raw_header; +extern const BaseApi* ips_http_raw_cookie; +extern const BaseApi* ips_http_version; +extern const BaseApi* ips_http_header; +extern const BaseApi* ips_http_trailer; +extern const BaseApi* ips_http_raw_trailer; +extern const BaseApi* ips_http_raw_request; +extern const BaseApi* ips_http_raw_status; + extern const BaseApi* sin_bo; extern const BaseApi* sin_dce_smb; extern const BaseApi* sin_dce_tcp; @@ -98,6 +116,22 @@ const BaseApi* service_inspectors[] = ips_sip_method, ips_sip_stat_code, + ips_http_uri, + ips_http_client_body, + ips_http_method, + ips_http_cookie, + ips_http_stat_code, + ips_http_stat_msg, + ips_http_raw_uri, + ips_http_raw_header, + ips_http_raw_cookie, + ips_http_version, + ips_http_header, + ips_http_trailer, + ips_http_raw_trailer, + ips_http_raw_request, + ips_http_raw_status, + sin_bo, sin_dce_smb, sin_dce_tcp,