From: greg@kroah.com Date: Tue, 5 Aug 2003 04:59:50 +0000 (-0700) Subject: [PATCH] cleanup the mknod code a bit. X-Git-Tag: 003~30 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=1331c889c33a91f098fa7257488046e81241225c [PATCH] cleanup the mknod code a bit. --- diff --git a/udev-add.c b/udev-add.c index adbeb9242..10df31458 100644 --- a/udev-add.c +++ b/udev-add.c @@ -78,20 +78,27 @@ static int create_node(char *name, char type, int major, int minor, int mode) int retval = 0; strncpy(filename, UDEV_ROOT, sizeof(filename)); strncat(filename, name, sizeof(filename)); - if (type == 'b') { - mode |= S_IFBLK; - } else if ((type == 'c') || (type == 'u')){ - mode |= S_IFCHR; - } else if ( type == 'p') { - mode |= S_IFIFO; - } else { - dbg("unknown node type %c\n", type); - return -1; - } + switch (type) { + case 'b': + mode |= S_IFBLK; + break; + case 'c': + case 'u': + mode |= S_IFCHR; + break; + case 'p': + mode |= S_IFIFO; + break; + default: + dbg("unknown node type %c\n", type); + return -EINVAL; + } 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; - } struct sysfs_class_device *get_class_dev(char *device_name) diff --git a/udev.h b/udev.h index 3c3c3d5de..590a8ed03 100644 --- a/udev.h +++ b/udev.h @@ -40,9 +40,6 @@ /* Where udev should create its device nodes, trailing / needed */ #define UDEV_ROOT "/udev/" -/* Binaries that udev calls to do stuff */ -#define MKNOD "/bin/mknod" - extern int log_message (int level, const char *format, ...) __attribute__ ((format (printf, 2, 3)));