From 54e345b5c2339dee170595f686dbd26937620262 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Fri, 20 Apr 2012 21:27:25 +0200 Subject: avoid several strncpy-induced buffer overruns * restore.c (main): Ensure strncpy-copied dir_name is NUL-terminated. * btrfsctl.c (main): Likewise, for a command-line argument. * utils.c (multiple functions): Likewise. * btrfs-list.c (add_root): Likewise. * btrfslabel.c (change_label_unmounted): Likewise. * cmds-device.c (cmd_add_dev, cmd_rm_dev, cmd_scan_dev): Likewise. * cmds-filesystem.c (cmd_resize): Likewise. * cmds-subvolume.c (cmd_subvol_create, cmd_subvol_delete, cmd_snapshot): Likewise. Reviewed-by: Josef Bacik --- btrfs-list.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'btrfs-list.c') diff --git a/btrfs-list.c b/btrfs-list.c index 5f4a9bea..35e61392 100644 --- a/btrfs-list.c +++ b/btrfs-list.c @@ -183,6 +183,8 @@ static int add_root(struct root_lookup *root_lookup, ri->root_id = root_id; ri->ref_tree = ref_tree; strncpy(ri->name, name, name_len); + if (name_len > 0) + ri->name[name_len-1] = 0; ret = tree_insert(&root_lookup->root, root_id, ref_tree, &ri->rb_node); if (ret) { -- cgit v1.2.3