There are time that programs need to be notified of events from
subsystems that are not enumerated in the .json definition, e.g. QEMU
guest agent by default requires /dev/virtio-ports/org.qemu.guest_agent.0
which is a symlink to /dev/vportMpN from virtio-ports subsystem.

Signed-off-by: Yousong Zhou <yszhou4t...@gmail.com>
---
Changes from v1, now we depend on "isdir" support from libubox/json_script to
selectively hotplug-call only those subsystems we have handlers ready

For the record, the PR about qemu-ga is at
https://github.com/openwrt/packages/pull/2041

 package/system/procd/files/hotplug.json | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/package/system/procd/files/hotplug.json 
b/package/system/procd/files/hotplug.json
index 516a122..f9db402 100644
--- a/package/system/procd/files/hotplug.json
+++ b/package/system/procd/files/hotplug.json
@@ -69,18 +69,16 @@
                [ "button", "/etc/rc.button/%BUTTON%" ]
        ],
        [ "if",
-               [ "eq", "SUBSYSTEM",
-                       [ "net", "input", "usb", "usbmisc", "ieee1394", 
"block", "atm", "zaptel", "tty", "button", "sound" ]
-               ],
-               [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ]
-       ],
-       [ "if",
                [ "and",
                        [ "eq", "SUBSYSTEM", "usb-serial" ],
                        [ "regex", "DEVNAME",
                                [ "^ttyUSB", "^ttyACM" ]
-                       ],
+                       ]
                ],
-               [ "exec", "/sbin/hotplug-call", "tty" ]
+               [ "exec", "/sbin/hotplug-call", "tty" ],
+               [ "if",
+                       [ "isdir", "/etc/hotplug.d/%SUBSYSTEM%" ],
+                       [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ]
+               ]
        ],
 ]
-- 
2.6.4
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to