Merge pull request #13959 from flyn-org/snort3

Snort3 updates
This commit is contained in:
Rosen Penev 2020-11-19 16:22:56 -08:00 committed by GitHub
commit 9a7efa6808
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 11 additions and 181 deletions

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libdaq
PKG_VERSION:=2.2.2
PKG_VERSION:=3.0.0-beta1
PKG_RELEASE:=1
PKG_SOURCE_URL:=https://www.snort.org/downloads/snortplus/
PKG_SOURCE:=daq-$(PKG_VERSION).tar.gz
PKG_HASH:=7cd818cabb1ad35360e83076e54775f07165ee71407dc672d147e27d3cd37f7b
PKG_HASH:=ef74aa1c30a6ee93eacbe7967d1c85d7df3214cf3783d4eabbb6b64305fd273e
PKG_BUILD_DIR:=$(BUILD_DIR)/daq-$(PKG_VERSION)
PKG_LICENSE:=GPL-2.0
@ -29,7 +29,7 @@ define Package/libdaq
CATEGORY:=Libraries
TITLE:=DAQ library
URL:=$(PKG_SOURCE_URL)
DEPENDS:=+libdnet +libpcap
DEPENDS:=+libdnet +libpcap +libstdcpp
endef
define Package/libdaq/description
@ -52,7 +52,7 @@ define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR)/usr/lib/daq
$(CP) $(PKG_INSTALL_DIR)/usr/lib/daq/* $(STAGING_DIR)/usr/lib/daq/
$(INSTALL_DIR) $(STAGING_DIR)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/daq-modules-config $(STAGING_DIR)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(STAGING_DIR)/usr/bin/
endef
define Package/libdaq/install
@ -61,7 +61,7 @@ define Package/libdaq/install
$(INSTALL_DIR) $(1)/usr/lib/daq
$(CP) $(PKG_INSTALL_DIR)/usr/lib/daq/*.so* $(1)/usr/lib/daq/
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/daq-modules-config $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
endef
$(eval $(call BuildPackage,libdaq))

View File

@ -1,19 +0,0 @@
diff -u --recursive daq-2.2.2-vanilla/configure daq-2.2.2/configure
--- daq-2.2.2-vanilla/configure 2017-07-05 15:58:03.000000000 -0400
+++ daq-2.2.2/configure 2018-09-01 17:18:56.774898034 -0400
@@ -13244,10 +13244,11 @@
else
if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
+# { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+#$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+#as_fn_error $? "cannot run test program while cross compiling
+#See \`config.log' for more details" "$LINENO" 5; }
+ echo " No cross compiling test."
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */

View File

@ -1,45 +0,0 @@
diff -u --recursive daq-2.2.2-vanilla/os-daq-modules/daq_ipfw.c daq-2.2.2/os-daq-modules/daq_ipfw.c
--- daq-2.2.2-vanilla/os-daq-modules/daq_ipfw.c 2017-02-08 17:04:18.000000000 -0500
+++ daq-2.2.2/os-daq-modules/daq_ipfw.c 2018-09-01 17:21:10.608181841 -0400
@@ -23,10 +23,10 @@
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
+#include <unistd.h>
#include <sys/types.h>
#include <sys/time.h>
-#include <sys/unistd.h>
#include <netinet/in.h>
#include <sys/socket.h>
diff -u --recursive daq-2.2.2-vanilla/os-daq-modules/daq_ipq.c daq-2.2.2/os-daq-modules/daq_ipq.c
--- daq-2.2.2-vanilla/os-daq-modules/daq_ipq.c 2017-02-08 17:04:18.000000000 -0500
+++ daq-2.2.2/os-daq-modules/daq_ipq.c 2018-09-01 17:21:23.162208457 -0400
@@ -24,10 +24,10 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <sys/types.h>
#include <sys/time.h>
-#include <sys/unistd.h>
#include <netinet/ip.h>
diff -u --recursive daq-2.2.2-vanilla/os-daq-modules/daq_nfq.c daq-2.2.2/os-daq-modules/daq_nfq.c
--- daq-2.2.2-vanilla/os-daq-modules/daq_nfq.c 2017-02-08 17:04:18.000000000 -0500
+++ daq-2.2.2/os-daq-modules/daq_nfq.c 2018-09-01 17:21:35.202233988 -0400
@@ -24,10 +24,10 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <sys/types.h>
#include <sys/time.h>
-#include <sys/unistd.h>
#include <netinet/ip.h>

View File

@ -6,14 +6,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=snort3
PKG_VERSION:=3.0.0-beta
PKG_VERSION_SHORT:=3.0.0
PKG_RELEASE:=5
PKG_VERSION:=3.0.3-1
PKG_RELEASE:=1
PKG_SOURCE:=snort-$(PKG_VERSION).tar.gz
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.snort.org/downloads/snortplus/
PKG_HASH:=ea4079c551002e4d83586f05b3ecdae72706a46ec223339b87ce60f7ae30b8a2
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)/snort-$(PKG_VERSION_SHORT)
PKG_HASH:=30a22cec90d77504db80d8e8902f98c536b1b8160c575fb66a97a6765f83c600
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)/$(PKG_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
PKG_LICENSE:=GPL-2.0-only
@ -44,6 +43,7 @@ define Package/snort3/description
endef
CMAKE_OPTIONS += \
-DUSE_TIRPC:BOOL=YES \
-DENABLE_STATIC_DAQ:BOOL=NO \
-DENABLE_COREFILES:BOOL=NO \
-DENABLE_GDB:BOOL=NO \

View File

@ -1,52 +0,0 @@
diff -u --recursive snort-3.0.0-vanilla/daqs/daq_file.c snort-3.0.0/daqs/daq_file.c
--- snort-3.0.0-vanilla/daqs/daq_file.c 2018-08-28 02:01:02.000000000 -0400
+++ snort-3.0.0/daqs/daq_file.c 2019-03-28 23:03:25.292770141 -0400
@@ -33,7 +33,7 @@
#include <sys/types.h>
#include <sys/time.h>
-#include <sys/unistd.h>
+#include <unistd.h>
#include <daq_api.h>
#include <sfbpf_dlt.h>
diff -u --recursive snort-3.0.0-vanilla/daqs/daq_hext.c snort-3.0.0/daqs/daq_hext.c
--- snort-3.0.0-vanilla/daqs/daq_hext.c 2018-08-28 02:01:02.000000000 -0400
+++ snort-3.0.0/daqs/daq_hext.c 2019-03-28 22:54:15.738207157 -0400
@@ -35,7 +35,7 @@
#include <arpa/inet.h>
#include <sys/types.h>
#include <sys/time.h>
-#include <sys/unistd.h>
+#include <unistd.h>
#include <sys/socket.h>
#include <daq_api.h>
diff -u --recursive snort-3.0.0-vanilla/src/network_inspectors/appid/service_plugins/service_rpc.cc snort-3.0.0/src/network_inspectors/appid/service_plugins/service_rpc.cc
--- snort-3.0.0-vanilla/src/network_inspectors/appid/service_plugins/service_rpc.cc 2018-08-28 02:01:02.000000000 -0400
+++ snort-3.0.0/src/network_inspectors/appid/service_plugins/service_rpc.cc 2019-03-28 22:32:04.211783669 -0400
@@ -27,6 +27,7 @@
#include <netdb.h>
+#include <tirpc/rpc/rpcent.h>
#if defined(__FreeBSD__) || defined(__OpenBSD__)
#include <rpc/rpc.h>
#elif defined(__sun)
diff -u --recursive snort-3.0.0-vanilla/src/utils/util.cc snort-3.0.0/src/utils/util.cc
--- snort-3.0.0-vanilla/src/utils/util.cc 2018-08-28 02:01:02.000000000 -0400
+++ snort-3.0.0/src/utils/util.cc 2019-03-28 22:16:16.860942230 -0400
@@ -605,13 +605,8 @@
{
static THREAD_LOCAL char buf[128];
-#if (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE < 200112L && \
- defined(_XOPEN_SOURCE) && _XOPEN_SOURCE < 600) || _GNU_SOURCE
- return strerror_r(errnum, buf, sizeof(buf));
-#else
(void)strerror_r(errnum, buf, sizeof(buf));
return buf;
-#endif
}
char* snort_strndup(const char* src, size_t dst_size)

View File

@ -1,11 +0,0 @@
diff -u --recursive snort-3.0.0-vanilla/cmake/include_libraries.cmake snort-3.0.0/cmake/include_libraries.cmake
--- snort-3.0.0-vanilla/cmake/include_libraries.cmake 2018-08-28 02:01:02.000000000 -0400
+++ snort-3.0.0/cmake/include_libraries.cmake 2019-04-18 21:25:25.627070082 -0400
@@ -14,7 +14,6 @@
endif (ENABLE_UNIT_TESTS)
# optional libraries
-find_package(LibLZMA QUIET)
find_package(Asciidoc QUIET)
find_package(DBLATEX QUIET)
find_package(Ruby QUIET 1.8.7)

View File

@ -1,43 +0,0 @@
--- a/src/codecs/ip/cd_ipv4.cc 2018-08-28 02:01:02.000000000 -0400
+++ b/src/codecs/ip/cd_ipv4.cc 2020-07-04 17:45:57.125755874 -0400
@@ -358,8 +358,8 @@
/* Loopback traffic - don't use htonl for speed reasons -
* s_addr is always in network order */
#ifdef WORDS_BIGENDIAN
- msb_src = (iph.ip_src >> 24);
- msb_dst = (iph.ip_dst >> 24);
+ msb_src = ((*iph).ip_src >> 24);
+ msb_dst = ((*iph).ip_dst >> 24);
#else
msb_src = (uint8_t)(iph->ip_src & 0xff);
msb_dst = (uint8_t)(iph->ip_dst & 0xff);
--- a/src/network_inspectors/appid/appid_detector.h 2018-08-28 02:01:02.000000000 -0400
+++ b/src/network_inspectors/appid/appid_detector.h 2020-07-04 18:07:24.196714422 -0400
@@ -52,6 +52,27 @@
DETECTOR_TYPE_NOT_SET
};
+#define BYTE_SWAP_16(x) \
+ ((uint16_t)((((uint16_t)(x) & 0xff00) >> 8) | \
+ (((uint16_t)(x) & 0x00ff) << 8)))
+
+#define BYTE_SWAP_32(x) \
+ ((uint32_t)((((uint32_t)(x) & 0xff000000) >> 24) | \
+ (((uint32_t)(x) & 0x00ff0000) >> 8) | \
+ (((uint32_t)(x) & 0x0000ff00) << 8) | \
+ (((uint32_t)(x) & 0x000000ff) << 24)))
+
+#define BYTE_SWAP_64(x) \
+ ((uint64_t)((((uint64_t)(x) & 0xff00000000000000ULL) >> 56) | \
+ (((uint64_t)(x) & 0x00ff000000000000ULL) >> 40) | \
+ (((uint64_t)(x) & 0x0000ff0000000000ULL) >> 24) | \
+ (((uint64_t)(x) & 0x000000ff00000000ULL) >> 8) | \
+ (((uint64_t)(x) & 0x00000000ff000000ULL) << 8) | \
+ (((uint64_t)(x) & 0x0000000000ff0000ULL) << 24) | \
+ (((uint64_t)(x) & 0x000000000000ff00ULL) << 40) | \
+ (((uint64_t)(x) & 0x00000000000000ffULL) << 56)))
+
+
typedef std::vector<AppRegistryEntry> FlowApplicationInfo;
struct AppIdFlowContentPattern