register_driver: fix driver modes accross the code

State of problem:
 - Some drivers that do not support write operations (does not
   have write handler or ioctl do not perform any write actions)
   are registered with write permissions
 - Some drivers that do not support read operation (does not
   have read handler or ioctl do not perform any read actions)
   are registered with read permissions
 - Some drivers are registered with execute permissions

Solution:
 - Iterate code where register_driver() is used and change 'mode'
   parameter to reflect the actual read/write operations executed
   by a driver
 - Remove execute permissions from 'mode' parameter

Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
This commit is contained in:
Petro Karashchenko
2022-01-26 14:52:09 +02:00
committed by Xiang Xiao
parent 1d89d9ae4b
commit 41c95da594
35 changed files with 141 additions and 102 deletions
+1 -1
View File
@@ -370,7 +370,7 @@ int xen1210_register(XEN1210_HANDLE handle, int minor)
/* Register the character driver */
snprintf(devname, DEV_NAMELEN, DEV_FORMAT, minor);
ret = register_driver(devname, &g_xen1210fops, 0666, priv);
ret = register_driver(devname, &g_xen1210fops, 0444, priv);
if (ret < 0)
{
snerr("ERROR: Failed to register driver %s: %d\n", devname, ret);