Prevent pointer to an out-of-scope local variable
`show_str` could be a pointer to a local variable in stack which is out-of-scope by the time `return (snprintf(buf, buflen, "%s\n", show_str));` is called. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Tomohiro Kusumi <kusumi.tomohiro@gmail.com> Closes #8924 Closes #8940
This commit is contained in:
parent
3c2a42fd25
commit
ab24c9cd4c
|
@ -264,6 +264,7 @@ zprop_sysfs_show(const char *attr_name, const zprop_desc_t *property,
|
|||
char *buf, size_t buflen)
|
||||
{
|
||||
const char *show_str;
|
||||
char number[32];
|
||||
|
||||
/* For dataset properties list the dataset types that apply */
|
||||
if (strcmp(attr_name, "datasets") == 0 &&
|
||||
|
@ -291,8 +292,6 @@ zprop_sysfs_show(const char *attr_name, const zprop_desc_t *property,
|
|||
} else if (strcmp(attr_name, "values") == 0) {
|
||||
show_str = property->pd_values ? property->pd_values : "";
|
||||
} else if (strcmp(attr_name, "default") == 0) {
|
||||
char number[32];
|
||||
|
||||
switch (property->pd_proptype) {
|
||||
case PROP_TYPE_NUMBER:
|
||||
(void) snprintf(number, sizeof (number), "%llu",
|
||||
|
|
Loading…
Reference in New Issue