diff options
author | rml@tech9.net <rml@tech9.net> | 2003-10-19 21:56:21 -0700 |
---|---|---|
committer | Greg KH <gregkh@suse.de> | 2005-04-26 21:01:41 -0700 |
commit | c2405f502cae4a634a25674306cffefb85df9ebb (patch) | |
tree | 1f51811af2c367b577d38fe3d0c190117ec4490f | |
parent | d7e954a4ef664cd65fbb34cb23ca57dc1bb89ea0 (diff) |
[PATCH] udev: mode should be mode_t
Unix file modes should be stored in a mode_t, not a standard type. At
the moment it is actually unsigned, in fact, not a signed integer.
Attached patch does an s/int mode/mode_t mode/ and cleans up the
results.
-rw-r--r-- | namedev.c | 12 | ||||
-rw-r--r-- | udev-add.c | 4 | ||||
-rw-r--r-- | udev.h | 2 | ||||
-rw-r--r-- | udevdb.c | 2 | ||||
-rw-r--r-- | udevdb.h | 2 |
5 files changed, 12 insertions, 10 deletions
@@ -446,7 +446,8 @@ static int namedev_init_permissions(void) dev.attr.mode = strtol(temp, NULL, 8); dbg_parse("name = %s, owner = %s, group = %s, mode = %#o", - dev.attr.name, dev.attr.owner, dev.attr.group, dev.attr.mode); + dev.attr.name, dev.attr.owner, dev.attr.group, + dev.attr.mode); retval = add_dev(&dev); if (retval) { dbg("add_dev returned with error %d", retval); @@ -459,7 +460,7 @@ exit: return retval; } -static int get_default_mode(struct sysfs_class_device *class_dev) +static mode_t get_default_mode(struct sysfs_class_device *class_dev) { /* just default everyone to rw for the world! */ return 0666; @@ -544,7 +545,7 @@ static int get_attr(struct sysfs_class_device *class_dev, struct device_attr *at int retval = 0; int found; - attr->mode = -1; + attr->mode = 0; if (class_dev->sysdevice) { dbg_parse("class_dev->sysdevice->directory->path = '%s'", class_dev->sysdevice->directory->path); dbg_parse("class_dev->sysdevice->bus_id = '%s'", class_dev->sysdevice->bus_id); @@ -751,9 +752,10 @@ label_found: } } strcpy(attr->name, class_dev->name); - + done: - if (attr->mode == -1) { + /* mode was never set above */ + if (!attr->mode) { attr->mode = get_default_mode(class_dev); attr->owner[0] = 0x00; attr->group[0] = 0x00; diff --git a/udev-add.c b/udev-add.c index 05f2aa3e9d..d158c41b1d 100644 --- a/udev-add.c +++ b/udev-add.c @@ -71,7 +71,7 @@ exit: /* * We also want to add some permissions here, and possibly some symlinks */ -static int create_node(char *name, char type, int major, int minor, int mode) +static int create_node(char *name, char type, int major, int minor, mode_t mode) { char filename[255]; int retval = 0; @@ -94,7 +94,7 @@ static int create_node(char *name, char type, int major, int minor, int mode) } dbg("mknod(%s, %#o, %u, %u)", filename, mode, major, minor); - retval = mknod(filename,mode,makedev(major,minor)); + retval = mknod(filename, mode, makedev(major, minor)); if (retval) dbg("mknod(%s, %#o, %u, %u) failed with error '%s'", filename, mode, major, minor, strerror(errno)); @@ -59,7 +59,7 @@ struct device_attr { char name[NAME_SIZE]; char owner[OWNER_SIZE]; char group[GROUP_SIZE]; - int mode; + mode_t mode; }; extern int udev_add_device(char *device, char *subsystem); @@ -73,7 +73,7 @@ struct namedb_record { char type; int major; int minor; - int mode; + mode_t mode; }; /** @@ -25,7 +25,7 @@ struct udevice { char type; int major; int minor; - int mode; + mode_t mode; }; /* Function Prototypes */ |