device matching against UUIDs: do not try floppies

function                                             old     new   delta
uuidcache_check_device                               255     292     +37

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2009-06-27 21:58:25 +02:00
parent eb1cda2f2d
commit 4fc5ec56f9

View File

@ -86,9 +86,16 @@ uuidcache_check_device(const char *device,
char *label = label;
int fd;
/* note: this check rejects links to devices, among other nodes */
if (!S_ISBLK(statbuf->st_mode))
return TRUE;
/* Users report that mucking with floppies (especially non-present
* ones) is significant PITA. This is a horribly dirty hack,
* but it is very useful in real world. */
if (major(statbuf->st_rdev) == 2)
return TRUE;
fd = open(device, O_RDONLY);
if (fd < 0)
return TRUE;