diff options
author | Natanael Copa <natanael.copa@gmail.com> | 2009-09-20 04:28:22 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2009-09-20 04:28:22 +0200 |
commit | 9aff29997ed22932f78aa8d8c7c2412e9d3f49e5 (patch) | |
tree | 8df24e36d81c3f4f6d1cf6b9892341f96b5ecb92 /util-linux/volume_id | |
parent | 2bf6634ef46b5360e6381e61b27415e52a1cd7c7 (diff) |
swaponoff: add uuid/label support. By Natanael Copa
function old new delta
swap_enable_disable 130 150 +20
resolve_mount_spec 76 96 +20
mount_main 1152 1154 +2
findfs_main 125 80 -45
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 42/-45) Total: -3 bytes
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'util-linux/volume_id')
-rw-r--r-- | util-linux/volume_id/get_devname.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/util-linux/volume_id/get_devname.c b/util-linux/volume_id/get_devname.c index 0686a0741..9b5283f87 100644 --- a/util-linux/volume_id/get_devname.c +++ b/util-linux/volume_id/get_devname.c @@ -260,3 +260,20 @@ char *get_devname_from_uuid(const char *spec) } return NULL; } + +int resolve_mount_spec(char **fsname) +{ + char *tmp = *fsname; + + if (strncmp(*fsname, "UUID=", 5) == 0) + tmp = get_devname_from_uuid(*fsname + 5); + else if (strncmp(*fsname, "LABEL=", 6) == 0) + tmp = get_devname_from_label(*fsname + 6); + + if (tmp == *fsname) + return 0; /* no UUID= or LABEL= prefix found */ + + if (tmp) + *fsname = tmp; + return 1; +} |