1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

Use fixed buffer to prevent stack overflow in persistent filter dump.

This commit is contained in:
Milan Broz 2010-01-06 13:25:36 +00:00
parent 255fc32087
commit 5d196aa430
2 changed files with 4 additions and 8 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.57 -
====================================
Use fixed buffer to prevent stack overflow in persistent filter dump.
Use snapshot metadata usage to determine if a snapshot is empty.
Insert missing stack macros to all activate_lv and deactivate_lv callers.
Insert missing stack macros to all suspend_lv and resume_lv callers.

View File

@ -143,7 +143,7 @@ static void _write_array(struct pfilter *pf, FILE *fp, const char *path,
{
void *d;
int first = 1;
char *buf, *str;
char buf[2 * PATH_MAX];
struct dm_hash_node *n;
for (n = dm_hash_get_first(pf->devices); n;
@ -160,13 +160,8 @@ static void _write_array(struct pfilter *pf, FILE *fp, const char *path,
first = 0;
}
str = dm_hash_get_key(pf->devices, n);
if (!(buf = alloca(escaped_len(str)))) {
log_error("persistent filter device path stack "
"allocation failed");
return;
}
fprintf(fp, "\t\t\"%s\"", escape_double_quotes(buf, str));
escape_double_quotes(buf, dm_hash_get_key(pf->devices, n));
fprintf(fp, "\t\t\"%s\"", buf);
}
if (!first)