From patchwork Mon May 27 03:56:47 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Schantl X-Patchwork-Id: 2271 Return-Path: Received: from mail01.ipfire.org (mail01.i.ipfire.org [172.28.1.200]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail01.ipfire.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by web07.i.ipfire.org (Postfix) with ESMTPS id A0FA18AC1E9 for ; Sun, 26 May 2019 18:57:01 +0100 (BST) Received: from mail01.i.ipfire.org (localhost [IPv6:::1]) by mail01.ipfire.org (Postfix) with ESMTP id 45Bnqd154lz519NV; Sun, 26 May 2019 18:57:01 +0100 (BST) Received: from tuxedo.stevee (213162073153.public.t-mobile.at [213.162.73.153]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail01.ipfire.org (Postfix) with ESMTPSA id 45BnqR5JK4z51tbj; Sun, 26 May 2019 18:56:51 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=201904rsa; t=1558893411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VMyO9PKwe3rzYoAREQBkrrw7nkObdGoThihInXrrvKU=; b=Im0iUqMDEUeZQX4hr1vgHR09DFlfJNrye99D7VM8V0lhoEOE6XdZqXU7GmPybylzMfxd2A HhZX8bssEPXyH8/jDTAuvE2oM/RtQcVgIbomSrrpeYszpvLBPvrmTFiN8UvnYsCnHgjjtn pcStWrj8T/38eaZS9AXOjU6d2MAw2nI4O9bfrCpXm3583T0Nn/9Cu15nu+dZD8MM+rH7wC YnK8AL40leRkcOOf0T/CTU5WzHNgSHXUYDwDcQJ5MqF+mmkeBDn5mrXYYaLL7Lzcwfwy7M Z7XUlIPJYF485dLJCfGcAisKdEarOT1xYlyS5pFkvAurEkFI9KUSf3XBg1iArg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=201904ed25519; t=1558893411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VMyO9PKwe3rzYoAREQBkrrw7nkObdGoThihInXrrvKU=; b=x0QjPq7mfTDFkuqhlt9vpgvyG53DvaJTPzeG+6quv0+U7lIw/eeIXPv15XgWUPGuNX00rK 62cGnvixVx6l/MAw== From: Stefan Schantl To: development@lists.ipfire.org Subject: [PATCH 3/3] hyperscan: New package Date: Sun, 26 May 2019 19:56:47 +0200 Message-Id: <20190526175647.4101-3-stefan.schantl@ipfire.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190526175647.4101-1-stefan.schantl@ipfire.org> References: <20190526175647.4101-1-stefan.schantl@ipfire.org> MIME-Version: 1.0 Authentication-Results: mail01.ipfire.org; auth=pass smtp.auth=stevee smtp.mailfrom=stefan.schantl@ipfire.org X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" X-Spam: Yes This package adds hyperscan support to suricata Fixes #12053. Signed-off-by: Stefan Schantl --- config/rootfiles/common/hyperscan | 18 +++++++ lfs/hyperscan | 81 +++++++++++++++++++++++++++++++ make.sh | 1 + 3 files changed, 100 insertions(+) create mode 100644 config/rootfiles/common/hyperscan create mode 100644 lfs/hyperscan diff --git a/config/rootfiles/common/hyperscan b/config/rootfiles/common/hyperscan new file mode 100644 index 000000000..3cec5c087 --- /dev/null +++ b/config/rootfiles/common/hyperscan @@ -0,0 +1,18 @@ +#usr/include/hs +#usr/include/hs/hs.h +#usr/include/hs/hs_common.h +#usr/include/hs/hs_compile.h +#usr/include/hs/hs_runtime.h +#usr/lib/libhs.so +usr/lib/libhs.so.5 +usr/lib/libhs.so.5.1.1 +usr/lib/libhs_runtime.so +usr/lib/libhs_runtime.so.5 +usr/lib/libhs_runtime.so.5.1.1 +#usr/lib/pkgconfig/libhs.pc +#usr/share/doc/hyperscan +#usr/share/doc/hyperscan/examples +#usr/share/doc/hyperscan/examples/README.md +#usr/share/doc/hyperscan/examples/patbench.cc +#usr/share/doc/hyperscan/examples/pcapscan.cc +#usr/share/doc/hyperscan/examples/simplegrep.c diff --git a/lfs/hyperscan b/lfs/hyperscan new file mode 100644 index 000000000..f390c827e --- /dev/null +++ b/lfs/hyperscan @@ -0,0 +1,81 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2018 IPFire Team # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 5.1.1 + +THISAPP = hyperscan-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) +SUP_ARCH = x86_64 i586 + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 96f9cd558132dd65ec03648aaaba2a48 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && cmake . \ + -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DBUILD_STATIC_AND_SHARED:BOOL=OFF + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/make.sh b/make.sh index b26b49d59..bbbf0eb41 100755 --- a/make.sh +++ b/make.sh @@ -1323,6 +1323,7 @@ buildipfire() { lfsmake2 libhtp lfsmake2 colm lfsmake2 ragel + lfsmake2 hyperscan lfsmake2 suricata lfsmake2 oinkmaster lfsmake2 ids-ruleset-sources