Closed hhoffstaette closed 4 days ago
Looks like a problem with the recently changed strncpy/string-utils.
Thanks for the report.
--- a/cmds/subvolume-list.c
+++ b/cmds/subvolume-list.c
@@ -547,7 +547,7 @@ static int update_root(struct rb_root *root_lookup,
error_msg(ERROR_MSG_MEMORY, NULL);
exit(1);
}
- strncpy_null(ri->name, name, name_len);
+ strncpy_null(ri->name, name, name_len + 1);
}
if (ref_tree)
ri->ref_tree = ref_tree;
@@ -618,7 +618,7 @@ static int add_root(struct rb_root *root_lookup,
error_msg(ERROR_MSG_MEMORY, NULL);
exit(1);
}
- strncpy_null(ri->name, name, name_len);
+ strncpy_null(ri->name, name, name_len + 1);
}
if (ref_tree)
ri->ref_tree = ref_tree;
This fixes the subvolumes, I haven't spotted other problems but will do another pass to be sure.
Released in 6.9.2.
With 6.9:
With 6.9.1:
Obviously this leads to lots of failures with any automated subvolume/snapshot management.