commit a2a0ed8ee395946ca62c7341ce6a0552b34e7a55
parent cd9bed19489e586606a9068b8ce2cebe9d0bd752
Author: Hannu Nyman <hannu.nyman@iki.fi>
Date: Tue, 4 Oct 2016 13:39:41 +0300
Merge pull request #3185 from fededim/master
emailrelay: added configuration options
Diffstat:
5 files changed, 127 insertions(+), 116 deletions(-)
diff --git a/mail/emailrelay/Makefile b/mail/emailrelay/Makefile
@@ -0,0 +1,114 @@
+#
+# Copyright (C) 2006-2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=emailrelay
+PKG_VERSION:=1.9
+PKG_RELEASE:=3
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-src.tar.gz
+PKG_SOURCE_URL:=@SF/emailrelay/$(PKG_VERSION)
+PKG_MD5SUM:=0892fbf993407c6b5a16f96e23299b62
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+
+PKG_CONFIG_DEPENDS:=CONFIG_EMAILRELAY_SUPPORT_VERBOSE_DBG CONFIG_EMAILRELAY_SSL
+
+
+include $(INCLUDE_DIR)/uclibc++.mk
+include $(INCLUDE_DIR)/package.mk
+
+define Package/emailrelay
+ SECTION:=mail
+ CATEGORY:=Mail
+ DEPENDS:=$(CXX_DEPENDS) +EMAILRELAY_SSL:libopenssl
+ TITLE:=A simple SMTP proxy and MTA
+ URL:=http://emailrelay.sourceforge.net/
+ MAINTAINER:=Federico Di Marco <fededim@gmail.com>
+ MENU:=1
+endef
+
+
+define Package/emailrelay/config
+config EMAILRELAY_SUPPORT_VERBOSE_DBG
+ bool "Enable support for extended logging"
+ depends on PACKAGE_emailrelay
+ default n
+ help
+ Enables support for extended logging (must also be explicitely enabled by using command line switch --debug when starting emailrelay)
+
+config EMAILRELAY_SSL
+ bool "Enable support for OpenSSL"
+ depends on PACKAGE_emailrelay
+ default y
+ select PACKAGE_libopenssl
+ help
+ Builds the package with OpenSSL support (SSMTP is supported).
+endef
+
+
+
+define Package/emailrelay/description
+ Emailrelay is a simple SMTP proxy and store-and-forward message transfer agent (MTA).
+
+ When running as a proxy all e-mail messages can be passed through
+ a user-defined program, such as a spam filter, which can drop,
+ re-address or edit messages as they pass through. When running
+ as a store-and-forward MTA incoming messages are stored in a
+ local spool directory, and then forwarded to the next SMTP
+ server on request.
+endef
+
+
+define Package/emailrelay/conffiles
+/etc/emailrelay.auth
+endef
+
+
+CONFIGURE_ARGS += \
+ --with-pam=no \
+ --enable-testing=no
+
+CONFIGURE_VARS += \
+ CXXFLAGS="$$$$CXXFLAGS -fno-rtti"
+
+
+ifeq ($(CONFIG_EMAILRELAY_SSL),y)
+ CONFIGURE_ARGS += \
+ --with-openssl
+else
+ CONFIGURE_ARGS += \
+ --with-openssl=no
+endif
+
+
+ifeq ($(CONFIG_EMAILRELAY_SUPPORT_VERBOSE_DBG),y)
+ CONFIGURE_ARGS += \
+ --enable-debug=yes
+endif
+
+ifeq ($(CONFIG_OPENSSL_WITH_SSL3),y)
+ CONFIGURE_VARS += \
+ CXXFLAGS="$$$$CXXFLAGS -DSSL3_SUPPORT"
+endif
+
+define Package/emailrelay/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-filter-copy $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-passwd $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-poke $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-submit $(1)/usr/bin/
+ $(INSTALL_DIR) $(1)/etc
+ $(INSTALL_DATA) files/$(PKG_NAME).auth $(1)/etc/
+ $(INSTALL_DIR) $(1)/etc/init.d
+ $(INSTALL_BIN) files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
+endef
+
+
+$(eval $(call BuildPackage,emailrelay))
diff --git a/net/emailrelay/files/emailrelay.auth b/mail/emailrelay/files/emailrelay.auth
diff --git a/net/emailrelay/files/emailrelay.init b/mail/emailrelay/files/emailrelay.init
diff --git a/mail/emailrelay/patches/010-ssl3-fix.patch b/mail/emailrelay/patches/010-ssl3-fix.patch
@@ -0,0 +1,13 @@
+--- a/src/gssl/gssl_openssl.cpp
++++ b/src/gssl/gssl_openssl.cpp
+@@ -292,8 +292,10 @@ GSsl::Context::Context( const std::strin
+ {
+ if( (flags&3U) == 2U )
+ m_ssl_ctx = SSL_CTX_new(SSLv23_method()) ;
++#ifdef SSL3_SUPPORT
+ else if( (flags&3U) == 3U )
+ m_ssl_ctx = SSL_CTX_new(SSLv3_method()) ;
++#endif
+ else
+ m_ssl_ctx = SSL_CTX_new(TLSv1_method()) ;
+
diff --git a/net/emailrelay/Makefile b/net/emailrelay/Makefile
@@ -1,116 +0,0 @@
-#
-# Copyright (C) 2006-2014 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=emailrelay
-PKG_VERSION:=1.9
-PKG_RELEASE:=2
-
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-src.tar.gz
-PKG_SOURCE_URL:=@SF/emailrelay/$(PKG_VERSION)
-PKG_MD5SUM:=0892fbf993407c6b5a16f96e23299b62
-
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
-
-
-include $(INCLUDE_DIR)/uclibc++.mk
-include $(INCLUDE_DIR)/package.mk
-
-define Package/emailrelay/Default
- SECTION:=net
- SUBMENU:=Web Servers/Proxies
- CATEGORY:=Network
- DEPENDS:=$(CXX_DEPENDS)
- TITLE:=A simple SMTP proxy and MTA
- URL:=http://emailrelay.sourceforge.net/
- MAINTAINER:=Federico Di Marco <fededim@gmail.com>
-endef
-
-
-define Package/emailrelay
-$(call Package/emailrelay/Default)
- TITLE+= (with OpenSSL support)
- DEPENDS+=+libopenssl
- VARIANT:=ssl
-endef
-
-define Package/emailrelay-nossl
-$(call Package/emailrelay/Default)
- TITLE+= (no SSL support)
- VARIANT:=nossl
-endef
-
-
-
-define Package/emailrelay/Default/description
- Emailrelay is a simple SMTP proxy and store-and-forward message transfer agent (MTA).
-
- When running as a proxy all e-mail messages can be passed through
- a user-defined program, such as a spam filter, which can drop,
- re-address or edit messages as they pass through. When running
- as a store-and-forward MTA incoming messages are stored in a
- local spool directory, and then forwarded to the next SMTP
- server on request.
-endef
-
-
-define Package/emailrelay/description
-$(call Package/emailrelay/Default/description)
-
- This package is built with OpenSSL support (SSMTP is supported).
-endef
-
-define Package/emailrelay-nossl/description
-$(call Package/emailrelay/Default/description)
-
- This package is built without SSL support (no SSMTP)
-endef
-
-
-define Package/emailrelay/conffiles
-/etc/emailrelay.auth
-endef
-
-define Package/emailrelay-nossl/conffiles
-/etc/emailrelay.auth
-endef
-
-CONFIGURE_ARGS += \
- --with-pam=no
-
-CONFIGURE_VARS += \
- CXXFLAGS="$$$$CXXFLAGS -fno-rtti"
-
-ifeq ($(BUILD_VARIANT),ssl)
- CONFIGURE_ARGS += \
- --with-openssl
-endif
-
-ifeq ($(BUILD_VARIANT),nossl)
- CONFIGURE_ARGS += \
- --with-openssl=no
-endif
-
-define Package/emailrelay/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay $(1)/usr/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-filter-copy $(1)/usr/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-passwd $(1)/usr/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-poke $(1)/usr/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/main/emailrelay-submit $(1)/usr/bin/
- $(INSTALL_DIR) $(1)/etc
- $(INSTALL_DATA) files/$(PKG_NAME).auth $(1)/etc/
- $(INSTALL_DIR) $(1)/etc/init.d
- $(INSTALL_BIN) files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
-endef
-
-Package/emailrelay-nossl/install = $(Package/emailrelay/install)
-
-
-$(eval $(call BuildPackage,emailrelay))
-$(eval $(call BuildPackage,emailrelay-nossl))