From f1bef0596fd2a983386c778a94486782bd272e27 Mon Sep 17 00:00:00 2001
From: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Date: Tue, 27 Mar 2018 02:42:06 -0300
Subject: [PATCH] openvpn-easy-rsa: update to 3.0.4

Upstream renamed openssl-1.0.cnf to openssl-easyrsa.cnf.
However, pkg kept using openssl-1.0.cnf.

Upstream easyrsa searchs for vars, openssl-*, x509-types in the
same directory as easyrsa script. This was patched to revert
back to static /etc/easy-rsa/ directory (as does OpenSUSE).
EASYRSA_PKI still depends on $PWD.

Move easyrsa from /usr/sbin to /usr/bin as root is not needed.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
---
 .../services/openvpn-easy-rsa/Makefile        | 15 ++++++++-----
 .../patches/101-static_EASYRSA.patch          | 22 +++++++++++++++++++
 2 files changed, 31 insertions(+), 6 deletions(-)
 create mode 100644 package/network/services/openvpn-easy-rsa/patches/101-static_EASYRSA.patch

diff --git a/package/network/services/openvpn-easy-rsa/Makefile b/package/network/services/openvpn-easy-rsa/Makefile
index f4b479986f..0cf73950a6 100644
--- a/package/network/services/openvpn-easy-rsa/Makefile
+++ b/package/network/services/openvpn-easy-rsa/Makefile
@@ -9,13 +9,14 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=openvpn-easy-rsa
 
-PKG_VERSION:=3.0.1
+PKG_VERSION:=3.0.4
 PKG_RELEASE:=1
-PKG_SOURCE_URL:=https://github.com/OpenVPN/easy-rsa/releases/download/$(PKG_VERSION)/
+PKG_SOURCE_URL:=https://github.com/OpenVPN/easy-rsa/releases/download/v$(PKG_VERSION)/
 PKG_SOURCE:=EasyRSA-$(PKG_VERSION).tgz
-PKG_HASH:=dbdaf5b9444b99e0c5221fd4bcf15384c62380c1b63cea23d42239414d7b2d4e
+PKG_HASH:=472167f976c6cb7c860cec6150a5616e163ae20365c81f179811d6ee0779ec5a
 PKG_LICENSE:=GPL-2.0
 PKG_BUILD_DIR:=$(BUILD_DIR)/EasyRSA-$(PKG_VERSION)
+PKGARCH:=all
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -31,6 +32,7 @@ endef
 define Package/openvpn-easy-rsa/conffiles
 /etc/easy-rsa/vars
 /etc/easy-rsa/openssl-1.0.cnf
+/etc/easy-rsa/openssl-easyrsa.cnf
 endef
 
 define Build/Configure
@@ -42,11 +44,12 @@ define Build/Compile
 endef
 
 define Package/openvpn-easy-rsa/install
-	$(INSTALL_DIR) $(1)/usr/sbin
+	$(INSTALL_DIR) $(1)/usr/bin
 
-	$(INSTALL_BIN) $(PKG_BUILD_DIR)/easyrsa $(1)/usr/sbin/
+	$(INSTALL_BIN) $(PKG_BUILD_DIR)/easyrsa $(1)/usr/bin/
 	$(INSTALL_DIR) $(1)/etc/easy-rsa
-	$(INSTALL_DATA) $(PKG_BUILD_DIR)/openssl-1.0.cnf $(1)/etc/easy-rsa/openssl-1.0.cnf
+	$(INSTALL_DATA) $(PKG_BUILD_DIR)/openssl-easyrsa.cnf $(1)/etc/easy-rsa/openssl-1.0.cnf
+	$(LN) /etc/easy-rsa/openssl-1.0.cnf $(1)/etc/easy-rsa/openssl-easyrsa.cnf
 	$(INSTALL_DATA) $(PKG_BUILD_DIR)/vars.example $(1)/etc/easy-rsa/vars
 
 	$(INSTALL_DIR) $(1)/etc/easy-rsa/pki
diff --git a/package/network/services/openvpn-easy-rsa/patches/101-static_EASYRSA.patch b/package/network/services/openvpn-easy-rsa/patches/101-static_EASYRSA.patch
new file mode 100644
index 0000000000..b81366c60b
--- /dev/null
+++ b/package/network/services/openvpn-easy-rsa/patches/101-static_EASYRSA.patch
@@ -0,0 +1,22 @@
+Index: EasyRSA-3.0.4/easyrsa
+===================================================================
+--- EasyRSA-3.0.4.orig/easyrsa
++++ EasyRSA-3.0.4/easyrsa
+@@ -1033,7 +1033,7 @@ vars_setup() {
+ 	vars=
+ 
+ 	# set up program path
+-	prog_vars="${0%/*}/vars"
++	prog_vars="/etc/easy-rsa/vars"
+ 	# set up PKI path
+ 	pki_vars="${EASYRSA_PKI:-$PWD/pki}/vars"
+ 
+@@ -1060,7 +1060,7 @@ Note: using Easy-RSA configuration from:
+ 	fi
+ 	
+ 	# Set defaults, preferring existing env-vars if present
+-	set_var EASYRSA		"${0%/*}"
++	set_var EASYRSA		"/etc/easy-rsa"
+ 	set_var EASYRSA_OPENSSL	openssl
+ 	set_var EASYRSA_PKI	"$PWD/pki"
+ 	set_var EASYRSA_DN	cn_only
-- 
2.25.1