Dne 25.3.2014 18:20, Christoph Hellwig napsal(a):
For a little project I'm working on I'd like to find out if a given
device node is a dm-multipath device from C code. dm_is_dm_major tells
me if it's any DM node, but from there on it seems like I'd have to
grab the table name from dmsetup table output for which I'd need a name
for the device or similar.
Is there a good shortcut or library function for this check?
dmsetup is just a commandline tool wrapper around libdm.
libdm has 'libdevmapper.h' interface.
For more complex usage look at dmsetup.c
In general you prepare dm_task structure
(dm_task_create()) - you present needed
options and you 'dm_task_run()' (wrapper over ioctl)
Then you read result.
If you know how to use 'dmsetup' - then you get pretty
easy conversion to libdm usage.
However from the message title - I think you just really want to check
content in udev database - which should be storing all info about device type.
All detection happens in rules - IMHO you should not try to add any new
detection..
Zdenek
--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel