diff --git a/luci-app-firewall/Makefile b/luci-app-firewall/Makefile index 9d308b0e1..372169986 100644 --- a/luci-app-firewall/Makefile +++ b/luci-app-firewall/Makefile @@ -10,6 +10,7 @@ LUCI_TITLE:=Firewall and Portforwarding application LUCI_DEPENDS:=+firewall PKG_LICENSE:=Apache-2.0 +PKG_VERSION:=omr-202103 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/luci-app-https-dns-proxy/Makefile b/luci-app-https-dns-proxy/Makefile index 80b150c5b..c6f2da879 100644 --- a/luci-app-https-dns-proxy/Makefile +++ b/luci-app-https-dns-proxy/Makefile @@ -11,6 +11,7 @@ LUCI_DESCRIPTION:=Provides Web UI for DNS Over HTTPS Proxy LUCI_DEPENDS:=+luci-compat +luci-mod-admin-full +https-dns-proxy LUCI_PKGARCH:=all PKG_RELEASE:=3 +PKG_VERSION:=omr-202103 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/luci-app-omr-bypass/root/etc/init.d/omr-bypass b/luci-app-omr-bypass/root/etc/init.d/omr-bypass index 128d42e2b..119e8f4e5 100755 --- a/luci-app-omr-bypass/root/etc/init.d/omr-bypass +++ b/luci-app-omr-bypass/root/etc/init.d/omr-bypass @@ -179,7 +179,7 @@ _bypass_lan_ip() { -A omr-bypass-local -s $ip -j MARK --set-mark 0x539 COMMIT EOF - elif [ "$valid_ip6" = "ok" ]; then + elif [ "$valid_ip6" = "ok" ] && [ "$disableipv6" = "0" ]; then ip6tables-restore -w --wait=60 --noflush <<-EOF *mangle -A omr-bypass6 -s $ip -j MARK --set-mark 0x6539 @@ -198,7 +198,7 @@ _bypass_lan_ip() { -A omr-bypass-local -s $ip -j MARK --set-mark 0x539$intfid COMMIT EOF - elif [ "$valid_ip6" = "ok" ]; then + elif [ "$valid_ip6" = "ok" ] && [ "$disableipv6" = "0" ]; then ip6tables-restore -w --wait=60 --noflush <<-EOF *mangle -A omr-bypass6 -s $ip -j MARK --set-mark 0x6539$intfid diff --git a/luci-app-omr-tracker/luasrc/model/cbi/omr-tracker.lua b/luci-app-omr-tracker/luasrc/model/cbi/omr-tracker.lua index 3484b1afa..8717e1e82 100644 --- a/luci-app-omr-tracker/luasrc/model/cbi/omr-tracker.lua +++ b/luci-app-omr-tracker/luasrc/model/cbi/omr-tracker.lua @@ -127,12 +127,12 @@ o.default = false o.disabled = 0 o.enabled = 1 -o = s:option(DynamicList, "hosts", translate("Hosts"),translate("Must be IPs and not domains")) +o = s:option(DynamicList, "hosts", translate("Hosts"), translate("Must be IPs and not domains")) o.placeholder = "4.2.2.1" o.default = { "4.2.2.1", "8.8.8.8" } o.rmempty = false -o = s:option(DynamicList, "hosts6", translate("Hosts IPv6"),translate("Must be IPs and not domains")) +o = s:option(DynamicList, "hosts6", translate("Hosts IPv6"), translate("Must be IPs and not domains")) o.placeholder = "2001:4860:4860::8844" o.default = { "2001:4860:4860::8888", "2001:4860:4860::8844" } o.rmempty = false @@ -188,11 +188,13 @@ o.default = false o.disabled = 0 o.enabled = 1 - -o = s:option(DynamicList, "hosts", translate("Hosts")) +o = s:option(DynamicList, "hosts", translate("Hosts"), translate("Must be IPs and not domains")) o.placeholder = "4.2.2.1" o.default = { "4.2.2.1", "8.8.8.8" } o.rmempty = false +o = s:option(DynamicList, "hosts6", translate("Hosts IPv6"), translate("Must be IPs and not domains")) +o.placeholder = "2001:4860:4860::8844" +o.rmempty = false return m diff --git a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua index 98963fc69..000f6f953 100644 --- a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua +++ b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua @@ -583,10 +583,15 @@ function wizard_add() if default_proxy == "shadowsocks" and serversnb > disablednb then ucic:set("shadowsocks-libev","sss" .. nbip,"disabled","0") end + nbip = nbip + 1 if disableipv6 == "1" and nbip > 0 then + ucic:set("shadowsocks-libev","sss" .. nbip,"disabled","1") break end - nbip = nbip + 1 + end + if nbip == 1 then + --ucic:set("shadowsocks-libev","sss" .. nbip,"server",server_ip) + ucic:set("shadowsocks-libev","sss" .. nbip,"disabled","1") end end k = k + 1 @@ -621,6 +626,10 @@ function wizard_add() break end end + if nbip == 1 then + -- ucic:set("shadowsocks-libev","sss" .. nbip,"server",server_ip) + ucic:set("shadowsocks-libev","sss" .. nbip,"disabled","1") + end end end end diff --git a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter index fe110bdfd..10cd90834 100755 --- a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter +++ b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter @@ -62,7 +62,8 @@ omr_set_settings() { config_get type "$1" type config_get ipv6 "$1" ipv6 config_get addlatency "$1" addlatency - [ -z "$multipath" ] || [ "$multipath" = "off" ] && [ "$1" != "omrvpn" ] && [ "$1" != "glorytun" ] && return + [ -z "$multipath" ] || [ "$multipath" = "off" ] && return + [ "$1" = "omrvpn" ] || [ "$1" = "glorytun" ] && return uci -q set openmptcprouter.$1=interface uci -q set openmptcprouter.$1.multipath="$multipath" @@ -86,13 +87,13 @@ omr_set_settings() { fi if [ "$addlatency" = "0" ] && [ "$(tc qdisc show dev $ifname | grep delay)" != "" ]; then - tc qdisc del dev ${ifname} root netem + tc qdisc del dev ${ifname} root netem 2>&1 >/dev/null fi if [ "$addlatency" != "0" ]; then if [ "$(tc qdisc show dev $ifname | grep delay)" != "" ]; then - tc qdisc add dev ${ifname} root netem delay ${addlatency}ms + tc qdisc add dev ${ifname} root netem delay ${addlatency}ms 2>&1 >/dev/null elif [ "$(tc qdisc show dev $ifname | awk '/delay/ { print $10 }' | sed 's/ms//')" != "$addlatency" ]; then - tc qdisc replace dev ${ifname} root netem delay ${addlatency}ms + tc qdisc replace dev ${ifname} root netem delay ${addlatency}ms 2>&1 >/dev/null fi fi fi diff --git a/luci-app-shadowsocks-libev/Makefile b/luci-app-shadowsocks-libev/Makefile index 29955e933..6a19308fb 100644 --- a/luci-app-shadowsocks-libev/Makefile +++ b/luci-app-shadowsocks-libev/Makefile @@ -11,6 +11,7 @@ LUCI_TITLE:=LuCI Support for shadowsocks-libev LUCI_DEPENDS:=+luci-compat PKG_LICENSE:=Apache-2.0 +PKG_VERSION:=omr-202103 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/luci-proto-modemmanager/Makefile b/luci-proto-modemmanager/Makefile index 37d96f118..8d968ff7e 100644 --- a/luci-proto-modemmanager/Makefile +++ b/luci-proto-modemmanager/Makefile @@ -8,6 +8,7 @@ include $(TOPDIR)/rules.mk LUCI_TITLE:=Support for ModemManager LUCI_DEPENDS:=+modemmanager +PKG_VERSION:=omr-202103 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/mptcp/files/etc/hotplug.d/iface/30-mptcp b/mptcp/files/etc/hotplug.d/iface/30-mptcp index a28c5eb12..c37447553 100644 --- a/mptcp/files/etc/hotplug.d/iface/30-mptcp +++ b/mptcp/files/etc/hotplug.d/iface/30-mptcp @@ -5,6 +5,10 @@ /etc/init.d/mptcp enabled || exit 0 -logger -t "mptcp" "Reloading mptcp config due to $ACTION of $INTERFACE ($DEVICE)" -/etc/init.d/mptcp reload "$DEVICE" >/dev/null || exit 0 +if [ -z "$(echo $DEVICE | grep oip | grep gre)" ]; then + logger -t "mptcp" "Reloading mptcp config due to $ACTION of $INTERFACE ($DEVICE)" + /etc/init.d/mptcp reload "$DEVICE" >/dev/null || exit 0 +else + multipath $DEVICE off 2>&1 >/dev/null +fi diff --git a/mptcp/files/etc/init.d/mptcp b/mptcp/files/etc/init.d/mptcp index 663c5cc91..059da16aa 100755 --- a/mptcp/files/etc/init.d/mptcp +++ b/mptcp/files/etc/init.d/mptcp @@ -206,7 +206,7 @@ interface_multipath_settings() { commit network EOF else - ip rule del table $id > /dev/null 2>&1 + [ -n "$(ip rule list | grep $id)" ] && ip rule del table $id > /dev/null 2>&1 ip route flush $id > /dev/null 2>&1 fi @@ -239,10 +239,10 @@ interface_multipath_settings() { else #echo "Add routes for $ipaddr table $id" ip rule add from $ipaddr table $id pref 0 - ip route replace $network/$netmask dev $iface scope link metric $id - ip route replace $network/$netmask dev $iface scope link table $id - ip route replace default via $gateway dev $iface table $id - ip route replace default via $gateway dev $iface metric $id + ip route replace $network/$netmask dev $iface scope link metric $id 2>&1 >/dev/null + ip route replace $network/$netmask dev $iface scope link table $id 2>&1 >/dev/null + ip route replace default via $gateway dev $iface table $id 2>&1 >/dev/null + ip route replace default via $gateway dev $iface metric $id 2>&1 >/dev/null #ip route flush $id fi @@ -250,7 +250,7 @@ interface_multipath_settings() { #[ "$mode" = "" ] && mode="$(uci -q get openmptcprouter.${config}.multipath)" [ "$mode" = "master" ] && { #echo "ip route replace default via $gateway dev $iface" - ip route replace default via $gateway dev $iface + ip route replace default via $gateway dev $iface 2>&1 >/dev/null } if [ "$txqueuelen" != "" ]; then ifconfig $iface txqueuelen $txqueuelen > /dev/null 2>&1 @@ -294,7 +294,7 @@ interface_multipath_settings() { commit network EOF else - ip -6 rule del table 6$id > /dev/null 2>&1 + [ -n "$(ip -6 rule list | grep 6$id)" ] && ip -6 rule del table 6$id > /dev/null 2>&1 ip -6 route flush 6$id > /dev/null 2>&1 fi if [ -n "$ip6addr" ] && [ -n "$gateway6" ] && [ -n "$network6" ]; then @@ -322,17 +322,17 @@ interface_multipath_settings() { commit network EOF else - ip -6 rule add from $ip6addr table 6$id pref 0 - ip -6 route replace $network6/$netmask6 dev $iface scope link metric 6$id - ip -6 route replace $network6/$netmask6 dev $iface scope link table 6$id - ip -6 route replace default via $gateway6 dev $iface table 6$id - ip -6 route replace default via $gateway6 dev $iface metric $id - ip -6 route flush 6$id + ip -6 rule add from $ip6addr table 6$id pref 0 2>&1 >/dev/null + ip -6 route replace $network6/$netmask6 dev $iface scope link metric 6$id 2>&1 >/dev/null + ip -6 route replace $network6/$netmask6 dev $iface scope link table 6$id 2>&1 >/dev/null + ip -6 route replace default via $gateway6 dev $iface table 6$id 2>&1 >/dev/null + ip -6 route replace default via $gateway6 dev $iface metric 6$id 2>&1 >/dev/null + ip -6 route flush 6$id 2>&1 >/dev/null fi #config_get mode "$config" multipath "off" [ "$mode" = "master" ] && { - ip -6 route replace default via $gateway6 dev $iface + ip -6 route replace default via $gateway6 dev $iface 2>&1 >/dev/null } #[ "$mode" = "off" ] && { # ifconfig $iface txqueuelen 50 > /dev/null 2>&1 @@ -386,7 +386,7 @@ add_route() { [ -n "$(echo $iface | grep '@')" ] && iface=$(ifstatus "$interface" | jsonfilter -q -e '@["device"]') routeset="$routeset dev $iface" logger -t "MPTCP" "Add route $routeset" - ip route replace $routeset + ip route replace $routeset 2>&1 >/dev/null } add_route6() { @@ -407,7 +407,7 @@ add_route6() { [ -n "$(echo $iface | grep '@')" ] && iface=$(ifstatus "$interface" | jsonfilter -q -e '@["device"]') routeset="$routeset dev $iface" logger -t "MPTCP" "Add IPv6 route $routeset" - ip -6 route replace $routeset + ip -6 route replace $routeset 2>&1 >/dev/null } remove() { diff --git a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking index b254f88b9..48789ac86 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking +++ b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking @@ -28,8 +28,8 @@ set_route() { fi if [ "$interface_gw" != "" ] && [ "$interface_if" != "" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "$PREVINTERFACE down. Replace default route by $interface_gw dev $interface_if" - [ "$SETDEFAULT" = "yes" ] && ip route replace default scope global nexthop via $interface_gw dev $interface_if - ip route replace default via $interface_gw dev $interface_if table 991337 && SETROUTE=true + [ "$SETDEFAULT" = "yes" ] && ip route replace default scope global nexthop via $interface_gw dev $interface_if 2>&1 >/dev/null + ip route replace default via $interface_gw dev $interface_if table 991337 2>&1 >/dev/null && SETROUTE=true fi fi } @@ -62,8 +62,8 @@ set_route6() { fi if [ "$interface_gw" != "" ] && [ "$interface_if" != "" ] && [ -n "$(echo $interface_gw | grep ':')" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "$PREVINTERFACE down. Replace default route by $interface_gw dev $interface_if" - [ "$SETDEFAULT" = "yes" ] && ip -6 route replace default scope global nexthop via $interface_gw dev $interface_if - ip -6 route replace default via $interface_gw dev $interface_if table 991337 && SETROUTE=true + [ "$SETDEFAULT" = "yes" ] && ip -6 route replace default scope global nexthop via $interface_gw dev $interface_if 2>&1 >/dev/null + ip -6 route replace default via $interface_gw dev $interface_if table 991337 2>&1 >/dev/null && SETROUTE=true fi fi } @@ -84,7 +84,7 @@ set_server_default_route() { if [ "$(ip r show $serverip | grep nexthop)" != "" ]; then ip r delete $serverip >/dev/null 2>&1 fi - ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric 1 + ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric 1 2>&1 >/dev/null fi } config_list_foreach $server ip server_route @@ -106,7 +106,7 @@ set_server_default_route6() { if [ "$(ip -6 r show $serverip | grep nexthop)" != "" ]; then ip -6 r delete $serverip >/dev/null 2>&1 fi - ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric 1 + ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric 1 2>&1 >/dev/null fi } config_list_foreach $server ip server_route @@ -121,7 +121,7 @@ delete_server_default_route() { [ "$disabled" = "1" ] && return if [ "$serverip" != "" ] && [ "$(ip route show $serverip metric 1)" != "" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Delete server ($serverip) default route" - ip route del $serverip metric 1 >/dev/null 2>&1 + [ -n "$(ip route show $serverip metric 1)" ] && ip route del $serverip metric 1 >/dev/null 2>&1 fi } config_list_foreach $server ip delete_route @@ -136,7 +136,7 @@ delete_server_default_route6() { [ "$disabled" = "1" ] && return if [ "$serverip" != "" ] && [ "$(ip -6 route show $serverip metric 1)" != "" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Delete server ($serverip) default route" - ip -6 route del $serverip metric 1 >/dev/null 2>&1 + [ -n "$(ip -6 route show $serverip metric 1)" ] && ip -6 route del $serverip metric 1 >/dev/null 2>&1 fi } config_list_foreach $server ip delete_route @@ -387,17 +387,17 @@ set_server_all_routes() { config_foreach set_routes_intf interface uintf="$(echo $routesintf | awk '{print $5}')" uintfb="$(echo $routesintfbackup | awk '{print $5}')" - if [ -n "$routesintf" ] && ([ "$nbintf" -gt "1" ] && [ "$(ip r show $serverip metric 0 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintf " ]) || ([ "$nbintf" = "1" ] && [ -n "$uintf" ] && [ "$(ip r show $serverip metric 1 | grep $uintf)" = "" ]); then + if [ -n "$routesintf" ] && ([ "$nbintf" -gt "1" ] && [ "$(ip r show $serverip metric 1 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintf " ]) || ([ "$nbintf" = "1" ] && [ -n "$uintf" ] && [ "$(ip r show $serverip metric 1 | grep $uintf)" = "" ]); then while [ "$(ip r show $serverip | grep -v nexthop | sed 's/ //g' | tr -d '\n')" != "$serverip" ] && [ "$(ip r show $serverip | grep -v nexthop | sed 's/ //g' | tr -d '\n')" != "" ]; do ip r del $serverip done [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) default route $serverip $routesintf" - ip route replace $serverip scope global metric 1 $routesintf + ip route replace $serverip scope global metric 1 $routesintf 2>&1 >/dev/null [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "New server route is $(ip r show $serverip metric 1 | tr -d '\t' | tr -d '\n')" fi if [ -n "$routesintfbackup" ] && ([ "$nbintfb" -gt "1" ] && [ "$(ip r show $serverip metric 999 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintfbackup " ]) || ([ "$nbintfb" = "1" ] && [ -n "$uintfb" ] && [ "$(ip r show $serverip metric 999 | grep $uintfb)" = "" ]); then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) backup default route $serverip $routesintfbackup nbintfb $nbintfb $OMR_TRACKER_DEVICE" - ip route replace $serverip scope global metric 999 $routesintfbackup + ip route replace $serverip scope global metric 999 $routesintfbackup 2>&1 >/dev/null fi fi } @@ -429,17 +429,17 @@ set_server_all_routes6() { config_foreach set_routes_intf6 interface uintf="$(echo $routesintf6 | awk '{print $5}')" uintfb="$(echo $routesintfbackup6 | awk '{print $5}')" - if [ -n "$routesintf6" ] && ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show $serverip metric 0 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintf6 " ]) || ([ "$nbintf6" = "1" ] && [ -n "$uintf" ] && [ "$(ip -6 r show $serverip metric 1 | grep $uintf)" = "" ]); then + if [ -n "$routesintf6" ] && ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show $serverip metric 1 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintf6 " ]) || ([ "$nbintf6" = "1" ] && [ -n "$uintf" ] && [ "$(ip -6 r show $serverip metric 1 | grep $uintf)" = "" ]); then while [ "$(ip -6 r show $serverip | grep -v nexthop | sed 's/ //g' | tr -d '\n')" != "$serverip" ] && [ "$(ip -6 r show $serverip | grep -v nexthop | sed 's/ //g' | tr -d '\n')" != "" ]; do ip -6 r del $serverip done [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) default route $serverip $routesintf6" - ip -6 route replace $serverip scope global metric 1 $routesintf6 + ip -6 route replace $serverip scope global metric 1 $routesintf6 2>&1 >/dev/null [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "New server route is $(ip -6 r show $serverip metric 1 | tr -d '\t' | tr -d '\n')" fi if [ -n "$routesintfbackup6" ] && ([ "$nbintfb6" -gt "1" ] && [ "$(ip -6 r show $serverip metric 999 | tr -d '\t' | tr -d '\n')" != "$serverip $routesintfbackup6 " ]) || ([ "$nbintfb6" = "1" ] && [ -n "$uintfb" ] && [ "$(ip -6 r show $serverip metric 999 | grep $uintfb)" = "" ]); then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) backup default route $serverip $routesintfbackup6 nbintfb $nbintfb6 $OMR_TRACKER_DEVICE" - ip -6 route replace $serverip scope global metric 999 $routesintfbackup6 + ip -6 route replace $serverip scope global metric 999 $routesintfbackup6 2>&1 >/dev/null fi fi } @@ -471,12 +471,12 @@ set_server_route() { #if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric $metric | grep $serverip | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$multipath_current_config" = "" ]; then if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric $metric | grep $serverip | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric" - ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric + ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric 2>&1 >/dev/null fi } config_list_foreach $server ip server_route if [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then - ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric + ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric 2>&1 >/dev/null fi } @@ -503,12 +503,12 @@ set_server_route6() { #if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY6" != "" ] && [ "$(ip -6 route show dev $OMR_TRACKER_DEVICE metric $metric | grep $serverip | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$multipath_current_config" = "" ]; then if [ "$serverip" != "" ] && [ "$OMR_TRACKER_DEVICE_GATEWAY6" != "" ] && [ "$(ip -6 route show dev $OMR_TRACKER_DEVICE metric $metric | grep $serverip | grep $OMR_TRACKER_DEVICE_GATEWAY6)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric" - ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric + ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric 2>&1 >/dev/null fi } config_list_foreach $server ip server_route if [ "$OMR_TRACKER_DEVICE_GATEWAY6" != "" ] && [ "$(ip -6 route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY6)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then - ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric + ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric 2>&1 >/dev/null fi } @@ -520,14 +520,14 @@ del_server_route() { [ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE" local metric metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric) - ip route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 - ip route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip route show $serverip dev $OMR_TRACKER_DEVICE metric $metric)" ] && ip route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 + [ -n "$(ip route show $serverip dev $OMR_TRACKER_DEVICE)" ] && ip route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 } config_list_foreach $server ip remove_route if [ -n "$OMR_TRACKER_DEVICE_GATEWAY" ]; then - ip route del default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip route show default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE)" ] && ip route del default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 else - ip route del default dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip route show default dev $OMR_TRACKER_DEVICE)" ] && ip route del default dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 fi } @@ -539,14 +539,14 @@ del_server_route6() { [ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE" local metric metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric) - ip -6 route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 - ip -6 route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip -6 route show $serverip dev $OMR_TRACKER_DEVICE metric $metric)" ] && ip -6 route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 + [ -n "$(ip -6 route show $serverip dev $OMR_TRACKER_DEVICE)" ] && ip -6 route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 } config_list_foreach $server ip remove_route if [ -n "$OMR_TRACKER_DEVICE_GATEWAY6" ]; then - ip -6 route del default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip -6 route show default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE)" ] && ip -6 route del default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 else - ip -6 route del default dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 + [ -n "$(ip -6 route show default dev $OMR_TRACKER_DEVICE)" ] && ip -6 route del default dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 fi } @@ -738,7 +738,7 @@ fi if [ "$OMR_TRACKER_INTERFACE" = "glorytun" ] || [ "$OMR_TRACKER_INTERFACE" = "omrvpn" ]; then if ([ "$default_gw" != "$OMR_TRACKER_DEVICE_GATEWAY" ] || [ "$default_gw" = "" ]) && [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ]; then _log "Tunnel up : Replace default route by $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE" - ip route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE + ip route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE 2>&1 >/dev/null if [ "$(pgrep openmptcprouter-vps)" = "" ]; then /etc/init.d/openmptcprouter-vps restart >/dev/null 2>&1 fi @@ -836,7 +836,7 @@ if [ "$multipath_config" = "master" ]; then omrvpn_intf=$(uci -q get "network.omrvpn.ifname" || echo "tun") if [ -n "$omrvpn_intf" ] && [ "$(ip route show default | awk '/default/ {print $5}' | grep $omrvpn_intf)" = "" ] && [ "$(uci -q get openmptcprouter.settings.defaultgw)" != "0" ]; then _log "Master up : Replace default route by $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE" - ip route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE + ip route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE 2>&1 >/dev/null fi config_load openmptcprouter #if [ "$(uci -q get openmptcprouter.settings.master)" = "balancing" ]; then @@ -849,7 +849,7 @@ if [ "$multipath_config" = "master" ]; then omrvpn_intf=$(uci -q get "network.omrvpn.ifname" || echo "tun") if [ -n "$omrvpn_intf" ] && [ "$(ip route show default | awk '/default/ {print $5}' | grep $omrvpn_intf)" = "" ] && [ "$(uci -q get openmptcprouter.settings.defaultgw)" != "0" ]; then _log "Master up : Replace default route by $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE" - ip -6 route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE + ip -6 route replace default scope global nexthop via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE 2>&1 >/dev/null fi config_load openmptcprouter #if [ "$(uci -q get openmptcprouter.settings.master)" = "balancing" ]; then @@ -871,36 +871,36 @@ if [ "$multipath_config" = "master" ]; then config_foreach set_route_balancing interface config_foreach set_route_balancing6 interface [ -n "$routesbalancing" ] && { - ([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 0 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing " ]) || ([ "$nbintf" = "1" ] && ([ "$(ip r show default metric 0 | grep $OMR_TRACKER_DEVICE)" = "" ] || [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" = "1" ]) && [ -n "$OMR_TRACKER_DEVICE_IP" ]) && { + ([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 1 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing " ]) || ([ "$nbintf" = "1" ] && ([ "$(ip r show default metric 1 | grep $OMR_TRACKER_DEVICE)" = "" ] || [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" = "1" ]) && [ -n "$OMR_TRACKER_DEVICE_IP" ]) && { _log "Set ip route replace default scope global $routesbalancing" - ip route replace default scope global metric 0 $routesbalancing + ip route replace default scope global metric 1 $routesbalancing 2>&1 >/dev/null } } [ -n "$routesbalancing6" ] && { ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 1 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 1 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP6" ]) && { _log "Set ip -6 route replace default scope global metric 1 $routesbalancing6" - ip -6 route replace default scope global metric 1 $routesbalancing6 + ip -6 route replace default scope global metric 1 $routesbalancing6 2>&1 >/dev/null } } [ -n "$routesbalancingbackup" ] && { ([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup " ]) || ([ "$nbintf" = "1" ] && ([ "$(ip r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ] || [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.vpn)" = "1" ]) && [ -n "$OMR_TRACKER_DEVICE_IP" ]) && { _log "Set backup ip route replace default scope global $routesbalancingbackup" - ip route replace default scope global metric 999 $routesbalancingbackup + ip route replace default scope global metric 999 $routesbalancingbackup 2>&1 >/dev/null } } [ -n "$routesbalancingbackup6" ] && { ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP6" ]) && { _log "Set backup ip -6 route replace default scope global $routesbalancingbackup6" - ip -6 route replace default scope global metric 999 $routesbalancingbackup6 + ip -6 route replace default scope global metric 999 $routesbalancingbackup6 2>&1 >/dev/null } } fi fi if [ -n "$OMR_TRACKER_DEVICE_GATEWAY" ] && [ -n "$OMR_TRACKER_DEVICE" ] && [ "$(ip r show table 991337)" != "default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE " ]; then - ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE table 991337 + ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE table 991337 2>&1 >/dev/null fi if [ -n "$OMR_TRACKER_DEVICE_GATEWAY6" ] && [ -n "$OMR_TRACKER_DEVICE" ] && [ "$(ip -6 r show table 991337)" != "default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE " ]; then - ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE table 991337 + ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE table 991337 2>&1 >/dev/null fi if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(date +"%s") + $((10 + RANDOM % 31)) - $(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc))) -gt 3600 ] || [ "$(uci -q show openmptcprouter | grep get_config=\'1\')" != "" ] || [ "$(uci -q show openmptcprouter | grep admin_error=\'1\')" != "" ]; then [ "$(pgrep openmptcprouter-vps)" = "" ] && /etc/init.d/openmptcprouter-vps restart >/dev/null 2>&1 diff --git a/msmtp/Makefile b/msmtp/Makefile index 7c62d6923..d4588bbcf 100644 --- a/msmtp/Makefile +++ b/msmtp/Makefile @@ -1,6 +1,7 @@ # # Copyright (C) 2009 David Cooper # Copyright (C) 2009-2016 OpenWrt.org +# Copyright (C) 2021 Ycarus (Yannick Chabanois) for OpenMPTCProuter # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,21 +10,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:=msmtp -PKG_VERSION:=1.6.8 +PKG_VERSION:=1.8.14 PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://marlam.de/msmtp/releases -PKG_HASH:=55ff95a304d888b56d07d9c62327ab9bfe26532c9c2a2ed6aefc43bea1b659fb +PKG_HASH:=d56f065d711486e9c234618515a02a48a48dab4051b34f3e108fbecb6fb773b4 -PKG_LICENSE:=GPL-3.0+ +PKG_MAINTAINER:= +PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE_FILES:=COPYING -PKG_MAINTAINER:=Nicolas Thill +PKG_CPE_ID:=cpe:/a:marlam:msmtp -PKG_FIXUP:=autoreconf PKG_INSTALL:=1 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk @@ -33,7 +33,7 @@ define Package/msmtp/Default CATEGORY:=Mail DEPENDS:=$(INTL_DEPENDS) TITLE:=Simple sendmail SMTP forwarding - URL:=http://msmtp.sourceforge.net/ + URL:=https://marlam.de/msmtp endef define Package/msmtp/Default/description @@ -46,9 +46,10 @@ endef define Package/msmtp $(call Package/msmtp/Default) - DEPENDS+= +libopenssl +ca-bundle + DEPENDS+= +libgnutls +ca-bundle TITLE+= (with SSL support) VARIANT:=ssl + DEFAULT_VARIANT:=1 endef define Package/msmtp/conffiles @@ -64,6 +65,7 @@ define Package/msmtp-nossl $(call Package/msmtp/Default) TITLE+= (without SSL support) VARIANT:=nossl + PROVIDES:=msmtp endef define Package/msmtp-nossl/description @@ -75,7 +77,9 @@ define Package/msmtp-mta $(call Package/msmtp/Default) TITLE+= (as MTA) DEPENDS+=+msmtp -# DEPENDS+=@(PACKAGE_msmtp||PACKAGE_msmtp-nossl) + ALTERNATIVES:=\ + 100:/usr/sbin/sendmail:/usr/bin/msmtp \ + 100:/usr/lib/sendmail:/usr/bin/msmtp endef define Package/msmtp-mta/description @@ -86,7 +90,7 @@ endef define Package/msmtp-queue $(call Package/msmtp/Default) - DEPENDS+= +bash @(PACKAGE_msmtp||PACKAGE_msmtp-nossl) + DEPENDS+= +bash +msmtp TITLE+= (queue scripts) endef @@ -102,21 +106,12 @@ CONFIGURE_ARGS += \ --without-libidn \ --without-libsecret \ --without-macosx-keyring \ - -ifneq ($(CONFIG_USE_UCLIBC),) - CONFIGURE_ARGS += --disable-gai-idn -endif - -MAKE_FLAGS := + --without-msmtpd ifeq ($(BUILD_VARIANT),ssl) - CONFIGURE_ARGS += \ - --with-tls=openssl -endif - -ifeq ($(BUILD_VARIANT),nossl) - CONFIGURE_ARGS += \ - --with-tls=no + CONFIGURE_ARGS += --with-tls=openssl +else + CONFIGURE_ARGS += --without-tls endif define Package/msmtp/install @@ -129,8 +124,6 @@ endef define Package/msmtp-mta/install $(INSTALL_DIR) $(1)/usr/sbin $(1)/usr/lib - ln -sf ../bin/msmtp $(1)/usr/sbin/sendmail - ln -sf ../bin/msmtp $(1)/usr/lib/sendmail endef Package/msmtp-nossl/conffiles = $(Package/msmtp/conffiles) diff --git a/omr-6in4/files/etc/init.d/omr-6in4 b/omr-6in4/files/etc/init.d/omr-6in4 index e9ef23296..907be1c4c 100755 --- a/omr-6in4/files/etc/init.d/omr-6in4 +++ b/omr-6in4/files/etc/init.d/omr-6in4 @@ -18,7 +18,7 @@ set_ipv6_state() { local disable_ipv6="$(uci -q get openmptcprouter.settings.disable_ipv6)" [ -z "$disable_ipv6" ] && disable_ipv6="1" #previous=$(sysctl -qn net.ipv6.conf.all.disable_ipv6 | tr -d "\n") - previous="$(uci get network.lan.ipv6)" + previous="$(uci -q get network.lan.ipv6)" #sysctl -qw net.ipv6.conf.all.disable_ipv6=$disable_ipv6 #sed -i "s:^net.ipv6.conf.all.disable_ipv6=[0-9]*:net.ipv6.conf.all.disable_ipv6=$disable_ipv6:" /etc/sysctl.d/zzz_openmptcprouter.conf sed -i "s:^net.ipv6.conf.all.disable_ipv6=[0-9]*::" /etc/sysctl.d/zzz_openmptcprouter.conf @@ -40,6 +40,8 @@ set_ipv6_state() { delete dhcp.lan.ra_default delete dhcp.lan.ra_management delete dhcp.lan.ra_preference + unbound.ub_main.protocol='ip4_only' + commit unbound del_list v2ray.main.inbounds="omr6" commit v2ray EOF @@ -50,6 +52,7 @@ set_ipv6_state() { commit dhcp commit shadowsocks-libev EOF + [ ! -f /etc/wgetrc ] && cp /etc/wgetrc4 /etc/wgetrc else logger -t "omr-6in4" "Enable IPv6" uci -q batch <<-EOF >/dev/null @@ -66,6 +69,8 @@ set_ipv6_state() { set network.omr6in4.force_link=1 set network.omr6in4.metric=1 delete network.omr6in4.auto + unbound.ub_main.protocol='mixed' + commit unbound EOF if [ "$(network.lan.ip6assign)" = "" ]; then uci -q set network.lan.ip6assign='60' @@ -92,6 +97,7 @@ set_ipv6_state() { EOF /etc/init.d/v2ray restart fi + rm -f /etc/wgetrc fi /etc/init.d/odhcpd restart if [ "$previous" != "1" ]; then diff --git a/omr-tracker/files/bin/omr-tracker b/omr-tracker/files/bin/omr-tracker index f9e4fa504..47e308993 100755 --- a/omr-tracker/files/bin/omr-tracker +++ b/omr-tracker/files/bin/omr-tracker @@ -359,7 +359,7 @@ while true; do _dns "$OMR_TRACKER_HOST" "$OMR_TRACKER_DEVICE_IP" "yes" statusb=$? fi - ip route del "$OMR_TRACKER_HOST" via "$OMR_TRACKER_DEVICE_GATEWAY" dev "$OMR_TRACKER_DEVICE" src "$OMR_TRACKER_DEVICE_IP" > /dev/null 2>&1 + [ -n "$(ip route show ${OMR_TRACKER_HOST} via ${OMR_TRACKER_DEVICE_GATEWAY} dev ${OMR_TRACKER_DEVICE} src ${OMR_TRACKER_DEVICE_IP})" ] && ip route del "$OMR_TRACKER_HOST" via "$OMR_TRACKER_DEVICE_GATEWAY" dev "$OMR_TRACKER_DEVICE" src "$OMR_TRACKER_DEVICE_IP" > /dev/null 2>&1 if $(exit $statusb); then OMR_TRACKER_STATUS_MSG="" OMR_TRACKER_STATUS="OK" diff --git a/openmptcprouter/files/etc/uci-defaults/1930-omr-shadowsocks b/openmptcprouter/files/etc/uci-defaults/1930-omr-shadowsocks index 91a0ad9cc..f47a4200c 100755 --- a/openmptcprouter/files/etc/uci-defaults/1930-omr-shadowsocks +++ b/openmptcprouter/files/etc/uci-defaults/1930-omr-shadowsocks @@ -57,10 +57,19 @@ if [ "$(uci -q get shadowsocks-libev.hi3)" != "" ]; then uci -q batch <<-EOF >/dev/null set shadowsocks-libev.hi$c.local_port=$port set shadowsocks-libev.hi$c.server=sss0 + set shadowsocks-libev.hi$((c+1))=ss_redir set shadowsocks-libev.hi$((c+1)).local_address="::" set shadowsocks-libev.hi$((c+1)).local_port=$port set shadowsocks-libev.hi$((c+1)).local_address="::" set shadowsocks-libev.hi$((c+1)).server=sss1 + set shadowsocks-libev.hi$((c+1)).mode=tcp_and_udp + set shadowsocks-libev.hi$((c+1)).timeout=1000 + set shadowsocks-libev.hi$((c+1)).fast_open=1 + set shadowsocks-libev.hi$((c+1)).reuse_port=1 + set shadowsocks-libev.hi$((c+1)).syslog=1 + set shadowsocks-libev.hi$((c+1)).mptcp=1 + set shadowsocks-libev.hi$((c+1)).no_delay=1 + set shadowsocks-libev.hi$((c+1)).verbose=0 commit shadowsocks-libev EOF port=$((port+1)) diff --git a/openmptcprouter/files/etc/wgetrc b/openmptcprouter/files/etc/wgetrc4 similarity index 100% rename from openmptcprouter/files/etc/wgetrc rename to openmptcprouter/files/etc/wgetrc4 diff --git a/protobuf/Makefile b/protobuf/Makefile index c93527f05..cc314bbea 100644 --- a/protobuf/Makefile +++ b/protobuf/Makefile @@ -8,31 +8,32 @@ include $(TOPDIR)/rules.mk PKG_NAME:=protobuf -PKG_VERSION:=3.5.1 -PKG_RELEASE:=1 +PKG_VERSION:=3.14.0 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-cpp-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/google/protobuf/releases/download/v$(PKG_VERSION) -PKG_HASH:=c28dba8782da2cfea1e11c61d335958c31a9c1bc553063546af9cbe98f204092 +PKG_HASH:=50ec5a07c0c55d4ec536dd49021f2e194a26bfdbc531d03d1e9d4d3e27175659 +PKG_MAINTAINER:=Ken Keys PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE +PKG_CPE_ID:=cpe:/a:google:protobuf -PKG_BUILD_DEPENDS:=protobuf/host -PKG_USE_MIPS16:=0# MIPS16 prevents protobuf's usage of the 'sync' asm-opcode - -PKG_INSTALL:=1 +HOST_BUILD_PARALLEL:=1 +PKG_BUILD_PARALLEL:=1 +CMAKE_SOURCE_SUBDIR:=cmake include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk +include $(INCLUDE_DIR)/cmake.mk define Package/protobuf/Default SECTION:=libs CATEGORY:=Libraries TITLE:=A structured data encoding library URL:=https://github.com/google/protobuf - DEPENDS:=+zlib +libpthread +libstdcpp - MAINTAINER:=Ken Keys + DEPENDS:=+zlib +libpthread +libatomic +libstdcpp endef define Package/protobuf @@ -65,20 +66,28 @@ This package provides the libprotobuf-lite library. endef -CONFIGURE_ARGS += --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc +CMAKE_HOST_OPTIONS += \ + -Dprotobuf_BUILD_PROTOC_BINARIES=ON \ + -Dprotobuf_BUILD_TESTS=OFF \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_SKIP_RPATH=OFF \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_INSTALL_RPATH="${STAGING_DIR_HOSTPKG}/lib" + +CMAKE_OPTIONS += \ + -Dprotobuf_BUILD_PROTOC_BINARIES=ON \ + -Dprotobuf_BUILD_TESTS=OFF \ + -Dprotobuf_WITH_ZLIB=ON \ + -DBUILD_SHARED_LIBS=ON + +TARGET_LDFLAGS += -latomic $(if $(CONFIG_USE_GLIBC),-lm) define Build/InstallDev - $(INSTALL_DIR) \ - $(1)/usr/lib \ - $(1)/usr/include - - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/* \ - $(1)/usr/include/ - - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/* \ - $(1)/usr/lib/ + $(call Build/InstallDev/cmake,$(1)) + $(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/protobuf.pc + $(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/protobuf.pc + $(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/protobuf-lite.pc + $(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/protobuf-lite.pc endef define Package/protobuf-lite/install diff --git a/shadowsocks-libev/Makefile b/shadowsocks-libev/Makefile index 25f8e750c..4f09cf2ba 100644 --- a/shadowsocks-libev/Makefile +++ b/shadowsocks-libev/Makefile @@ -1,6 +1,6 @@ # # Copyright (C) 2017-2018 Yousong Zhou -# Copyright (C) 2018-2019 Ycarus (Yannick Chabanois) +# Copyright (C) 2018-2021 Ycarus (Yannick Chabanois) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -15,7 +15,7 @@ include $(TOPDIR)/rules.mk # PKG_NAME:=shadowsocks-libev PKG_VERSION:=3.3.5 -PKG_RELEASE:=2 +PKG_RELEASE:=10 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(PKG_VERSION) diff --git a/v2ray-core/files/usr/bin/v2ray-rules b/v2ray-core/files/usr/bin/v2ray-rules index 98978f12e..25f435cc9 100755 --- a/v2ray-core/files/usr/bin/v2ray-rules +++ b/v2ray-core/files/usr/bin/v2ray-rules @@ -112,7 +112,7 @@ v2r_rules_parse_args() { __errmsg "Requires at least -l or -L option" return 1 fi - if [ -n "$o_dst_forward_recentrst" ] && ! iptables -m recent -h >/dev/null; then + if [ -n "$o_dst_forward_recentrst" ] && ! iptables -w -m recent -h >/dev/null; then __errmsg "Please install iptables-mod-conntrack-extra with opkg" return 1 fi @@ -166,7 +166,7 @@ v2r_rules_iptchains_init() { } v2r_rules_iptchains_init_mark() { - if [ "$(iptables -t mangle -L PREROUTING | grep ss_rules_dst_bypass_all)" = "" ]; then + if [ "$(iptables -w -t mangle -L PREROUTING | grep ss_rules_dst_bypass_all)" = "" ]; then iptables-restore -w --noflush <<-EOF *mangle -A PREROUTING -m set --match-set ss_rules_dst_bypass_all dst -j MARK --set-mark 0x539 diff --git a/v2ray-core/files/usr/bin/v2ray-rules6 b/v2ray-core/files/usr/bin/v2ray-rules6 index 5e1714110..c62b50ba0 100755 --- a/v2ray-core/files/usr/bin/v2ray-rules6 +++ b/v2ray-core/files/usr/bin/v2ray-rules6 @@ -95,7 +95,7 @@ v2ray_rules6_parse_args() { __errmsg "Requires at least -l or -L option" return 1 fi - if [ -n "$o_dst_forward_recentrst" ] && ! ip6tables -m recent -h >/dev/null; then + if [ -n "$o_dst_forward_recentrst" ] && ! ip6tables -w -m recent -h >/dev/null; then __errmsg "Please install ip6tables-mod-conntrack-extra with opkg" return 1 fi