From 68b42a2404b00846486c55b25bfd96e9323b9391 Mon Sep 17 00:00:00 2001 From: illiliti Date: Wed, 11 Nov 2020 20:49:20 +0300 Subject: [PATCH] implement udev_device_get_seqnum. closes #7 --- udev.h | 1 + udev_device.c | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/udev.h b/udev.h index 91b520b..51ba317 100644 --- a/udev.h +++ b/udev.h @@ -28,6 +28,7 @@ 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); +unsigned long long udev_device_get_seqnum(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); diff --git a/udev_device.c b/udev_device.c index bd03d40..e189659 100644 --- a/udev_device.c +++ b/udev_device.c @@ -44,6 +44,19 @@ const char *udev_device_get_devnode(struct udev_device *udev_device) return udev_device_get_property_value(udev_device, "DEVNAME"); } +unsigned long long udev_device_get_seqnum(struct udev_device *udev_device) +{ + const char *seqnum; + + seqnum = udev_device_get_property_value(udev_device, "SEQNUM"); + + if (!seqnum) { + return 0; + } + + return strtoull(seqnum, NULL, 10); +} + dev_t udev_device_get_devnum(struct udev_device *udev_device) { const char *major, *minor;