Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 117a0c5f authored by Zhao Hongjiang's avatar Zhao Hongjiang Committed by David S. Miller
Browse files

sparc: kernel: using strlcpy() instead of strcpy()



'boot_command_line' and 'full_boot_str' has a fix length, 'cmdline_p' and
'boot_command' maybe larger than them. So use strlcpy() instead of strcpy()
to avoid memory overflow.

Signed-off-by: default avatarZhao Hongjiang <zhaohongjiang@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 242ece22
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -843,7 +843,8 @@ void ldom_reboot(const char *boot_command)
		unsigned long len;

		strcpy(full_boot_str, "boot ");
		strcpy(full_boot_str + strlen("boot "), boot_command);
		strlcpy(full_boot_str + strlen("boot "), boot_command,
			sizeof(full_boot_str + strlen("boot ")));
		len = strlen(full_boot_str);

		if (reboot_data_supported) {
+1 −1
Original line number Diff line number Diff line
@@ -304,7 +304,7 @@ void __init setup_arch(char **cmdline_p)

	/* Initialize PROM console and command line. */
	*cmdline_p = prom_getbootargs();
	strcpy(boot_command_line, *cmdline_p);
	strlcpy(boot_command_line, *cmdline_p, COMMAND_LINE_SIZE);
	parse_early_param();

	boot_flags_init(*cmdline_p);
+1 −1
Original line number Diff line number Diff line
@@ -555,7 +555,7 @@ void __init setup_arch(char **cmdline_p)
{
	/* Initialize PROM console and command line. */
	*cmdline_p = prom_getbootargs();
	strcpy(boot_command_line, *cmdline_p);
	strlcpy(boot_command_line, *cmdline_p, COMMAND_LINE_SIZE);
	parse_early_param();

	boot_flags_init(*cmdline_p);