-
- udev_selinux_setfscreatecon(udev, filename, S_IFLNK);
- symlink(udev_device_get_devpath(udev_device), filename);
- udev_selinux_resetfscreatecon(udev);
+ do {
+ util_create_path(udev, filename);
+ udev_selinux_setfscreatecon(udev, filename, S_IFLNK);
+ err = symlink(udev_device_get_devpath(udev_device), filename);
+ if (err != 0)
+ err = errno;
+ udev_selinux_resetfscreatecon(udev);
+ } while (err == ENOENT);