ASR_BASE
Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/external/subpack/net/nut/files/nut_serial.hotplug b/external/subpack/net/nut/files/nut_serial.hotplug
new file mode 100644
index 0000000..fa3bafe
--- /dev/null
+++ b/external/subpack/net/nut/files/nut_serial.hotplug
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+nut_serial() {
+ local cfg="$cfg"
+ local runas enable_usb_serial port
+ config_get_bool enable_usb_serial "$cfg" enable_usb_serial 0
+ config_get port "$cfg" port
+ config_get runas "$cfg" runas "nut"
+
+ [ -z "$runas" ] && config_get runas upsd runas "nut"
+
+ [ "$enable_usb_serial" -eq 1 ] && {
+ # If port is specified only change tty's matching port
+ if [ -n "$port" ] && [ "$port" != /dev/"$DEVNAME" ]; then
+ return 0
+ fi
+ [ -n "$runas" ] && chgrp "$(id -gn "${runas}")" /dev/"$DEVNAME"
+ chmod g+rw /dev/"$DEVNAME"
+ }
+}
+
+nut_on_hotplug_add() {
+ . "${IPKG_INSTROOT}"/lib/functions.sh
+
+ config load nut_server
+ config_foreach nut_serial driver
+}
+
+[ "$ACTION" = "add" ] && [ -n "$DEVNAME" ] && {
+ # On add of a serial port with name ttyUSB*
+ [ -z "${DEVNAME%ttyUSB*}" ] && nut_on_hutplug_add
+ # On add of a serial port with name ttyAMA*
+ [ -z "${DEVNAME%ttyAMA*}" ] && nut_on_hutplug_add
+}