chiark / gitweb /
klibc: add missing files
[elogind.git] / udev_add.c
index 5fff3836e3b928ded678ecbd53ea97693ef84d5f..2081e503c7d33d8eb5f0cee4cbd0f09684665ef3 100644 (file)
@@ -182,7 +182,7 @@ static int create_node(struct udevice *udev, struct sysfs_class_device *class_de
 
                                snprintf(partitionname, sizeof(partitionname), "%s%d", filename, i);
                                partitionname[sizeof(partitionname)-1] = '\0';
-                               part_devt = makedev(major(udev->devt), minor(udev->devt)+1);
+                               part_devt = makedev(major(udev->devt), minor(udev->devt) + i);
                                udev_make_node(udev, partitionname, part_devt, udev->mode, uid, gid);
                        }
                }
@@ -221,7 +221,7 @@ static int create_node(struct udevice *udev, struct sysfs_class_device *class_de
                dbg("symlink(%s, %s)", linktarget, filename);
                if (!udev->test_run) {
                        unlink(filename);
-                       selinux_setfscreatecon(filename, udev->kernel_name, S_IFLNK);
+                       selinux_setfscreatecon(filename, NULL, S_IFLNK);
                        retval = symlink(linktarget, filename);
                        selinux_resetfscreatecon();
                        if (retval != 0)
@@ -268,22 +268,7 @@ int udev_add_device(struct udevice *udev, struct sysfs_class_device *class_dev)
        char *pos;
        int retval = 0;
 
-       if (udev->type == DEV_BLOCK || udev->type == DEV_CLASS) {
-               udev->devt = get_devt(class_dev);
-               if (!udev->devt) {
-                       dbg("no dev-file found, do nothing");
-                       return 0;
-               }
-       }
-
-       udev_rules_get_name(udev, class_dev);
-       if (udev->ignore_device) {
-               dbg("device event will be ignored");
-               return 0;
-       }
-
        dbg("adding name='%s'", udev->name);
-
        selinux_init();
 
        if (udev->type == DEV_BLOCK || udev->type == DEV_CLASS) {
@@ -325,6 +310,5 @@ int udev_add_device(struct udevice *udev, struct sysfs_class_device *class_dev)
 
 exit:
        selinux_exit();
-
        return retval;
 }