mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-07-28 03:01:54 +08:00
51 lines
1.4 KiB
Bash
Executable File
51 lines
1.4 KiB
Bash
Executable File
#!/bin/sh /etc/rc.common
|
|
|
|
START=10
|
|
USE_PROCD=1
|
|
IFACE_PATH="/etc/hotplug.d/iface/90-hp-generator"
|
|
|
|
add_iface_rule() {
|
|
local enabled action command description interface
|
|
|
|
config_get enabled "$1" enabled
|
|
[ "$enabled" = "0" ] && continue
|
|
|
|
config_get action "$1" action
|
|
config_get description "$1" description
|
|
config_get interface "$1" interface
|
|
|
|
echo "#!/bin/sh" >> "$IFACE_PATH-$1"
|
|
echo "# Generated automatically, to change it use /etc/config/hotplug" >> "$IFACE_PATH-$1"
|
|
description=$(echo $description | tr '\n' ' ')
|
|
echo "# Description: $description" >> "$IFACE_PATH-$1"
|
|
echo "" >> "$IFACE_PATH-$1"
|
|
|
|
echo "if [ \"\$ACTION\" = \"$action\" ]; then" >> "$IFACE_PATH-$1"
|
|
echo " if [ \"\$INTERFACE\" = \"$interface\" ]; then" >> "$IFACE_PATH-$1"
|
|
|
|
command_list=$(uci -q get hotplug."$1".command)
|
|
[ "${command_list:0:1}" = "'" ] && command_list=$(echo ${command_list:1})
|
|
[ "${command_list: -1}" = "'" ] && command_list=$(echo ${command_list:0:-1})
|
|
i=0
|
|
while true ; do
|
|
i=$((i+1))
|
|
command=$(echo $command_list | awk -v i=$i -F "' '" '{print $i}')
|
|
[ -z "$command" ] && break
|
|
echo " $command" >> "$IFACE_PATH-$1"
|
|
done
|
|
|
|
echo " fi" >> "$IFACE_PATH-$1"
|
|
echo "fi" >> "$IFACE_PATH-$1"
|
|
echo "exit 0" >> "$IFACE_PATH-$1"
|
|
}
|
|
|
|
start_service() {
|
|
rm "$IFACE_PATH-"* 2>/dev/null
|
|
config_load hotplug
|
|
config_foreach add_iface_rule iface
|
|
}
|
|
|
|
service_triggers() {
|
|
procd_add_reload_trigger "hotplug"
|
|
}
|