From 7561260963cdc8c65a5b26a97cb773758273bea3 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 16 May 2011 00:57:16 +0000 Subject: [PATCH] forgot eeze_disk_udev_get_parent earlier SVN revision: 59429 --- legacy/eeze/ChangeLog | 1 + legacy/eeze/src/lib/Eeze_Disk.h | 10 ++++++++++ legacy/eeze/src/lib/eeze_disk_udev.c | 12 ++++++++++-- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/legacy/eeze/ChangeLog b/legacy/eeze/ChangeLog index bb855cad8e..ff98020272 100644 --- a/legacy/eeze/ChangeLog +++ b/legacy/eeze/ChangeLog @@ -6,6 +6,7 @@ Add a uid=%i mount option using getuid, NOT geteuid +eeze_disk_mount_wrapper_get Allow use of wrapper exes for mount commands (such as sudo) --------------------------------------- ++eeze_disk_udev_get_parent +eeze_disk_udev_get_property +eeze_disk_udev_get_sysattr +eeze_disk_udev_walk_check_sysattr diff --git a/legacy/eeze/src/lib/Eeze_Disk.h b/legacy/eeze/src/lib/Eeze_Disk.h index c3501c7f09..fb9e9fcb82 100644 --- a/legacy/eeze/src/lib/Eeze_Disk.h +++ b/legacy/eeze/src/lib/Eeze_Disk.h @@ -410,6 +410,16 @@ EAPI const char *eeze_disk_udev_get_property(Eeze_Disk *disk, const char *pro EAPI const char *eeze_disk_udev_get_sysattr(Eeze_Disk *disk, const char *sysattr); +/** + * Find the root device of a disk. + * + * @param disk The disk + * @return The syspath of the parent device + * + * Return a stringshared syspath (/sys/$syspath) for the parent device. + */ +EAPI const char *eeze_disk_udev_get_parent(Eeze_Disk *disk); + /** * Walks up the device chain using the device from @p disk, * checking each device for @p sysattr with (optional) @p value. diff --git a/legacy/eeze/src/lib/eeze_disk_udev.c b/legacy/eeze/src/lib/eeze_disk_udev.c index 89bcbf7cf9..6ab46a87ec 100644 --- a/legacy/eeze/src/lib/eeze_disk_udev.c +++ b/legacy/eeze/src/lib/eeze_disk_udev.c @@ -33,12 +33,21 @@ eeze_disk_udev_get_sysattr(Eeze_Disk *disk, const char *sysattr) return eina_stringshare_add(ret); } +EAPI const char * +eeze_disk_udev_get_parent(Eeze_Disk *disk) +{ + _udev_device *parent; + EINA_SAFETY_ON_NULL_RETURN_VAL(disk, NULL); + + parent = udev_device_get_parent(disk->device); + return eina_stringshare_add(udev_device_get_syspath(parent)); +} + EAPI Eina_Bool eeze_disk_udev_walk_check_sysattr(Eeze_Disk *disk, const char *sysattr, const char *value) { - _udev_device *child, *parent; const char *test = NULL; @@ -64,7 +73,6 @@ EAPI const char * eeze_disk_udev_walk_get_sysattr(Eeze_Disk *disk, const char *sysattr) { - _udev_device *child, *parent; const char *test = NULL;