+#ifdef DEBUG
+ {
+ struct udev_list_entry *list;
+ const char *name;
+
+ list = udev_device_get_properties_list_entry(dev);
+ name = udev_device_get_sysname(dev);
+
+ pb_debug("%s: action %s, device %s\n", __func__, action, name);
+ pb_debug("%s properties:\n", __func__);
+
+ for (; list; list = udev_list_entry_get_next(list))
+ pb_log("\t%-20s: %s\n", udev_list_entry_get_name(list),
+ udev_list_entry_get_value(list));
+ } while (0);
+#endif
+
+ if (!strcmp(action, "add"))
+ return udev_handle_dev_add(udev, dev);
+
+ else if (!strcmp(action, "remove"))
+ return udev_handle_dev_remove(udev, dev);
+
+ else if (!strcmp(action, "change"))
+ return udev_handle_dev_change(udev, dev);