From ed3bc7e666fd31668f9fccd35f04aeb53334bf1a Mon Sep 17 00:00:00 2001 From: "Ycarus (Yannick Chabanois)" Date: Wed, 15 Jan 2025 10:59:41 +0100 Subject: [PATCH 1/2] Fix VPN device detection in omr-tracker --- omr-tracker/files/bin/omr-tracker | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/omr-tracker/files/bin/omr-tracker b/omr-tracker/files/bin/omr-tracker index 534ea2fee..6bf1573a9 100755 --- a/omr-tracker/files/bin/omr-tracker +++ b/omr-tracker/files/bin/omr-tracker @@ -298,12 +298,12 @@ while true; do OMR_TRACKER_DEVICE_GATEWAY6= serverip_ping=false [ -z "$OMR_TRACKER_DEVICE" ] || [ -d "/sys/class/net/$OMR_TRACKER_DEVICE" ] && { - #network_get_physdev OMR_TRACKER_DEVICE "$OMR_TRACKER_INTERFACE" - #[ -z "$OMR_TRACKER_DEVICE" ] && network_get_device OMR_TRACKER_DEVICE "$OMR_TRACKER_INTERFACE" [ -z "$OMR_TRACKER_DEVICE" ] && OMR_TRACKER_DEVICE=$(ifstatus "$OMR_TRACKER_INTERFACE" | jsonfilter -q -e '@["l3_device"]') [ -z "$OMR_TRACKER_DEVICE" ] && OMR_TRACKER_DEVICE=$(ifstatus "${OMR_TRACKER_INTERFACE}_4" | jsonfilter -q -e '@["l3_device"]') #[ -z "$OMR_TRACKER_DEVICE" ] && config_get OMR_TRACKER_DEVICE "$OMR_TRACKER_INTERFACE" device [ -n "$(echo $OMR_TRACKER_DEVICE | grep '@')" ] && OMR_TRACKER_DEVICE=$(ifstatus "$OMR_TRACKER_INTERFACE" | jsonfilter -q -e '@["device"]') + [ -z "$OMR_TRACKER_DEVICE" ] && network_get_physdev OMR_TRACKER_DEVICE "$OMR_TRACKER_INTERFACE" + [ -z "$OMR_TRACKER_DEVICE" ] && network_get_device OMR_TRACKER_DEVICE "$OMR_TRACKER_INTERFACE" } if [ -n "$OMR_TRACKER_DEVICE" ] && [ -d "/sys/class/net/$OMR_TRACKER_DEVICE" ]; then From fafc6a9cbbc7f5a25efddd05768995b9b7ea0c28 Mon Sep 17 00:00:00 2001 From: "Ycarus (Yannick Chabanois)" Date: Wed, 15 Jan 2025 11:01:25 +0100 Subject: [PATCH 2/2] Reload omr-tracker in case of VPN interface change --- .../files/etc/hotplug.d/iface/40-omr-tracker | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 omr-tracker/files/etc/hotplug.d/iface/40-omr-tracker diff --git a/omr-tracker/files/etc/hotplug.d/iface/40-omr-tracker b/omr-tracker/files/etc/hotplug.d/iface/40-omr-tracker new file mode 100644 index 000000000..06c71e029 --- /dev/null +++ b/omr-tracker/files/etc/hotplug.d/iface/40-omr-tracker @@ -0,0 +1,13 @@ +#!/bin/sh +[ "$ACTION" = ifup -o "$ACTION" = ifupdate -o "$ACTION" = ifdown -o "$ACTION" = iflink ] || exit 0 + +/etc/init.d/omr-tracker enabled || exit 0 + +if [ "$ACTION" = ifup -o "$ACTION" = ifupdate -o "$ACTION" = iflink ]; then + #if [ "$(uci -q get network.${INTERFACE}.multipath)" = "on" ] || [ "$(uci -q get network.${INTERFACE}.multipath)" = "master" ]; then + if [ "$INTERFACE" = "omrvpn" ]; then + logger -t "OMR-Tracker" "Reloading OMR-Tracker due to $ACTION of $INTERFACE ($DEVICE)" + /etc/init.d/omr-tracker restart "$INTERFACE" >/dev/null || exit 0 + fi +fi +