From 0610939d6bd21873cd2a8d945daff86c477a5015 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 6 Aug 2015 13:32:07 +0200 Subject: libsystemd: fix RTNL_CONTAINER_DEPTH assert The m->n_containers is index and has to be smaller than the array size. --- src/libsystemd/sd-netlink/netlink-message.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/libsystemd/sd-netlink/netlink-message.c b/src/libsystemd/sd-netlink/netlink-message.c index 3ba62a6be9..aee2ced2d9 100644 --- a/src/libsystemd/sd-netlink/netlink-message.c +++ b/src/libsystemd/sd-netlink/netlink-message.c @@ -501,7 +501,7 @@ static int netlink_message_read_internal(sd_netlink_message *m, unsigned short t assert_return(m, -EINVAL); assert_return(m->sealed, -EPERM); assert_return(data, -EINVAL); - assert(m->n_containers <= RTNL_CONTAINER_DEPTH); + assert(m->n_containers < RTNL_CONTAINER_DEPTH); assert(m->containers[m->n_containers].attributes); assert(type < m->containers[m->n_containers].n_attributes); -- cgit v1.2.3-54-g00ecf From 93b1da852547c7f6adfaf1b3ff529927202a496d Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 6 Aug 2015 13:46:49 +0200 Subject: udev: variable dereferenced before check 'cmsg' --- src/udev/udev-ctrl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/udev/udev-ctrl.c b/src/udev/udev-ctrl.c index b0ad277f73..b4ae0944eb 100644 --- a/src/udev/udev-ctrl.c +++ b/src/udev/udev-ctrl.c @@ -379,13 +379,14 @@ struct udev_ctrl_msg *udev_ctrl_receive_msg(struct udev_ctrl_connection *conn) { cmsg_close_all(&smsg); cmsg = CMSG_FIRSTHDR(&smsg); - cred = (struct ucred *) CMSG_DATA(cmsg); if (cmsg == NULL || cmsg->cmsg_type != SCM_CREDENTIALS) { log_error("no sender credentials received, message ignored"); goto err; } + cred = (struct ucred *) CMSG_DATA(cmsg); + if (cred->uid != 0) { log_error("sender uid="UID_FMT", message ignored", cred->uid); goto err; -- cgit v1.2.3-54-g00ecf From a592ab6ae891ceb63c7115257a0de0c6c45a2f42 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 6 Aug 2015 13:59:38 +0200 Subject: bootctl: fix path in log message --- src/boot/bootctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/boot/bootctl.c b/src/boot/bootctl.c index 359fde9998..ac1711b318 100644 --- a/src/boot/bootctl.c +++ b/src/boot/bootctl.c @@ -818,7 +818,7 @@ static int remove_boot_efi(const char *esp_path) { if (r < 0) return log_error_errno(errno, "Failed to remove \"%s/%s\": %m", p, de->d_name); - log_info("Removed \"%s/\%s\".", p, de->d_name); + log_info("Removed \"%s/%s\".", p, de->d_name); } c++; -- cgit v1.2.3-54-g00ecf