[PATCH] cleanup the mknod code a bit.
This commit is contained in:
parent
0abf54fc09
commit
1331c889c3
29
udev-add.c
29
udev-add.c
|
@ -78,20 +78,27 @@ static int create_node(char *name, char type, int major, int minor, int mode)
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
strncpy(filename, UDEV_ROOT, sizeof(filename));
|
strncpy(filename, UDEV_ROOT, sizeof(filename));
|
||||||
strncat(filename, name, sizeof(filename));
|
strncat(filename, name, sizeof(filename));
|
||||||
if (type == 'b') {
|
switch (type) {
|
||||||
mode |= S_IFBLK;
|
case 'b':
|
||||||
} else if ((type == 'c') || (type == 'u')){
|
mode |= S_IFBLK;
|
||||||
mode |= S_IFCHR;
|
break;
|
||||||
} else if ( type == 'p') {
|
case 'c':
|
||||||
mode |= S_IFIFO;
|
case 'u':
|
||||||
} else {
|
mode |= S_IFCHR;
|
||||||
dbg("unknown node type %c\n", type);
|
break;
|
||||||
return -1;
|
case 'p':
|
||||||
}
|
mode |= S_IFIFO;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
dbg("unknown node type %c\n", type);
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
|
||||||
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));
|
||||||
return retval;
|
return retval;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct sysfs_class_device *get_class_dev(char *device_name)
|
struct sysfs_class_device *get_class_dev(char *device_name)
|
||||||
|
|
3
udev.h
3
udev.h
|
@ -40,9 +40,6 @@
|
||||||
/* Where udev should create its device nodes, trailing / needed */
|
/* Where udev should create its device nodes, trailing / needed */
|
||||||
#define UDEV_ROOT "/udev/"
|
#define UDEV_ROOT "/udev/"
|
||||||
|
|
||||||
/* Binaries that udev calls to do stuff */
|
|
||||||
#define MKNOD "/bin/mknod"
|
|
||||||
|
|
||||||
extern int log_message (int level, const char *format, ...)
|
extern int log_message (int level, const char *format, ...)
|
||||||
__attribute__ ((format (printf, 2, 3)));
|
__attribute__ ((format (printf, 2, 3)));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue