提交 4a6e617a 编写于 作者: A Alexey Dobriyan 提交者: Linus Torvalds

[PATCH] fs/*: trivial vsnprintf() conversion

It would very lame to get buffer overflow via one of the following.
Signed-off-by: NAlexey Dobriyan <adobriyan@gmail.com>
Cc: Dave Kleikamp <shaggy@austin.ibm.com>
Cc: Mark Fasheh <mark.fasheh@oracle.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 e0980daf
...@@ -36,7 +36,7 @@ void __adfs_error(struct super_block *sb, const char *function, const char *fmt, ...@@ -36,7 +36,7 @@ void __adfs_error(struct super_block *sb, const char *function, const char *fmt,
va_list args; va_list args;
va_start(args, fmt); va_start(args, fmt);
vsprintf(error_buf, fmt, args); vsnprintf(error_buf, sizeof(error_buf), fmt, args);
va_end(args); va_end(args);
printk(KERN_CRIT "ADFS-fs error (device %s)%s%s: %s\n", printk(KERN_CRIT "ADFS-fs error (device %s)%s%s: %s\n",
......
...@@ -445,7 +445,7 @@ affs_error(struct super_block *sb, const char *function, const char *fmt, ...) ...@@ -445,7 +445,7 @@ affs_error(struct super_block *sb, const char *function, const char *fmt, ...)
va_list args; va_list args;
va_start(args,fmt); va_start(args,fmt);
vsprintf(ErrorBuffer,fmt,args); vsnprintf(ErrorBuffer,sizeof(ErrorBuffer),fmt,args);
va_end(args); va_end(args);
printk(KERN_CRIT "AFFS error (device %s): %s(): %s\n", sb->s_id, printk(KERN_CRIT "AFFS error (device %s): %s(): %s\n", sb->s_id,
...@@ -461,7 +461,7 @@ affs_warning(struct super_block *sb, const char *function, const char *fmt, ...) ...@@ -461,7 +461,7 @@ affs_warning(struct super_block *sb, const char *function, const char *fmt, ...)
va_list args; va_list args;
va_start(args,fmt); va_start(args,fmt);
vsprintf(ErrorBuffer,fmt,args); vsnprintf(ErrorBuffer,sizeof(ErrorBuffer),fmt,args);
va_end(args); va_end(args);
printk(KERN_WARNING "AFFS warning (device %s): %s(): %s\n", sb->s_id, printk(KERN_WARNING "AFFS warning (device %s): %s(): %s\n", sb->s_id,
......
...@@ -93,7 +93,7 @@ void jfs_error(struct super_block *sb, const char * function, ...) ...@@ -93,7 +93,7 @@ void jfs_error(struct super_block *sb, const char * function, ...)
va_list args; va_list args;
va_start(args, function); va_start(args, function);
vsprintf(error_buf, function, args); vsnprintf(error_buf, sizeof(error_buf), function, args);
va_end(args); va_end(args);
printk(KERN_ERR "ERROR: (device %s): %s\n", sb->s_id, error_buf); printk(KERN_ERR "ERROR: (device %s): %s\n", sb->s_id, error_buf);
......
...@@ -1674,7 +1674,7 @@ void __ocfs2_error(struct super_block *sb, ...@@ -1674,7 +1674,7 @@ void __ocfs2_error(struct super_block *sb,
va_list args; va_list args;
va_start(args, fmt); va_start(args, fmt);
vsprintf(error_buf, fmt, args); vsnprintf(error_buf, sizeof(error_buf), fmt, args);
va_end(args); va_end(args);
/* Not using mlog here because we want to show the actual /* Not using mlog here because we want to show the actual
...@@ -1695,7 +1695,7 @@ void __ocfs2_abort(struct super_block* sb, ...@@ -1695,7 +1695,7 @@ void __ocfs2_abort(struct super_block* sb,
va_list args; va_list args;
va_start(args, fmt); va_start(args, fmt);
vsprintf(error_buf, fmt, args); vsnprintf(error_buf, sizeof(error_buf), fmt, args);
va_end(args); va_end(args);
printk(KERN_CRIT "OCFS2: abort (device %s): %s: %s\n", printk(KERN_CRIT "OCFS2: abort (device %s): %s: %s\n",
......
...@@ -1709,7 +1709,7 @@ void udf_error(struct super_block *sb, const char *function, ...@@ -1709,7 +1709,7 @@ void udf_error(struct super_block *sb, const char *function,
sb->s_dirt = 1; sb->s_dirt = 1;
} }
va_start(args, fmt); va_start(args, fmt);
vsprintf(error_buf, fmt, args); vsnprintf(error_buf, sizeof(error_buf), fmt, args);
va_end(args); va_end(args);
printk (KERN_CRIT "UDF-fs error (device %s): %s: %s\n", printk (KERN_CRIT "UDF-fs error (device %s): %s: %s\n",
sb->s_id, function, error_buf); sb->s_id, function, error_buf);
...@@ -1721,7 +1721,7 @@ void udf_warning(struct super_block *sb, const char *function, ...@@ -1721,7 +1721,7 @@ void udf_warning(struct super_block *sb, const char *function,
va_list args; va_list args;
va_start (args, fmt); va_start (args, fmt);
vsprintf(error_buf, fmt, args); vsnprintf(error_buf, sizeof(error_buf), fmt, args);
va_end(args); va_end(args);
printk(KERN_WARNING "UDF-fs warning (device %s): %s: %s\n", printk(KERN_WARNING "UDF-fs warning (device %s): %s: %s\n",
sb->s_id, function, error_buf); sb->s_id, function, error_buf);
......
...@@ -224,7 +224,7 @@ void ufs_error (struct super_block * sb, const char * function, ...@@ -224,7 +224,7 @@ void ufs_error (struct super_block * sb, const char * function,
sb->s_flags |= MS_RDONLY; sb->s_flags |= MS_RDONLY;
} }
va_start (args, fmt); va_start (args, fmt);
vsprintf (error_buf, fmt, args); vsnprintf (error_buf, sizeof(error_buf), fmt, args);
va_end (args); va_end (args);
switch (UFS_SB(sb)->s_mount_opt & UFS_MOUNT_ONERROR) { switch (UFS_SB(sb)->s_mount_opt & UFS_MOUNT_ONERROR) {
case UFS_MOUNT_ONERROR_PANIC: case UFS_MOUNT_ONERROR_PANIC:
...@@ -255,7 +255,7 @@ void ufs_panic (struct super_block * sb, const char * function, ...@@ -255,7 +255,7 @@ void ufs_panic (struct super_block * sb, const char * function,
sb->s_dirt = 1; sb->s_dirt = 1;
} }
va_start (args, fmt); va_start (args, fmt);
vsprintf (error_buf, fmt, args); vsnprintf (error_buf, sizeof(error_buf), fmt, args);
va_end (args); va_end (args);
sb->s_flags |= MS_RDONLY; sb->s_flags |= MS_RDONLY;
printk (KERN_CRIT "UFS-fs panic (device %s): %s: %s\n", printk (KERN_CRIT "UFS-fs panic (device %s): %s: %s\n",
...@@ -268,7 +268,7 @@ void ufs_warning (struct super_block * sb, const char * function, ...@@ -268,7 +268,7 @@ void ufs_warning (struct super_block * sb, const char * function,
va_list args; va_list args;
va_start (args, fmt); va_start (args, fmt);
vsprintf (error_buf, fmt, args); vsnprintf (error_buf, sizeof(error_buf), fmt, args);
va_end (args); va_end (args);
printk (KERN_WARNING "UFS-fs warning (device %s): %s: %s\n", printk (KERN_WARNING "UFS-fs warning (device %s): %s: %s\n",
sb->s_id, function, error_buf); sb->s_id, function, error_buf);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册