diff --git a/Makefile-man.am b/Makefile-man.am
index 85579e0c0a..15781ba44a 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -18,6 +18,7 @@ MANPAGES += \
man/journald.conf.5 \
man/kernel-command-line.7 \
man/kernel-install.8 \
+ man/libudev.3 \
man/locale.conf.5 \
man/localtime.5 \
man/machine-id.5 \
@@ -122,6 +123,17 @@ MANPAGES += \
man/tmpfiles.d.5 \
man/udev.7 \
man/udev.conf.5 \
+ man/udev_device_get_syspath.3 \
+ man/udev_device_has_tag.3 \
+ man/udev_device_new_from_syspath.3 \
+ man/udev_enumerate_add_match_subsystem.3 \
+ man/udev_enumerate_new.3 \
+ man/udev_enumerate_scan_devices.3 \
+ man/udev_list_entry.3 \
+ man/udev_monitor_filter_update.3 \
+ man/udev_monitor_new_from_netlink.3 \
+ man/udev_monitor_receive_device.3 \
+ man/udev_new.3 \
man/udevadm.8
MANPAGES_ALIAS += \
man/SD_ALERT.3 \
@@ -233,6 +245,61 @@ MANPAGES_ALIAS += \
man/systemd-udevd.8 \
man/systemd-update-done.8 \
man/systemd-user.conf.5 \
+ man/udev_device_get_action.3 \
+ man/udev_device_get_devlinks_list_entry.3 \
+ man/udev_device_get_devnode.3 \
+ man/udev_device_get_devnum.3 \
+ man/udev_device_get_devpath.3 \
+ man/udev_device_get_devtype.3 \
+ man/udev_device_get_driver.3 \
+ man/udev_device_get_is_initialized.3 \
+ man/udev_device_get_parent.3 \
+ man/udev_device_get_parent_with_subsystem_devtype.3 \
+ man/udev_device_get_properties_list_entry.3 \
+ man/udev_device_get_property_value.3 \
+ man/udev_device_get_subsystem.3 \
+ man/udev_device_get_sysattr_list_entry.3 \
+ man/udev_device_get_sysattr_value.3 \
+ man/udev_device_get_sysname.3 \
+ man/udev_device_get_sysnum.3 \
+ man/udev_device_get_tags_list_entry.3 \
+ man/udev_device_get_udev.3 \
+ man/udev_device_new_from_device_id.3 \
+ man/udev_device_new_from_devnum.3 \
+ man/udev_device_new_from_environment.3 \
+ man/udev_device_new_from_subsystem_sysname.3 \
+ man/udev_device_ref.3 \
+ man/udev_device_set_sysattr_value.3 \
+ man/udev_device_unref.3 \
+ man/udev_enumerate_add_match_is_initialized.3 \
+ man/udev_enumerate_add_match_parent.3 \
+ man/udev_enumerate_add_match_property.3 \
+ man/udev_enumerate_add_match_sysattr.3 \
+ man/udev_enumerate_add_match_sysname.3 \
+ man/udev_enumerate_add_match_tag.3 \
+ man/udev_enumerate_add_nomatch_subsystem.3 \
+ man/udev_enumerate_add_nomatch_sysattr.3 \
+ man/udev_enumerate_add_syspath.3 \
+ man/udev_enumerate_get_list_entry.3 \
+ man/udev_enumerate_get_udev.3 \
+ man/udev_enumerate_ref.3 \
+ man/udev_enumerate_scan_subsystems.3 \
+ man/udev_enumerate_unref.3 \
+ man/udev_list_entry_get_by_name.3 \
+ man/udev_list_entry_get_name.3 \
+ man/udev_list_entry_get_next.3 \
+ man/udev_list_entry_get_value.3 \
+ man/udev_monitor_enable_receiving.3 \
+ man/udev_monitor_filter_add_match_subsystem_devtype.3 \
+ man/udev_monitor_filter_add_match_tag.3 \
+ man/udev_monitor_filter_remove.3 \
+ man/udev_monitor_get_fd.3 \
+ man/udev_monitor_get_udev.3 \
+ man/udev_monitor_ref.3 \
+ man/udev_monitor_set_receive_buffer_size.3 \
+ man/udev_monitor_unref.3 \
+ man/udev_ref.3 \
+ man/udev_unref.3 \
man/user.conf.d.5
man/SD_ALERT.3: man/sd-daemon.3
man/SD_CRIT.3: man/sd-daemon.3
@@ -343,6 +410,61 @@ man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8
man/systemd-udevd.8: man/systemd-udevd.service.8
man/systemd-update-done.8: man/systemd-update-done.service.8
man/systemd-user.conf.5: man/systemd-system.conf.5
+man/udev_device_get_action.3: man/udev_device_get_syspath.3
+man/udev_device_get_devlinks_list_entry.3: man/udev_device_has_tag.3
+man/udev_device_get_devnode.3: man/udev_device_get_syspath.3
+man/udev_device_get_devnum.3: man/udev_device_get_syspath.3
+man/udev_device_get_devpath.3: man/udev_device_get_syspath.3
+man/udev_device_get_devtype.3: man/udev_device_get_syspath.3
+man/udev_device_get_driver.3: man/udev_device_get_syspath.3
+man/udev_device_get_is_initialized.3: man/udev_device_get_syspath.3
+man/udev_device_get_parent.3: man/udev_device_get_syspath.3
+man/udev_device_get_parent_with_subsystem_devtype.3: man/udev_device_get_syspath.3
+man/udev_device_get_properties_list_entry.3: man/udev_device_has_tag.3
+man/udev_device_get_property_value.3: man/udev_device_has_tag.3
+man/udev_device_get_subsystem.3: man/udev_device_get_syspath.3
+man/udev_device_get_sysattr_list_entry.3: man/udev_device_has_tag.3
+man/udev_device_get_sysattr_value.3: man/udev_device_has_tag.3
+man/udev_device_get_sysname.3: man/udev_device_get_syspath.3
+man/udev_device_get_sysnum.3: man/udev_device_get_syspath.3
+man/udev_device_get_tags_list_entry.3: man/udev_device_has_tag.3
+man/udev_device_get_udev.3: man/udev_device_get_syspath.3
+man/udev_device_new_from_device_id.3: man/udev_device_new_from_syspath.3
+man/udev_device_new_from_devnum.3: man/udev_device_new_from_syspath.3
+man/udev_device_new_from_environment.3: man/udev_device_new_from_syspath.3
+man/udev_device_new_from_subsystem_sysname.3: man/udev_device_new_from_syspath.3
+man/udev_device_ref.3: man/udev_device_new_from_syspath.3
+man/udev_device_set_sysattr_value.3: man/udev_device_has_tag.3
+man/udev_device_unref.3: man/udev_device_new_from_syspath.3
+man/udev_enumerate_add_match_is_initialized.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_match_parent.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_match_property.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_match_sysattr.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_match_sysname.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_match_tag.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_nomatch_subsystem.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_nomatch_sysattr.3: man/udev_enumerate_add_match_subsystem.3
+man/udev_enumerate_add_syspath.3: man/udev_enumerate_scan_devices.3
+man/udev_enumerate_get_list_entry.3: man/udev_enumerate_scan_devices.3
+man/udev_enumerate_get_udev.3: man/udev_enumerate_scan_devices.3
+man/udev_enumerate_ref.3: man/udev_enumerate_new.3
+man/udev_enumerate_scan_subsystems.3: man/udev_enumerate_scan_devices.3
+man/udev_enumerate_unref.3: man/udev_enumerate_new.3
+man/udev_list_entry_get_by_name.3: man/udev_list_entry.3
+man/udev_list_entry_get_name.3: man/udev_list_entry.3
+man/udev_list_entry_get_next.3: man/udev_list_entry.3
+man/udev_list_entry_get_value.3: man/udev_list_entry.3
+man/udev_monitor_enable_receiving.3: man/udev_monitor_receive_device.3
+man/udev_monitor_filter_add_match_subsystem_devtype.3: man/udev_monitor_filter_update.3
+man/udev_monitor_filter_add_match_tag.3: man/udev_monitor_filter_update.3
+man/udev_monitor_filter_remove.3: man/udev_monitor_filter_update.3
+man/udev_monitor_get_fd.3: man/udev_monitor_receive_device.3
+man/udev_monitor_get_udev.3: man/udev_monitor_receive_device.3
+man/udev_monitor_ref.3: man/udev_monitor_new_from_netlink.3
+man/udev_monitor_set_receive_buffer_size.3: man/udev_monitor_receive_device.3
+man/udev_monitor_unref.3: man/udev_monitor_new_from_netlink.3
+man/udev_ref.3: man/udev_new.3
+man/udev_unref.3: man/udev_new.3
man/user.conf.d.5: man/systemd-system.conf.5
man/SD_ALERT.html: man/sd-daemon.html
$(html-alias)
@@ -671,6 +793,171 @@ man/systemd-update-done.html: man/systemd-update-done.service.html
man/systemd-user.conf.html: man/systemd-system.conf.html
$(html-alias)
+man/udev_device_get_action.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_devlinks_list_entry.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_devnode.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_devnum.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_devpath.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_devtype.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_driver.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_is_initialized.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_parent.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_parent_with_subsystem_devtype.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_properties_list_entry.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_property_value.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_subsystem.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_sysattr_list_entry.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_sysattr_value.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_sysname.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_sysnum.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_get_tags_list_entry.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_get_udev.html: man/udev_device_get_syspath.html
+ $(html-alias)
+
+man/udev_device_new_from_device_id.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_device_new_from_devnum.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_device_new_from_environment.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_device_new_from_subsystem_sysname.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_device_ref.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_device_set_sysattr_value.html: man/udev_device_has_tag.html
+ $(html-alias)
+
+man/udev_device_unref.html: man/udev_device_new_from_syspath.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_is_initialized.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_parent.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_property.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_sysattr.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_sysname.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_match_tag.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_nomatch_subsystem.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_nomatch_sysattr.html: man/udev_enumerate_add_match_subsystem.html
+ $(html-alias)
+
+man/udev_enumerate_add_syspath.html: man/udev_enumerate_scan_devices.html
+ $(html-alias)
+
+man/udev_enumerate_get_list_entry.html: man/udev_enumerate_scan_devices.html
+ $(html-alias)
+
+man/udev_enumerate_get_udev.html: man/udev_enumerate_scan_devices.html
+ $(html-alias)
+
+man/udev_enumerate_ref.html: man/udev_enumerate_new.html
+ $(html-alias)
+
+man/udev_enumerate_scan_subsystems.html: man/udev_enumerate_scan_devices.html
+ $(html-alias)
+
+man/udev_enumerate_unref.html: man/udev_enumerate_new.html
+ $(html-alias)
+
+man/udev_list_entry_get_by_name.html: man/udev_list_entry.html
+ $(html-alias)
+
+man/udev_list_entry_get_name.html: man/udev_list_entry.html
+ $(html-alias)
+
+man/udev_list_entry_get_next.html: man/udev_list_entry.html
+ $(html-alias)
+
+man/udev_list_entry_get_value.html: man/udev_list_entry.html
+ $(html-alias)
+
+man/udev_monitor_enable_receiving.html: man/udev_monitor_receive_device.html
+ $(html-alias)
+
+man/udev_monitor_filter_add_match_subsystem_devtype.html: man/udev_monitor_filter_update.html
+ $(html-alias)
+
+man/udev_monitor_filter_add_match_tag.html: man/udev_monitor_filter_update.html
+ $(html-alias)
+
+man/udev_monitor_filter_remove.html: man/udev_monitor_filter_update.html
+ $(html-alias)
+
+man/udev_monitor_get_fd.html: man/udev_monitor_receive_device.html
+ $(html-alias)
+
+man/udev_monitor_get_udev.html: man/udev_monitor_receive_device.html
+ $(html-alias)
+
+man/udev_monitor_ref.html: man/udev_monitor_new_from_netlink.html
+ $(html-alias)
+
+man/udev_monitor_set_receive_buffer_size.html: man/udev_monitor_receive_device.html
+ $(html-alias)
+
+man/udev_monitor_unref.html: man/udev_monitor_new_from_netlink.html
+ $(html-alias)
+
+man/udev_ref.html: man/udev_new.html
+ $(html-alias)
+
+man/udev_unref.html: man/udev_new.html
+ $(html-alias)
+
man/user.conf.d.html: man/systemd-system.conf.html
$(html-alias)
@@ -1708,6 +1995,7 @@ EXTRA_DIST += \
man/kernel-install.xml \
man/less-variables.xml \
man/libsystemd-pkgconfig.xml \
+ man/libudev.xml \
man/locale.conf.xml \
man/localectl.xml \
man/localtime.xml \
@@ -1891,6 +2179,17 @@ EXTRA_DIST += \
man/tmpfiles.d.xml \
man/udev.conf.xml \
man/udev.xml \
+ man/udev_device_get_syspath.xml \
+ man/udev_device_has_tag.xml \
+ man/udev_device_new_from_syspath.xml \
+ man/udev_enumerate_add_match_subsystem.xml \
+ man/udev_enumerate_new.xml \
+ man/udev_enumerate_scan_devices.xml \
+ man/udev_list_entry.xml \
+ man/udev_monitor_filter_update.xml \
+ man/udev_monitor_new_from_netlink.xml \
+ man/udev_monitor_receive_device.xml \
+ man/udev_new.xml \
man/udevadm.xml \
man/user-system-options.xml \
man/vconsole.conf.xml
diff --git a/man/libudev.xml b/man/libudev.xml
new file mode 100644
index 0000000000..5660b9d990
--- /dev/null
+++ b/man/libudev.xml
@@ -0,0 +1,125 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ libudev
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ libudev
+ 3
+
+
+
+ libudev
+ API for enumerating and introspecting local devices
+
+
+
+
+ #include <libudev.h>
+
+
+
+ pkg-config --cflags --libs libudev
+
+
+
+
+ Description
+
+ libudev.h provides APIs to introspect
+ and enumerate devices on the local system.
+
+ All functions require a libudev context to operate. This
+ context can be create via
+ udev_new3.
+ It is used to track library state and link objects together. No
+ global state is used by libudev, everything is always linked to
+ a udev context. Furthermore, multiple different udev contexts can
+ be used in parallel by multiple threads. However, a single context
+ must not be accessed by multiple threads in parallel. The caller
+ is responsible of providing suitable locking if they intend to use
+ it from multiple threads.
+
+ To introspect a local device on a system, a udev device
+ object can be created via
+ udev_device_new_from_syspath3
+ and friends. The device object allows to query current state,
+ read and write attributes and lookup properties of the device in
+ question.
+
+ To enumerate local devices on the system, an enumeration
+ object can be created via
+ udev_enumerate_new3.
+
+ To monitor the local system for hotplugged or unplugged
+ devices, a monitor can be created via
+ udev_monitor_new_from_netlink3.
+
+ Whenever libudev returns a list of objects, the
+ udev_list_entry3
+ API should be used to iterate, access and modify those lists.
+
+ Furthermore, libudev also exports legacy APIs that should
+ not be used by new software (and as such are not documented as
+ part of this manual). This includes the hardware-database known
+ as udev_hwdb (please use the new
+ sd-hwdb3
+ API instead) and the udev_queue object to
+ query the udev-daemon (which should not be used by new software
+ at all).
+
+
+
+ See Also
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+ sd-device3,
+ sd-hwdb3,
+ pkg-config1
+
+
+
+
diff --git a/man/udev_device_get_syspath.xml b/man/udev_device_get_syspath.xml
new file mode 100644
index 0000000000..b3062ae4a8
--- /dev/null
+++ b/man/udev_device_get_syspath.xml
@@ -0,0 +1,207 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_device_get_syspath
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_device_get_syspath
+ 3
+
+
+
+ udev_device_get_syspath
+ udev_device_get_sysname
+ udev_device_get_sysnum
+ udev_device_get_devpath
+ udev_device_get_devnode
+ udev_device_get_devnum
+ udev_device_get_devtype
+ udev_device_get_subsystem
+ udev_device_get_driver
+ udev_device_get_udev
+ udev_device_get_parent
+ udev_device_get_parent_with_subsystem_devtype
+ udev_device_get_is_initialized
+ udev_device_get_action
+
+ Query device properties
+
+
+
+
+ #include <libudev.h>
+
+
+ const char *udev_device_get_syspath
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_sysname
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_sysnum
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_devpath
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_devnode
+ struct udev_device *udev_device
+
+
+
+ dev_t udev_device_get_devnum
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_devtype
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_subsystem
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_driver
+ struct udev_device *udev_device
+
+
+
+ struct udev *udev_device_get_udev
+ struct udev_device *udev_device
+
+
+
+ struct udev_device *udev_device_get_parent
+ struct udev_device *udev_device
+
+
+
+ struct udev_device *udev_device_get_parent_with_subsystem_devtype
+ struct udev_device *udev_device
+
+
+
+ int udev_device_get_is_initialized
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_action
+ struct udev_device *udev_device
+ const char *subsystem
+ const char *devtype
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success, udev_device_get_syspath(),
+ udev_device_get_sysname(),
+ udev_device_get_sysnum(),
+ udev_device_get_devpath(),
+ udev_device_get_devnode(),
+ udev_device_get_devtype(),
+ udev_device_get_subsystem(),
+ udev_device_get_driver() and
+ udev_device_get_action() return a pointer
+ to a constant string that describes the requested property. The
+ lifetime of this string is bound to the device it was requested
+ on. On failure, each function may return
+ NULL.
+
+ On success, udev_device_get_devnum()
+ returns the device type of the passed device. On failure, a
+ device type with minor and major number set to
+ 0 is returned.
+
+ udev_device_get_udev() always returns
+ a valid pointer to the udev context that this device belongs
+ to.
+
+ On success, udev_device_get_parent()
+ and
+ udev_device_get_parent_with_subsystem_devtype()
+ return a pointer to the parent device. No additional reference
+ to this device is acquired, but the child device owns a reference
+ to such parent device. On failure, NULL
+ is returned.
+
+ On success, udev_device_get_is_initialized()
+ returns either 1 or 0,
+ depending on whether the passed device is initialized or not. On
+ failure, a negative error code is returned.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_device_has_tag3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_device_has_tag.xml b/man/udev_device_has_tag.xml
new file mode 100644
index 0000000000..480257343c
--- /dev/null
+++ b/man/udev_device_has_tag.xml
@@ -0,0 +1,163 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_device_has_tag
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_device_has_tag
+ 3
+
+
+
+ udev_device_has_tag
+ udev_device_get_devlinks_list_entry
+ udev_device_get_properties_list_entry
+ udev_device_get_tags_list_entry
+ udev_device_get_sysattr_list_entry
+ udev_device_get_property_value
+ udev_device_get_sysattr_value
+ udev_device_set_sysattr_value
+
+ Retrieve or set device attributes
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_list_entry *udev_device_get_devlinks_list_entry
+ struct udev_device *udev_device
+
+
+
+ struct udev_list_entry *udev_device_get_properties_list_entry
+ struct udev_device *udev_device
+
+
+
+ struct udev_list_entry *udev_device_get_tags_list_entry
+ struct udev_device *udev_device
+
+
+
+ struct udev_list_entry *udev_device_get_sysattr_list_entry
+ struct udev_device *udev_device
+
+
+
+ const char *udev_device_get_property_value
+ struct udev_device *udev_device
+ const char *key
+
+
+
+ int udev_device_has_tag
+ struct udev_device *udev_device
+ const char *tag
+
+
+
+ const char *udev_device_get_sysattr_value
+ struct udev_device *udev_device
+ const char *sysattr
+
+
+
+ int udev_device_set_sysattr_value
+ struct udev_device *udev_device
+ const char *sysattr
+ const char *value
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_device_get_devlinks_list_entry(),
+ udev_device_get_properties_list_entry(),
+ udev_device_get_tags_list_entry() and
+ udev_device_get_sysattr_list_entry() return
+ a pointer to the first entry of the retrieved list. If that list
+ is empty, or if an error occurred, NULL is
+ returned.
+
+ On success,
+ udev_device_get_property_value() and
+ udev_device_get_sysattr_value() return a
+ pointer to a constant string of the requested value. On error,
+ NULL is returned.
+
+ On success,
+ udev_device_set_sysattr_value() returns
+ an integer greater than, or equal to, 0.
+ On failure, a negative error code is returned.
+
+ On success, udev_device_has_tag()
+ returns 1 or 0,
+ depending on whether the device has the given tag or not.
+ On failure, a negative error code is returned.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_device_get_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_device_new_from_syspath.xml b/man/udev_device_new_from_syspath.xml
new file mode 100644
index 0000000000..c3c0d763e4
--- /dev/null
+++ b/man/udev_device_new_from_syspath.xml
@@ -0,0 +1,145 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_device_new_from_syspath
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_device_new_from_syspath
+ 3
+
+
+
+ udev_device_new_from_syspath
+ udev_device_new_from_devnum
+ udev_device_new_from_subsystem_sysname
+ udev_device_new_from_device_id
+ udev_device_new_from_environment
+ udev_device_ref
+ udev_device_unref
+
+ Create, acquire and release a udev device object
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_device *udev_device_new_from_syspath
+ struct udev *udev
+ const char *syspath
+
+
+
+ struct udev_device *udev_device_new_from_devnum
+ struct udev *udev
+ char type
+ dev_t devnum
+
+
+
+ struct udev_device *udev_device_new_from_subsystem_sysname
+ struct udev *udev
+ const char *subsystem
+ const char *sysname
+
+
+
+ struct udev_device *udev_device_new_from_device_id
+ struct udev *udev
+ const char *id
+
+
+
+ struct udev_device *udev_device_new_from_environment
+ struct udev *udev
+
+
+
+ struct udev_device *udev_device_ref
+ struct udev_device *udev_device
+
+
+
+ struct udev_device *udev_device_unref
+ struct udev_device *udev_device
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success, udev_device_new_from_syspath(),
+ udev_device_new_from_devnum(),
+ udev_device_new_from_subsystem_sysname(),
+ udev_device_new_from_device_id() and
+ udev_device_new_from_environment() return a
+ pointer to the allocated udev device. On failure,
+ NULL is returned.
+ udev_device_ref() returns the argument
+ that it was passed, unmodified.
+ udev_device_unref() always returns
+ NULL.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_get_syspath3,
+ udev_device_has_tag3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_enumerate_add_match_subsystem.xml b/man/udev_enumerate_add_match_subsystem.xml
new file mode 100644
index 0000000000..5acce00bb0
--- /dev/null
+++ b/man/udev_enumerate_add_match_subsystem.xml
@@ -0,0 +1,163 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_enumerate_add_match_subsystem
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_enumerate_add_match_subsystem
+ 3
+
+
+
+ udev_enumerate_add_match_subsystem
+ udev_enumerate_add_nomatch_subsystem
+ udev_enumerate_add_match_sysattr
+ udev_enumerate_add_nomatch_sysattr
+ udev_enumerate_add_match_property
+ udev_enumerate_add_match_sysname
+ udev_enumerate_add_match_tag
+ udev_enumerate_add_match_parent
+ udev_enumerate_add_match_is_initialized
+
+ Modify filters
+
+
+
+
+ #include <libudev.h>
+
+
+ int udev_enumerate_add_match_subsystem
+ struct udev_enumerate *udev_enumerate
+ const char *subsystem
+
+
+
+ int udev_enumerate_add_nomatch_subsystem
+ struct udev_enumerate *udev_enumerate
+ const char *subsystem
+
+
+
+ int udev_enumerate_add_match_sysattr
+ struct udev_enumerate *udev_enumerate
+ const char *sysattr
+ const char *value
+
+
+
+ int udev_enumerate_add_nomatch_sysattr
+ struct udev_enumerate *udev_enumerate
+ const char *sysattr
+ const char *value
+
+
+
+ int udev_enumerate_add_match_property
+ struct udev_enumerate *udev_enumerate
+ const char *property
+ const char *value
+
+
+
+ int udev_enumerate_add_match_sysname
+ struct udev_enumerate *udev_enumerate
+ const char *sysname
+
+
+
+ int udev_enumerate_add_match_tag
+ struct udev_enumerate *udev_enumerate
+ const char *tag
+
+
+
+ int udev_enumerate_add_match_parent
+ struct udev_enumerate *udev_enumerate
+ struct udev_device *parent
+
+
+
+ int udev_enumerate_add_match_is_initialized
+ struct udev_enumerate *udev_enumerate
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_enumerate_add_match_subsystem,
+ udev_enumerate_add_nomatch_subsystem,
+ udev_enumerate_add_match_sysattr,
+ udev_enumerate_add_nomatch_sysattr,
+ udev_enumerate_add_match_property,
+ udev_enumerate_add_match_sysname,
+ udev_enumerate_add_match_tag,
+ udev_enumerate_add_match_parent and
+ udev_enumerate_add_match_is_initialized
+ return an integer greater than, or equal to,
+ 0.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_enumerate_scan_devices3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_enumerate_new.xml b/man/udev_enumerate_new.xml
new file mode 100644
index 0000000000..b5856c5577
--- /dev/null
+++ b/man/udev_enumerate_new.xml
@@ -0,0 +1,111 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_enumerate_new
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_enumerate_new
+ 3
+
+
+
+ udev_enumerate_new
+ udev_enumerate_ref
+ udev_enumerate_unref
+
+ Create, acquire and release a udev enumerate object
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_enumerate *udev_enumerate_new
+ struct udev *udev
+
+
+
+ struct udev_enumerate *udev_enumerate_ref
+ struct udev_enumerate *udev_enumerate
+
+
+
+ struct udev_enumerate *udev_enumerate_unref
+ struct udev_enumerate *udev_enumerate
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success, udev_enumerate_new() returns a
+ pointer to the allocated udev monitor. On failure,
+ NULL is returned.
+ udev_enumerate_ref() returns the argument
+ that it was passed, unmodified.
+ udev_enumerate_unref() always returns
+ NULL.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_add_match_subsystem3,
+ udev_enumerate_scan_devices3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_enumerate_scan_devices.xml b/man/udev_enumerate_scan_devices.xml
new file mode 100644
index 0000000000..73566f5089
--- /dev/null
+++ b/man/udev_enumerate_scan_devices.xml
@@ -0,0 +1,133 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_enumerate_scan_devices
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_enumerate_scan_devices
+ 3
+
+
+
+ udev_enumerate_scan_devices
+ udev_enumerate_scan_subsystems
+ udev_enumerate_get_list_entry
+ udev_enumerate_add_syspath
+ udev_enumerate_get_udev
+
+ Query or modify a udev enumerate object
+
+
+
+
+ #include <libudev.h>
+
+
+ int udev_enumerate_scan_devices
+ struct udev_enumerate *udev_enumerate
+
+
+
+ int udev_enumerate_scan_subsystems
+ struct udev_enumerate *udev_enumerate
+
+
+
+ struct udev_list_entry *udev_enumerate_get_list_entry
+ struct udev_enumerate *udev_enumerate
+
+
+
+ int udev_enumerate_add_syspath
+ struct udev_enumerate *udev_enumerate
+ const char *syspath
+
+
+
+ struct udev *udev_enumerate_get_udev
+ struct udev_enumerate *udev_enumerate
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_enumerate_scan_devices(),
+ udev_enumerate_scan_subsystems() and
+ udev_enumerate_add_syspath()
+ return an integer greater than, or equal to,
+ 0.
+
+ On success,
+ udev_enumerate_get_list_entry()
+ returns a pointer to the first entry in the list of found
+ devices. If the list is empty, or on failure,
+ NULL is returned.
+
+ udev_enumerate_get_udev() always
+ returns a pointer to the udev context that this enumerate
+ object is associated with.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_enumerate_add_match_subsystem3,
+ udev_monitor_new_from_netlink3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_list_entry.xml b/man/udev_list_entry.xml
new file mode 100644
index 0000000000..6e033bdc81
--- /dev/null
+++ b/man/udev_list_entry.xml
@@ -0,0 +1,123 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_list_entry
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_list_entry
+ 3
+
+
+
+ udev_list_entry
+ udev_list_entry_get_next
+ udev_list_entry_get_by_name
+ udev_list_entry_get_name
+ udev_list_entry_get_value
+
+ Iterate and access udev lists
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_list_entry *udev_list_entry_get_next
+ struct udev_list_entry *list_entry
+
+
+
+ struct udev_list_entry *udev_list_entry_get_by_name
+ struct udev_list_entry *list_entry
+ const char *name
+
+
+
+ const char *udev_list_entry_get_name
+ struct udev_list_entry *list_entry
+
+
+
+ const char *udev_list_entry_get_value
+ struct udev_list_entry *list_entry
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_list_entry_get_next() and
+ udev_list_entry_get_by_name() return
+ a pointer to the requested list entry. If no such entry can
+ be found, or on failure, NULL is
+ returned.
+
+ On success,
+ udev_list_entry_get_name() and
+ udev_list_entry_get_value() return a
+ pointer to a constant string representing the requested value.
+ The string is bound to the lifetime of the list-entry itself.
+ On failure, NULL is returned.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_monitor_filter_update.xml b/man/udev_monitor_filter_update.xml
new file mode 100644
index 0000000000..f129595618
--- /dev/null
+++ b/man/udev_monitor_filter_update.xml
@@ -0,0 +1,122 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_monitor_filter_update
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_monitor_filter_update
+ 3
+
+
+
+ udev_monitor_filter_update
+ udev_monitor_filter_remove
+ udev_monitor_filter_add_match_subsystem_devtype
+ udev_monitor_filter_add_match_tag
+
+ Modify filters
+
+
+
+
+ #include <libudev.h>
+
+
+ int udev_monitor_filter_update
+ struct udev_monitor *udev_monitor
+
+
+
+ int udev_monitor_filter_remove
+ struct udev_monitor *udev_monitor
+
+
+
+ int udev_monitor_filter_add_match_subsystem_devtype
+ struct udev_monitor *udev_monitor
+ const char *subsystem
+ const char *devtype
+
+
+
+ int udev_monitor_filter_add_match_tag
+ struct udev_monitor *udev_monitor
+ const char *tag
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_monitor_filter_update(),
+ udev_monitor_filter_remove(),
+ udev_monitor_filter_add_match_subsystem_devtype()
+ and
+ udev_monitor_filter_add_match_tag()
+ return an integer greater than, or equal to,
+ 0. On failure, a negative error code is
+ returned.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_monitor_receive_device3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_monitor_new_from_netlink.xml b/man/udev_monitor_new_from_netlink.xml
new file mode 100644
index 0000000000..d73a4acaec
--- /dev/null
+++ b/man/udev_monitor_new_from_netlink.xml
@@ -0,0 +1,113 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_monitor_new_from_netlink
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_monitor_new_from_netlink
+ 3
+
+
+
+ udev_monitor_new_from_netlink
+ udev_monitor_ref
+ udev_monitor_unref
+
+ Create, acquire and release a udev monitor object
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_monitor *udev_monitor_new_from_netlink
+ struct udev *udev
+ const char *name
+
+
+
+ struct udev_monitor *udev_monitor_ref
+ struct udev_monitor *udev_monitor
+
+
+
+ struct udev_monitor *udev_monitor_unref
+ struct udev_monitor *udev_monitor
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_monitor_new_from_netlink() returns a
+ pointer to the allocated udev monitor. On failure,
+ NULL is returned.
+ udev_monitor_ref() returns the argument
+ that it was passed, unmodified.
+ udev_monitor_unref() always returns
+ NULL.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_filter_update3,
+ udev_monitor_receive_device3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_monitor_receive_device.xml b/man/udev_monitor_receive_device.xml
new file mode 100644
index 0000000000..7e842f88df
--- /dev/null
+++ b/man/udev_monitor_receive_device.xml
@@ -0,0 +1,137 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_monitor_receive_device
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_monitor_receive_device
+ 3
+
+
+
+ udev_monitor_receive_device
+ udev_monitor_enable_receiving
+ udev_monitor_set_receive_buffer_size
+ udev_monitor_get_fd
+ udev_monitor_get_udev
+
+ Query and modify device monitor
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev_device *udev_monitor_receive_device
+ struct udev_monitor *udev_monitor
+
+
+
+ int udev_monitor_enable_receiving
+ struct udev_monitor *udev_monitor
+
+
+
+ int udev_monitor_set_receive_buffer_size
+ struct udev_monitor *udev_monitor
+ int size
+
+
+
+ int udev_monitor_get_fd
+ struct udev_monitor *udev_monitor
+
+
+
+ struct udev *udev_monitor_get_udev
+ struct udev_monitor *udev_monitor
+
+
+
+
+
+
+
+
+ Return Value
+
+ On success,
+ udev_monitor_receive_device() returns a
+ pointer to a newly referenced device that was received via the
+ monitor. The caller is responsible to drop this reference when
+ done. On failure, NULL is returned.
+
+ On success,
+ udev_monitor_enable_receiving() and
+ udev_monitor_set_receive_buffer_size()
+ return an integer greater than, or equal to,
+ 0. On failure, a negative error code is
+ returned.
+
+ On success, udev_monitor_get_fd()
+ returns the file descriptor used by this monitor. On failure,
+ a negative error code is returned.
+
+ udev_monitor_get_udev() always returns
+ a pointer to the udev context that this monitor is associated
+ with.
+
+
+
+ See Also
+
+
+ udev_new3,
+ udev_device_new_from_syspath3,
+ udev_enumerate_new3,
+ udev_monitor_new_from_netlink3,
+ udev_monitor_filter_update3,
+ udev_list_entry3,
+ systemd1,
+
+
+
+
diff --git a/man/udev_new.xml b/man/udev_new.xml
new file mode 100644
index 0000000000..587835a3ca
--- /dev/null
+++ b/man/udev_new.xml
@@ -0,0 +1,110 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+ udev_new
+ systemd
+
+
+
+ Developer
+ David
+ Herrmann
+ dh.herrmann@gmail.com
+
+
+
+
+
+ udev_new
+ 3
+
+
+
+ udev_new
+ udev_ref
+ udev_unref
+
+ Create, acquire and release a udev context object
+
+
+
+
+ #include <libudev.h>
+
+
+ struct udev *udev_new
+ void
+
+
+
+ struct udev *udev_ref
+ struct udev *udev
+
+
+
+ struct udev *udev_unref
+ struct udev *udev
+
+
+
+
+
+
+ Description
+
+ udev_new() allocates a new udev context
+ object and returns a pointer to it. This object is opaque and must
+ not be accessed by the caller via different means than functions
+ provided by libudev. Initially, the reference count of the context
+ is 1. You can acquire further references, and drop gained references
+ via udev_ref() and
+ udev_unref(). Once the reference count hits 0,
+ the context object is destroyed and freed.
+
+
+
+ Return Value
+
+ On success, udev_new() returns a pointer
+ to the allocated udev context. On failure, NULL
+ is returned. udev_ref() returns the argument
+ that it was passed, unmodified. udev_unref()
+ always returns NULL.
+
+
+
+ See Also
+
+
+ systemd1,
+
+
+
+