diff --git a/package/network/utils/globalprotect/files/globalprotect.sh b/package/network/utils/globalprotect/files/globalprotect.sh index 1e40e05..cff74b8 100755 --- a/package/network/utils/globalprotect/files/globalprotect.sh +++ b/package/network/utils/globalprotect/files/globalprotect.sh @@ -20,6 +20,7 @@ proto_globalprotect_init_config() { proto_config_add_string "os" proto_config_add_string "csd_wrapper" proto_config_add_string "clientcert" + proto_config_add_string "clientkey" no_device=1 available=1 } @@ -27,7 +28,7 @@ proto_globalprotect_init_config() { proto_globalprotect_setup() { local config="$1" - json_get_vars server port interface username serverhash authgroup password password2 token_mode token_secret token_script os csd_wrapper mtu juniper clientcert + json_get_vars server port interface username serverhash authgroup password password2 token_mode token_secret token_script os csd_wrapper mtu juniper clientcert clientkey grep -q tun /proc/modules || insmod tun ifname="vpn-$config" @@ -50,6 +51,11 @@ proto_globalprotect_setup() { append cmdline "$clientcert" } + [ -n "$clientkey" ] && { + append cmdline "--sslkey" + append cmdline "$clientkey" + } + append cmdline "--protocol=gp" # migrate to standard config files diff --git a/package/perl/perl-autoloader/Makefile b/package/perl/perl-autoloader/Makefile new file mode 100644 index 0000000..bd4481f --- /dev/null +++ b/package/perl/perl-autoloader/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-autoloader +PKG_VERSION:=5.74 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/S/SM/SMUELLER +PKG_SOURCE:=AutoLoader-$(PKG_VERSION).tar.gz +PKG_HASH:=2fac75b05309f71a6871804cd25e1a3ba0a28f43f294fb54528077558da3aff4 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/AutoLoader-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-autoloader + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=A Pure Perl RSA implementatino + URL:=http://search.cpan.org/dist/AutoLoader/ + DEPENDS:=perl +perlbase-essential +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-autoloader/install + $(call perlmod/Install,$(1),AutoLoader.pm AutoSplit.pm auto/AutoLoader) +endef + + +$(eval $(call BuildPackage,perl-autoloader)) diff --git a/package/perl/perl-chipcard-pcsc/Makefile b/package/perl/perl-chipcard-pcsc/Makefile new file mode 100644 index 0000000..437b67c --- /dev/null +++ b/package/perl/perl-chipcard-pcsc/Makefile @@ -0,0 +1,51 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-chipcard-pcsc +PKG_VERSION:=1.4.14 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/W/WH/WHOM +PKG_SOURCE:=pcsc-perl-$(PKG_VERSION).tar.bz2 +PKG_HASH:=2722b7e5543e4faf3ba1ec6b29a7dfec6d92be1edec09d0a3191992d4d88c69d + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +#HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/perl/Chipcard-PCSC-$(PKG_VERSION) +#HOST_BUILD_DEPENDS:=perl/host libpcsclite/host +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/pcsc-perl-$(PKG_VERSION) +PKG_BUILD_DEPENDS:=pcsc-lite + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-chipcard-pcsc + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=Perl PCSC implementation + URL:=http://search.cpan.org/dist/Chipcard-PCSC/ + DEPENDS:=perl +perlbase-essential +perlbase-xsloader +libpcsclite +perl-autoloader +perlbase-dynaloader +endef + +define Build/Configure + $(call perlmod/Configure,INC="-I${STAGING_DIR}/usr/include/PCSC" LIBS="-lpcsc",) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-chipcard-pcsc/install + $(call perlmod/Install,$(1),Chipcard/PCSC.pm Chipcard/PCSC auto/Chipcard/PCSC) +endef + + +$(eval $(call BuildPackage,perl-chipcard-pcsc)) diff --git a/package/perl/perl-crypt-openssl-guess/Makefile b/package/perl/perl-crypt-openssl-guess/Makefile new file mode 100644 index 0000000..dcf4bba --- /dev/null +++ b/package/perl/perl-crypt-openssl-guess/Makefile @@ -0,0 +1,64 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-crypt-guess +PKG_VERSION:=0.11 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/A/AK/AKIYM +PKG_SOURCE:=Crypt-OpenSSL-Guess-$(PKG_VERSION).tar.gz +PKG_HASH:=aa6b18e38cb852cbad80a58cd90c395b40819d4d01e0ab37e7703149094d7167 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/perl/Crypt-OpenSSL-Guess-$(PKG_VERSION) +HOST_BUILD_DEPENDS:=perl/host +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Crypt-OpenSSL-Guess-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/host-build.mk +include ../perl/perlmod.mk + +define Package/perl-crypt-openssl-guess + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=Perl OpenSSL Guess implementation + URL:=http://search.cpan.org/dist/Crypt-OpenSSL-Guess/ + DEPENDS:=perl +perlbase-essential +perlbase-xsloader +libopenssl +endef + +define Host/Configure + $(call perlmod/host/Configure,,,) +endef + +define Host/Compile + $(call perlmod/host/Compile,,) +endef + +define Host/Install + $(call perlmod/host/Install,$(1),) +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-crypt-openssl-guess/install + $(call perlmod/Install,$(1),Crypt/OpenSSL auto/Crypt/OpenSSL/Guess) +endef + + +$(eval $(call BuildPackage,perl-crypt-openssl-guess)) +$(eval $(call HostBuild)) diff --git a/package/perl/perl-crypt-openssl-random/Makefile b/package/perl/perl-crypt-openssl-random/Makefile new file mode 100644 index 0000000..f0cd9d1 --- /dev/null +++ b/package/perl/perl-crypt-openssl-random/Makefile @@ -0,0 +1,65 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-crypt-random +PKG_VERSION:=0.15 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/R/RU/RURBAN +PKG_SOURCE:=Crypt-OpenSSL-Random-$(PKG_VERSION).tar.gz +PKG_HASH:=f0876faa1ba3111e39b86aa730c603211eff2905e460c72a57b61e8cf475cef4 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/perl/Crypt-OpenSSL-Random-$(PKG_VERSION) +HOST_BUILD_DEPENDS:=perl/host perl-crypt-openssl-guess/host libopenssl/host +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Crypt-OpenSSL-Random-$(PKG_VERSION) +#PKG_BUILD_DEPENDS:=perl-crypt-openssl-guess/host libopenssl/host +PKG_BUILD_DEPENDS:=perl-crypt-openssl-guess/host + +include $(INCLUDE_DIR)/package.mk +#include $(INCLUDE_DIR)/host-build.mk +include ../perl/perlmod.mk + +define Package/perl-crypt-openssl-random + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=Perl OpenSSL Random implementation + URL:=http://search.cpan.org/dist/Crypt-OpenSSL-Random/ + DEPENDS:=perl +perlbase-essential +perlbase-xsloader +libopenssl +perl-crypt-openssl-guess +endef + +#define Host/Configure +# $(call perlmod/host/Configure,,,) +#endef + +#define Host/Compile +# $(call perlmod/host/Compile,,) +#endef + +#define Host/Install +# $(call perlmod/host/Install,$(1),) +#endef + +define Build/Configure + $(call perlmod/Configure,INC= LIBS="-lssl -lcrypto",) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-crypt-openssl-random/install + $(call perlmod/Install,$(1),Crypt/OpenSSL auto/Crypt/OpenSSL/Random) +endef + + +$(eval $(call BuildPackage,perl-crypt-openssl-random)) diff --git a/package/perl/perl-crypt-openssl-rsa/Makefile b/package/perl/perl-crypt-openssl-rsa/Makefile new file mode 100644 index 0000000..8aab1dc --- /dev/null +++ b/package/perl/perl-crypt-openssl-rsa/Makefile @@ -0,0 +1,51 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-crypt-openssl-rsa +PKG_VERSION:=0.31 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/T/TO/TODDR +PKG_SOURCE:=Crypt-OpenSSL-RSA-$(PKG_VERSION).tar.gz +PKG_HASH:=4173403ad4cf76732192099f833fbfbf3cd8104e0246b3844187ae384d2c5436 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/perl/Crypt-OpenSSL-RSA-$(PKG_VERSION) +HOST_BUILD_DEPENDS:=perl/host perl-crypt-openssl-guess/host libopenssl/host +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Crypt-OpenSSL-RSA-$(PKG_VERSION) +PKG_BUILD_DEPENDS:=perl-crypt-openssl-guess/host + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-crypt-openssl-rsa + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=Perl OpenSSL RSA implementation + URL:=http://search.cpan.org/dist/Crypt-OpenSSL-RSA/ + DEPENDS:=perl +perlbase-essential +perlbase-xsloader +libopenssl +perl-crypt-openssl-guess +perl-autoloader +endef + +define Build/Configure + $(call perlmod/Configure,INC= LIBS="-lssl -lcrypto",) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-crypt-openssl-rsa/install + $(call perlmod/Install,$(1),Crypt/OpenSSL auto/Crypt/OpenSSL/RSA) +endef + + +$(eval $(call BuildPackage,perl-crypt-openssl-rsa)) diff --git a/package/perl/perl-crypt-rsa/Makefile b/package/perl/perl-crypt-rsa/Makefile new file mode 100644 index 0000000..569032d --- /dev/null +++ b/package/perl/perl-crypt-rsa/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-crypt-rsa +PKG_VERSION:=1.99 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/V/VI/VIPUL +PKG_SOURCE:=Crypt-RSA-$(PKG_VERSION).tar.gz +PKG_HASH:=4706fd6605c920cd1c79f4afc0036b14e233620162b3957abe9b5f1be50b24be + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Crypt-RSA-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-crypt-rsa + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=A Pure Perl RSA implementatino + URL:=http://search.cpan.org/dist/Crypt-RSA/ + DEPENDS:=perl +perlbase-essential +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-crypt-rsa/install + $(call perlmod/Install,$(1),Crypt/RSA auto/Crypt/RSA) +endef + + +$(eval $(call BuildPackage,perl-crypt-rsa)) diff --git a/package/perl/perl-digest-sha256/Makefile b/package/perl/perl-digest-sha256/Makefile new file mode 100644 index 0000000..1f2f3fc --- /dev/null +++ b/package/perl/perl-digest-sha256/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2014 - 2016 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:=perl-digest-sha256 +PKG_VERSION:=0.01 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/D/DI/DIDO +PKG_SOURCE:=SHA256-$(PKG_VERSION)b.tar.gz +PKG_HASH:=72bbb1e31bbfe39e9df930e9b34bbac25e5d1617b7289076945aa303ad03c170 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/SHA256-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-digest-sha256 + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=A Pure Perl SH256 implementation + URL:=http://search.cpan.org/dist/Digest-SHA256/ + DEPENDS:=perl +perlbase-essential +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-digest-sha256/install + $(call perlmod/Install,$(1),Digest/SHA256.pm auto/Digest/SHA256) +endef + + +$(eval $(call BuildPackage,perl-digest-sha256)) diff --git a/package/perl/perl-digest-sha256/patches/fix-endian-idiocy.patch b/package/perl/perl-digest-sha256/patches/fix-endian-idiocy.patch new file mode 100644 index 0000000..b28ed79 --- /dev/null +++ b/package/perl/perl-digest-sha256/patches/fix-endian-idiocy.patch @@ -0,0 +1,50 @@ +diff -uNr SHA256-0.01/Makefile.PL SHA256-0.01/Makefile.PL +--- SHA256-0.01/Makefile.PL 2001-03-12 05:19:07.000000000 +0000 ++++ SHA256-0.01/Makefile.PL 2020-04-26 09:28:20.773363674 +0100 +@@ -19,14 +19,20 @@ + print EOUT <<"END_OF_STRING"; + + +-#ifndef ENDIAN_H +-#define ENDIAN_H ++#ifndef MY_ENDIAN_H ++#define MY_ENDIAN_H + + /* Warning! this file is automatically generated; changes WILL disappear */ + +-#define BYTEORDER $Config{'byteorder'} ++#include + +-#endif /* ENDIAN_H */ ++#if __BYTE_ORDER == __LITTLE_ENDIAN ++#define BYTEORDER 1234 ++#else ++#define BYTEORDER 4321 ++#endif ++ ++#endif /* MY_ENDIAN_H */ + END_OF_STRING + close EOUT + or die "error: unable to properly close 'endian.h'\n"; +diff -uNr SHA256-0.01/_sha256.c SHA256-0.01/_sha256.c +--- SHA256-0.01/_sha256.c 2001-03-12 07:14:08.000000000 +0000 ++++ SHA256-0.01/_sha256.c 2020-04-26 09:31:46.356338953 +0100 +@@ -16,6 +16,7 @@ + */ + + #include ++#include + #include "sha.h" + #include "endian.h" + +diff -uNr SHA256-0.01/sha384_512.c SHA256-0.01/sha384_512.c +--- SHA256-0.01/sha384_512.c 2001-03-16 04:35:15.000000000 +0000 ++++ SHA256-0.01/sha384_512.c 2020-04-26 09:31:50.576358988 +0100 +@@ -16,6 +16,7 @@ + */ + + #include ++#include + #include "sha512.h" + #include "endian.h" + diff --git a/package/perl/perl-sys-syslog/Makefile b/package/perl/perl-sys-syslog/Makefile new file mode 100644 index 0000000..68b2299 --- /dev/null +++ b/package/perl/perl-sys-syslog/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2015 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:=perl-sys-syslog +PKG_VERSION:=0.36 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=https://cpan.metacpan.org/authors/id/S/SA/SAPER +PKG_SOURCE:=Sys-Syslog-$(PKG_VERSION).tar.gz +PKG_HASH:=ed42a9e5ba04ad4856cc0cb5d38d289c3c5d3764543ec04efafc4af7e3378df8 + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=me + +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Sys-Syslog-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include ../../feeds/packages/perl/perlmod.mk + +define Package/perl-sys-syslog + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=Sys::Syslog + URL:=https://metacpan.org/pod/Sys::Syslog + DEPENDS:=perl +perlbase-essential +perlbase-file +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-sys-syslog/install + $(call perlmod/Install,$(1),Sys/Syslog.pm auto/Sys/Syslog) +endef + + +$(eval $(call BuildPackage,perl-sys-syslog)) diff --git a/package/perl/perl/perlmod.mk b/package/perl/perl/perlmod.mk new file mode 100644 index 0000000..56e412a --- /dev/null +++ b/package/perl/perl/perlmod.mk @@ -0,0 +1,2 @@ +include ../../feeds/packages/perl/perlmod.mk + diff --git a/package/perl/perl/perlver.mk b/package/perl/perl/perlver.mk new file mode 100644 index 0000000..d84830e --- /dev/null +++ b/package/perl/perl/perlver.mk @@ -0,0 +1,2 @@ +include ../../feeds/packages/perl/perlver.mk +