int udev_node_mknod(struct udev_device *dev, const char *file, dev_t devnum, mode_t mode, uid_t uid, gid_t gid)
{
struct udev *udev = udev_device_get_udev(dev);
- char filename[UTIL_PATH_SIZE];
struct stat stats;
int preserve = 0;
int err = 0;
else
mode |= S_IFCHR;
- if (file == NULL) {
+ if (file == NULL)
file = udev_device_get_devnode(dev);
- } else if (file[0] != '/') {
- util_strlcpy(filename, udev_get_dev_path(udev), sizeof(filename));
- util_strlcat(filename, "/", sizeof(filename));
- util_strlcat(filename, file, sizeof(filename));
- file = filename;
- }
if (lstat(file, &stats) == 0) {
if (((stats.st_mode & S_IFMT) == (mode & S_IFMT)) && (stats.st_rdev == devnum)) {