chiark / gitweb /
libudev: monitor - export filter_update()
[elogind.git] / udev / lib / libudev.h
index be09ddb75a331c2cad155eb3c7f7fb4ad1cd9fe9..236e43bc3cc0672091663e086c6f21d999d22802 100644 (file)
@@ -76,18 +76,17 @@ extern const char *udev_device_get_sysattr_value(struct udev_device *udev_device
 
 /* udev and kernel device events */
 struct udev_monitor;
-enum udev_monitor_netlink_group {
-       UDEV_MONITOR_KERNEL     = 1,
-       UDEV_MONITOR_UDEV       = 2,
-};
 extern struct udev_monitor *udev_monitor_new_from_socket(struct udev *udev, const char *socket_path);
-extern struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev, enum udev_monitor_netlink_group group);
+extern struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev, const char *name);
 extern int udev_monitor_enable_receiving(struct udev_monitor *udev_monitor);
 extern struct udev_monitor *udev_monitor_ref(struct udev_monitor *udev_monitor);
 extern void udev_monitor_unref(struct udev_monitor *udev_monitor);
 extern struct udev *udev_monitor_get_udev(struct udev_monitor *udev_monitor);
 extern int udev_monitor_get_fd(struct udev_monitor *udev_monitor);
 extern struct udev_device *udev_monitor_receive_device(struct udev_monitor *udev_monitor);
+extern int udev_monitor_filter_add_match_subsystem_devtype(struct udev_monitor *udev_monitor, const char *subsystem, const char *devtype);
+extern int udev_monitor_filter_update(struct udev_monitor *udev_monitor);
+extern int udev_monitor_filter_remove(struct udev_monitor *udev_monitor);
 
 /* sys enumeration */
 struct udev_enumerate;