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 29bb9b35c..cfb3beb6d 100755 --- a/luci-app-omr-bypass/root/etc/init.d/omr-bypass +++ b/luci-app-omr-bypass/root/etc/init.d/omr-bypass @@ -498,11 +498,19 @@ _bypass_proto_without_ndpi() { ALLIPS=$(sqlite3 /usr/share/omr-bypass/omr-bypass.db "select ip from ipproto where proto=\"$proto\";" ".exit") if [ -n "$ALLIPS" ]; then ipset -q flush bypass_$proto > /dev/null 2>&1 + ipset -q flush bypass6_$proto > /dev/null 2>&1 ipset -q --exist restore <<-EOF create bypass_$proto hash:net hashsize 64 + create bypass6_$proto hash:net hashsize 64 EOF for ip in $ALLIPS; do - ipset -q add bypass_$proto $ip + valid_ip4=$( valid_subnet4 $ip) + valid_ip6=$( valid_subnet6 $ip) + if [ "$valid_ip4" = "ok" ]; then + ipset -q add bypass_$proto $ip + elif [ "$valid_ip6" = "ok" ]; then + ipset -q add bypass6_$proto $ip + fi done if [ "$intf" = "all" ]; then if [ "$family" = "ipv4" ] || [ "$family" = "ipv4ipv6" ]; then @@ -516,7 +524,7 @@ _bypass_proto_without_ndpi() { if [ "$disableipv6" = "0" ] && ([ "$family" = "ipv6" ] || [ "$family" = "ipv4ipv6" ]); then $IP6TABLESRESTORE -w --wait=60 --noflush <<-EOF *mangle - -A omr-bypass6-dpi -m set --match-set bypass_$proto dst -j MARK --set-mark 0x6539 + -A omr-bypass6-dpi -m set --match-set bypass6_$proto dst -j MARK --set-mark 0x6539 -A omr-bypass6-dpi -m mark --mark 0x6539 -j RETURN COMMIT EOF @@ -533,7 +541,7 @@ _bypass_proto_without_ndpi() { if [ "$disableipv6" = "0" ] && ([ "$family" = "ipv6" ] || [ "$family" = "ipv4ipv6" ]); then $IP6TABLESRESTORE -w --wait=60 --noflush <<-EOF *mangle - -A omr-bypass6-dpi -m set --match-set bypass_$proto dst -j MARK --set-mark 0x6539$intfid + -A omr-bypass6-dpi -m set --match-set bypass6_$proto dst -j MARK --set-mark 0x6539$intfid -A omr-bypass6-dpi -m mark --mark 0x6539$intfid -j RETURN COMMIT EOF diff --git a/mptcp/files/usr/share/omr/post-tracking.d/050-rutx b/mptcp/files/usr/share/omr/post-tracking.d/050-rutx index c815264a9..c4a2bc2dc 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/050-rutx +++ b/mptcp/files/usr/share/omr/post-tracking.d/050-rutx @@ -93,3 +93,38 @@ if [ -n "$(grep RUTX /etc/board.json)" ] && [ -z "$(grep RUTX50 /etc/board.json) fi fi fi +if [ -n "$(grep RUTX /etc/board.json)" ] && [ -n "$(grep RUTX50 /etc/board.json)" ] && [ -n "$OMR_TRACKER_DEVICE" ]; then + if [ "$OMR_TRACKER_DEVICE" = "wwan0" ]; then + modemdata=$(omr-modemmanager '/sys/devices/platform/soc/8af8800.usb3/8a00000.dwc3/xhci-hcd.0.auto/usb2/2-1' all) + gen=$(echo $modemdata | cut -d ';' -f 5 | tr -d '\n') + if [ "$gen" = "gsm" ]; then + echo "default-on" > /sys/class/leds/green:3g/trigger + echo "none" > /sys/class/leds/green:4g/trigger + echo "none" > /sys/class/leds/green:5g/trigger + elif [ "$gen" = "umts" ]; then + echo "none" > /sys/class/leds/green:3g/trigger + echo "default-on" > /sys/class/leds/green:4g/trigger + echo "none" > /sys/class/leds/green:5g/trigger + elif [ "$gen" = "lte" ]; then + echo "none" > /sys/class/leds/green:3g/trigger + echo "none" > /sys/class/leds/green:4g/trigger + echo "default-on" > /sys/class/leds/green:5g/trigger + fi + bar=$(echo $modemdata | cut -d ';' -f 1 | tr -d '\n') + if [ "$bar" -gt "10" ]; then + echo "default-on" > /sys/class/leds/green:rssi0/trigger + else + echo "none" > /sys/class/leds/green:rssi0/trigger + fi + if [ "$bar" -gt "50" ]; then + echo "default-on" > /sys/class/leds/green:rssi1/trigger + else + echo "none" > /sys/class/leds/green:rssi1/trigger + fi + if [ "$bar" -gt "70" ]; then + echo "default-on" > /sys/class/leds/green:rssi2/trigger + else + echo "none" > /sys/class/leds/green:rssi2/trigger + fi + fi +fi diff --git a/omr-tracker/files/bin/omr-tracker-ss b/omr-tracker/files/bin/omr-tracker-ss index c1f00a345..82b7ad3ce 100755 --- a/omr-tracker/files/bin/omr-tracker-ss +++ b/omr-tracker/files/bin/omr-tracker-ss @@ -166,7 +166,7 @@ while true; do /etc/init.d/shadowsocks-libev restart sleep 5 fi - if [ "$type" = "rust" ] && [ "$(pgrep ss-redir)" = "" ] && [ "$(uci -q get shadowsocks-libev.${server}.key)" != "" ]; then + if [ "$type" = "rust" ] && [ "$(pgrep sslocal)" = "" ] && [ "$(uci -q get shadowsocks-libev.${server}.key)" != "" ]; then _log "Can't find shadowsocks rust, restart it..." /etc/init.d/shadowsocks-rust restart sleep 5 diff --git a/omr-tracker/files/etc/init.d/omr-tracker b/omr-tracker/files/etc/init.d/omr-tracker index 9a78b2378..31be2a0d5 100755 --- a/omr-tracker/files/etc/init.d/omr-tracker +++ b/omr-tracker/files/etc/init.d/omr-tracker @@ -243,7 +243,7 @@ _launch_shadowsocks_tracker() { procd_append_param env "OMR_TRACKER_TRIES=$tries" procd_append_param env "OMR_TRACKER_INTERVAL=$interval" procd_append_param env "OMR_TRACKER_PROXY=127.0.0.1:$local_port" - procd_append_param env "OMR_TRACKER_WAIT_TEST=$type" + procd_append_param env "OMR_TRACKER_WAIT_TEST=$wait_test" procd_append_param env "OMR_TRACKER_SERVER=$server" procd_append_param env "OMR_TRACKER_SS_TYPE=libev" procd_set_param limits nofile="51200 51200" @@ -277,7 +277,7 @@ _launch_shadowsocks_rust_tracker() { procd_append_param env "OMR_TRACKER_TRIES=$tries" procd_append_param env "OMR_TRACKER_INTERVAL=$interval" procd_append_param env "OMR_TRACKER_PROXY=127.0.0.1:$local_port" - procd_append_param env "OMR_TRACKER_WAIT_TEST=$type" + procd_append_param env "OMR_TRACKER_WAIT_TEST=$wait_test" procd_append_param env "OMR_TRACKER_SERVER=$server" procd_append_param env "OMR_TRACKER_SS_TYPE=rust" procd_set_param limits nofile="51200 51200" diff --git a/openmptcprouter/files/etc/uci-defaults/2060-omr-system b/openmptcprouter/files/etc/uci-defaults/2060-omr-system index fbb1a6912..ec8de8d5b 100755 --- a/openmptcprouter/files/etc/uci-defaults/2060-omr-system +++ b/openmptcprouter/files/etc/uci-defaults/2060-omr-system @@ -39,7 +39,50 @@ fi EOF } -if [ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep rutx)" ] && [ -z "$(uci show system | grep WAN_ETH)" ]; then +if [ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep rutx50)" ] && [ -z "$(uci show system | grep WAN_ETH)" ]; then + uci -q batch <<-EOF >/dev/null + add system led + set system.@led[-1].sysfs='green:eth' + set system.@led[-1].name='WAN_ETH' + set system.@led[-1].trigger='netdev' + set system.@led[-1].dev='eth0' + add_list system.@led[-1].mode='tx' + add_list system.@led[-1].mode='rx' + add system led + set system.@led[-1].sysfs='green:wifi' + set system.@led[-1].name='WAN_WIFI' + set system.@led[-1].trigger='netdev' + add_list system.@led[-1].mode='tx' + add_list system.@led[-1].mode='rx' + add system led + set system.@led[-1].sysfs='green:sim1' + set system.@led[-1].name='WAN_MODEM1' + set system.@led[-1].trigger='netdev' + set system.@led[-1].dev='wwan0' + set system.@led[-1].mode='rx' + add system led + set system.@led[-1].name='WAN_MODEM2' + set system.@led[-1].sysfs='green:sim2' + set system.@led[-1].trigger='netdev' + set system.@led[-1].dev='wwan1' + set system.@led[-1].mode='rx' + add system led + set system.@led[-1].name='WIFI24' + set system.@led[-1].sysfs='green:wifi2g' + set system.@led[-1].trigger='netdev' + set system.@led[-1].dev='radio0.network1' + add_list system.@led[-1].mode='tx' + add_list system.@led[-1].mode='rx' + add system led + set system.@led[-1].name='WIFI5' + set system.@led[-1].sysfs='green:wifi5g' + set system.@led[-1].trigger='netdev' + set system.@led[-1].dev='radio1.network1' + add_list system.@led[-1].mode='tx' + add_list system.@led[-1].mode='rx' + commit system + EOF +elif [ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep rutx)" ] && [ -z "$(uci show system | grep WAN_ETH)" ]; then uci -q batch <<-EOF >/dev/null add system led set system.@led[-1].sysfs='wan_wifi_4'