]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: bridge: constify 'struct bin_attribute'
authorThomas Weißschuh <linux@weissschuh.net>
Mon, 16 Dec 2024 11:30:08 +0000 (12:30 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 18 Dec 2024 03:00:43 +0000 (19:00 -0800)
The sysfs core now allows instances of 'struct bin_attribute' to be
moved into read-only memory. Make use of that to protect them against
accidental or malicious modifications.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Nikolay Aleksandrov <razor@blackwall.org>
Link: https://patch.msgid.link/20241216-sysfs-const-bin_attr-net-v1-1-ec460b91f274@weissschuh.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/bridge/br_sysfs_br.c

index ea733542244c7e7feeffef3c993404529ba88559..c1176a5e02c43ce32cb3dc152e9aa08eb535a419 100644 (file)
@@ -1002,7 +1002,7 @@ static const struct attribute_group bridge_group = {
  * Returns the number of bytes read.
  */
 static ssize_t brforward_read(struct file *filp, struct kobject *kobj,
-                             struct bin_attribute *bin_attr,
+                             const struct bin_attribute *bin_attr,
                              char *buf, loff_t off, size_t count)
 {
        struct device *dev = kobj_to_dev(kobj);
@@ -1023,10 +1023,10 @@ static ssize_t brforward_read(struct file *filp, struct kobject *kobj,
        return n;
 }
 
-static struct bin_attribute bridge_forward = {
+static const struct bin_attribute bridge_forward = {
        .attr = { .name = SYSFS_BRIDGE_FDB,
                  .mode = 0444, },
-       .read = brforward_read,
+       .read_new = brforward_read,
 };
 
 /*