procd: hotplug.json: allow passing hotplug events from all subsystems
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 26 Feb 2016 08:35:43 +0000 (08:35 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 26 Feb 2016 08:35:43 +0000 (08:35 +0000)
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 <yszhou4tech@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@48799 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/system/procd/files/hotplug.json

index 516a122..e2f1604 100644 (file)
                ]
        } ],
        [ "if",
-               [ "eq", "SUBSYSTEM", "platform" ],
-               [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ]
-       ],
-       [ "if",
                [ "and",
                        [ "has", "BUTTON" ],
                        [ "eq", "SUBSYSTEM", "button" ],
                [ "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%" ]
+               ]
        ],
 ]