X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fudev%2Fudevd.c;h=f21c227d173c02f53b35dc814593592dac72179e;hp=0dfad762f1aea49e19e87e3c0d5832ba4bb0a2bb;hb=d13394a88334441bf3092cf93804ba0f9c56d8e0;hpb=ed14edc04f9355b0d3fc769638b167decf27dc23 diff --git a/src/udev/udevd.c b/src/udev/udevd.c index 0dfad762f..f21c227d1 100644 --- a/src/udev/udevd.c +++ b/src/udev/udevd.c @@ -200,7 +200,7 @@ static void worker_new(struct event *event) udev_monitor_allow_unicast_sender(worker_monitor, monitor); udev_monitor_enable_receiving(worker_monitor); - worker = calloc(1, sizeof(struct worker)); + worker = new0(struct worker, 1); if (worker == NULL) { udev_monitor_unref(worker_monitor); return; @@ -247,12 +247,12 @@ static void worker_new(struct event *event) goto out; } - memset(&ep_signal, 0, sizeof(struct epoll_event)); + memzero(&ep_signal, sizeof(struct epoll_event)); ep_signal.events = EPOLLIN; ep_signal.data.fd = fd_signal; fd_monitor = udev_monitor_get_fd(worker_monitor); - memset(&ep_monitor, 0, sizeof(struct epoll_event)); + memzero(&ep_monitor, sizeof(struct epoll_event)); ep_monitor.events = EPOLLIN; ep_monitor.data.fd = fd_monitor; @@ -303,7 +303,7 @@ static void worker_new(struct event *event) udev_monitor_send_device(worker_monitor, NULL, dev); /* send udevd the result of the event execution */ - memset(&msg, 0, sizeof(struct worker_message)); + memzero(&msg, sizeof(struct worker_message)); if (err != 0) msg.exitcode = err; msg.pid = getpid(); @@ -431,7 +431,7 @@ static int event_queue_insert(struct udev_device *dev) { struct event *event; - event = calloc(1, sizeof(struct event)); + event = new0(struct event, 1); if (event == NULL) return -1; @@ -734,7 +734,7 @@ static int handle_inotify(struct udev *udev) log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); - fd = open(filename, O_WRONLY); + fd = open(filename, O_WRONLY|O_CLOEXEC); if (fd >= 0) { if (write(fd, "change", 6) < 0) log_debug("error writing uevent: %m"); @@ -1159,23 +1159,23 @@ int main(int argc, char *argv[]) goto exit; } - memset(&ep_ctrl, 0, sizeof(struct epoll_event)); + memzero(&ep_ctrl, sizeof(struct epoll_event)); ep_ctrl.events = EPOLLIN; ep_ctrl.data.fd = fd_ctrl; - memset(&ep_inotify, 0, sizeof(struct epoll_event)); + memzero(&ep_inotify, sizeof(struct epoll_event)); ep_inotify.events = EPOLLIN; ep_inotify.data.fd = fd_inotify; - memset(&ep_signal, 0, sizeof(struct epoll_event)); + memzero(&ep_signal, sizeof(struct epoll_event)); ep_signal.events = EPOLLIN; ep_signal.data.fd = fd_signal; - memset(&ep_netlink, 0, sizeof(struct epoll_event)); + memzero(&ep_netlink, sizeof(struct epoll_event)); ep_netlink.events = EPOLLIN; ep_netlink.data.fd = fd_netlink; - memset(&ep_worker, 0, sizeof(struct epoll_event)); + memzero(&ep_worker, sizeof(struct epoll_event)); ep_worker.events = EPOLLIN; ep_worker.data.fd = fd_worker;