uctrl->sock = socket(AF_LOCAL, SOCK_DGRAM, 0);
if (uctrl->sock < 0) {
- err(udev, "error getting socket: %s\n", strerror(errno));
+ err(udev, "error getting socket: %m\n");
udev_ctrl_unref(uctrl);
return NULL;
}
err= bind(uctrl->sock, (struct sockaddr *)&uctrl->saddr, uctrl->addrlen);
if (err < 0) {
- err(uctrl->udev, "bind failed: %s\n", strerror(errno));
+ err(uctrl->udev, "bind failed: %m\n");
return err;
}
err = sendto(uctrl->sock, &ctrl_msg_wire, sizeof(ctrl_msg_wire), 0, (struct sockaddr *)&uctrl->saddr, uctrl->addrlen);
if (err == -1) {
- err(uctrl->udev, "error sending message: %s\n", strerror(errno));
+ err(uctrl->udev, "error sending message: %m\n");
}
return err;
}
size = recvmsg(uctrl->sock, &smsg, 0);
if (size < 0) {
- err(uctrl->udev, "unable to receive user udevd message: %s\n", strerror(errno));
+ err(uctrl->udev, "unable to receive user udevd message: %m\n");
goto err;
}
cmsg = CMSG_FIRSTHDR(&smsg);
syspath_to_db_path(udev_device, filename, sizeof(filename));
if (lstat(filename, &stats) != 0) {
- info(udev_device->udev, "no db file to read %s: %s\n", filename, strerror(errno));
+ info(udev_device->udev, "no db file to read %s: %m\n", filename);
return -1;
}
if ((stats.st_mode & S_IFMT) == S_IFLNK) {
if (target_len > 0)
target[target_len] = '\0';
else {
- info(udev_device->udev, "error reading db link %s: %s\n", filename, strerror(errno));
+ info(udev_device->udev, "error reading db link %s: %m\n", filename);
return -1;
}
if (asprintf(&udev_device->devnode, "%s/%s", udev_get_dev_path(udev_device->udev), target) < 0)
f = fopen(filename, "r");
if (f == NULL) {
- info(udev_device->udev, "error reading db file %s: %s\n", filename, strerror(errno));
+ info(udev_device->udev, "error reading db file %s: %m\n", filename);
return -1;
}
while (fgets(line, sizeof(line), f)) {
util_strlcat(path, attr, sizeof(path));
if (lstat(path, &statbuf) != 0) {
- info(udev_device->udev, "stat '%s' failed: %s\n", path, strerror(errno));
+ info(udev_device->udev, "stat '%s' failed: %m\n", path);
goto out;
}
udev_monitor->sock = socket(AF_LOCAL, SOCK_DGRAM, 0);
if (udev_monitor->sock == -1) {
- err(udev, "error getting socket: %s\n", strerror(errno));
+ err(udev, "error getting socket: %m\n");
free(udev_monitor);
return NULL;
}
udev_monitor->sock = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
if (udev_monitor->sock == -1) {
- err(udev, "error getting socket: %s\n", strerror(errno));
+ err(udev, "error getting socket: %m\n");
free(udev_monitor);
return NULL;
}
if (udev_monitor->snl.nl_family != 0) {
err = bind(udev_monitor->sock, (struct sockaddr *)&udev_monitor->snl, sizeof(struct sockaddr_nl));
if (err < 0) {
- err(udev_monitor->udev, "bind failed: %s\n", strerror(errno));
+ err(udev_monitor->udev, "bind failed: %m\n");
return err;
}
info(udev_monitor->udev, "monitor %p listening on netlink\n", udev_monitor);
} else if (udev_monitor->sun.sun_family != 0) {
err = bind(udev_monitor->sock, (struct sockaddr *)&udev_monitor->sun, udev_monitor->addrlen);
if (err < 0) {
- err(udev_monitor->udev, "bind failed: %s\n", strerror(errno));
+ err(udev_monitor->udev, "bind failed: %m\n");
return err;
}
/* enable receiving of the sender credentials */
return;
}
if (lsetfilecon(file, scontext) < 0)
- err(udev, "setfilecon %s failed: %s\n", file, strerror(errno));
+ err(udev, "setfilecon %s failed: %m\n", file);
freecon(scontext);
}
#endif
return;
}
if (setfscreatecon(scontext) < 0)
- err(udev, "setfscreatecon %s failed: %s\n", file, strerror(errno));
+ err(udev, "setfscreatecon %s failed: %m\n", file);
freecon(scontext);
}
#endif
selinux_init(udev);
if (udev->selinux_enabled) {
if (setfscreatecon(udev->selinux_prev_scontext) < 0)
- err(udev, "setfscreatecon failed: %s\n", strerror(errno));
+ err(udev, "setfscreatecon failed: %m\n");
}
#endif
}
dir = opendir(dirname);
if (dir == NULL) {
- info(udev, "no index directory '%s': %s\n", dirname, strerror(errno));
+ info(udev, "no index directory '%s': %m\n", dirname);
rc = -1;
goto out;
}
ret = symlink(udevice->name, filename);
udev_selinux_resetfscreatecon(udevice->udev);
if (ret != 0) {
- err(udevice->udev, "unable to create db link '%s': %s\n", filename, strerror(errno));
+ err(udevice->udev, "unable to create db link '%s': %m\n", filename);
return -1;
}
} else {
f = fopen(filename, "w");
if (f == NULL) {
- err(udevice->udev, "unable to create db file '%s': %s\n", filename, strerror(errno));
+ err(udevice->udev, "unable to create db file '%s': %m\n", filename);
return -1;
}
dbg(udevice->udev, "storing data for device '%s' in '%s'\n", udevice->dev->devpath, filename);
devpath_to_db_path(udevice->udev, devpath, filename, sizeof(filename));
if (lstat(filename, &stats) != 0) {
- info(udevice->udev, "no db file to read %s: %s\n", filename, strerror(errno));
+ info(udevice->udev, "no db file to read %s: %m\n", filename);
return -1;
}
if ((stats.st_mode & S_IFMT) == S_IFLNK) {
if (target_len > 0)
target[target_len] = '\0';
else {
- info(udevice->udev, "error reading db link %s: %s\n", filename, strerror(errno));
+ info(udevice->udev, "error reading db link %s: %m\n", filename);
return -1;
}
dbg(udevice->udev, "db link points to '%s'\n", target);
}
if (file_map(filename, &buf, &bufsize) != 0) {
- info(udevice->udev, "error reading db file %s: %s\n", filename, strerror(errno));
+ info(udevice->udev, "error reading db file %s: %m\n", filename);
return -1;
}
sk = socket(PF_INET, SOCK_DGRAM, 0);
if (sk < 0) {
- err(udevice->udev, "error opening socket: %s\n", strerror(errno));
+ err(udevice->udev, "error opening socket: %m\n");
return -1;
}
/* see if the destination interface name already exists */
if (errno != EEXIST) {
- err(udevice->udev, "error changing netif name %s to %s: %s\n",
- ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+ err(udevice->udev, "error changing netif name %s to %s: %m\n",
+ ifr.ifr_name, ifr.ifr_newname);
goto exit;
}
util_strlcat(ifr.ifr_newname, "_rename", IFNAMSIZ);
retval = ioctl(sk, SIOCSIFNAME, &ifr);
if (retval != 0) {
- err(udevice->udev, "error changing netif name %s to %s: %s\n",
- ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+ err(udevice->udev, "error changing netif name %s to %s: %m\n",
+ ifr.ifr_name, ifr.ifr_newname);
goto exit;
}
}
if (errno != EEXIST) {
- err(udevice->udev, "error changing net interface name %s to %s: %s\n",
- ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+ err(udevice->udev, "error changing net interface name %s to %s: %m\n",
+ ifr.ifr_name, ifr.ifr_newname);
break;
}
dbg(udevice->udev, "wait for netif '%s' to become free, loop=%i\n",
err = mknod(file_tmp, mode, devt);
udev_selinux_resetfscreatecon(udevice->udev);
if (err != 0) {
- err(udevice->udev, "mknod(%s, %#o, %u, %u) failed: %s\n",
- file_tmp, mode, major(devt), minor(devt), strerror(errno));
+ err(udevice->udev, "mknod(%s, %#o, %u, %u) failed: %m\n",
+ file_tmp, mode, major(devt), minor(devt));
goto exit;
}
err = rename(file_tmp, file);
if (err != 0) {
- err(udevice->udev, "rename(%s, %s) failed: %s\n", file_tmp, file, strerror(errno));
+ err(udevice->udev, "rename(%s, %s) failed: %m\n", file_tmp, file);
unlink(file_tmp);
}
}
err = mknod(file, mode, devt);
udev_selinux_resetfscreatecon(udevice->udev);
if (err != 0) {
- err(udevice->udev, "mknod(%s, %#o, (%u,%u) failed: %s\n",
- file, mode, major(devt), minor(devt), strerror(errno));
+ err(udevice->udev, "mknod(%s, %#o, (%u,%u) failed: %m\n",
+ file, mode, major(devt), minor(devt));
goto exit;
}
}
info(udevice->udev, "chmod(%s, %#o)\n", file, mode);
err = chmod(file, mode);
if (err != 0) {
- err(udevice->udev, "chmod(%s, %#o) failed: %s\n", file, mode, strerror(errno));
+ err(udevice->udev, "chmod(%s, %#o) failed: %m\n", file, mode);
goto exit;
}
}
info(udevice->udev, "chown(%s, %u, %u)\n", file, uid, gid);
err = chown(file, uid, gid);
if (err != 0) {
- err(udevice->udev, "chown(%s, %u, %u) failed: %s\n", file, uid, gid, strerror(errno));
+ err(udevice->udev, "chown(%s, %u, %u) failed: %m\n", file, uid, gid);
goto exit;
}
}
retval = symlink(target, slink_tmp);
udev_selinux_resetfscreatecon(udevice->udev);
if (retval != 0) {
- err(udevice->udev, "symlink(%s, %s) failed: %s\n", target, slink_tmp, strerror(errno));
+ err(udevice->udev, "symlink(%s, %s) failed: %m\n", target, slink_tmp);
goto exit;
}
retval = rename(slink_tmp, slink);
if (retval != 0) {
- err(udevice->udev, "rename(%s, %s) failed: %s\n", slink_tmp, slink, strerror(errno));
+ err(udevice->udev, "rename(%s, %s) failed: %m\n", slink_tmp, slink);
unlink(slink_tmp);
goto exit;
}
/* prepare pipes from child to parent */
if (result != NULL || udev_get_log_priority(udev) >= LOG_INFO) {
if (pipe(outpipe) != 0) {
- err(udev, "pipe failed: %s\n", strerror(errno));
+ err(udev, "pipe failed: %m\n");
return -1;
}
}
if (udev_get_log_priority(udev) >= LOG_INFO) {
if (pipe(errpipe) != 0) {
- err(udev, "pipe failed: %s\n", strerror(errno));
+ err(udev, "pipe failed: %m\n");
return -1;
}
}
dup2(devnull, STDERR_FILENO);
close(devnull);
} else
- err(udev, "open /dev/null failed: %s\n", strerror(errno));
+ err(udev, "open /dev/null failed: %m\n");
if (outpipe[WRITE_END] > 0) {
dup2(outpipe[WRITE_END], STDOUT_FILENO);
close(outpipe[WRITE_END]);
}
_exit(1);
case -1:
- err(udev, "fork of '%s' failed: %s\n", argv[0], strerror(errno));
+ err(udev, "fork of '%s' failed: %m\n", argv[0]);
return -1;
default:
/* read from child if requested */
close(outpipe[READ_END]);
outpipe[READ_END] = -1;
if (count < 0) {
- err(udev, "stdin read failed: %s\n", strerror(errno));
+ err(udev, "stdin read failed: %m\n");
retval = -1;
}
continue;
close(errpipe[READ_END]);
errpipe[READ_END] = -1;
if (count < 0)
- err(udev, "stderr read failed: %s\n", strerror(errno));
+ err(udev, "stderr read failed: %m\n");
continue;
}
errbuf[count] = '\0';
size_t bufsize;
if (file_map(filename, &buf, &bufsize) != 0) {
- err(udevice->udev, "can't open '%s': %s\n", filename, strerror(errno));
+ err(udevice->udev, "can't open '%s': %m\n", filename);
return -1;
}
import_keys_into_env(udevice, buf, bufsize);
if (f != NULL) {
if (!udevice->test_run)
if (fprintf(f, "%s", value) <= 0)
- err(udevice->udev, "error writing ATTR{%s}: %s\n", attr, strerror(errno));
+ err(udevice->udev, "error writing ATTR{%s}: %m\n", attr);
fclose(f);
} else
- err(udevice->udev, "error opening ATTR{%s} for writing: %s\n", attr, strerror(errno));
+ err(udevice->udev, "error opening ATTR{%s} for writing: %m\n", attr);
}
}
return 0;
start = rules->bufsize;
if (file_map(filename, &buf, &bufsize) != 0) {
- err(rules->udev, "can't open '%s' as rules file: %s\n", filename, strerror(errno));
+ err(rules->udev, "can't open '%s' as rules file: %m\n", filename);
return -1;
}
info(rules->udev, "reading '%s' as rules file\n", filename);
else
dbg(udev, "empty rules file '%s'\n", name_loop->name);
} else
- err(udev, "could not read '%s': %s\n", name_loop->name, strerror(errno));
+ err(udev, "could not read '%s': %m\n", name_loop->name);
list_del(&name_loop->node);
free(name_loop);
}
util_strlcpy(path, udev_get_sys_path(udev), sizeof(path));
util_strlcat(path, devpath_real, sizeof(path));
if (lstat(path, &statbuf) != 0) {
- dbg(udev, "stat '%s' failed: %s\n", path, strerror(errno));
+ dbg(udev, "stat '%s' failed: %m\n", path);
return NULL;
}
if (S_ISLNK(statbuf.st_mode)) {
list_add(&attr->node, &attr_list);
if (lstat(path_full, &statbuf) != 0) {
- dbg(udev, "stat '%s' failed: %s\n", path_full, strerror(errno));
+ dbg(udev, "stat '%s' failed: %m\n", path_full);
goto out;
}
dbg(udev, "open directory '%s'\n", dirname);
dir = opendir(dirname);
if (dir == NULL) {
- err(udev, "unable to open '%s': %s\n", dirname, strerror(errno));
+ err(udev, "unable to open '%s': %m\n", dirname);
return -1;
}
if (errno == 0 || errno == ENOENT || errno == ESRCH)
err(udev, "specified user '%s' unknown\n", user);
else
- err(udev, "error resolving user '%s': %s\n", user, strerror(errno));
+ err(udev, "error resolving user '%s': %m\n", user);
} else
uid = pw->pw_uid;
if (errno == 0 || errno == ENOENT || errno == ESRCH)
err(udev, "specified group '%s' unknown\n", group);
else
- err(udev, "error resolving group '%s': %s\n", group, strerror(errno));
+ err(udev, "error resolving group '%s': %m\n", group);
} else
gid = gr->gr_gid;
if (retval) {
if (errno == ENOTEMPTY)
return 0;
- err(udev, "rmdir(%s) failed: %s\n", p, strerror(errno));
+ err(udev, "rmdir(%s) failed: %m\n", p);
break;
}
dbg(udev, "removed '%s'\n", p);
retval = chown(filename, 0, 0);
if (retval)
- err(udev, "chown(%s, 0, 0) failed: %s\n", filename, strerror(errno));
+ err(udev, "chown(%s, 0, 0) failed: %m\n", filename);
retval = chmod(filename, 0000);
if (retval)
- err(udev, "chmod(%s, 0000) failed: %s\n", filename, strerror(errno));
+ err(udev, "chmod(%s, 0000) failed: %m\n", filename);
retval = unlink(filename);
if (errno == ENOENT)
retval = 0;
if (retval)
- err(udev, "unlink(%s) failed: %s\n", filename, strerror(errno));
+ err(udev, "unlink(%s) failed: %m\n", filename);
return retval;
}
&readfds, NULL, NULL, NULL);
if (fdcount < 0) {
if (errno != EINTR)
- fprintf(stderr, "error receiving uevent message: %s\n", strerror(errno));
+ fprintf(stderr, "error receiving uevent message: %m\n");
continue;
}
fd = open(filename, O_WRONLY);
if (fd < 0) {
- dbg(udev, "error on opening %s: %s\n", filename, strerror(errno));
+ dbg(udev, "error on opening %s: %m\n", filename);
return;
}
if (write(fd, action, strlen(action)) < 0)
- info(udev, "error writing '%s' to '%s': %s\n", action, filename, strerror(errno));
+ info(udev, "error writing '%s' to '%s': %m\n", action, filename);
close(fd);
}
exit(1);
exit(0);
case -1:
- err(msg->udev, "fork of child failed: %s\n", strerror(errno));
+ err(msg->udev, "fork of child failed: %m\n");
msg_queue_delete(msg);
break;
default:
size = recv(uevent_netlink_sock, &buffer, sizeof(buffer), 0);
if (size < 0) {
if (errno != EINTR)
- err(udev, "unable to receive kernel netlink message: %s\n", strerror(errno));
+ err(udev, "unable to receive kernel netlink message: %m\n");
return NULL;
}
uevent_netlink_sock = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
if (uevent_netlink_sock == -1) {
- err(udev, "error getting socket: %s\n", strerror(errno));
+ err(udev, "error getting socket: %m\n");
return -1;
}
retval = bind(uevent_netlink_sock, (struct sockaddr *) &snl, sizeof(struct sockaddr_nl));
if (retval < 0) {
- err(udev, "bind failed: %s\n", strerror(errno));
+ err(udev, "bind failed: %m\n");
close(uevent_netlink_sock);
uevent_netlink_sock = -1;
return -1;
retval = pipe(signal_pipe);
if (retval < 0) {
- err(udev, "error getting pipes: %s\n", strerror(errno));
+ err(udev, "error getting pipes: %m\n");
goto exit;
}
retval = fcntl(signal_pipe[READ_END], F_GETFL, 0);
if (retval < 0) {
- err(udev, "error fcntl on read pipe: %s\n", strerror(errno));
+ err(udev, "error fcntl on read pipe: %m\n");
goto exit;
}
retval = fcntl(signal_pipe[READ_END], F_SETFL, retval | O_NONBLOCK);
if (retval < 0) {
- err(udev, "error fcntl on read pipe: %s\n", strerror(errno));
+ err(udev, "error fcntl on read pipe: %m\n");
goto exit;
}
retval = fcntl(signal_pipe[WRITE_END], F_GETFL, 0);
if (retval < 0) {
- err(udev, "error fcntl on write pipe: %s\n", strerror(errno));
+ err(udev, "error fcntl on write pipe: %m\n");
goto exit;
}
retval = fcntl(signal_pipe[WRITE_END], F_SETFL, retval | O_NONBLOCK);
if (retval < 0) {
- err(udev, "error fcntl on write pipe: %s\n", strerror(errno));
+ err(udev, "error fcntl on write pipe: %m\n");
goto exit;
}
dbg(udev, "daemonized fork running\n");
break;
case -1:
- err(udev, "fork of daemon failed: %s\n", strerror(errno));
+ err(udev, "fork of daemon failed: %m\n");
rc = 4;
goto exit;
default:
/* OOM_DISABLE == -17 */
fd = open("/proc/self/oom_adj", O_RDWR);
if (fd < 0)
- err(udev, "error disabling OOM: %s\n", strerror(errno));
+ err(udev, "error disabling OOM: %m\n");
else {
write(fd, "-17", 3);
close(fd);
} else if (errno == ENOSYS)
err(udev, "the kernel does not support inotify, udevd can't monitor rules file changes\n");
else
- err(udev, "inotify_init failed: %s\n", strerror(errno));
+ err(udev, "inotify_init failed: %m\n");
/* maximum limit of forked childs */
value = getenv("UDEVD_MAX_CHILDS");
fdcount = select(maxfd+1, &readfds, NULL, NULL, NULL);
if (fdcount < 0) {
if (errno != EINTR)
- err(udev, "error in select: %s\n", strerror(errno));
+ err(udev, "error in select: %m\n");
continue;
}