Commit 1d97b8e3 authored by Thorsten Blum's avatar Thorsten Blum Committed by Rafael J. Wysocki
Browse files

thermal: core: Use strnlen() in thermal_zone_device_register_with_trips()



Replace strlen() with the safer strnlen() and calculate the length of
the thermal zone name 'type' only once.

No functional changes.

Signed-off-by: default avatarThorsten Blum <thorsten.blum@linux.dev>
[ rjw: Subject edits ]
Link: https://patch.msgid.link/20251216130943.40180-2-thorsten.blum@linux.dev


Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 9ace4753
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -1505,15 +1505,19 @@ thermal_zone_device_register_with_trips(const char *type,
	const struct thermal_trip *trip = trips;
	struct thermal_zone_device *tz;
	struct thermal_trip_desc *td;
	size_t type_len = 0;
	int id;
	int result;

	if (!type || strlen(type) == 0) {
	if (type)
		type_len = strnlen(type, THERMAL_NAME_LENGTH);

	if (type_len == 0) {
		pr_err("No thermal zone type defined\n");
		return ERR_PTR(-EINVAL);
	}

	if (strlen(type) >= THERMAL_NAME_LENGTH) {
	if (type_len == THERMAL_NAME_LENGTH) {
		pr_err("Thermal zone name (%s) too long, should be under %d chars\n",
		       type, THERMAL_NAME_LENGTH);
		return ERR_PTR(-EINVAL);