--- /dev/null
+# Copyright (C) 2019 Eneas Ulir de Queiroz <cotequeiroz@gmail.com>
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=afalg_engine
+PKG_VERSION:=1.0.1
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/cotequeiroz/afalg_engine/archive/v$(PKG_VERSION)
+PKG_HASH:=ef3ee1ba3cb4e9145f9a0dea5bc6d3fe6cb7b5b9e68053d474829e84dc1c4988
+
+PKG_MAINTAINER:=Eneas U de Queiroz <cotequeiroz@gmail.com>
+PKG_LICENSE:=Apache-2.0
+PKG_LICENSE_FILES:=LICENSE
+PKG_CONFIG_DEPENDS:= CONFIG_AFALG_ZERO_COPY
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+$(eval $(shell grep "^ENGINES_DIR" "$(TOPDIR)/package/libs/openssl/Makefile"))
+ifeq ($(ENGINES_DIR),)
+ ENGINES_DIR:=engines-1.1
+endif
+
+define Package/libopenssl-afalg_sync
+ SECTION:=libs
+ CATEGORY:=Libraries
+ SUBMENU:=SSL
+ MDEPENDS:=libopenssl
+ TITLE:=AF_ALG engine using sync crypto API
+ URL:=https://github.com/cotequeiroz/afalg_engine
+ DEPENDS:=libopenssl @OPENSSL_ENGINE @!OPENSSL_ENGINE_BUILTIN_AFALG \
+ +libopenssl-conf +kmod-crypto-user
+ CONFLICTS:=libopenssl-afalg
+endef
+
+define Package/libopenssl-afalg_sync/description
+ This is an alternate AF_ALG engine for openssl, based on the devcrypto
+ engine, but using the AF_ALG interface instead of /dev/crypto
+
+ It is different than the AF_ALG engine that ships with OpenSSL:
+ - it uses sync calls, instead of async
+ - it suports more algorithms
+endef
+
+define Package/libopenssl-afalg_sync/config
+ config AFALG_ZERO_COPY
+ depends on PACKAGE_libopenssl-afalg_sync
+ bool "Use Zero-Copy Mode"
+ help
+ Uses a Zero-Copy interface. Even though it is supposed to improve
+ performance, actual measurements indicate otherwise.
+endef
+
+CMAKE_OPTIONS += \
+ -DOPENSSL_ENGINES_DIR=/usr/lib/$(ENGINES_DIR) \
+ -DUSE_ZERO_COPY=$(if $(AFALG_ZERO_COPY),ON,OFF)
+
+define Package/libopenssl-afalg_sync/install
+ $(INSTALL_DIR) $(1)/usr/lib/$(ENGINES_DIR)
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/$(ENGINES_DIR)/afalg.so \
+ $(1)/usr/lib/$(ENGINES_DIR)/
+endef
+
+$(eval $(call BuildPackage,libopenssl-afalg_sync))