Merge Mainline
This commit is contained in:
commit
b9ae8b7c93
@ -136,6 +136,10 @@ $(eval $(call SetupHostCommand,bzip2,Please install 'bzip2', \
|
||||
$(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \
|
||||
wget --version | grep GNU))
|
||||
|
||||
$(eval $(call SetupHostCommand,install,Please install GNU 'install', \
|
||||
install --version | grep GNU, \
|
||||
ginstall --version | grep GNU))
|
||||
|
||||
$(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \
|
||||
perl --version | grep "perl.*v5"))
|
||||
|
||||
|
||||
@ -21,6 +21,7 @@ PKG_MIRROR_HASH:=0eda0e774a87e58e611d6436350e1cf2be3de50fddde334909a07a15b0c9862
|
||||
|
||||
PKG_MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_FLAGS:=nonshared
|
||||
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=elfutils
|
||||
PKG_VERSION:=0.180
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
|
||||
@ -21,7 +21,7 @@ PKG_CPE_ID:=cpe:/a:elfutils_project:elfutils
|
||||
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_INSTALL:=1
|
||||
PKG_USE_MIPS16:=0
|
||||
PKG_USE_MIPS16:=1
|
||||
PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
@ -274,17 +274,21 @@ local api = require "luci.model.cbi.passwall.api.api"
|
||||
}
|
||||
url += params;
|
||||
} else if ((v_type === "Xray" && opt.get("protocol").value === "trojan") || v_type === "Trojan" || v_type === "Trojan-Plus" || v_type === "Trojan-Go") {
|
||||
if (v_type === "Xray" && opt.get("protocol").value === "trojan") {
|
||||
v_type = "trojan";
|
||||
}
|
||||
var v_password = opt.get(!opt.client && v_type === "Trojan-Go" ? "passwords" : "password");
|
||||
var v_server = opt.get("address");
|
||||
var v_port = opt.get("port");
|
||||
url = encodeURIComponent(v_password.value) +
|
||||
"@" + v_server.value +
|
||||
":" + v_port.value + "/?";
|
||||
var params = "";
|
||||
if (opt.get("tls").checked) {
|
||||
url += opt.query("sni", "tls_serverName");
|
||||
params += opt.query("sni", "tls_serverName");
|
||||
if (v_type !== "Trojan-Go") {
|
||||
url += "&tls=1"
|
||||
url += opt.query("allowinsecure", "tls_allowInsecure");
|
||||
params += "&tls=1"
|
||||
params += opt.query("allowinsecure", "tls_allowInsecure");
|
||||
}
|
||||
}
|
||||
if (v_type === "Trojan-Go") {
|
||||
@ -296,17 +300,17 @@ local api = require "luci.model.cbi.passwall.api.api"
|
||||
plugin.option = opt.get("plugin_option").value;
|
||||
plugin.arg = opt.getlist("plugin_arg");
|
||||
}
|
||||
url += "&plugin=" + encodeURIComponent(JSON.stringify(plugin));
|
||||
params += "&plugin=" + encodeURIComponent(JSON.stringify(plugin));
|
||||
}
|
||||
url += opt.query("type", "trojan_transport");
|
||||
params += opt.query("type", "trojan_transport");
|
||||
var ws = (opt.get("trojan_transport").value.indexOf("ws") !== -1);
|
||||
var h2 = (opt.get("trojan_transport").value.indexOf("h2") !== -1);
|
||||
if (ws) {
|
||||
url += opt.query("host", "ws_host");
|
||||
url += opt.query("path", "ws_path");
|
||||
params += opt.query("host", "ws_host");
|
||||
params += opt.query("path", "ws_path");
|
||||
} else if (h2) {
|
||||
url += opt.query("host", "h2_host");
|
||||
url += opt.query("path", "h2_path");
|
||||
params += opt.query("host", "h2_host");
|
||||
params += opt.query("path", "h2_path");
|
||||
}
|
||||
var enc = "none";
|
||||
if (opt.get("ss_aead").checked === true) {
|
||||
@ -314,9 +318,13 @@ local api = require "luci.model.cbi.passwall.api.api"
|
||||
opt.get("ss_aead_method").value +
|
||||
":" + opt.get("ss_aead_pwd").value;
|
||||
}
|
||||
url += "&encryption=" + encodeURIComponent(enc);
|
||||
params += "&encryption=" + encodeURIComponent(enc);
|
||||
}
|
||||
url += "#" + encodeURI(v_alias.value);
|
||||
params += "#" + encodeURI(v_alias.value);
|
||||
if (params[0] == "&") {
|
||||
params = params.substring(1);
|
||||
}
|
||||
url += params;
|
||||
}
|
||||
if (url) {
|
||||
url = v_type.toLowerCase() + "://" + url;
|
||||
@ -327,9 +335,9 @@ local api = require "luci.model.cbi.passwall.api.api"
|
||||
textarea.select();
|
||||
try {
|
||||
document.execCommand("copy"); // Security exception may be thrown by some browsers.
|
||||
s.innerHTML = "<font color='green'><%:Share url to clipboard successfully.%></font>";
|
||||
s.innerHTML = "<font color='green'><%:Share URL to clipboard successfully.%></font>";
|
||||
} catch (ex) {
|
||||
s.innerHTML = "<font color='red'><%:Share url to clipboard unable.%></font>";
|
||||
s.innerHTML = "<font color='red'><%:Share URL to clipboard unable.%></font>";
|
||||
} finally {
|
||||
document.body.removeChild(textarea);
|
||||
}
|
||||
|
||||
@ -466,10 +466,10 @@ msgstr "无效的分享URL信息"
|
||||
msgid "Paste Share URL Here"
|
||||
msgstr "在此处粘贴分享信息"
|
||||
|
||||
msgid "Share url to clipboard unable."
|
||||
msgid "Share URL to clipboard unable."
|
||||
msgstr "无法分享URL到剪贴板。"
|
||||
|
||||
msgid "Share url to clipboard successfully."
|
||||
msgid "Share URL to clipboard successfully."
|
||||
msgstr "成功复制分享URL到剪贴板。"
|
||||
|
||||
msgid "Faltal on get option, please help in debug:"
|
||||
|
||||
@ -48,7 +48,7 @@ comment() {
|
||||
|
||||
destroy_ipset() {
|
||||
for i in "$@"; do
|
||||
#ipset -q -F $i
|
||||
ipset -q -F $i
|
||||
ipset -q -X $i
|
||||
done
|
||||
}
|
||||
|
||||
@ -17,7 +17,7 @@ config_t_get() {
|
||||
echo ${ret:=$3}
|
||||
}
|
||||
|
||||
if [ "$(top -bn1 | grep -v grep | grep $CONFIG/monitor.sh | wc -l)" -gt 2 ]; then
|
||||
if [ "$(pgrep -f $CONFIG/monitor.sh | wc -l)" -gt 2 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -35,13 +35,12 @@ do
|
||||
#kcptun
|
||||
use_kcp=$(config_n_get $TCP_NODE use_kcp 0)
|
||||
if [ $use_kcp -gt 0 ]; then
|
||||
icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH/kcptun" | grep -i "tcp" | wc -l)
|
||||
if [ $icount = 0 ]; then
|
||||
if ! pgrep -af "$TMP_BIN_PATH/kcptun.*(tcp|TCP)" > /dev/null 2>&1; then
|
||||
/etc/init.d/$CONFIG restart
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
icount=$(top -bn1 | grep -v -E 'grep|kcptun' | grep "$TMP_BIN_PATH" | grep -i "TCP" | wc -l)
|
||||
icount=$(pgrep -af "$TMP_BIN_PATH.*(tcp|TCP)" | grep -v kcptun | wc -l)
|
||||
if [ $icount = 0 ]; then
|
||||
/etc/init.d/$CONFIG restart
|
||||
exit 0
|
||||
@ -55,8 +54,7 @@ do
|
||||
if [ "$UDP_NODE" != "nil" ]; then
|
||||
[ "$UDP_NODE" == "tcp" ] && continue
|
||||
[ "$UDP_NODE" == "tcp_" ] && UDP_NODE=$TCP_NODE
|
||||
icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH" | grep -i "UDP" | wc -l)
|
||||
if [ $icount = 0 ]; then
|
||||
if ! pgrep -af "$TMP_BIN_PATH.*(udp|UDP)" > /dev/null 2>&1; then
|
||||
/etc/init.d/$CONFIG restart
|
||||
exit 0
|
||||
fi
|
||||
@ -74,8 +72,7 @@ do
|
||||
fi
|
||||
|
||||
[ -f "$TMP_BIN_PATH/chinadns-ng" ] && {
|
||||
icount=$(top -bn1 | grep -v grep | grep $TMP_BIN_PATH/chinadns-ng | wc -l)
|
||||
if [ $icount = 0 ]; then
|
||||
if ! pgrep -x "$TMP_BIN_PATH/chinadns-ng" > /dev/null 2>&1; then
|
||||
/etc/init.d/$CONFIG restart
|
||||
exit 0
|
||||
fi
|
||||
@ -84,8 +81,7 @@ do
|
||||
#haproxy
|
||||
use_haproxy=$(config_t_get global_haproxy balancing_enable 0)
|
||||
if [ $use_haproxy -gt 0 ]; then
|
||||
icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH/haproxy" | wc -l)
|
||||
if [ $icount = 0 ]; then
|
||||
if ! pgrep -x "$TMP_BIN_PATH/haproxy" > /dev/null 2>&1; then
|
||||
/etc/init.d/$CONFIG restart
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@ -1,66 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2017 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:=ndpi-netfilter
|
||||
PKG_VERSION:=3.0
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/betolj/ndpi-netfilter
|
||||
PKG_MIRROR_HASH:=1a26ea73375a99831be6949faa9bc768e9f4f9e3594286729ec9e61dd6402b07
|
||||
PKG_SOURCE_VERSION:=4875069df027199698ba0b7c53541ae2a4e3ba00
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
define Package/iptables-mod-ndpi
|
||||
SUBMENU:=Firewall
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
TITLE:=nDPI successor of OpenDPI
|
||||
URL:=https://github.com/ntop/nDPI
|
||||
DEPENDS:=+iptables +iptables-mod-conntrack-extra +kmod-ipt-ndpi
|
||||
MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
|
||||
endef
|
||||
|
||||
define Package/iptables-mod-ndpi/description
|
||||
nDPI is a ntop-maintained superset of the popular OpenDPI library
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
$(call Build/Prepare/Default)
|
||||
$(TAR) -zxf $(PKG_BUILD_DIR)/nDPI.tar.gz -C $(PKG_BUILD_DIR)
|
||||
endef
|
||||
|
||||
MAKE_FLAGS +=\
|
||||
KERNEL_DIR="$(LINUX_DIR)" \
|
||||
ARCH="$(LINUX_KARCH)" \
|
||||
NDPI_PATH=$(PKG_BUILD_DIR)/nDPI \
|
||||
CROSS_COMPILE="$(TARGET_CROSS)" \
|
||||
all
|
||||
|
||||
define Package/iptables-mod-ndpi/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/iptables
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/ipt/libxt_ndpi.so $(1)/usr/lib/iptables
|
||||
endef
|
||||
|
||||
define KernelPackage/ipt-ndpi
|
||||
SUBMENU:=Netfilter Extensions
|
||||
TITLE:=nDPI netfilter module
|
||||
DEPENDS:=+kmod-nf-conntrack +kmod-nf-conntrack-netlink +kmod-ipt-compat-xtables
|
||||
FILES:= \
|
||||
$(PKG_BUILD_DIR)/src/xt_ndpi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,xt_ndpi)
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,iptables-mod-ndpi))
|
||||
$(eval $(call KernelPackage,ipt-ndpi))
|
||||
@ -1,126 +0,0 @@
|
||||
--- a/nDPI-patch/src/lib/protocols/netflow.c
|
||||
+++ b/nDPI-patch/src/lib/protocols/netflow.c
|
||||
@@ -21,6 +21,7 @@
|
||||
*/
|
||||
|
||||
|
||||
+#include <linux/version.h>
|
||||
#include "ndpi_api.h"
|
||||
|
||||
#ifdef NDPI_PROTOCOL_NETFLOW
|
||||
@@ -29,7 +30,11 @@
|
||||
#ifdef WIN32
|
||||
extern int gettimeofday(struct timeval * tp, struct timezone * tzp);
|
||||
#endif
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
#define do_gettimeofday(a) gettimeofday(a, NULL)
|
||||
+#else
|
||||
+#define ktime_get_real_ts64(a) gettimeofday(a, NULL)
|
||||
+#endif
|
||||
#endif
|
||||
|
||||
struct flow_ver1_rec {
|
||||
@@ -105,7 +110,11 @@ static void ndpi_check_netflow(struct ndpi_detection_module_struct *ndpi_struct,
|
||||
// const u_int8_t *packet_payload = packet->payload;
|
||||
u_int32_t payload_len = packet->payload_packet_len;
|
||||
time_t now;
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
struct timeval now_tv;
|
||||
+#else
|
||||
+ struct timespec64 now_tv;
|
||||
+#endif
|
||||
|
||||
if((packet->udp != NULL) && (payload_len >= 24)) {
|
||||
u_int16_t version = (packet->payload[0] << 8) + packet->payload[1], uptime_offset;
|
||||
@@ -158,7 +167,11 @@ static void ndpi_check_netflow(struct ndpi_detection_module_struct *ndpi_struct,
|
||||
_when = (u_int32_t*)&packet->payload[uptime_offset]; /* Sysuptime */
|
||||
when = ntohl(*_when);
|
||||
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
do_gettimeofday(&now_tv);
|
||||
+#else
|
||||
+ ktime_get_real_ts64(&now_tv);
|
||||
+#endif
|
||||
now = now_tv.tv_sec;
|
||||
|
||||
if(((version == 1) && (when == 0))
|
||||
--- a/src/main.c
|
||||
+++ b/src/main.c
|
||||
@@ -383,9 +383,16 @@ static void ndpi_gc_flow(void)
|
||||
union nf_inet_addr *ipdst;
|
||||
|
||||
u64 t1;
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
struct timeval tv;
|
||||
|
||||
do_gettimeofday(&tv);
|
||||
+#else
|
||||
+ struct timespec64 tv;
|
||||
+
|
||||
+ ktime_get_real_ts64(&tv);
|
||||
+#endif
|
||||
t1 = (uint64_t) tv.tv_sec;
|
||||
|
||||
if (debug_dpi) pr_info ("xt_ndpi: call garbage collector.\n");
|
||||
@@ -418,7 +425,11 @@ ndpi_process_packet(struct nf_conn * ct, const uint64_t time,
|
||||
|
||||
u8 exist_flow=0;
|
||||
u64 t1;
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
struct timeval tv;
|
||||
+#else
|
||||
+ struct timespec64 tv;
|
||||
+#endif
|
||||
|
||||
spin_lock_bh (&flow_lock);
|
||||
ipsrc = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3;
|
||||
@@ -449,7 +460,11 @@ ndpi_process_packet(struct nf_conn * ct, const uint64_t time,
|
||||
}
|
||||
}
|
||||
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
do_gettimeofday(&tv);
|
||||
+#else
|
||||
+ ktime_get_real_ts64(&tv);
|
||||
+#endif
|
||||
t1 = (uint64_t) tv.tv_sec;
|
||||
|
||||
if (flow == NULL) {
|
||||
@@ -602,7 +617,11 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par)
|
||||
|
||||
enum ip_conntrack_info ctinfo;
|
||||
struct nf_conn * ct;
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
struct timeval tv;
|
||||
+#else
|
||||
+ struct timespec64 tv;
|
||||
+#endif
|
||||
struct sk_buff *linearized_skb = NULL;
|
||||
const struct sk_buff *skb_use = NULL;
|
||||
|
||||
@@ -630,7 +649,7 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par)
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(3,0,0)
|
||||
} else if (nf_ct_is_untracked(skb)){
|
||||
#else
|
||||
- } else if (nf_ct_is_untracked(ct)){
|
||||
+ } else if (nf_ct_is_expired(ct)){
|
||||
#endif
|
||||
pr_info ("xt_ndpi: ignoring untracked sk_buff.\n");
|
||||
return false;
|
||||
@@ -641,9 +660,15 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par)
|
||||
ip = ip_hdr(skb_use);
|
||||
tcph = (const void *)ip + ip_hdrlen(skb_use);
|
||||
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
|
||||
do_gettimeofday(&tv);
|
||||
time = ((uint64_t) tv.tv_sec) * detection_tick_resolution +
|
||||
tv.tv_usec / (1000000 / detection_tick_resolution);
|
||||
+#else
|
||||
+ ktime_get_real_ts64(&tv);
|
||||
+ time = ((uint64_t) tv.tv_sec) * detection_tick_resolution +
|
||||
+ (tv.tv_nsec / 1000 )/ (1000000 / detection_tick_resolution);
|
||||
+#endif
|
||||
|
||||
/* reset for new packets and solve ct collisions */
|
||||
if (ctinfo == IP_CT_NEW) {
|
||||
@ -1,47 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2010-2013 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:=openvpn-easy-rsa-whisky
|
||||
|
||||
PKG_VERSION:=3.0.6
|
||||
PKG_RELEASE:=2
|
||||
PKG_SOURCE_URL:=https://github.com/OpenVPN/easy-rsa/releases/download/v$(PKG_VERSION)/
|
||||
PKG_SOURCE:=EasyRSA-unix-v$(PKG_VERSION).tgz
|
||||
PKG_HASH:=cb29aed2d27824e59dbaad547f11dcab380a53c9fe05681249e804af436f1396
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/EasyRSA-v$(PKG_VERSION)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/openvpn-easy-rsa-whisky
|
||||
TITLE:=CLI utility to build and manage a PKI CA.
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
URL:=http://openvpn.net
|
||||
SUBMENU:=VPN
|
||||
DEPENDS:=+openssl-util
|
||||
PKGARCH:=all
|
||||
endef
|
||||
|
||||
define Build/Configure
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/openvpn-easy-rsa-whisky/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/easyrsa $(1)/usr/bin/
|
||||
$(INSTALL_DIR) $(1)/etc/easy-rsa
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/openssl-easyrsa.cnf $(1)/etc/easy-rsa/openssl-easyrsa.cnf
|
||||
$(INSTALL_DIR) $(1)/etc/easy-rsa/x509-types
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/x509-types/* $(1)/etc/easy-rsa/x509-types/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,openvpn-easy-rsa-whisky))
|
||||
@ -1,11 +0,0 @@
|
||||
--- a/easyrsa
|
||||
+++ b/easyrsa
|
||||
@@ -549,7 +549,7 @@ current CA keypair. If you intended to s
|
||||
|
||||
# Default CN only when not in global EASYRSA_BATCH mode:
|
||||
# shellcheck disable=SC2015
|
||||
- [ "$EASYRSA_BATCH" ] && opts="$opts -batch" || export EASYRSA_REQ_CN="Easy-RSA CA"
|
||||
+ [ "$EASYRSA_BATCH" ] && opts="$opts -batch" || export EASYRSA_REQ_CN="${EASYRSA_REQ_CN:-Easy-RSA CA}"
|
||||
|
||||
out_key_tmp="$(mktemp "$out_key.XXXXXXXXXX")"; EASYRSA_TEMP_FILE_2="$out_key_tmp"
|
||||
out_file_tmp="$(mktemp "$out_file.XXXXXXXXXX")"; EASYRSA_TEMP_FILE_3="$out_file_tmp"
|
||||
@ -1,20 +0,0 @@
|
||||
--- a/easyrsa
|
||||
+++ b/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
|
||||
@ -14,7 +14,7 @@ PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=https://github.com/jow-/ucode.git
|
||||
PKG_SOURCE_DATE:=2021-03-19
|
||||
PKG_SOURCE_VERSION:=4a5b9010ccc56fdf288fe758023af445feb93fad
|
||||
PKG_MIRROR_HASH:=145a2ce69e14cae9b448de85b94c7a817ba3aea04b1611399186ad36fb88958e
|
||||
PKG_MIRROR_HASH:=2d15fe2f51ebdeae532a2e8130689400cf2364876e737cfbb1bf9c045719acf1
|
||||
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
||||
PKG_LICENSE:=ISC
|
||||
|
||||
|
||||
6
rules.mk
6
rules.mk
@ -75,12 +75,12 @@ IS_PACKAGE_BUILD := $(if $(filter package/%,$(BUILD_SUBDIR)),1)
|
||||
OPTIMIZE_FOR_CPU=$(subst i386,i486,$(ARCH))
|
||||
|
||||
ifneq (,$(findstring $(ARCH) , aarch64 aarch64_be powerpc ))
|
||||
FPIC:=-fPIC
|
||||
FPIC:=-DPIC -fPIC
|
||||
else
|
||||
FPIC:=-fpic
|
||||
FPIC:=-DPIC -fpic
|
||||
endif
|
||||
|
||||
HOST_FPIC:=-fPIC
|
||||
HOST_FPIC:=-DPIC -fPIC
|
||||
|
||||
ARCH_SUFFIX:=$(call qstrip,$(CONFIG_CPU_TYPE))
|
||||
GCC_ARCH:=
|
||||
|
||||
@ -281,6 +281,7 @@ foreach my $mirror (@ARGV) {
|
||||
}
|
||||
|
||||
unshift @mirrors, "http://182.140.223.146/dl";
|
||||
unshift @mirrors, "https://mirror01.download.immortalwrt.org/openwrt-18.06";
|
||||
unshift @mirrors, "https://openwrt.cc/dl/immortalwrt/openwrt-18.06";
|
||||
push @mirrors, 'https://sources.cdn.openwrt.org';
|
||||
push @mirrors, 'https://sources.openwrt.org';
|
||||
|
||||
@ -38,10 +38,9 @@ if output:
|
||||
"make",
|
||||
"--no-print-directory",
|
||||
"-C",
|
||||
"target/linux/{}".format(output["target"].split("/")[0]),
|
||||
"target/linux/",
|
||||
"val.DEFAULT_PACKAGES",
|
||||
"val.ARCH_PACKAGES",
|
||||
"DUMP=1",
|
||||
],
|
||||
stdout=PIPE,
|
||||
stderr=PIPE,
|
||||
@ -50,7 +49,8 @@ if output:
|
||||
universal_newlines=True,
|
||||
).stdout.splitlines()
|
||||
|
||||
output["default_packages"] = default_packages.split()
|
||||
output["default_packages"] = sorted(default_packages.split())
|
||||
|
||||
output_path.write_text(json.dumps(output, sort_keys=True, separators=(",", ":")))
|
||||
else:
|
||||
print("JSON info file script could not find any JSON files for target")
|
||||
|
||||
@ -37,8 +37,8 @@ TARGET_DEVICES += friendlyarm_nanopi-neo2
|
||||
|
||||
define Device/friendlyarm_nanopi-r1s-h5
|
||||
DEVICE_VENDOR := FriendlyARM
|
||||
DEVICE_MODEL:=Nanopi R1S H5
|
||||
DEVICE_PACKAGES:= kmod-eeprom-at24 kmod-gpio-button-hotplug kmod-leds-gpio \
|
||||
DEVICE_MODEL := Nanopi R1S H5
|
||||
DEVICE_PACKAGES := kmod-eeprom-at24 kmod-gpio-button-hotplug kmod-leds-gpio \
|
||||
kmod-rtl8189es kmod-usb2 kmod-usb-net-rtl8152 wpad-basic
|
||||
SUPPORTED_DEVICES:=nanopi-r1s-h5
|
||||
$(Device/sun50i-h5)
|
||||
|
||||
@ -31,7 +31,7 @@ new file mode 100644
|
||||
index 0000000000000..b2657201957eb
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-cpu-opp.dtsi
|
||||
@@ -0,0 +1,79 @@
|
||||
@@ -0,0 +1,91 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+// Copyright (C) 2020 Chen-Yu Tsai <wens@csie.org>
|
||||
+
|
||||
@ -93,6 +93,18 @@ index 0000000000000..b2657201957eb
|
||||
+ opp-microvolt = <1300000 1300000 1310000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1200000000 {
|
||||
+ opp-hz = /bits/ 64 <1200000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1310000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1248000000 {
|
||||
+ opp-hz = /bits/ 64 <1248000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1310000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
@ -0,0 +1,50 @@
|
||||
--- a/arch/arm/boot/dts/sun8i-h3.dtsi
|
||||
+++ b/arch/arm/boot/dts/sun8i-h3.dtsi
|
||||
@@ -60,11 +60,47 @@
|
||||
clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
};
|
||||
|
||||
+ opp@960000000 {
|
||||
+ opp-hz = /bits/ 64 <960000000>;
|
||||
+ opp-microvolt = <1200000 1200000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
opp-1008000000 {
|
||||
opp-hz = /bits/ 64 <1008000000>;
|
||||
opp-microvolt = <1200000 1200000 1300000>;
|
||||
clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
};
|
||||
+
|
||||
+ opp-1056000000 {
|
||||
+ opp-hz = /bits/ 64 <1056000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1104000000 {
|
||||
+ opp-hz = /bits/ 64 <1104000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1152000000 {
|
||||
+ opp-hz = /bits/ 64 <1152000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1200000000 {
|
||||
+ opp-hz = /bits/ 64 <1200000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
+
|
||||
+ opp-1248000000 {
|
||||
+ opp-hz = /bits/ 64 <1248000000>;
|
||||
+ opp-microvolt = <1300000 1300000 1300000>;
|
||||
+ clock-latency-ns = <244144>; /* 8 32k periods */
|
||||
+ };
|
||||
};
|
||||
|
||||
cpus {
|
||||
Loading…
Reference in New Issue
Block a user