X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fudev%2Fudev-rules.c;h=f793e57712266429f3c1e7903c11d964daca34f0;hb=96415cad2fdd8d280ae94b02651b5f826a2f7f3d;hp=4437d80529e81d85b3ed056261cae1ed278634cf;hpb=97f2d76d4f4dfab8b0629c09926a05a1e5621125;p=elogind.git diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c index 4437d8052..f793e5771 100644 --- a/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c @@ -431,7 +431,7 @@ static void dump_rules(struct udev_rules *rules) rules->token_cur * sizeof(struct token), rules->buf_count, rules->buf_cur); - for(i = 0; i < rules->token_cur; i++) + for (i = 0; i < rules->token_cur; i++) dump_token(rules, &rules->tokens[i]); } #else @@ -551,6 +551,7 @@ static int import_property_from_string(struct udev_device *dev, char *line) char *key; char *val; size_t len; + struct udev_list_entry *entry; /* find key */ key = line; @@ -601,22 +602,11 @@ static int import_property_from_string(struct udev_device *dev, char *line) val++; } - /* handle device, renamed by external tool, returning new path */ - if (streq(key, "DEVPATH")) { - char syspath[UTIL_PATH_SIZE]; - - log_debug("updating devpath from '%s' to '%s'\n", - udev_device_get_devpath(dev), val); - strscpyl(syspath, sizeof(syspath), "/sys", val, NULL); - udev_device_set_syspath(dev, syspath); - } else { - struct udev_list_entry *entry; - - entry = udev_device_add_property(dev, key, val); - /* store in db, skip private keys */ - if (key[0] != '.') - udev_list_entry_set_num(entry, true); - } + entry = udev_device_add_property(dev, key, val); + /* store in db, skip private keys */ + if (key[0] != '.') + udev_list_entry_set_num(entry, true); + return 0; } @@ -1091,7 +1081,7 @@ static int add_rule(struct udev_rules *rules, char *line, "starting at character %tu ('%s')\n", filename, lineno, linepos - line + 1, tmp); if (linepos[1] == '#') - log_info("hint: comments can only start at beginning of line"); + log_error("hint: comments can only start at beginning of line"); } break; } @@ -1714,6 +1704,9 @@ struct udev_rules *udev_rules_unref(struct udev_rules *rules) bool udev_rules_check_timestamp(struct udev_rules *rules) { + if (!rules) + return false; + return paths_check_timestamp(rules->dirs, &rules->dirs_ts_usec, true); } @@ -2602,7 +2595,7 @@ int udev_rules_apply_static_dev_perms(struct udev_rules *rules) strscpyl(tag_symlink, sizeof(tag_symlink), tags_dir, unescaped_filename, NULL); r = symlink(device_node, tag_symlink); if (r < 0 && errno != EEXIST) { - log_error("failed to create symlink %s -> %s: %s\n", tag_symlink, device_node, strerror(errno)); + log_error("failed to create symlink %s -> %s: %m\n", tag_symlink, device_node); return -errno; } else r = 0;