read_unlock(&trig_data->lock);
if (mode == 0) {
- strcpy(buf, "none\n");
+ strscpy(buf, "none\n", PAGE_SIZE);
} else {
if (mode & SWCONFIG_LED_MODE_LINK)
- strcat(buf, "link ");
+ strlcat(buf, "link ", PAGE_SIZE);
if (mode & SWCONFIG_LED_MODE_TX)
- strcat(buf, "tx ");
+ strlcat(buf, "tx ", PAGE_SIZE);
if (mode & SWCONFIG_LED_MODE_RX)
- strcat(buf, "rx ");
- strcat(buf, "\n");
+ strlcat(buf, "rx ", PAGE_SIZE);
+ strlcat(buf, "\n", PAGE_SIZE);
}
return strlen(buf)+1;
sprintf(clkinfo, ", %s %lu MHz", rtcl_clk_info[clk_idx].display_name,
rtcl_ccu->clks[clk_idx].startup / 1000000);
if (clk_idx == CLK_MEM)
- strcat(clkinfo, meminfo);
- strcat(msg, clkinfo);
+ strlcat(clkinfo, meminfo, sizeof(clkinfo));
+ strlcat(msg, clkinfo, sizeof(msg));
}
pr_info("%s\n", msg);
}
overclock |= rclk->max > rclk->startup;
sprintf(clkinfo, ", %s %lu-%lu MHz", rtcl_clk_info[clk_idx].display_name,
rclk->min / 1000000, rclk->max / 1000000);
- strcat(msg, clkinfo);
+ strlcat(msg, clkinfo, sizeof(msg));
}
if (overclock)
- strcat(msg, ", OVERCLOCK AT OWN RISK");
+ strlcat(msg, ", OVERCLOCK AT OWN RISK", sizeof(msg));
dev_info(&rtcl_ccu->pdev->dev, "%s\n", msg);
}
+ if (!vmif)
+ goto out;
+
-+ strcpy (vmif, umid);
-+ strcat (vmif, ifname);
++ strscpy (vmif, umid, 1024);
++ strlcat (vmif, ifname, 1024);
+
+ tfm = crypto_alloc_ahash("sha1", 0, CRYPTO_ALG_ASYNC);
+ if (IS_ERR(tfm))