2 # Copyright (C) 2006-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
15 PKG_SOURCE_URL
:=http
://dl.snort.org
/snort-current
/
16 PKG_MD5SUM
:=63f4e76ae96a2d133f4c7b741bad5458
18 PKG_BUILD_DEPENDS
:=USE_UCLIBC
:librpc
19 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(BUILD_VARIANT
)/$(PKG_NAME
)-$(PKG_VERSION
)
23 include $(INCLUDE_DIR
)/package.mk
25 define Package
/snort
/Default
29 DEPENDS
:=+libnet0
+libpcap
+libpcre
30 TITLE
:=Lightweight Network Intrusion Detection System
31 URL
:=http
://www.snort.org
/
34 define Package
/snort
/Default
/description
35 Snort is an open source network intrusion detection and prevention system.
36 It is capable of performing real-time traffic analysis
, alerting
, blocking
37 and packet logging on IP networks. It utilizes a combination of protocol
38 analysis and pattern matching in order to detect anomalies
, misuse and
43 $(call Package
/snort
/Default
)
47 define Package
/snort
/description
48 $(call Package
/snort
/Default
/description
)
51 define Package
/snort-mysql
52 $(call Package
/snort
/Default
)
53 DEPENDS
+= +libmysqlclient
58 define Package
/snort-mysql
/description
59 $(call Package
/snort
/Default
/description
)
60 This package contains snort with support for logging to a MySQL database.
63 define Package
/snort-pgsql
64 $(call Package
/snort
/Default
)
70 define Package
/snort-pgsql
/description
71 $(call Package
/snort
/Default
/description
)
72 This package contains snort with support for logging to a PostgreSQL database.
78 --with-libnet-includes
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/include" \
79 --with-libnet-libraries
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/lib" \
80 --with-libpcap-includes
="$(STAGING_DIR)/usr/include" \
81 --with-libpcap-libraries
="$(STAGING_DIR)/usr/lib" \
82 --with-libpcre-includes
="$(STAGING_DIR)/usr/include" \
83 --with-libpcre-libraries
="$(STAGING_DIR)/usr/lib" \
86 CPPFLAGS
="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/mysql" \
87 LDFLAGS
="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib/mysql" \
88 PATH
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/bin:$$$$PATH" \
93 ifeq ($(BUILD_VARIANT
),basic
)
97 --without-postgresql \
100 ifeq ($(BUILD_VARIANT
),mysql
)
103 --with-mysql
="$(STAGING_DIR)/usr" \
104 --without-postgresql \
107 ifeq ($(BUILD_VARIANT
),pgsql
)
111 --with-postgresql
="$(STAGING_DIR)/usr" \
116 define Package
/snort
/conffiles
118 /etc
/snort
/snort.conf
119 /etc
/snort
/threshold.conf
122 define Package
/snort
/install
123 $(INSTALL_DIR
) $(1)/usr
/bin
124 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/snort
$(1)/usr
/bin
/
125 $(INSTALL_DIR
) $(1)/usr
/lib
/snort_dynamicengine
126 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/snort_dynamicengine
/libsf_engine.so
* $(1)/usr
/lib
/snort_dynamicengine
/
127 $(INSTALL_DIR
) $(1)/usr
/lib
/snort_dynamicpreprocessor
128 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/snort_dynamicpreprocessor
/libsf_
{dce2
,dcerpc
,dns
,ftptelnet
,smtp
,ssh
,ssl
}_preproc.so
* $(1)/usr
/lib
/snort_dynamicpreprocessor
/
129 $(INSTALL_DIR
) $(1)/etc
/snort
130 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/snort.conf
$(1)/etc
/snort
/
131 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/classification.config
$(1)/etc
/snort
/
132 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/gen-msg.map
$(1)/etc
/snort
/
133 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/reference.config
$(1)/etc
/snort
/
134 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/sid-msg.map
$(1)/etc
/snort
/
135 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/threshold.conf
$(1)/etc
/snort
/
136 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/etc
/unicode.map
$(1)/etc
/snort
/
137 $(INSTALL_DIR
) $(1)/etc
/snort
/preproc_rules
138 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/preproc_rules
/*.rules
$(1)/etc
/snort
/preproc_rules
/
139 $(INSTALL_DIR
) $(1)/etc
/snort
/rules
140 $(INSTALL_DATA
) .
/files
/snort.local.rules
$(1)/etc
/snort
/rules
/local.rules
141 $(INSTALL_DIR
) $(1)/etc
/default
142 $(INSTALL_DATA
) .
/files
/snort.default
$(1)/etc
/default
/snort
143 $(INSTALL_DIR
) $(1)/etc
/init.d
144 $(INSTALL_BIN
) .
/files
/snort.init
$(1)/etc
/init.d
/snort
147 Package
/snort-mysql
/conffiles
= $(Package
/snort
/conffiles
)
148 Package
/snort-mysql
/install = $(Package
/snort
/install)
150 Package
/snort-pgsql
/conffiles
= $(Package
/snort
/conffiles
)
151 Package
/snort-pgsql
/install = $(Package
/snort
/install)
153 $(eval
$(call BuildPackage
,snort
))
154 $(eval
$(call BuildPackage
,snort-mysql
))
155 $(eval
$(call BuildPackage
,snort-pgsql
))