diff options
author | Karel Zak | 2010-04-19 10:51:37 +0200 |
---|---|---|
committer | Karel Zak | 2010-04-19 10:51:37 +0200 |
commit | 601fb1c11e8b93c3b0e7488a73b4e97df12c676d (patch) | |
tree | 0548baf71a42f60aff42a0a6463c4242a4073c3b /shlibs/blkid/src/probe.c | |
parent | blkid: add \n to the "-o udev" output when probe more devices (diff) | |
download | kernel-qcow2-util-linux-601fb1c11e8b93c3b0e7488a73b4e97df12c676d.tar.gz kernel-qcow2-util-linux-601fb1c11e8b93c3b0e7488a73b4e97df12c676d.tar.xz kernel-qcow2-util-linux-601fb1c11e8b93c3b0e7488a73b4e97df12c676d.zip |
libblkid: export functions to get whole-disk devno
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'shlibs/blkid/src/probe.c')
-rw-r--r-- | shlibs/blkid/src/probe.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/shlibs/blkid/src/probe.c b/shlibs/blkid/src/probe.c index 3c6e6948a..6d58d5ae5 100644 --- a/shlibs/blkid/src/probe.c +++ b/shlibs/blkid/src/probe.c @@ -994,6 +994,48 @@ dev_t blkid_probe_get_devno(blkid_probe pr) } /** + * blkid_probe_get_wholedisk_devno: + * @pr: probe + * + * Returns: device number of the wholedisk, or 0 for regilar files. + */ +dev_t blkid_probe_get_wholedisk_devno(blkid_probe pr) +{ + if (!pr->disk_devno) { + dev_t devno, disk_devno = 0; + + devno = blkid_probe_get_devno(pr); + if (!devno) + return 0; + + if (blkid_devno_to_wholedisk(devno, NULL, 0, &disk_devno) == 0) + pr->disk_devno = disk_devno; + } + return pr->disk_devno; +} + +/** + * blkid_probe_is_wholedisk: + * @pr: probe + * + * Returns: 1 if the device is whole-disk or 0. + */ +int blkid_probe_is_wholedisk(blkid_probe pr) +{ + dev_t devno, disk_devno; + + devno = blkid_probe_get_devno(pr); + if (!devno) + return 0; + + disk_devno = blkid_probe_get_wholedisk_devno(pr); + if (!disk_devno) + return 0; + + return devno == disk_devno; +} + +/** * blkid_probe_get_size: * @pr: probe * |