Messages in this thread | | | From | Rusty Russell <> | Subject | Stricter module param and sysfs permission checks | Date | Thu, 20 Mar 2014 13:43:44 +1030 |
| |
CC's trimmed, this is not a virtio issue.
Joe Perches <joe@perches.com> writes: > On Wed, 2014-03-19 at 17:07 +1030, Rusty Russell wrote: >> Ted: module_param(queue_depth, int, 444) >> Joe: 0444! >> Rusty: User perms >= group perms >= other perms? >> Joe: CLASS_ATTR, DEVICE_ATTR, SENSOR_ATTR and SENSOR_ATTR_2? ... >> /* Default value instead of permissions? */ \ >> - static int __param_perm_check_##name __attribute__((unused)) = \ >> - BUILD_BUG_ON_ZERO((perm) < 0 || (perm) > 0777 || ((perm) & 2)) \ > > Now missing test for ((perm) & 2) > > Dunno if that was ever necessary.
Yeah, that was introduced by Alexey Dobriyan in 2006. It didn't go through me, though :( New check is better.
allmodconfig says this breaks some things:
drivers/mtd/devices/docg3.c: __ATTR(f##id##_dps0_protection_key, S_IWUGO, NULL, dps0_insert_key), \ __ATTR(f##id##_dps1_protection_key, S_IWUGO, NULL, dps1_insert_key), \
drivers/regulator/virtual.c: static DEVICE_ATTR(min_microvolts, 0666, show_min_uV, set_min_uV); static DEVICE_ATTR(max_microvolts, 0666, show_max_uV, set_max_uV); static DEVICE_ATTR(min_microamps, 0666, show_min_uA, set_min_uA); static DEVICE_ATTR(max_microamps, 0666, show_max_uA, set_max_uA); static DEVICE_ATTR(mode, 0666, show_mode, set_mode);
drivers/hid/hid-lg4ff.c: static DEVICE_ATTR(range, S_IRWXU | S_IRWXG | S_IRWXO, lg4ff_range_show, lg4ff_range_store);
drivers/scsi/pm8001/pm8001_ctl.c: static DEVICE_ATTR(update_fw, S_IRUGO|S_IWUGO, pm8001_show_update_fw, pm8001_store_update_fw);
... plus some staging.
So I've left that for a future patch.
Thanks, Rusty.
| |