X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=udev_config.c;h=b8c4ffc8edbfa0d2e23ea73b195f731042d8a992;hp=c57e36cd8c21ce5115babf3c23780dbd11788255;hb=f3c14c68499d318b2beb56cee7c5f88f2c04dc62;hpb=e8d569b4145a358775e87058829133fa725b32fd diff --git a/udev_config.c b/udev_config.c index c57e36cd8..b8c4ffc8e 100644 --- a/udev_config.c +++ b/udev_config.c @@ -137,7 +137,8 @@ static int parse_config_file(void) if (bufline[0] == COMMENT_CHARACTER) continue; - strlcpy(line, bufline, count+1); + memcpy(line, bufline, count); + line[count] = '\0'; linepos = line; retval = get_key(&linepos, &variable, &value); @@ -148,19 +149,19 @@ static int parse_config_file(void) if (strcasecmp(variable, "udev_root") == 0) { strlcpy(udev_root, value, sizeof(udev_root)); - remove_trailing_char(udev_root, '/'); + remove_trailing_chars(udev_root, '/'); continue; } if (strcasecmp(variable, "udev_db") == 0) { strlcpy(udev_db_path, value, sizeof(udev_db_path)); - remove_trailing_char(udev_db_path, '/'); + remove_trailing_chars(udev_db_path, '/'); continue; } if (strcasecmp(variable, "udev_rules") == 0) { strlcpy(udev_rules_filename, value, sizeof(udev_rules_filename)); - remove_trailing_char(udev_rules_filename, '/'); + remove_trailing_chars(udev_rules_filename, '/'); continue; } @@ -194,7 +195,7 @@ void udev_init_config(void) env = getenv("UDEV_CONFIG_FILE"); if (env) { strlcpy(udev_config_filename, env, sizeof(udev_config_filename)); - remove_trailing_char(udev_config_filename, '/'); + remove_trailing_chars(udev_config_filename, '/'); } parse_config_file();