Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPI: scan: Use strscpy() instead of strcpy()

Replace strcpy() with strscpy() in the ACPI device enumeration code.

strcpy() has been deprecated because it is generally unsafe, so it
is better to eliminate it from the kernel source.

Link: https://github.com/KSPP/linux/issues/88
Signed-off-by: Muhammad Qasim Abdul Majeed <qasim.majeed20@gmail.com>
Link: https://patch.msgid.link/20240915183822.34588-9-qasim.majeed20@gmail.com
[ rjw: Subject and changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Muhammad Qasim Abdul Majeed and committed by
Rafael J. Wysocki
107d55ef 0dac2f74

+7 -7
+7 -7
drivers/acpi/scan.c
··· 1179 1179 * TBD: Shouldn't this value be unique (within the ACPI namespace)? 1180 1180 */ 1181 1181 if (!acpi_dev_parent(device)) { 1182 - strcpy(device->pnp.bus_id, "ACPI"); 1182 + strscpy(device->pnp.bus_id, "ACPI"); 1183 1183 return; 1184 1184 } 1185 1185 1186 1186 switch (device->device_type) { 1187 1187 case ACPI_BUS_TYPE_POWER_BUTTON: 1188 - strcpy(device->pnp.bus_id, "PWRF"); 1188 + strscpy(device->pnp.bus_id, "PWRF"); 1189 1189 break; 1190 1190 case ACPI_BUS_TYPE_SLEEP_BUTTON: 1191 - strcpy(device->pnp.bus_id, "SLPF"); 1191 + strscpy(device->pnp.bus_id, "SLPF"); 1192 1192 break; 1193 1193 case ACPI_BUS_TYPE_ECDT_EC: 1194 - strcpy(device->pnp.bus_id, "ECDT"); 1194 + strscpy(device->pnp.bus_id, "ECDT"); 1195 1195 break; 1196 1196 default: 1197 1197 acpi_get_name(device->handle, ACPI_SINGLE_NAME, &buffer); ··· 1202 1202 else 1203 1203 break; 1204 1204 } 1205 - strcpy(device->pnp.bus_id, bus_id); 1205 + strscpy(device->pnp.bus_id, bus_id); 1206 1206 break; 1207 1207 } 1208 1208 } ··· 1453 1453 acpi_object_is_system_bus(handle)) { 1454 1454 /* \_SB, \_TZ, LNXSYBUS */ 1455 1455 acpi_add_id(pnp, ACPI_BUS_HID); 1456 - strcpy(pnp->device_name, ACPI_BUS_DEVICE_NAME); 1457 - strcpy(pnp->device_class, ACPI_BUS_CLASS); 1456 + strscpy(pnp->device_name, ACPI_BUS_DEVICE_NAME); 1457 + strscpy(pnp->device_class, ACPI_BUS_CLASS); 1458 1458 } 1459 1459 1460 1460 break;