Skip to content

Commit

Permalink
replace spaces in dm and md name symlinks
Browse files Browse the repository at this point in the history
We create multiple symlinks for dm names with spaces, which
isn't what we want.
  • Loading branch information
kaysievers committed Oct 6, 2008
1 parent 4df1d70 commit ee173c5
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 9 deletions.
4 changes: 2 additions & 2 deletions rules/packages/64-md-raid.rules
Expand Up @@ -11,9 +11,9 @@ KERNEL!="md*", GOTO="md_end"
ATTR{md/array_state}=="|clear|inactive", GOTO="md_end"

IMPORT{program}="/sbin/mdadm --detail --export $tempnode"
ENV{DEVTYPE}=="disk", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}"
ENV{DEVTYPE}=="disk", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}", OPTIONS+="string_escape=replace"
ENV{DEVTYPE}=="disk", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}"
ENV{DEVTYPE}=="partition", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}-part%n"
ENV{DEVTYPE}=="partition", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}-part%n", OPTIONS+="string_escape=replace"
ENV{DEVTYPE}=="partition", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}-part%n"

IMPORT{program}="vol_id --export $tempnode"
Expand Down
2 changes: 1 addition & 1 deletion rules/suse/64-device-mapper.rules
Expand Up @@ -8,7 +8,7 @@ ACTION!="add|change", GOTO="device_mapper_end"
IMPORT{program}="/sbin/dmsetup export -j%M -m%m"
ENV{DM_NAME}!="?*", GOTO="device_mapper_end"

SYMLINK+="disk/by-id/dm-name-$env{DM_NAME}"
SYMLINK+="disk/by-id/dm-name-$env{DM_NAME}", OPTIONS+="string_escape=replace"
ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}"

ENV{DM_STATE}=="SUSPENDED", GOTO="device_mapper_end"
Expand Down
12 changes: 6 additions & 6 deletions udev/udev_rules.c
Expand Up @@ -1447,7 +1447,7 @@ int udev_rules_get_name(struct udev_rules *rules, struct udevice *udevice)
rule->symlink.operation == KEY_OP_ADD)) {
char temp[UTIL_PATH_SIZE];
char *pos, *next;
int count;
int count = 0;

if (rule->symlink.operation == KEY_OP_ASSIGN_FINAL)
udevice->symlink_final = 1;
Expand All @@ -1459,12 +1459,12 @@ int udev_rules_get_name(struct udev_rules *rules, struct udevice *udevice)
/* allow multiple symlinks separated by spaces */
util_strlcpy(temp, key_val(rule, &rule->symlink), sizeof(temp));
udev_rules_apply_format(udevice, temp, sizeof(temp));
if (rule->string_escape == ESCAPE_UNSET ||
rule->string_escape == ESCAPE_REPLACE) {
if (rule->string_escape == ESCAPE_UNSET)
count = util_replace_chars(temp, ALLOWED_CHARS_FILE " ");
if (count > 0)
info(udevice->udev, "%i character(s) replaced\n" , count);
}
else if (rule->string_escape == ESCAPE_REPLACE)
count = util_replace_chars(temp, ALLOWED_CHARS_FILE);
if (count > 0)
info(udevice->udev, "%i character(s) replaced\n" , count);
dbg(udevice->udev, "rule applied, added symlink(s) '%s'\n", temp);
pos = temp;
while (isspace(pos[0]))
Expand Down

0 comments on commit ee173c5

Please sign in to comment.