lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 28 Mar 2022 13:52:25 +0200 From: Michael Walle <michael@...le.cc> To: Xu Yilun <yilun.xu@...el.com>, Tom Rix <trix@...hat.com>, Jean Delvare <jdelvare@...e.com>, Guenter Roeck <linux@...ck-us.net>, Andrew Lunn <andrew@...n.ch>, Heiner Kallweit <hkallweit1@...il.com>, Russell King <linux@...linux.org.uk>, "David S . Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com> Cc: linux-hwmon@...r.kernel.org, linux-kernel@...r.kernel.org, netdev@...r.kernel.org, Michael Walle <michael@...le.cc> Subject: [PATCH v1 1/2] hwmon: introduce hwmon_sanitize_name() More and more drivers will check for bad characters in the hwmon name and all are using the same code snippet. Consolidate that code by adding a new hwmon_sanitize_name() function. Signed-off-by: Michael Walle <michael@...le.cc> --- drivers/hwmon/intel-m10-bmc-hwmon.c | 5 +---- include/linux/hwmon.h | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/intel-m10-bmc-hwmon.c b/drivers/hwmon/intel-m10-bmc-hwmon.c index 7a08e4c44a4b..e6e55fc30153 100644 --- a/drivers/hwmon/intel-m10-bmc-hwmon.c +++ b/drivers/hwmon/intel-m10-bmc-hwmon.c @@ -515,7 +515,6 @@ static int m10bmc_hwmon_probe(struct platform_device *pdev) struct intel_m10bmc *m10bmc = dev_get_drvdata(pdev->dev.parent); struct device *hwmon_dev, *dev = &pdev->dev; struct m10bmc_hwmon *hw; - int i; hw = devm_kzalloc(dev, sizeof(*hw), GFP_KERNEL); if (!hw) @@ -532,9 +531,7 @@ static int m10bmc_hwmon_probe(struct platform_device *pdev) if (!hw->hw_name) return -ENOMEM; - for (i = 0; hw->hw_name[i]; i++) - if (hwmon_is_bad_char(hw->hw_name[i])) - hw->hw_name[i] = '_'; + hwmon_sanitize_name(hw->hw_name); hwmon_dev = devm_hwmon_device_register_with_info(dev, hw->hw_name, hw, &hw->chip, NULL); diff --git a/include/linux/hwmon.h b/include/linux/hwmon.h index eba380b76d15..210b8c0b2827 100644 --- a/include/linux/hwmon.h +++ b/include/linux/hwmon.h @@ -484,4 +484,20 @@ static inline bool hwmon_is_bad_char(const char ch) } } +/** + * hwmon_sanitize_name - Replaces invalid characters in a hwmon name + * @name: NUL-terminated name + * + * Invalid characters in the name will be overwritten in-place by an + * underscore. + */ +static inline void hwmon_sanitize_name(char *name) +{ + while (*name) { + if (hwmon_is_bad_char(*name)) + *name = '_'; + name++; + }; +} + #endif -- 2.30.2
Powered by blists - more mailing lists